UNPKG

61 kBJSONView Raw
1{
2 "_format": "hh-sol-artifact-1",
3 "contractName": "CredenzaToken",
4 "sourceName": "contracts/tokens/CredenzaToken.sol",
5 "abi": [
6 {
7 "inputs": [],
8 "stateMutability": "nonpayable",
9 "type": "constructor"
10 },
11 {
12 "anonymous": false,
13 "inputs": [
14 {
15 "indexed": true,
16 "internalType": "address",
17 "name": "owner",
18 "type": "address"
19 },
20 {
21 "indexed": true,
22 "internalType": "address",
23 "name": "spender",
24 "type": "address"
25 },
26 {
27 "indexed": false,
28 "internalType": "uint256",
29 "name": "value",
30 "type": "uint256"
31 }
32 ],
33 "name": "Approval",
34 "type": "event"
35 },
36 {
37 "anonymous": false,
38 "inputs": [
39 {
40 "indexed": true,
41 "internalType": "address",
42 "name": "from",
43 "type": "address"
44 },
45 {
46 "indexed": true,
47 "internalType": "address",
48 "name": "to",
49 "type": "address"
50 },
51 {
52 "indexed": false,
53 "internalType": "uint256",
54 "name": "value",
55 "type": "uint256"
56 }
57 ],
58 "name": "Transfer",
59 "type": "event"
60 },
61 {
62 "inputs": [
63 {
64 "internalType": "address",
65 "name": "contractAddress",
66 "type": "address"
67 }
68 ],
69 "name": "addAvailableCurrencyTokenContract",
70 "outputs": [],
71 "stateMutability": "nonpayable",
72 "type": "function"
73 },
74 {
75 "inputs": [
76 {
77 "internalType": "address",
78 "name": "newOwner",
79 "type": "address"
80 }
81 ],
82 "name": "addOwner",
83 "outputs": [],
84 "stateMutability": "nonpayable",
85 "type": "function"
86 },
87 {
88 "inputs": [
89 {
90 "internalType": "address",
91 "name": "owner",
92 "type": "address"
93 },
94 {
95 "internalType": "address",
96 "name": "spender",
97 "type": "address"
98 }
99 ],
100 "name": "allowance",
101 "outputs": [
102 {
103 "internalType": "uint256",
104 "name": "",
105 "type": "uint256"
106 }
107 ],
108 "stateMutability": "view",
109 "type": "function"
110 },
111 {
112 "inputs": [
113 {
114 "internalType": "address",
115 "name": "spender",
116 "type": "address"
117 },
118 {
119 "internalType": "uint256",
120 "name": "amount",
121 "type": "uint256"
122 }
123 ],
124 "name": "approve",
125 "outputs": [
126 {
127 "internalType": "bool",
128 "name": "",
129 "type": "bool"
130 }
131 ],
132 "stateMutability": "nonpayable",
133 "type": "function"
134 },
135 {
136 "inputs": [
137 {
138 "internalType": "address",
139 "name": "account",
140 "type": "address"
141 }
142 ],
143 "name": "balanceOf",
144 "outputs": [
145 {
146 "internalType": "uint256",
147 "name": "",
148 "type": "uint256"
149 }
150 ],
151 "stateMutability": "view",
152 "type": "function"
153 },
154 {
155 "inputs": [
156 {
157 "internalType": "uint256",
158 "name": "tokenId",
159 "type": "uint256"
160 },
161 {
162 "internalType": "uint256",
163 "name": "requestedAmount",
164 "type": "uint256"
165 },
166 {
167 "internalType": "address",
168 "name": "recipient",
169 "type": "address"
170 }
171 ],
172 "name": "buyWithEther",
173 "outputs": [],
174 "stateMutability": "payable",
175 "type": "function"
176 },
177 {
178 "inputs": [
179 {
180 "internalType": "uint256",
181 "name": "tokenId",
182 "type": "uint256"
183 },
184 {
185 "internalType": "uint256",
186 "name": "requestedAmount",
187 "type": "uint256"
188 },
189 {
190 "internalType": "address",
191 "name": "recipient",
192 "type": "address"
193 },
194 {
195 "internalType": "address",
196 "name": "currencyTokenContract",
197 "type": "address"
198 }
199 ],
200 "name": "buyWithToken",
201 "outputs": [],
202 "stateMutability": "nonpayable",
203 "type": "function"
204 },
205 {
206 "inputs": [
207 {
208 "internalType": "uint256",
209 "name": "tokenId",
210 "type": "uint256"
211 },
212 {
213 "internalType": "uint256",
214 "name": "requestedAmount",
215 "type": "uint256"
216 },
217 {
218 "internalType": "address",
219 "name": "recipient",
220 "type": "address"
221 }
222 ],
223 "name": "buyWithToken",
224 "outputs": [],
225 "stateMutability": "nonpayable",
226 "type": "function"
227 },
228 {
229 "inputs": [],
230 "name": "decimals",
231 "outputs": [
232 {
233 "internalType": "uint8",
234 "name": "",
235 "type": "uint8"
236 }
237 ],
238 "stateMutability": "view",
239 "type": "function"
240 },
241 {
242 "inputs": [
243 {
244 "internalType": "address",
245 "name": "spender",
246 "type": "address"
247 },
248 {
249 "internalType": "uint256",
250 "name": "subtractedValue",
251 "type": "uint256"
252 }
253 ],
254 "name": "decreaseAllowance",
255 "outputs": [
256 {
257 "internalType": "bool",
258 "name": "",
259 "type": "bool"
260 }
261 ],
262 "stateMutability": "nonpayable",
263 "type": "function"
264 },
265 {
266 "inputs": [],
267 "name": "getAvailableCurrencyTokenContractsList",
268 "outputs": [
269 {
270 "internalType": "address[]",
271 "name": "",
272 "type": "address[]"
273 }
274 ],
275 "stateMutability": "view",
276 "type": "function"
277 },
278 {
279 "inputs": [],
280 "name": "getBeneficiaryAddress",
281 "outputs": [
282 {
283 "internalType": "address",
284 "name": "",
285 "type": "address"
286 }
287 ],
288 "stateMutability": "view",
289 "type": "function"
290 },
291 {
292 "inputs": [],
293 "name": "getDefaultCurrencyTokenContract",
294 "outputs": [
295 {
296 "internalType": "address",
297 "name": "",
298 "type": "address"
299 }
300 ],
301 "stateMutability": "view",
302 "type": "function"
303 },
304 {
305 "inputs": [],
306 "name": "getDescription",
307 "outputs": [
308 {
309 "internalType": "string",
310 "name": "",
311 "type": "string"
312 }
313 ],
314 "stateMutability": "view",
315 "type": "function"
316 },
317 {
318 "inputs": [
319 {
320 "internalType": "uint256",
321 "name": "tokenId",
322 "type": "uint256"
323 },
324 {
325 "internalType": "address",
326 "name": "target",
327 "type": "address"
328 }
329 ],
330 "name": "getDropAvailableAmount",
331 "outputs": [
332 {
333 "internalType": "uint256",
334 "name": "",
335 "type": "uint256"
336 }
337 ],
338 "stateMutability": "view",
339 "type": "function"
340 },
341 {
342 "inputs": [
343 {
344 "internalType": "uint256",
345 "name": "tokenId",
346 "type": "uint256"
347 }
348 ],
349 "name": "getDropAvailableTotalAmount",
350 "outputs": [
351 {
352 "internalType": "uint256",
353 "name": "",
354 "type": "uint256"
355 }
356 ],
357 "stateMutability": "view",
358 "type": "function"
359 },
360 {
361 "inputs": [
362 {
363 "internalType": "uint256",
364 "name": "tokenId",
365 "type": "uint256"
366 }
367 ],
368 "name": "getDropPerAddressLimit",
369 "outputs": [
370 {
371 "internalType": "uint256",
372 "name": "",
373 "type": "uint256"
374 }
375 ],
376 "stateMutability": "view",
377 "type": "function"
378 },
379 {
380 "inputs": [
381 {
382 "internalType": "uint256",
383 "name": "tokenId",
384 "type": "uint256"
385 }
386 ],
387 "name": "getDropTotalLimit",
388 "outputs": [
389 {
390 "internalType": "uint256",
391 "name": "",
392 "type": "uint256"
393 }
394 ],
395 "stateMutability": "view",
396 "type": "function"
397 },
398 {
399 "inputs": [
400 {
401 "internalType": "uint256",
402 "name": "tokenId",
403 "type": "uint256"
404 },
405 {
406 "internalType": "address",
407 "name": "target",
408 "type": "address"
409 }
410 ],
411 "name": "getDroppedAmount",
412 "outputs": [
413 {
414 "internalType": "uint256",
415 "name": "",
416 "type": "uint256"
417 }
418 ],
419 "stateMutability": "view",
420 "type": "function"
421 },
422 {
423 "inputs": [
424 {
425 "internalType": "uint256",
426 "name": "tokenId",
427 "type": "uint256"
428 }
429 ],
430 "name": "getDroppedTotalAmount",
431 "outputs": [
432 {
433 "internalType": "uint256",
434 "name": "",
435 "type": "uint256"
436 }
437 ],
438 "stateMutability": "view",
439 "type": "function"
440 },
441 {
442 "inputs": [],
443 "name": "getOwners",
444 "outputs": [
445 {
446 "internalType": "address[]",
447 "name": "",
448 "type": "address[]"
449 }
450 ],
451 "stateMutability": "view",
452 "type": "function"
453 },
454 {
455 "inputs": [
456 {
457 "internalType": "uint256",
458 "name": "id",
459 "type": "uint256"
460 }
461 ],
462 "name": "getPriceEther",
463 "outputs": [
464 {
465 "internalType": "uint256",
466 "name": "",
467 "type": "uint256"
468 }
469 ],
470 "stateMutability": "view",
471 "type": "function"
472 },
473 {
474 "inputs": [
475 {
476 "internalType": "uint256",
477 "name": "id",
478 "type": "uint256"
479 }
480 ],
481 "name": "getPriceFiat",
482 "outputs": [
483 {
484 "internalType": "uint256",
485 "name": "",
486 "type": "uint256"
487 }
488 ],
489 "stateMutability": "view",
490 "type": "function"
491 },
492 {
493 "inputs": [
494 {
495 "internalType": "address",
496 "name": "currencyContract",
497 "type": "address"
498 },
499 {
500 "internalType": "uint256",
501 "name": "id",
502 "type": "uint256"
503 }
504 ],
505 "name": "getPriceToken",
506 "outputs": [
507 {
508 "internalType": "uint256",
509 "name": "",
510 "type": "uint256"
511 }
512 ],
513 "stateMutability": "view",
514 "type": "function"
515 },
516 {
517 "inputs": [
518 {
519 "internalType": "uint256",
520 "name": "id",
521 "type": "uint256"
522 }
523 ],
524 "name": "getPriceToken",
525 "outputs": [
526 {
527 "internalType": "uint256",
528 "name": "",
529 "type": "uint256"
530 }
531 ],
532 "stateMutability": "view",
533 "type": "function"
534 },
535 {
536 "inputs": [],
537 "name": "getTrustedForwarder",
538 "outputs": [
539 {
540 "internalType": "address",
541 "name": "forwarder",
542 "type": "address"
543 }
544 ],
545 "stateMutability": "view",
546 "type": "function"
547 },
548 {
549 "inputs": [],
550 "name": "getVersion",
551 "outputs": [
552 {
553 "internalType": "string",
554 "name": "version",
555 "type": "string"
556 }
557 ],
558 "stateMutability": "pure",
559 "type": "function"
560 },
561 {
562 "inputs": [
563 {
564 "internalType": "address",
565 "name": "spender",
566 "type": "address"
567 },
568 {
569 "internalType": "uint256",
570 "name": "addedValue",
571 "type": "uint256"
572 }
573 ],
574 "name": "increaseAllowance",
575 "outputs": [
576 {
577 "internalType": "bool",
578 "name": "",
579 "type": "bool"
580 }
581 ],
582 "stateMutability": "nonpayable",
583 "type": "function"
584 },
585 {
586 "inputs": [
587 {
588 "internalType": "address",
589 "name": "contractAddress",
590 "type": "address"
591 }
592 ],
593 "name": "isAvailableCurrencyTokenContract",
594 "outputs": [
595 {
596 "internalType": "bool",
597 "name": "",
598 "type": "bool"
599 }
600 ],
601 "stateMutability": "view",
602 "type": "function"
603 },
604 {
605 "inputs": [
606 {
607 "internalType": "address",
608 "name": "addr",
609 "type": "address"
610 }
611 ],
612 "name": "isOwner",
613 "outputs": [
614 {
615 "internalType": "bool",
616 "name": "",
617 "type": "bool"
618 }
619 ],
620 "stateMutability": "view",
621 "type": "function"
622 },
623 {
624 "inputs": [
625 {
626 "internalType": "address",
627 "name": "forwarder",
628 "type": "address"
629 }
630 ],
631 "name": "isTrustedForwarder",
632 "outputs": [
633 {
634 "internalType": "bool",
635 "name": "",
636 "type": "bool"
637 }
638 ],
639 "stateMutability": "view",
640 "type": "function"
641 },
642 {
643 "inputs": [
644 {
645 "internalType": "address",
646 "name": "account",
647 "type": "address"
648 },
649 {
650 "internalType": "uint256",
651 "name": "amount",
652 "type": "uint256"
653 }
654 ],
655 "name": "mint",
656 "outputs": [],
657 "stateMutability": "nonpayable",
658 "type": "function"
659 },
660 {
661 "inputs": [],
662 "name": "name",
663 "outputs": [
664 {
665 "internalType": "string",
666 "name": "",
667 "type": "string"
668 }
669 ],
670 "stateMutability": "view",
671 "type": "function"
672 },
673 {
674 "inputs": [
675 {
676 "internalType": "address",
677 "name": "contractAddress",
678 "type": "address"
679 }
680 ],
681 "name": "removeAvailableCurrencyTokenContract",
682 "outputs": [],
683 "stateMutability": "nonpayable",
684 "type": "function"
685 },
686 {
687 "inputs": [
688 {
689 "internalType": "address",
690 "name": "owner",
691 "type": "address"
692 }
693 ],
694 "name": "removeOwner",
695 "outputs": [],
696 "stateMutability": "nonpayable",
697 "type": "function"
698 },
699 {
700 "inputs": [
701 {
702 "internalType": "uint256",
703 "name": "tokenId",
704 "type": "uint256"
705 },
706 {
707 "internalType": "uint256",
708 "name": "amount",
709 "type": "uint256"
710 },
711 {
712 "internalType": "address",
713 "name": "target",
714 "type": "address"
715 }
716 ],
717 "name": "requestToken",
718 "outputs": [],
719 "stateMutability": "nonpayable",
720 "type": "function"
721 },
722 {
723 "inputs": [
724 {
725 "internalType": "address payable",
726 "name": "addr",
727 "type": "address"
728 }
729 ],
730 "name": "setBeneficiaryAddress",
731 "outputs": [],
732 "stateMutability": "nonpayable",
733 "type": "function"
734 },
735 {
736 "inputs": [
737 {
738 "internalType": "address",
739 "name": "tokenContract",
740 "type": "address"
741 }
742 ],
743 "name": "setDefaultCurrencyTokenContractAddress",
744 "outputs": [],
745 "stateMutability": "nonpayable",
746 "type": "function"
747 },
748 {
749 "inputs": [
750 {
751 "internalType": "string",
752 "name": "description",
753 "type": "string"
754 }
755 ],
756 "name": "setDescription",
757 "outputs": [],
758 "stateMutability": "nonpayable",
759 "type": "function"
760 },
761 {
762 "inputs": [
763 {
764 "internalType": "uint256",
765 "name": "tokenId",
766 "type": "uint256"
767 },
768 {
769 "internalType": "uint256",
770 "name": "amount",
771 "type": "uint256"
772 }
773 ],
774 "name": "setDropPerAddressLimit",
775 "outputs": [],
776 "stateMutability": "nonpayable",
777 "type": "function"
778 },
779 {
780 "inputs": [
781 {
782 "internalType": "uint256",
783 "name": "tokenId",
784 "type": "uint256"
785 },
786 {
787 "internalType": "uint256",
788 "name": "amount",
789 "type": "uint256"
790 }
791 ],
792 "name": "setDropTotalLimit",
793 "outputs": [],
794 "stateMutability": "nonpayable",
795 "type": "function"
796 },
797 {
798 "inputs": [
799 {
800 "internalType": "string",
801 "name": "name",
802 "type": "string"
803 }
804 ],
805 "name": "setName",
806 "outputs": [],
807 "stateMutability": "nonpayable",
808 "type": "function"
809 },
810 {
811 "inputs": [
812 {
813 "internalType": "uint256",
814 "name": "id",
815 "type": "uint256"
816 },
817 {
818 "internalType": "uint256",
819 "name": "price",
820 "type": "uint256"
821 }
822 ],
823 "name": "setPriceEther",
824 "outputs": [],
825 "stateMutability": "nonpayable",
826 "type": "function"
827 },
828 {
829 "inputs": [
830 {
831 "internalType": "uint256",
832 "name": "id",
833 "type": "uint256"
834 },
835 {
836 "internalType": "uint256",
837 "name": "price",
838 "type": "uint256"
839 }
840 ],
841 "name": "setPriceFiat",
842 "outputs": [],
843 "stateMutability": "nonpayable",
844 "type": "function"
845 },
846 {
847 "inputs": [
848 {
849 "internalType": "uint256",
850 "name": "id",
851 "type": "uint256"
852 },
853 {
854 "internalType": "uint256",
855 "name": "price",
856 "type": "uint256"
857 }
858 ],
859 "name": "setPriceToken",
860 "outputs": [],
861 "stateMutability": "nonpayable",
862 "type": "function"
863 },
864 {
865 "inputs": [
866 {
867 "internalType": "address",
868 "name": "currencyContract",
869 "type": "address"
870 },
871 {
872 "internalType": "uint256",
873 "name": "id",
874 "type": "uint256"
875 },
876 {
877 "internalType": "uint256",
878 "name": "price",
879 "type": "uint256"
880 }
881 ],
882 "name": "setPriceToken",
883 "outputs": [],
884 "stateMutability": "nonpayable",
885 "type": "function"
886 },
887 {
888 "inputs": [
889 {
890 "internalType": "string",
891 "name": "symbol",
892 "type": "string"
893 }
894 ],
895 "name": "setSymbol",
896 "outputs": [],
897 "stateMutability": "nonpayable",
898 "type": "function"
899 },
900 {
901 "inputs": [
902 {
903 "internalType": "address",
904 "name": "_forwarder",
905 "type": "address"
906 }
907 ],
908 "name": "setTrustedForwarder",
909 "outputs": [],
910 "stateMutability": "nonpayable",
911 "type": "function"
912 },
913 {
914 "inputs": [
915 {
916 "internalType": "bytes4",
917 "name": "interfaceId",
918 "type": "bytes4"
919 }
920 ],
921 "name": "supportsInterface",
922 "outputs": [
923 {
924 "internalType": "bool",
925 "name": "",
926 "type": "bool"
927 }
928 ],
929 "stateMutability": "view",
930 "type": "function"
931 },
932 {
933 "inputs": [],
934 "name": "symbol",
935 "outputs": [
936 {
937 "internalType": "string",
938 "name": "",
939 "type": "string"
940 }
941 ],
942 "stateMutability": "view",
943 "type": "function"
944 },
945 {
946 "inputs": [],
947 "name": "totalSupply",
948 "outputs": [
949 {
950 "internalType": "uint256",
951 "name": "",
952 "type": "uint256"
953 }
954 ],
955 "stateMutability": "view",
956 "type": "function"
957 },
958 {
959 "inputs": [
960 {
961 "internalType": "address",
962 "name": "to",
963 "type": "address"
964 },
965 {
966 "internalType": "uint256",
967 "name": "amount",
968 "type": "uint256"
969 }
970 ],
971 "name": "transfer",
972 "outputs": [
973 {
974 "internalType": "bool",
975 "name": "",
976 "type": "bool"
977 }
978 ],
979 "stateMutability": "nonpayable",
980 "type": "function"
981 },
982 {
983 "inputs": [
984 {
985 "internalType": "address",
986 "name": "from",
987 "type": "address"
988 },
989 {
990 "internalType": "address",
991 "name": "to",
992 "type": "address"
993 },
994 {
995 "internalType": "uint256",
996 "name": "amount",
997 "type": "uint256"
998 }
999 ],
1000 "name": "transferFrom",
1001 "outputs": [
1002 {
1003 "internalType": "bool",
1004 "name": "",
1005 "type": "bool"
1006 }
1007 ],
1008 "stateMutability": "nonpayable",
1009 "type": "function"
1010 }
1011 ],
1012 "bytecode": "0x60806040523480156200001157600080fd5b50604080518082018252601581527f43726564656e7a612053746f7265642056616c7565000000000000000000000060208083019182528351808501909452600484526310d4915160e21b908401528151919291620000739160039162000208565b5080516200008990600490602084019062000208565b505050620000a6620000a0620000ac60201b60201c565b620000c8565b620002eb565b6000620000c3620001d260201b620016931760201c565b905090565b60065415801590620000ea57503360009081526005602052604090205460ff16155b15620001475760405162461bcd60e51b815260206004820152602260248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604482015261371760f11b606482015260840160405180910390fd5b6001600160a01b03811660009081526005602052604090205460ff16156200016c5750565b6001600160a01b03166000818152600560205260408120805460ff191660019081179091556006805491820181559091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319169091179055565b600060143610801590620001f057506008546001600160a01b031633145b1562000203575060131936013560601c90565b503390565b8280546200021690620002ae565b90600052602060002090601f0160209004810192826200023a576000855562000285565b82601f106200025557805160ff191683800117855562000285565b8280016001018555821562000285579182015b828111156200028557825182559160200191906001019062000268565b506200029392915062000297565b5090565b5b8082111562000293576000815560010162000298565b600181811c90821680620002c357607f821691505b60208210811415620002e557634e487b7160e01b600052602260045260246000fd5b50919050565b61257a80620002fb6000396000f3fe6080604052600436106103195760003560e01c8063609d58ad116101ab578063adfadad3116100f7578063d1eff89511610095578063da7422281161006f578063da74222814610a04578063dd62ed3e14610a24578063e1461f1214610a44578063ec6be06e14610a7157600080fd5b8063d1eff895146109a6578063d36223f1146109c4578063d93f5bed146109e457600080fd5b8063b84c8246116100d1578063b84c82461461091b578063c47f00271461093b578063cafc72d31461095b578063ce1b815f1461098857600080fd5b8063adfadad314610895578063b33a599f146108c2578063b68de974146108e257600080fd5b806388d0f86a1161016457806395d89b411161013e57806395d89b411461082b578063a0e67e2b14610840578063a457c2d714610855578063a9059cbb1461087557600080fd5b806388d0f86a146107cb5780638e1b5aa9146107eb57806390c3f38f1461080b57600080fd5b8063609d58ad146106f35780637065cb481461072057806370a0823114610740578063724e5c17146107765780638003e27f1461079657806380dc439e146107b857600080fd5b80632217e9751161026a5780633a932dba116102235780634fe50531116101fd5780634fe505311461066457806355349e6714610684578063572b6c05146106a4578063578680be146106d357600080fd5b80633a932dba146106045780633de4fdc81461062457806340c10f191461064457600080fd5b80632217e9751461052f57806323b872dd1461054f5780632f54bf6e1461056f578063313ce567146105a8578063346b327b146105c457806339509351146105e457600080fd5b806316bef596116102d757806318160ddd116102b157806318160ddd146104a2578063192c1756146104b75780631a092541146104fa5780631abe7cb31461050f57600080fd5b806316bef5961461042e578063173825d914610460578063177ed0f31461048257600080fd5b8062fbe0c51461031e57806301ffc9a71461035e578063031f5c871461038e57806306fdde03146103ae578063095ea7b3146103d05780630d8e6e2c146103f0575b600080fd5b34801561032a57600080fd5b5061034b61033936600461218a565b60009081526011602052604090205490565b6040519081526020015b60405180910390f35b34801561036a57600080fd5b5061037e6103793660046120b8565b610a91565b6040519015158152602001610355565b34801561039a57600080fd5b5061034b6103a9366004612039565b610ae3565b3480156103ba57600080fd5b506103c3610b0b565b60405161035591906122b5565b3480156103dc57600080fd5b5061037e6103eb366004612039565b610b9d565b3480156103fc57600080fd5b5060408051808201909152601581527443726564656e7a61546f6b656e207620312e302e3160581b60208201526103c3565b34801561043a57600080fd5b50600c546001600160a01b03165b6040516001600160a01b039091168152602001610355565b34801561046c57600080fd5b5061048061047b366004611fa5565b610bbf565b005b34801561048e57600080fd5b5061034b61049d36600461218a565b610c85565b3480156104ae57600080fd5b5060025461034b565b3480156104c357600080fd5b5061034b6104d23660046121a2565b60009182526012602090815260408084206001600160a01b0393909316845291905290205490565b34801561050657600080fd5b506103c3610c9e565b34801561051b57600080fd5b5061048061052a3660046121c6565b610cad565b34801561053b57600080fd5b5061034b61054a36600461218a565b610ce6565b34801561055b57600080fd5b5061037e61056a366004611ff9565b610d34565b34801561057b57600080fd5b5061037e61058a366004611fa5565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156105b457600080fd5b5060405160068152602001610355565b3480156105d057600080fd5b506104806105df3660046121e7565b610d62565b3480156105f057600080fd5b5061037e6105ff366004612039565b610de8565b34801561061057600080fd5b5061048061061f366004611fa5565b610e14565b34801561063057600080fd5b5061048061063f366004611fa5565b610e5b565b34801561065057600080fd5b5061048061065f366004612039565b610f0c565b34801561067057600080fd5b5061048061067f3660046121c6565b610f56565b34801561069057600080fd5b5061048061069f3660046121c6565b610f8f565b3480156106b057600080fd5b5061037e6106bf366004611fa5565b6008546001600160a01b0391821691161490565b3480156106df57600080fd5b506104806106ee3660046121c6565b610fc8565b3480156106ff57600080fd5b5061034b61070e36600461218a565b60009081526010602052604090205490565b34801561072c57600080fd5b5061048061073b366004611fa5565b611006565b34801561074c57600080fd5b5061034b61075b366004611fa5565b6001600160a01b031660009081526020819052604090205490565b34801561078257600080fd5b5061048061079136600461221f565b6110ce565b3480156107a257600080fd5b506107ab61110b565b6040516103559190612268565b6104806107c63660046121e7565b61116c565b3480156107d757600080fd5b506104806107e63660046121c6565b6111e8565b3480156107f757600080fd5b5061034b6108063660046121a2565b611221565b34801561081757600080fd5b506104806108263660046120e0565b6112b8565b34801561083757600080fd5b506103c36112f2565b34801561084c57600080fd5b506107ab611301565b34801561086157600080fd5b5061037e610870366004612039565b611361565b34801561088157600080fd5b5061037e610890366004612039565b6113e7565b3480156108a157600080fd5b5061034b6108b036600461218a565b6000908152600a602052604090205490565b3480156108ce57600080fd5b506104806108dd366004611fa5565b6113ff565b3480156108ee57600080fd5b5061037e6108fd366004611fa5565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561092757600080fd5b506104806109363660046120e0565b6114b9565b34801561094757600080fd5b506104806109563660046120e0565b6114f3565b34801561096757600080fd5b5061034b61097636600461218a565b60009081526013602052604090205490565b34801561099457600080fd5b506008546001600160a01b0316610448565b3480156109b257600080fd5b50600f546001600160a01b0316610448565b3480156109d057600080fd5b506104806109df3660046121e7565b61152d565b3480156109f057600080fd5b506104806109ff366004612064565b61158d565b348015610a1057600080fd5b50610480610a1f366004611fa5565b6115da565b348015610a3057600080fd5b5061034b610a3f366004611fc1565b61161f565b348015610a5057600080fd5b5061034b610a5f36600461218a565b60009081526009602052604090205490565b348015610a7d57600080fd5b50610480610a8c366004611fa5565b61164a565b60006001600160e01b031982166336372b0760e01b1480610ac257506001600160e01b0319821663a219a02560e01b145b80610add57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001600160a01b03919091166000908152600b60209081526040808320938352929052205490565b606060148054610b1a906124ad565b80601f0160208091040260200160405190810160405280929190818152602001828054610b46906124ad565b8015610b935780601f10610b6857610100808354040283529160200191610b93565b820191906000526020600020905b815481529060010190602001808311610b7657829003601f168201915b5050505050905090565b600080610ba86116c7565b9050610bb58185856116d6565b5060019392505050565b610bca61058a6116c7565b610bef5760405162461bcd60e51b8152600401610be690612308565b60405180910390fd5b6001600160a01b03811660009081526005602052604090205460ff16610c575760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610be6565b6001600160a01b0381166000908152600560205260409020805460ff19169055610c826006826117fa565b50565b600c54600090610add906001600160a01b031683610ae3565b606060078054610b1a906124ad565b610cb861058a6116c7565b610cd45760405162461bcd60e51b8152600401610be690612308565b60009182526009602052604090912055565b600081815260106020908152604080832054601390925282205482911115610add57600083815260136020908152604080832054601090925290912054610d2d9190612496565b9392505050565b600080610d3f6116c7565b9050610d4c85828561193c565b610d578585856119b0565b506001949350505050565b6000610d706006600a6123cc565b610d7a9084612477565b905080610d88600084611221565b1015610dcc5760405162461bcd60e51b8152602060048201526013602482015272111c9bdc081b1a5b5a5d08195e18d959591959606a1b6044820152606401610be6565b610dd860008284611b54565b610de28282611bb3565b50505050565b600080610df36116c7565b9050610bb5818585610e05858961161f565b610e0f9190612371565b6116d6565b610e1f61058a6116c7565b610e3b5760405162461bcd60e51b8152600401610be690612308565b600c80546001600160a01b0319166001600160a01b038316179055610c82815b610e6661058a6116c7565b610e825760405162461bcd60e51b8152600401610be690612308565b6001600160a01b0381166000908152600d602052604090205460ff1615610ea65750565b6001600160a01b03166000818152600d60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b0319169091179055565b610f1761058a6116c7565b610f335760405162461bcd60e51b8152600401610be690612308565b610f5282610f436006600a6123cc565b610f4d9084612477565b611bb3565b5050565b610f6161058a6116c7565b610f7d5760405162461bcd60e51b8152600401610be690612308565b60009182526010602052604090912055565b610f9a61058a6116c7565b610fb65760405162461bcd60e51b8152600401610be690612308565b60009182526011602052604090912055565b610fd361058a6116c7565b610fef5760405162461bcd60e51b8152600401610be690612308565b600c54610f52906001600160a01b0316838361158d565b6006541580159061102757503360009081526005602052604090205460ff16155b156110445760405162461bcd60e51b8152600401610be690612308565b6001600160a01b03811660009081526005602052604090205460ff16156110685750565b6001600160a01b03166000818152600560205260408120805460ff191660019081179091556006805491820181559091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319169091179055565b60405162461bcd60e51b815260206004820152601260248201527113d4115490551253d397d11254d05093115160721b6044820152606401610be6565b6060600e805480602002602001604051908101604052809291908181526020018280548015610b9357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611145575050505050905090565b600f546001600160a01b03166000908152602081905260409020548211156111c15760405162461bcd60e51b815260206004820152600860248201526714d3d31117d3d55560c21b6044820152606401610be6565b6111cc600083611c72565b600f546111e3906001600160a01b031682846119b0565b505050565b6111f361058a6116c7565b61120f5760405162461bcd60e51b8152600401610be690612308565b6000918252600a602052604090912055565b60008061122d84610ce6565b600085815260116020908152604080832054601283528184206001600160a01b03891685529092528220549293509091101561129f5760008581526012602090815260408083206001600160a01b038816845282528083205488845260119092529091205461129c9190612496565b90505b808211156112b0579150610add9050565b509050610add565b6112c361058a6116c7565b6112df5760405162461bcd60e51b8152600401610be690612308565b8051610f52906007906020840190611f0c565b606060158054610b1a906124ad565b60606006805480602002602001604051908101604052809291908181526020018280548015610b93576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311611145575050505050905090565b60008061136c6116c7565b9050600061137a828661161f565b9050838110156113da5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610be6565b610d5782868684036116d6565b6000806113f26116c7565b9050610bb58185856119b0565b61140a61058a6116c7565b6114265760405162461bcd60e51b8152600401610be690612308565b6001600160a01b0381166000908152600d602052604090205460ff1661148e5760405162461bcd60e51b815260206004820181905260248201527f54617267657420636f6e7472616374206973206e6f7420617661696c61626c656044820152606401610be6565b6001600160a01b0381166000908152600d60205260409020805460ff19169055610c82600e826117fa565b6114c461058a6116c7565b6114e05760405162461bcd60e51b8152600401610be690612308565b8051610f52906015906020840190611f0c565b6114fe61058a6116c7565b61151a5760405162461bcd60e51b8152600401610be690612308565b8051610f52906014906020840190611f0c565b600f546001600160a01b03166000908152602081905260409020548211156115825760405162461bcd60e51b815260206004820152600860248201526714d3d31117d3d55560c21b6044820152606401610be6565b6111cc600083611d60565b61159861058a6116c7565b6115b45760405162461bcd60e51b8152600401610be690612308565b6001600160a01b039092166000908152600b602090815260408083209383529290522055565b6115e561058a6116c7565b6116015760405162461bcd60e51b8152600401610be690612308565b600880546001600160a01b0319166001600160a01b03831617905550565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61165561058a6116c7565b6116715760405162461bcd60e51b8152600401610be690612308565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000601436108015906116b057506008546001600160a01b031633145b156116c2575060131936013560601c90565b503390565b60006116d1611693565b905090565b6001600160a01b0383166117385760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610be6565b6001600160a01b0382166117995760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610be6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60005b82548110156111e357816001600160a01b031683828154811061183057634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b0316141561192a578254839061185b90600190612496565b8154811061187957634e487b7160e01b600052603260045260246000fd5b9060005260206000200160009054906101000a90046001600160a01b03168382815481106118b757634e487b7160e01b600052603260045260246000fd5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508280548061190357634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80611934816124e8565b9150506117fd565b6000611948848461161f565b90506000198114610de257818110156119a35760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610be6565b610de284848484036116d6565b6001600160a01b038316611a145760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610be6565b6001600160a01b038216611a765760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610be6565b6001600160a01b03831660009081526020819052604090205481811015611aee5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610be6565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610de2565b60008381526012602090815260408083206001600160a01b038516845290915281208054849290611b86908490612371565b909155505060008381526013602052604081208054849290611ba9908490612371565b9091555050505050565b6001600160a01b038216611c095760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610be6565b8060026000828254611c1b9190612371565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6000828152600a602052604081205411611c9e5760405162461bcd60e51b8152600401610be69061234a565b600f546001600160a01b0316611cc65760405162461bcd60e51b8152600401610be69061234a565b6000828152600a6020526040812054611ce0908390612477565b905080341015611d275760405162461bcd60e51b8152602060048201526012602482015271494e53554646494349454e545f56414c554560701b6044820152606401610be6565b600f546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050158015610de2573d6000803e3d6000fd5b600c546001600160a01b03166000818152600d6020526040902054610f5291849184919060ff16611dd35760405162461bcd60e51b815260206004820152601f60248201527f43555252454e43595f434f4e54524143545f4e4f545f535550504f52544544006044820152606401610be6565b6000611ddf8285610ae3565b11611dfc5760405162461bcd60e51b8152600401610be69061234a565b600f546001600160a01b0316611e245760405162461bcd60e51b8152600401610be69061234a565b6001600160a01b038116611e4a5760405162461bcd60e51b8152600401610be69061234a565b6000611e568285610ae3565b611e609084612477565b9050816001600160a01b0381166323b872dd611e7a6116c7565b600f5460405160e084901b6001600160e01b03191681526001600160a01b0392831660048201529116602482015260448101859052606401602060405180830381600087803b158015611ecc57600080fd5b505af1158015611ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f049190612098565b505050505050565b828054611f18906124ad565b90600052602060002090601f016020900481019282611f3a5760008555611f80565b82601f10611f5357805160ff1916838001178555611f80565b82800160010185558215611f80579182015b82811115611f80578251825591602001919060010190611f65565b50611f8c929150611f90565b5090565b5b80821115611f8c5760008155600101611f91565b600060208284031215611fb6578081fd5b8135610d2d8161252f565b60008060408385031215611fd3578081fd5b8235611fde8161252f565b91506020830135611fee8161252f565b809150509250929050565b60008060006060848603121561200d578081fd5b83356120188161252f565b925060208401356120288161252f565b929592945050506040919091013590565b6000806040838503121561204b578182fd5b82356120568161252f565b946020939093013593505050565b600080600060608486031215612078578283fd5b83356120838161252f565b95602085013595506040909401359392505050565b6000602082840312156120a9578081fd5b81518015158114610d2d578182fd5b6000602082840312156120c9578081fd5b81356001600160e01b031981168114610d2d578182fd5b6000602082840312156120f1578081fd5b813567ffffffffffffffff80821115612108578283fd5b818401915084601f83011261211b578283fd5b81358181111561212d5761212d612519565b604051601f8201601f19908116603f0116810190838211818310171561215557612155612519565b8160405282815287602084870101111561216d578586fd5b826020860160208301379182016020019490945295945050505050565b60006020828403121561219b578081fd5b5035919050565b600080604083850312156121b4578182fd5b823591506020830135611fee8161252f565b600080604083850312156121d8578182fd5b50508035926020909101359150565b6000806000606084860312156121fb578283fd5b833592506020840135915060408401356122148161252f565b809150509250925092565b60008060008060808587031215612234578081fd5b8435935060208501359250604085013561224d8161252f565b9150606085013561225d8161252f565b939692955090935050565b6020808252825182820181905260009190848201906040850190845b818110156122a95783516001600160a01b031683529284019291840191600101612284565b50909695505050505050565b6000602080835283518082850152825b818110156122e1578581018301518582016040015282016122c5565b818111156122f25783604083870101525b50601f01601f1916929092016040019392505050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b6020808252600d908201526c14d1531317d11254d050931151609a1b604082015260600190565b6000821982111561238457612384612503565b500190565b600181815b808511156123c45781600019048211156123aa576123aa612503565b808516156123b757918102915b93841c939080029061238e565b509250929050565b6000610d2d60ff8416836000826123e557506001610add565b816123f257506000610add565b816001811461240857600281146124125761242e565b6001915050610add565b60ff84111561242357612423612503565b50506001821b610add565b5060208310610133831016604e8410600b8410161715612451575081810a610add565b61245b8383612389565b806000190482111561246f5761246f612503565b029392505050565b600081600019048311821515161561249157612491612503565b500290565b6000828210156124a8576124a8612503565b500390565b600181811c908216806124c157607f821691505b602082108114156124e257634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156124fc576124fc612503565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610c8257600080fdfea26469706673582212206bdb30eee502f707ca86a2cb7eb80d61a3ee8622a07a0b06cc9a8704a76071df64736f6c63430008040033",
1013 "deployedBytecode": "0x6080604052600436106103195760003560e01c8063609d58ad116101ab578063adfadad3116100f7578063d1eff89511610095578063da7422281161006f578063da74222814610a04578063dd62ed3e14610a24578063e1461f1214610a44578063ec6be06e14610a7157600080fd5b8063d1eff895146109a6578063d36223f1146109c4578063d93f5bed146109e457600080fd5b8063b84c8246116100d1578063b84c82461461091b578063c47f00271461093b578063cafc72d31461095b578063ce1b815f1461098857600080fd5b8063adfadad314610895578063b33a599f146108c2578063b68de974146108e257600080fd5b806388d0f86a1161016457806395d89b411161013e57806395d89b411461082b578063a0e67e2b14610840578063a457c2d714610855578063a9059cbb1461087557600080fd5b806388d0f86a146107cb5780638e1b5aa9146107eb57806390c3f38f1461080b57600080fd5b8063609d58ad146106f35780637065cb481461072057806370a0823114610740578063724e5c17146107765780638003e27f1461079657806380dc439e146107b857600080fd5b80632217e9751161026a5780633a932dba116102235780634fe50531116101fd5780634fe505311461066457806355349e6714610684578063572b6c05146106a4578063578680be146106d357600080fd5b80633a932dba146106045780633de4fdc81461062457806340c10f191461064457600080fd5b80632217e9751461052f57806323b872dd1461054f5780632f54bf6e1461056f578063313ce567146105a8578063346b327b146105c457806339509351146105e457600080fd5b806316bef596116102d757806318160ddd116102b157806318160ddd146104a2578063192c1756146104b75780631a092541146104fa5780631abe7cb31461050f57600080fd5b806316bef5961461042e578063173825d914610460578063177ed0f31461048257600080fd5b8062fbe0c51461031e57806301ffc9a71461035e578063031f5c871461038e57806306fdde03146103ae578063095ea7b3146103d05780630d8e6e2c146103f0575b600080fd5b34801561032a57600080fd5b5061034b61033936600461218a565b60009081526011602052604090205490565b6040519081526020015b60405180910390f35b34801561036a57600080fd5b5061037e6103793660046120b8565b610a91565b6040519015158152602001610355565b34801561039a57600080fd5b5061034b6103a9366004612039565b610ae3565b3480156103ba57600080fd5b506103c3610b0b565b60405161035591906122b5565b3480156103dc57600080fd5b5061037e6103eb366004612039565b610b9d565b3480156103fc57600080fd5b5060408051808201909152601581527443726564656e7a61546f6b656e207620312e302e3160581b60208201526103c3565b34801561043a57600080fd5b50600c546001600160a01b03165b6040516001600160a01b039091168152602001610355565b34801561046c57600080fd5b5061048061047b366004611fa5565b610bbf565b005b34801561048e57600080fd5b5061034b61049d36600461218a565b610c85565b3480156104ae57600080fd5b5060025461034b565b3480156104c357600080fd5b5061034b6104d23660046121a2565b60009182526012602090815260408084206001600160a01b0393909316845291905290205490565b34801561050657600080fd5b506103c3610c9e565b34801561051b57600080fd5b5061048061052a3660046121c6565b610cad565b34801561053b57600080fd5b5061034b61054a36600461218a565b610ce6565b34801561055b57600080fd5b5061037e61056a366004611ff9565b610d34565b34801561057b57600080fd5b5061037e61058a366004611fa5565b6001600160a01b031660009081526005602052604090205460ff1690565b3480156105b457600080fd5b5060405160068152602001610355565b3480156105d057600080fd5b506104806105df3660046121e7565b610d62565b3480156105f057600080fd5b5061037e6105ff366004612039565b610de8565b34801561061057600080fd5b5061048061061f366004611fa5565b610e14565b34801561063057600080fd5b5061048061063f366004611fa5565b610e5b565b34801561065057600080fd5b5061048061065f366004612039565b610f0c565b34801561067057600080fd5b5061048061067f3660046121c6565b610f56565b34801561069057600080fd5b5061048061069f3660046121c6565b610f8f565b3480156106b057600080fd5b5061037e6106bf366004611fa5565b6008546001600160a01b0391821691161490565b3480156106df57600080fd5b506104806106ee3660046121c6565b610fc8565b3480156106ff57600080fd5b5061034b61070e36600461218a565b60009081526010602052604090205490565b34801561072c57600080fd5b5061048061073b366004611fa5565b611006565b34801561074c57600080fd5b5061034b61075b366004611fa5565b6001600160a01b031660009081526020819052604090205490565b34801561078257600080fd5b5061048061079136600461221f565b6110ce565b3480156107a257600080fd5b506107ab61110b565b6040516103559190612268565b6104806107c63660046121e7565b61116c565b3480156107d757600080fd5b506104806107e63660046121c6565b6111e8565b3480156107f757600080fd5b5061034b6108063660046121a2565b611221565b34801561081757600080fd5b506104806108263660046120e0565b6112b8565b34801561083757600080fd5b506103c36112f2565b34801561084c57600080fd5b506107ab611301565b34801561086157600080fd5b5061037e610870366004612039565b611361565b34801561088157600080fd5b5061037e610890366004612039565b6113e7565b3480156108a157600080fd5b5061034b6108b036600461218a565b6000908152600a602052604090205490565b3480156108ce57600080fd5b506104806108dd366004611fa5565b6113ff565b3480156108ee57600080fd5b5061037e6108fd366004611fa5565b6001600160a01b03166000908152600d602052604090205460ff1690565b34801561092757600080fd5b506104806109363660046120e0565b6114b9565b34801561094757600080fd5b506104806109563660046120e0565b6114f3565b34801561096757600080fd5b5061034b61097636600461218a565b60009081526013602052604090205490565b34801561099457600080fd5b506008546001600160a01b0316610448565b3480156109b257600080fd5b50600f546001600160a01b0316610448565b3480156109d057600080fd5b506104806109df3660046121e7565b61152d565b3480156109f057600080fd5b506104806109ff366004612064565b61158d565b348015610a1057600080fd5b50610480610a1f366004611fa5565b6115da565b348015610a3057600080fd5b5061034b610a3f366004611fc1565b61161f565b348015610a5057600080fd5b5061034b610a5f36600461218a565b60009081526009602052604090205490565b348015610a7d57600080fd5b50610480610a8c366004611fa5565b61164a565b60006001600160e01b031982166336372b0760e01b1480610ac257506001600160e01b0319821663a219a02560e01b145b80610add57506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001600160a01b03919091166000908152600b60209081526040808320938352929052205490565b606060148054610b1a906124ad565b80601f0160208091040260200160405190810160405280929190818152602001828054610b46906124ad565b8015610b935780601f10610b6857610100808354040283529160200191610b93565b820191906000526020600020905b815481529060010190602001808311610b7657829003601f168201915b5050505050905090565b600080610ba86116c7565b9050610bb58185856116d6565b5060019392505050565b610bca61058a6116c7565b610bef5760405162461bcd60e51b8152600401610be690612308565b60405180910390fd5b6001600160a01b03811660009081526005602052604090205460ff16610c575760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610be6565b6001600160a01b0381166000908152600560205260409020805460ff19169055610c826006826117fa565b50565b600c54600090610add906001600160a01b031683610ae3565b606060078054610b1a906124ad565b610cb861058a6116c7565b610cd45760405162461bcd60e51b8152600401610be690612308565b60009182526009602052604090912055565b600081815260106020908152604080832054601390925282205482911115610add57600083815260136020908152604080832054601090925290912054610d2d9190612496565b9392505050565b600080610d3f6116c7565b9050610d4c85828561193c565b610d578585856119b0565b506001949350505050565b6000610d706006600a6123cc565b610d7a9084612477565b905080610d88600084611221565b1015610dcc5760405162461bcd60e51b8152602060048201526013602482015272111c9bdc081b1a5b5a5d08195e18d959591959606a1b6044820152606401610be6565b610dd860008284611b54565b610de28282611bb3565b50505050565b600080610df36116c7565b9050610bb5818585610e05858961161f565b610e0f9190612371565b6116d6565b610e1f61058a6116c7565b610e3b5760405162461bcd60e51b8152600401610be690612308565b600c80546001600160a01b0319166001600160a01b038316179055610c82815b610e6661058a6116c7565b610e825760405162461bcd60e51b8152600401610be690612308565b6001600160a01b0381166000908152600d602052604090205460ff1615610ea65750565b6001600160a01b03166000818152600d60205260408120805460ff19166001908117909155600e805491820181559091527fbb7b4a454dc3493923482f07822329ed19e8244eff582cc204f8554c3620c3fd0180546001600160a01b0319169091179055565b610f1761058a6116c7565b610f335760405162461bcd60e51b8152600401610be690612308565b610f5282610f436006600a6123cc565b610f4d9084612477565b611bb3565b5050565b610f6161058a6116c7565b610f7d5760405162461bcd60e51b8152600401610be690612308565b60009182526010602052604090912055565b610f9a61058a6116c7565b610fb65760405162461bcd60e51b8152600401610be690612308565b60009182526011602052604090912055565b610fd361058a6116c7565b610fef5760405162461bcd60e51b8152600401610be690612308565b600c54610f52906001600160a01b0316838361158d565b6006541580159061102757503360009081526005602052604090205460ff16155b156110445760405162461bcd60e51b8152600401610be690612308565b6001600160a01b03811660009081526005602052604090205460ff16156110685750565b6001600160a01b03166000818152600560205260408120805460ff191660019081179091556006805491820181559091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319169091179055565b60405162461bcd60e51b815260206004820152601260248201527113d4115490551253d397d11254d05093115160721b6044820152606401610be6565b6060600e805480602002602001604051908101604052809291908181526020018280548015610b9357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611145575050505050905090565b600f546001600160a01b03166000908152602081905260409020548211156111c15760405162461bcd60e51b815260206004820152600860248201526714d3d31117d3d55560c21b6044820152606401610be6565b6111cc600083611c72565b600f546111e3906001600160a01b031682846119b0565b505050565b6111f361058a6116c7565b61120f5760405162461bcd60e51b8152600401610be690612308565b6000918252600a602052604090912055565b60008061122d84610ce6565b600085815260116020908152604080832054601283528184206001600160a01b03891685529092528220549293509091101561129f5760008581526012602090815260408083206001600160a01b038816845282528083205488845260119092529091205461129c9190612496565b90505b808211156112b0579150610add9050565b509050610add565b6112c361058a6116c7565b6112df5760405162461bcd60e51b8152600401610be690612308565b8051610f52906007906020840190611f0c565b606060158054610b1a906124ad565b60606006805480602002602001604051908101604052809291908181526020018280548015610b93576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311611145575050505050905090565b60008061136c6116c7565b9050600061137a828661161f565b9050838110156113da5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610be6565b610d5782868684036116d6565b6000806113f26116c7565b9050610bb58185856119b0565b61140a61058a6116c7565b6114265760405162461bcd60e51b8152600401610be690612308565b6001600160a01b0381166000908152600d602052604090205460ff1661148e5760405162461bcd60e51b815260206004820181905260248201527f54617267657420636f6e7472616374206973206e6f7420617661696c61626c656044820152606401610be6565b6001600160a01b0381166000908152600d60205260409020805460ff19169055610c82600e826117fa565b6114c461058a6116c7565b6114e05760405162461bcd60e51b8152600401610be690612308565b8051610f52906015906020840190611f0c565b6114fe61058a6116c7565b61151a5760405162461bcd60e51b8152600401610be690612308565b8051610f52906014906020840190611f0c565b600f546001600160a01b03166000908152602081905260409020548211156115825760405162461bcd60e51b815260206004820152600860248201526714d3d31117d3d55560c21b6044820152606401610be6565b6111cc600083611d60565b61159861058a6116c7565b6115b45760405162461bcd60e51b8152600401610be690612308565b6001600160a01b039092166000908152600b602090815260408083209383529290522055565b6115e561058a6116c7565b6116015760405162461bcd60e51b8152600401610be690612308565b600880546001600160a01b0319166001600160a01b03831617905550565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61165561058a6116c7565b6116715760405162461bcd60e51b8152600401610be690612308565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b6000601436108015906116b057506008546001600160a01b031633145b156116c2575060131936013560601c90565b503390565b60006116d1611693565b905090565b6001600160a01b0383166117385760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610be6565b6001600160a01b0382166117995760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610be6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60005b82548110156111e357816001600160a01b031683828154811061183057634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b0316141561192a578254839061185b90600190612496565b8154811061187957634e487b7160e01b600052603260045260246000fd5b9060005260206000200160009054906101000a90046001600160a01b03168382815481106118b757634e487b7160e01b600052603260045260246000fd5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508280548061190357634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80611934816124e8565b9150506117fd565b6000611948848461161f565b90506000198114610de257818110156119a35760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610be6565b610de284848484036116d6565b6001600160a01b038316611a145760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610be6565b6001600160a01b038216611a765760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610be6565b6001600160a01b03831660009081526020819052604090205481811015611aee5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610be6565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610de2565b60008381526012602090815260408083206001600160a01b038516845290915281208054849290611b86908490612371565b909155505060008381526013602052604081208054849290611ba9908490612371565b9091555050505050565b6001600160a01b038216611c095760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610be6565b8060026000828254611c1b9190612371565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6000828152600a602052604081205411611c9e5760405162461bcd60e51b8152600401610be69061234a565b600f546001600160a01b0316611cc65760405162461bcd60e51b8152600401610be69061234a565b6000828152600a6020526040812054611ce0908390612477565b905080341015611d275760405162461bcd60e51b8152602060048201526012602482015271494e53554646494349454e545f56414c554560701b6044820152606401610be6565b600f546040516001600160a01b03909116903480156108fc02916000818181858888f19350505050158015610de2573d6000803e3d6000fd5b600c546001600160a01b03166000818152600d6020526040902054610f5291849184919060ff16611dd35760405162461bcd60e51b815260206004820152601f60248201527f43555252454e43595f434f4e54524143545f4e4f545f535550504f52544544006044820152606401610be6565b6000611ddf8285610ae3565b11611dfc5760405162461bcd60e51b8152600401610be69061234a565b600f546001600160a01b0316611e245760405162461bcd60e51b8152600401610be69061234a565b6001600160a01b038116611e4a5760405162461bcd60e51b8152600401610be69061234a565b6000611e568285610ae3565b611e609084612477565b9050816001600160a01b0381166323b872dd611e7a6116c7565b600f5460405160e084901b6001600160e01b03191681526001600160a01b0392831660048201529116602482015260448101859052606401602060405180830381600087803b158015611ecc57600080fd5b505af1158015611ee0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f049190612098565b505050505050565b828054611f18906124ad565b90600052602060002090601f016020900481019282611f3a5760008555611f80565b82601f10611f5357805160ff1916838001178555611f80565b82800160010185558215611f80579182015b82811115611f80578251825591602001919060010190611f65565b50611f8c929150611f90565b5090565b5b80821115611f8c5760008155600101611f91565b600060208284031215611fb6578081fd5b8135610d2d8161252f565b60008060408385031215611fd3578081fd5b8235611fde8161252f565b91506020830135611fee8161252f565b809150509250929050565b60008060006060848603121561200d578081fd5b83356120188161252f565b925060208401356120288161252f565b929592945050506040919091013590565b6000806040838503121561204b578182fd5b82356120568161252f565b946020939093013593505050565b600080600060608486031215612078578283fd5b83356120838161252f565b95602085013595506040909401359392505050565b6000602082840312156120a9578081fd5b81518015158114610d2d578182fd5b6000602082840312156120c9578081fd5b81356001600160e01b031981168114610d2d578182fd5b6000602082840312156120f1578081fd5b813567ffffffffffffffff80821115612108578283fd5b818401915084601f83011261211b578283fd5b81358181111561212d5761212d612519565b604051601f8201601f19908116603f0116810190838211818310171561215557612155612519565b8160405282815287602084870101111561216d578586fd5b826020860160208301379182016020019490945295945050505050565b60006020828403121561219b578081fd5b5035919050565b600080604083850312156121b4578182fd5b823591506020830135611fee8161252f565b600080604083850312156121d8578182fd5b50508035926020909101359150565b6000806000606084860312156121fb578283fd5b833592506020840135915060408401356122148161252f565b809150509250925092565b60008060008060808587031215612234578081fd5b8435935060208501359250604085013561224d8161252f565b9150606085013561225d8161252f565b939692955090935050565b6020808252825182820181905260009190848201906040850190845b818110156122a95783516001600160a01b031683529284019291840191600101612284565b50909695505050505050565b6000602080835283518082850152825b818110156122e1578581018301518582016040015282016122c5565b818111156122f25783604083870101525b50601f01601f1916929092016040019392505050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b6020808252600d908201526c14d1531317d11254d050931151609a1b604082015260600190565b6000821982111561238457612384612503565b500190565b600181815b808511156123c45781600019048211156123aa576123aa612503565b808516156123b757918102915b93841c939080029061238e565b509250929050565b6000610d2d60ff8416836000826123e557506001610add565b816123f257506000610add565b816001811461240857600281146124125761242e565b6001915050610add565b60ff84111561242357612423612503565b50506001821b610add565b5060208310610133831016604e8410600b8410161715612451575081810a610add565b61245b8383612389565b806000190482111561246f5761246f612503565b029392505050565b600081600019048311821515161561249157612491612503565b500290565b6000828210156124a8576124a8612503565b500390565b600181811c908216806124c157607f821691505b602082108114156124e257634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156124fc576124fc612503565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610c8257600080fdfea26469706673582212206bdb30eee502f707ca86a2cb7eb80d61a3ee8622a07a0b06cc9a8704a76071df64736f6c63430008040033",
1014 "linkReferences": {},
1015 "deployedLinkReferences": {}
1016}