aiia-vault-sdk 1.1.29 → 1.1.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1211 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "FairLaunch",
4
+ "sourceName": "contracts/FairLaunch.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "stateMutability": "nonpayable",
9
+ "type": "constructor"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "AccessControlBadConfirmation",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [
18
+ {
19
+ "internalType": "address",
20
+ "name": "account",
21
+ "type": "address"
22
+ },
23
+ {
24
+ "internalType": "bytes32",
25
+ "name": "neededRole",
26
+ "type": "bytes32"
27
+ }
28
+ ],
29
+ "name": "AccessControlUnauthorizedAccount",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [],
34
+ "name": "AlreadyClaimed",
35
+ "type": "error"
36
+ },
37
+ {
38
+ "inputs": [],
39
+ "name": "ClaimingNotEnabled",
40
+ "type": "error"
41
+ },
42
+ {
43
+ "inputs": [],
44
+ "name": "InsufficientBalance",
45
+ "type": "error"
46
+ },
47
+ {
48
+ "inputs": [],
49
+ "name": "InvalidAmount",
50
+ "type": "error"
51
+ },
52
+ {
53
+ "inputs": [],
54
+ "name": "InvalidDexRouterAddress",
55
+ "type": "error"
56
+ },
57
+ {
58
+ "inputs": [],
59
+ "name": "InvalidInitialization",
60
+ "type": "error"
61
+ },
62
+ {
63
+ "inputs": [],
64
+ "name": "InvalidTimestamp",
65
+ "type": "error"
66
+ },
67
+ {
68
+ "inputs": [],
69
+ "name": "InvalidTokenAddress",
70
+ "type": "error"
71
+ },
72
+ {
73
+ "inputs": [],
74
+ "name": "InvalidTradingVaultAddress",
75
+ "type": "error"
76
+ },
77
+ {
78
+ "inputs": [],
79
+ "name": "LiquidityAlreadyAdded",
80
+ "type": "error"
81
+ },
82
+ {
83
+ "inputs": [],
84
+ "name": "NotAuthorized",
85
+ "type": "error"
86
+ },
87
+ {
88
+ "inputs": [],
89
+ "name": "NotInitializing",
90
+ "type": "error"
91
+ },
92
+ {
93
+ "inputs": [],
94
+ "name": "NothingToClaim",
95
+ "type": "error"
96
+ },
97
+ {
98
+ "inputs": [
99
+ {
100
+ "internalType": "address",
101
+ "name": "owner",
102
+ "type": "address"
103
+ }
104
+ ],
105
+ "name": "OwnableInvalidOwner",
106
+ "type": "error"
107
+ },
108
+ {
109
+ "inputs": [
110
+ {
111
+ "internalType": "address",
112
+ "name": "account",
113
+ "type": "address"
114
+ }
115
+ ],
116
+ "name": "OwnableUnauthorizedAccount",
117
+ "type": "error"
118
+ },
119
+ {
120
+ "inputs": [
121
+ {
122
+ "internalType": "address",
123
+ "name": "token",
124
+ "type": "address"
125
+ }
126
+ ],
127
+ "name": "SafeERC20FailedOperation",
128
+ "type": "error"
129
+ },
130
+ {
131
+ "inputs": [],
132
+ "name": "SaleAlreadyEnded",
133
+ "type": "error"
134
+ },
135
+ {
136
+ "inputs": [],
137
+ "name": "SaleNotActive",
138
+ "type": "error"
139
+ },
140
+ {
141
+ "inputs": [],
142
+ "name": "SaleNotEnded",
143
+ "type": "error"
144
+ },
145
+ {
146
+ "inputs": [],
147
+ "name": "TransferFailed",
148
+ "type": "error"
149
+ },
150
+ {
151
+ "inputs": [],
152
+ "name": "ZeroAddress",
153
+ "type": "error"
154
+ },
155
+ {
156
+ "inputs": [],
157
+ "name": "ZeroAmount",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "anonymous": false,
162
+ "inputs": [],
163
+ "name": "ClaimingEnabled",
164
+ "type": "event"
165
+ },
166
+ {
167
+ "anonymous": false,
168
+ "inputs": [
169
+ {
170
+ "indexed": true,
171
+ "internalType": "address",
172
+ "name": "user",
173
+ "type": "address"
174
+ },
175
+ {
176
+ "indexed": false,
177
+ "internalType": "uint256",
178
+ "name": "amount",
179
+ "type": "uint256"
180
+ }
181
+ ],
182
+ "name": "Contributed",
183
+ "type": "event"
184
+ },
185
+ {
186
+ "anonymous": false,
187
+ "inputs": [
188
+ {
189
+ "indexed": true,
190
+ "internalType": "address",
191
+ "name": "user",
192
+ "type": "address"
193
+ },
194
+ {
195
+ "indexed": false,
196
+ "internalType": "uint256",
197
+ "name": "amount",
198
+ "type": "uint256"
199
+ }
200
+ ],
201
+ "name": "InitialClaimed",
202
+ "type": "event"
203
+ },
204
+ {
205
+ "anonymous": false,
206
+ "inputs": [
207
+ {
208
+ "indexed": false,
209
+ "internalType": "uint64",
210
+ "name": "version",
211
+ "type": "uint64"
212
+ }
213
+ ],
214
+ "name": "Initialized",
215
+ "type": "event"
216
+ },
217
+ {
218
+ "anonymous": false,
219
+ "inputs": [
220
+ {
221
+ "indexed": false,
222
+ "internalType": "uint256",
223
+ "name": "tokenAmount",
224
+ "type": "uint256"
225
+ },
226
+ {
227
+ "indexed": false,
228
+ "internalType": "uint256",
229
+ "name": "fundingTokenAmount",
230
+ "type": "uint256"
231
+ }
232
+ ],
233
+ "name": "LiquidityAdded",
234
+ "type": "event"
235
+ },
236
+ {
237
+ "anonymous": false,
238
+ "inputs": [
239
+ {
240
+ "indexed": true,
241
+ "internalType": "address",
242
+ "name": "previousOwner",
243
+ "type": "address"
244
+ },
245
+ {
246
+ "indexed": true,
247
+ "internalType": "address",
248
+ "name": "newOwner",
249
+ "type": "address"
250
+ }
251
+ ],
252
+ "name": "OwnershipTransferred",
253
+ "type": "event"
254
+ },
255
+ {
256
+ "anonymous": false,
257
+ "inputs": [
258
+ {
259
+ "indexed": true,
260
+ "internalType": "bytes32",
261
+ "name": "role",
262
+ "type": "bytes32"
263
+ },
264
+ {
265
+ "indexed": true,
266
+ "internalType": "bytes32",
267
+ "name": "previousAdminRole",
268
+ "type": "bytes32"
269
+ },
270
+ {
271
+ "indexed": true,
272
+ "internalType": "bytes32",
273
+ "name": "newAdminRole",
274
+ "type": "bytes32"
275
+ }
276
+ ],
277
+ "name": "RoleAdminChanged",
278
+ "type": "event"
279
+ },
280
+ {
281
+ "anonymous": false,
282
+ "inputs": [
283
+ {
284
+ "indexed": true,
285
+ "internalType": "bytes32",
286
+ "name": "role",
287
+ "type": "bytes32"
288
+ },
289
+ {
290
+ "indexed": true,
291
+ "internalType": "address",
292
+ "name": "account",
293
+ "type": "address"
294
+ },
295
+ {
296
+ "indexed": true,
297
+ "internalType": "address",
298
+ "name": "sender",
299
+ "type": "address"
300
+ }
301
+ ],
302
+ "name": "RoleGranted",
303
+ "type": "event"
304
+ },
305
+ {
306
+ "anonymous": false,
307
+ "inputs": [
308
+ {
309
+ "indexed": true,
310
+ "internalType": "bytes32",
311
+ "name": "role",
312
+ "type": "bytes32"
313
+ },
314
+ {
315
+ "indexed": true,
316
+ "internalType": "address",
317
+ "name": "account",
318
+ "type": "address"
319
+ },
320
+ {
321
+ "indexed": true,
322
+ "internalType": "address",
323
+ "name": "sender",
324
+ "type": "address"
325
+ }
326
+ ],
327
+ "name": "RoleRevoked",
328
+ "type": "event"
329
+ },
330
+ {
331
+ "anonymous": false,
332
+ "inputs": [
333
+ {
334
+ "indexed": false,
335
+ "internalType": "uint256",
336
+ "name": "totalRaised",
337
+ "type": "uint256"
338
+ },
339
+ {
340
+ "indexed": false,
341
+ "internalType": "uint256",
342
+ "name": "tokenPrice",
343
+ "type": "uint256"
344
+ }
345
+ ],
346
+ "name": "SaleEnded",
347
+ "type": "event"
348
+ },
349
+ {
350
+ "anonymous": false,
351
+ "inputs": [
352
+ {
353
+ "indexed": true,
354
+ "internalType": "address",
355
+ "name": "user",
356
+ "type": "address"
357
+ },
358
+ {
359
+ "indexed": false,
360
+ "internalType": "uint256",
361
+ "name": "positionId",
362
+ "type": "uint256"
363
+ },
364
+ {
365
+ "indexed": false,
366
+ "internalType": "uint256",
367
+ "name": "amount",
368
+ "type": "uint256"
369
+ }
370
+ ],
371
+ "name": "TradingVaultPositionCreated",
372
+ "type": "event"
373
+ },
374
+ {
375
+ "anonymous": false,
376
+ "inputs": [
377
+ {
378
+ "indexed": true,
379
+ "internalType": "address",
380
+ "name": "user",
381
+ "type": "address"
382
+ },
383
+ {
384
+ "indexed": false,
385
+ "internalType": "uint256",
386
+ "name": "amount",
387
+ "type": "uint256"
388
+ }
389
+ ],
390
+ "name": "VestedClaimed",
391
+ "type": "event"
392
+ },
393
+ {
394
+ "inputs": [],
395
+ "name": "DEFAULT_ADMIN_ROLE",
396
+ "outputs": [
397
+ {
398
+ "internalType": "bytes32",
399
+ "name": "",
400
+ "type": "bytes32"
401
+ }
402
+ ],
403
+ "stateMutability": "view",
404
+ "type": "function"
405
+ },
406
+ {
407
+ "inputs": [],
408
+ "name": "OPERATOR_ROLE",
409
+ "outputs": [
410
+ {
411
+ "internalType": "bytes32",
412
+ "name": "",
413
+ "type": "bytes32"
414
+ }
415
+ ],
416
+ "stateMutability": "view",
417
+ "type": "function"
418
+ },
419
+ {
420
+ "inputs": [],
421
+ "name": "addLiquidity",
422
+ "outputs": [],
423
+ "stateMutability": "nonpayable",
424
+ "type": "function"
425
+ },
426
+ {
427
+ "inputs": [],
428
+ "name": "claimInitial",
429
+ "outputs": [],
430
+ "stateMutability": "nonpayable",
431
+ "type": "function"
432
+ },
433
+ {
434
+ "inputs": [],
435
+ "name": "claimVested",
436
+ "outputs": [],
437
+ "stateMutability": "nonpayable",
438
+ "type": "function"
439
+ },
440
+ {
441
+ "inputs": [],
442
+ "name": "claimingEnabled",
443
+ "outputs": [
444
+ {
445
+ "internalType": "bool",
446
+ "name": "",
447
+ "type": "bool"
448
+ }
449
+ ],
450
+ "stateMutability": "view",
451
+ "type": "function"
452
+ },
453
+ {
454
+ "inputs": [
455
+ {
456
+ "internalType": "uint256",
457
+ "name": "_amount",
458
+ "type": "uint256"
459
+ }
460
+ ],
461
+ "name": "contribute",
462
+ "outputs": [],
463
+ "stateMutability": "nonpayable",
464
+ "type": "function"
465
+ },
466
+ {
467
+ "inputs": [
468
+ {
469
+ "internalType": "uint256",
470
+ "name": "",
471
+ "type": "uint256"
472
+ }
473
+ ],
474
+ "name": "contributors",
475
+ "outputs": [
476
+ {
477
+ "internalType": "address",
478
+ "name": "",
479
+ "type": "address"
480
+ }
481
+ ],
482
+ "stateMutability": "view",
483
+ "type": "function"
484
+ },
485
+ {
486
+ "inputs": [],
487
+ "name": "dexRouter",
488
+ "outputs": [
489
+ {
490
+ "internalType": "address",
491
+ "name": "",
492
+ "type": "address"
493
+ }
494
+ ],
495
+ "stateMutability": "view",
496
+ "type": "function"
497
+ },
498
+ {
499
+ "inputs": [],
500
+ "name": "earlyParticipationWindow",
501
+ "outputs": [
502
+ {
503
+ "internalType": "uint256",
504
+ "name": "",
505
+ "type": "uint256"
506
+ }
507
+ ],
508
+ "stateMutability": "view",
509
+ "type": "function"
510
+ },
511
+ {
512
+ "inputs": [],
513
+ "name": "enableClaiming",
514
+ "outputs": [],
515
+ "stateMutability": "nonpayable",
516
+ "type": "function"
517
+ },
518
+ {
519
+ "inputs": [],
520
+ "name": "endSale",
521
+ "outputs": [],
522
+ "stateMutability": "nonpayable",
523
+ "type": "function"
524
+ },
525
+ {
526
+ "inputs": [],
527
+ "name": "endTime",
528
+ "outputs": [
529
+ {
530
+ "internalType": "uint256",
531
+ "name": "",
532
+ "type": "uint256"
533
+ }
534
+ ],
535
+ "stateMutability": "view",
536
+ "type": "function"
537
+ },
538
+ {
539
+ "inputs": [],
540
+ "name": "fundingToken",
541
+ "outputs": [
542
+ {
543
+ "internalType": "address",
544
+ "name": "",
545
+ "type": "address"
546
+ }
547
+ ],
548
+ "stateMutability": "view",
549
+ "type": "function"
550
+ },
551
+ {
552
+ "inputs": [
553
+ {
554
+ "internalType": "uint256",
555
+ "name": "_index",
556
+ "type": "uint256"
557
+ }
558
+ ],
559
+ "name": "getContributorAt",
560
+ "outputs": [
561
+ {
562
+ "internalType": "address",
563
+ "name": "",
564
+ "type": "address"
565
+ }
566
+ ],
567
+ "stateMutability": "view",
568
+ "type": "function"
569
+ },
570
+ {
571
+ "inputs": [],
572
+ "name": "getContributorsCount",
573
+ "outputs": [
574
+ {
575
+ "internalType": "uint256",
576
+ "name": "",
577
+ "type": "uint256"
578
+ }
579
+ ],
580
+ "stateMutability": "view",
581
+ "type": "function"
582
+ },
583
+ {
584
+ "inputs": [
585
+ {
586
+ "internalType": "bytes32",
587
+ "name": "role",
588
+ "type": "bytes32"
589
+ }
590
+ ],
591
+ "name": "getRoleAdmin",
592
+ "outputs": [
593
+ {
594
+ "internalType": "bytes32",
595
+ "name": "",
596
+ "type": "bytes32"
597
+ }
598
+ ],
599
+ "stateMutability": "view",
600
+ "type": "function"
601
+ },
602
+ {
603
+ "inputs": [],
604
+ "name": "getSaleInfo",
605
+ "outputs": [
606
+ {
607
+ "internalType": "uint256",
608
+ "name": "_startTime",
609
+ "type": "uint256"
610
+ },
611
+ {
612
+ "internalType": "uint256",
613
+ "name": "_endTime",
614
+ "type": "uint256"
615
+ },
616
+ {
617
+ "internalType": "uint256",
618
+ "name": "_totalTokensForSale",
619
+ "type": "uint256"
620
+ },
621
+ {
622
+ "internalType": "uint256",
623
+ "name": "_totalRaised",
624
+ "type": "uint256"
625
+ },
626
+ {
627
+ "internalType": "uint256",
628
+ "name": "_tokenPrice",
629
+ "type": "uint256"
630
+ },
631
+ {
632
+ "internalType": "bool",
633
+ "name": "_saleEnded",
634
+ "type": "bool"
635
+ },
636
+ {
637
+ "internalType": "bool",
638
+ "name": "_claimingEnabled",
639
+ "type": "bool"
640
+ },
641
+ {
642
+ "internalType": "bool",
643
+ "name": "_liquidityAdded",
644
+ "type": "bool"
645
+ }
646
+ ],
647
+ "stateMutability": "view",
648
+ "type": "function"
649
+ },
650
+ {
651
+ "inputs": [
652
+ {
653
+ "internalType": "address",
654
+ "name": "_user",
655
+ "type": "address"
656
+ }
657
+ ],
658
+ "name": "getUserInfo",
659
+ "outputs": [
660
+ {
661
+ "internalType": "uint256",
662
+ "name": "amount",
663
+ "type": "uint256"
664
+ },
665
+ {
666
+ "internalType": "uint256",
667
+ "name": "tokenAllocation",
668
+ "type": "uint256"
669
+ },
670
+ {
671
+ "internalType": "bool",
672
+ "name": "hasClaimedInitial",
673
+ "type": "bool"
674
+ },
675
+ {
676
+ "internalType": "uint256",
677
+ "name": "vestedClaimed",
678
+ "type": "uint256"
679
+ },
680
+ {
681
+ "internalType": "uint256",
682
+ "name": "tradingVaultId",
683
+ "type": "uint256"
684
+ },
685
+ {
686
+ "internalType": "uint256",
687
+ "name": "claimableInitial",
688
+ "type": "uint256"
689
+ },
690
+ {
691
+ "internalType": "uint256",
692
+ "name": "claimableVested",
693
+ "type": "uint256"
694
+ }
695
+ ],
696
+ "stateMutability": "view",
697
+ "type": "function"
698
+ },
699
+ {
700
+ "inputs": [
701
+ {
702
+ "internalType": "bytes32",
703
+ "name": "role",
704
+ "type": "bytes32"
705
+ },
706
+ {
707
+ "internalType": "address",
708
+ "name": "account",
709
+ "type": "address"
710
+ }
711
+ ],
712
+ "name": "grantRole",
713
+ "outputs": [],
714
+ "stateMutability": "nonpayable",
715
+ "type": "function"
716
+ },
717
+ {
718
+ "inputs": [
719
+ {
720
+ "internalType": "bytes32",
721
+ "name": "role",
722
+ "type": "bytes32"
723
+ },
724
+ {
725
+ "internalType": "address",
726
+ "name": "account",
727
+ "type": "address"
728
+ }
729
+ ],
730
+ "name": "hasRole",
731
+ "outputs": [
732
+ {
733
+ "internalType": "bool",
734
+ "name": "",
735
+ "type": "bool"
736
+ }
737
+ ],
738
+ "stateMutability": "view",
739
+ "type": "function"
740
+ },
741
+ {
742
+ "inputs": [],
743
+ "name": "initialClaimPercent",
744
+ "outputs": [
745
+ {
746
+ "internalType": "uint256",
747
+ "name": "",
748
+ "type": "uint256"
749
+ }
750
+ ],
751
+ "stateMutability": "view",
752
+ "type": "function"
753
+ },
754
+ {
755
+ "inputs": [
756
+ {
757
+ "internalType": "address",
758
+ "name": "_projectToken",
759
+ "type": "address"
760
+ },
761
+ {
762
+ "internalType": "address",
763
+ "name": "_fundingToken",
764
+ "type": "address"
765
+ },
766
+ {
767
+ "internalType": "address",
768
+ "name": "_tradingVault",
769
+ "type": "address"
770
+ },
771
+ {
772
+ "internalType": "address",
773
+ "name": "_dexRouter",
774
+ "type": "address"
775
+ },
776
+ {
777
+ "internalType": "uint256",
778
+ "name": "_startTime",
779
+ "type": "uint256"
780
+ },
781
+ {
782
+ "internalType": "uint256",
783
+ "name": "_endTime",
784
+ "type": "uint256"
785
+ },
786
+ {
787
+ "internalType": "uint256",
788
+ "name": "_totalTokensForSale",
789
+ "type": "uint256"
790
+ },
791
+ {
792
+ "internalType": "uint256",
793
+ "name": "_liquidityTokens",
794
+ "type": "uint256"
795
+ },
796
+ {
797
+ "internalType": "uint256",
798
+ "name": "_liquidityPercent",
799
+ "type": "uint256"
800
+ },
801
+ {
802
+ "internalType": "uint256",
803
+ "name": "_initialClaimPercent",
804
+ "type": "uint256"
805
+ },
806
+ {
807
+ "internalType": "uint256",
808
+ "name": "_vestingDuration",
809
+ "type": "uint256"
810
+ },
811
+ {
812
+ "internalType": "uint256",
813
+ "name": "_earlyParticipationWindow",
814
+ "type": "uint256"
815
+ }
816
+ ],
817
+ "name": "initialize",
818
+ "outputs": [],
819
+ "stateMutability": "nonpayable",
820
+ "type": "function"
821
+ },
822
+ {
823
+ "inputs": [],
824
+ "name": "liquidityAdded",
825
+ "outputs": [
826
+ {
827
+ "internalType": "bool",
828
+ "name": "",
829
+ "type": "bool"
830
+ }
831
+ ],
832
+ "stateMutability": "view",
833
+ "type": "function"
834
+ },
835
+ {
836
+ "inputs": [],
837
+ "name": "liquidityPercent",
838
+ "outputs": [
839
+ {
840
+ "internalType": "uint256",
841
+ "name": "",
842
+ "type": "uint256"
843
+ }
844
+ ],
845
+ "stateMutability": "view",
846
+ "type": "function"
847
+ },
848
+ {
849
+ "inputs": [],
850
+ "name": "liquidityTokens",
851
+ "outputs": [
852
+ {
853
+ "internalType": "uint256",
854
+ "name": "",
855
+ "type": "uint256"
856
+ }
857
+ ],
858
+ "stateMutability": "view",
859
+ "type": "function"
860
+ },
861
+ {
862
+ "inputs": [],
863
+ "name": "owner",
864
+ "outputs": [
865
+ {
866
+ "internalType": "address",
867
+ "name": "",
868
+ "type": "address"
869
+ }
870
+ ],
871
+ "stateMutability": "view",
872
+ "type": "function"
873
+ },
874
+ {
875
+ "inputs": [],
876
+ "name": "projectToken",
877
+ "outputs": [
878
+ {
879
+ "internalType": "address",
880
+ "name": "",
881
+ "type": "address"
882
+ }
883
+ ],
884
+ "stateMutability": "view",
885
+ "type": "function"
886
+ },
887
+ {
888
+ "inputs": [],
889
+ "name": "renounceOwnership",
890
+ "outputs": [],
891
+ "stateMutability": "nonpayable",
892
+ "type": "function"
893
+ },
894
+ {
895
+ "inputs": [
896
+ {
897
+ "internalType": "bytes32",
898
+ "name": "role",
899
+ "type": "bytes32"
900
+ },
901
+ {
902
+ "internalType": "address",
903
+ "name": "callerConfirmation",
904
+ "type": "address"
905
+ }
906
+ ],
907
+ "name": "renounceRole",
908
+ "outputs": [],
909
+ "stateMutability": "nonpayable",
910
+ "type": "function"
911
+ },
912
+ {
913
+ "inputs": [
914
+ {
915
+ "internalType": "bytes32",
916
+ "name": "role",
917
+ "type": "bytes32"
918
+ },
919
+ {
920
+ "internalType": "address",
921
+ "name": "account",
922
+ "type": "address"
923
+ }
924
+ ],
925
+ "name": "revokeRole",
926
+ "outputs": [],
927
+ "stateMutability": "nonpayable",
928
+ "type": "function"
929
+ },
930
+ {
931
+ "inputs": [],
932
+ "name": "saleEnded",
933
+ "outputs": [
934
+ {
935
+ "internalType": "bool",
936
+ "name": "",
937
+ "type": "bool"
938
+ }
939
+ ],
940
+ "stateMutability": "view",
941
+ "type": "function"
942
+ },
943
+ {
944
+ "inputs": [],
945
+ "name": "startTime",
946
+ "outputs": [
947
+ {
948
+ "internalType": "uint256",
949
+ "name": "",
950
+ "type": "uint256"
951
+ }
952
+ ],
953
+ "stateMutability": "view",
954
+ "type": "function"
955
+ },
956
+ {
957
+ "inputs": [
958
+ {
959
+ "internalType": "bytes4",
960
+ "name": "interfaceId",
961
+ "type": "bytes4"
962
+ }
963
+ ],
964
+ "name": "supportsInterface",
965
+ "outputs": [
966
+ {
967
+ "internalType": "bool",
968
+ "name": "",
969
+ "type": "bool"
970
+ }
971
+ ],
972
+ "stateMutability": "view",
973
+ "type": "function"
974
+ },
975
+ {
976
+ "inputs": [],
977
+ "name": "tokenPrice",
978
+ "outputs": [
979
+ {
980
+ "internalType": "uint256",
981
+ "name": "",
982
+ "type": "uint256"
983
+ }
984
+ ],
985
+ "stateMutability": "view",
986
+ "type": "function"
987
+ },
988
+ {
989
+ "inputs": [],
990
+ "name": "totalRaised",
991
+ "outputs": [
992
+ {
993
+ "internalType": "uint256",
994
+ "name": "",
995
+ "type": "uint256"
996
+ }
997
+ ],
998
+ "stateMutability": "view",
999
+ "type": "function"
1000
+ },
1001
+ {
1002
+ "inputs": [],
1003
+ "name": "totalTokensForSale",
1004
+ "outputs": [
1005
+ {
1006
+ "internalType": "uint256",
1007
+ "name": "",
1008
+ "type": "uint256"
1009
+ }
1010
+ ],
1011
+ "stateMutability": "view",
1012
+ "type": "function"
1013
+ },
1014
+ {
1015
+ "inputs": [],
1016
+ "name": "tradingVault",
1017
+ "outputs": [
1018
+ {
1019
+ "internalType": "address",
1020
+ "name": "",
1021
+ "type": "address"
1022
+ }
1023
+ ],
1024
+ "stateMutability": "view",
1025
+ "type": "function"
1026
+ },
1027
+ {
1028
+ "inputs": [
1029
+ {
1030
+ "internalType": "address",
1031
+ "name": "newOwner",
1032
+ "type": "address"
1033
+ }
1034
+ ],
1035
+ "name": "transferOwnership",
1036
+ "outputs": [],
1037
+ "stateMutability": "nonpayable",
1038
+ "type": "function"
1039
+ },
1040
+ {
1041
+ "inputs": [
1042
+ {
1043
+ "internalType": "uint256",
1044
+ "name": "_earlyParticipationWindow",
1045
+ "type": "uint256"
1046
+ }
1047
+ ],
1048
+ "name": "updateEarlyParticipationWindow",
1049
+ "outputs": [],
1050
+ "stateMutability": "nonpayable",
1051
+ "type": "function"
1052
+ },
1053
+ {
1054
+ "inputs": [
1055
+ {
1056
+ "internalType": "uint256",
1057
+ "name": "_initialClaimPercent",
1058
+ "type": "uint256"
1059
+ }
1060
+ ],
1061
+ "name": "updateInitialClaimPercent",
1062
+ "outputs": [],
1063
+ "stateMutability": "nonpayable",
1064
+ "type": "function"
1065
+ },
1066
+ {
1067
+ "inputs": [
1068
+ {
1069
+ "internalType": "uint256",
1070
+ "name": "_liquidityPercent",
1071
+ "type": "uint256"
1072
+ }
1073
+ ],
1074
+ "name": "updateLiquidityPercent",
1075
+ "outputs": [],
1076
+ "stateMutability": "nonpayable",
1077
+ "type": "function"
1078
+ },
1079
+ {
1080
+ "inputs": [
1081
+ {
1082
+ "internalType": "uint256",
1083
+ "name": "_liquidityTokens",
1084
+ "type": "uint256"
1085
+ }
1086
+ ],
1087
+ "name": "updateLiquidityTokens",
1088
+ "outputs": [],
1089
+ "stateMutability": "nonpayable",
1090
+ "type": "function"
1091
+ },
1092
+ {
1093
+ "inputs": [
1094
+ {
1095
+ "internalType": "uint256",
1096
+ "name": "_vestingDuration",
1097
+ "type": "uint256"
1098
+ }
1099
+ ],
1100
+ "name": "updateVestingDuration",
1101
+ "outputs": [],
1102
+ "stateMutability": "nonpayable",
1103
+ "type": "function"
1104
+ },
1105
+ {
1106
+ "inputs": [
1107
+ {
1108
+ "internalType": "address",
1109
+ "name": "",
1110
+ "type": "address"
1111
+ }
1112
+ ],
1113
+ "name": "userContributions",
1114
+ "outputs": [
1115
+ {
1116
+ "internalType": "uint256",
1117
+ "name": "amount",
1118
+ "type": "uint256"
1119
+ },
1120
+ {
1121
+ "internalType": "uint256",
1122
+ "name": "tokenAllocation",
1123
+ "type": "uint256"
1124
+ },
1125
+ {
1126
+ "internalType": "bool",
1127
+ "name": "hasClaimedInitial",
1128
+ "type": "bool"
1129
+ },
1130
+ {
1131
+ "internalType": "uint256",
1132
+ "name": "vestedClaimed",
1133
+ "type": "uint256"
1134
+ },
1135
+ {
1136
+ "internalType": "uint256",
1137
+ "name": "tradingVaultId",
1138
+ "type": "uint256"
1139
+ }
1140
+ ],
1141
+ "stateMutability": "view",
1142
+ "type": "function"
1143
+ },
1144
+ {
1145
+ "inputs": [],
1146
+ "name": "vestingDuration",
1147
+ "outputs": [
1148
+ {
1149
+ "internalType": "uint256",
1150
+ "name": "",
1151
+ "type": "uint256"
1152
+ }
1153
+ ],
1154
+ "stateMutability": "view",
1155
+ "type": "function"
1156
+ },
1157
+ {
1158
+ "inputs": [],
1159
+ "name": "vestingStartTime",
1160
+ "outputs": [
1161
+ {
1162
+ "internalType": "uint256",
1163
+ "name": "",
1164
+ "type": "uint256"
1165
+ }
1166
+ ],
1167
+ "stateMutability": "view",
1168
+ "type": "function"
1169
+ },
1170
+ {
1171
+ "inputs": [
1172
+ {
1173
+ "internalType": "address",
1174
+ "name": "_token",
1175
+ "type": "address"
1176
+ },
1177
+ {
1178
+ "internalType": "uint256",
1179
+ "name": "_amount",
1180
+ "type": "uint256"
1181
+ }
1182
+ ],
1183
+ "name": "withdrawERC20",
1184
+ "outputs": [],
1185
+ "stateMutability": "nonpayable",
1186
+ "type": "function"
1187
+ },
1188
+ {
1189
+ "inputs": [
1190
+ {
1191
+ "internalType": "address",
1192
+ "name": "_lpToken",
1193
+ "type": "address"
1194
+ },
1195
+ {
1196
+ "internalType": "address",
1197
+ "name": "_recipient",
1198
+ "type": "address"
1199
+ }
1200
+ ],
1201
+ "name": "withdrawLPTokens",
1202
+ "outputs": [],
1203
+ "stateMutability": "nonpayable",
1204
+ "type": "function"
1205
+ }
1206
+ ],
1207
+ "bytecode": "0x6080806040523460d2577ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460ff8160401c1660c1576002600160401b03196001600160401b03821601605c575b60405161200990816100d88239f35b6001600160401b0319166001600160401b039081177ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005581527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a13880604d565b63f92ee8a960e01b60005260046000fd5b600080fdfe608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a7146118d0575080630758d924146118a757806307bb0a22146117f257806309295d09146117c75780630e141a9b146117a15780630f6ca1a814611736578063128b4e981461135e5780631514617e146113405780632081a88c146112e8578063248a9ca3146112c25780632f2ff15d146112915780633197cbb61461127357806336568abe1461122d578063380d831b1461111d5780633845cebf146110db5780633cb5d100146110b257806341cf19ba146110945780634b60ce771461106b5780634b8ce6021461104d57806360219c7b1461102f5780636386c1c714610ebf57806366349e3f14610e42578063684d411e14610e00578063692c931a14610de2578063715018a614610d7857806378065f2714610d4f57806378e9792514610d315780637ff9b59614610d135780638da5cb5b14610cdd57806391d1485414610c83578063928ba37f14610bb95780639b8906ae14610b96578063a1db978214610af5578063a217fddf14610ad9578063a8660a7814610abb578063b068375514610a9d578063c1cbbca71461085c578063c5c4744c1461083e578063d01c44cd146106fc578063d547741f146106c6578063d9443923146106a0578063db83694c14610638578063dd19aa5714610607578063e8078d9414610352578063f1bd27a814610329578063f2fde38b146102fe578063f5b541a6146102c3578063fa09267c1461025d5763feed55611461023a57600080fd5b34610258576000366003190112610258576020601154604051908152f35b600080fd5b3461025857602036600319011261025857600435610279611adc565b60ff600954166102b257801580156102a6575b61029557600d55005b63162908e360e11b60005260046000fd5b5060065481101561028c565b637ce54feb60e11b60005260046000fd5b346102585760003660031901126102585760206040517f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9298152f35b346102585760203660031901126102585761032761031a611923565b610322611eb4565b611a28565b005b34610258576000366003190112610258576002546040516001600160a01b039091168152602090f35b346102585760003660031901126102585761036b611adc565b60095460ff8116156105f65760ff8160101c166105e557620100009062ff000019161760095560646103a2600754600e5490611980565b60008054600354600d5460405163095ea7b360e01b81526001600160a01b03928316600482015260248101919091529490930493926020928492604492849291165af18015610579576105c8575b5060015460035460405163095ea7b360e01b81526001600160a01b039182166004820152602481018490529160209183916044918391600091165af180156105795761059b575b50600354600d54916062808402926001600160a01b03169190848404148415171561058557606281029080820460621481151715610585576000546001546001600160a01b03908116949116919042610708810190811061058557606461010495816060996000966040519c8d9b8c9a62e8e33760e81b8c5260048c015260248b015260448a0152828901520460848701520460a48501523060c485015260e48401525af180156105795760009160009161051f575b7f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b6040848482519182526020820152a1005b9150506060813d606011610571575b8161053b606093836119b3565b810103126102585780516020909101517f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b6104ed565b3d915061052e565b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b6105bc9060203d6020116105c1575b6105b481836119b3565b8101906119d5565b610437565b503d6105aa565b6105e09060203d6020116105c1576105b481836119b3565b6103f0565b630fd02b6d60e41b60005260046000fd5b639d98b04b60e01b60005260046000fd5b3461025857602036600319011261025857600435610623611adc565b60ff600954166102b257801561029557600b55005b346102585760003660031901126102585761010060045460ff60055460065460075460085491600954936040519687526020870152604086015260608501526080840152818116151560a0840152818160081c16151560c084015260101c16151560e0820152f35b3461025857600036600319011261025857602060ff60095460101c166040519015158152f35b34610258576040366003190112610258576103276004356106e5611939565b906106f76106f2826119ed565b611ba1565b611e14565b346102585760003660031901126102585760095460ff8160081c161561082d5760ff16156105f6573360005260106020526040600020600181015480156107df57600c5460640390606482116105855760649161075891611980565b0490600a54600b549061076b8282611a1b565b42106107f0575060039190505b0161078581548093611a0e565b9182156107df578261079691611a1b565b90556000546107b190829033906001600160a01b0316611a9e565b6040519081527fc15eb22beb780252072bdeec94b7fce7b15822d73417b8a4f92640577eb6fceb60203392a2005b6312d37ee560e31b60005260046000fd5b9061080d603c806108046108129542611a0e565b04920485611993565b611980565b91808311610824575b50600390610778565b9150600361081b565b6371642c7760e11b60005260046000fd5b34610258576000366003190112610258576020600754604051908152f35b346102585760203660031901126102585760043560045442108015610a92575b610a81578015610a70576001546040516323b872dd60e01b6020820152336024820152306044820152606480820184905281526108cc916001600160a01b03166108c76084836119b3565b611eea565b3360005260106020526040600020805415610a15575b6108ed828254611a1b565b81556108fb82600754611a1b565b60075561090d600454600f5490611a1b565b42111580610a09575b61094a575b506040519081527f62722348256371b5147820d6cad90c40fd2da1ccee18c3ed52c0bca5a61dbbab60203392a2005b60025460405163307ada3960e21b815260048101849052336024820152929190602090849060449082906000906001600160a01b03165af1928315610579576000936109d2575b5091600481929301556040519081528160208201527fdb4445d4f94b7320d1834734c8c6f93a74a25048fc5295cac114fe2734d8e34860403392a28161091b565b6020813d602011610a01575b816109eb602093836119b3565b810103126109fd575192506004610991565b8380fd5b3d91506109de565b50600481015415610916565b60115468010000000000000000811015610a5a57806001610a39920160115561194f565b81546001600160a01b0360039290921b91821b19163390911b1790556108e2565b634e487b7160e01b600052604160045260246000fd5b631f2a200560e01b60005260046000fd5b63b7b2409760e01b60005260046000fd5b50600554421161087c565b34610258576000366003190112610258576020600e54604051908152f35b34610258576000366003190112610258576020600a54604051908152f35b3461025857600036600319011261025857602060405160008152f35b3461025857604036600319011261025857610b0e611923565b60243590610b1a611b4e565b6001600160a01b0316908115610b85578015610a705760ff600954161580610b5d575b610b4c57610327913390611a9e565b63ea8e4eb560e01b60005260046000fd5b506000546001600160a01b0316821480610b3d57506001546001600160a01b03168214610b3d565b63d92e233d60e01b60005260046000fd5b3461025857600036600319011261025857602060ff600954166040519015158152f35b3461025857604036600319011261025857610bd2611923565b610bda611939565b90610be3611b4e565b60ff60095460101c16156105e5576001600160a01b0316908115610b85576001600160a01b03811615610b85576040516370a0823160e01b815230600482015290602082602481865afa91821561057957600092610c4c575b508115610a705761032792611a9e565b90916020823d602011610c7b575b81610c67602093836119b3565b81010312610c785750519083610c3c565b80fd5b3d9150610c5a565b3461025857604036600319011261025857610c9c611939565b600435600052600080516020611f9483398151915260205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461025857600036600319011261025857600080516020611f74833981519152546040516001600160a01b039091168152602090f35b34610258576000366003190112610258576020600854604051908152f35b34610258576000366003190112610258576020600454604051908152f35b34610258576000366003190112610258576001546040516001600160a01b039091168152602090f35b3461025857600036600319011261025857610d91611eb4565b600080516020611f7483398151915280546001600160a01b031981169091556000906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b34610258576000366003190112610258576020600f54604051908152f35b3461025857602036600319011261025857600435610e1c611adc565b60ff600954166102b25780158015610e38575b61029557600e55005b5060648111610e2f565b3461025857602036600319011261025857600435601154811015610e8457610e6b60209161194f565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461025857602036600319011261025857610ed8611923565b6000809160018060a01b0316825260106020526040822091825491600184015460ff60028601541694600460038201549101549160ff60095460081c1680611026575b610f4c575b9560e0966040519687526020870152151560408601526060850152608084015260a083015260c0820152f35b9395801561100f575b600c5460640360648111610ffb5796826064610f7360e09a89611980565b048290600a54600b5490610f878282611a1b565b4210610fb457505090505b81811115610fad57610fa49250611a0e565b94909650610f20565b5050610fa4565b804211610fc4575b505050610f92565b610fe3929350603c80610fda61080d9342611a0e565b04920484611993565b90808211610ff3575b8080610fbc565b90508a610fec565b634e487b7160e01b88526011600452602488fd5b9250606461101f600c5486611980565b0492610f55565b50801515610f1b565b34610258576000366003190112610258576020600654604051908152f35b34610258576000366003190112610258576020600d54604051908152f35b34610258576000366003190112610258576000546040516001600160a01b039091168152602090f35b34610258576000366003190112610258576020600c54604051908152f35b346102585760203660031901126102585760043560115481101561025857610e6b60209161194f565b34610258576020366003190112610258576004356110f7611adc565b60ff600954166102b25780158015611113575b61029557600c55005b506064811161110a565b3461025857600036600319011261025857611136611adc565b6005544211156105f65760095460ff81166102b25760ff19166001176009556007541561122357600754670de0b6b3a7640000810290808204670de0b6b3a764000014901517156105855760065461118d91611993565b6008555b60005b6011548110156111e957806111aa60019261194f565b838060a01b0391549060031b1c1660005260106020526040600020826111e06111d7835460065490611980565b60075490611993565b91015501611194565b42600a557fce4010416b0dec196298b584ceebdd43ecf89e6c03007517c3a7f4403db6c212604060075460085482519182526020820152a1005b6000600855611191565b3461025857604036600319011261025857611246611939565b336001600160a01b038216036112625761032790600435611e14565b63334bd91960e11b60005260046000fd5b34610258576000366003190112610258576020600554604051908152f35b34610258576040366003190112610258576103276004356112b0611939565b906112bd6106f2826119ed565b611d6b565b346102585760203660031901126102585760206112e06004356119ed565b604051908152f35b3461025857600036600319011261025857611301611adc565b60095460ff8116156105f65761ff001916610100176009557f25b238f97b16f614c2cc471460ad0d72c33c632bde1300d098e531ed9b5a627a600080a1005b34610258576000366003190112610258576020600b54604051908152f35b346102585761018036600319011261025857611378611923565b611380611939565b6044356001600160a01b03811690819003610258576064356001600160a01b038116908190036102585760843560a43560c4359060e43592610104359461012435966101443598600080516020611fb4833981519152549a60ff8c60401c16159b8c67ffffffffffffffff82168015918261172e575b506001149081611724575b15908161171b575b5061170a5767ffffffffffffffff198116600117600080516020611fb4833981519152558c6116dd575b5061143c611f45565b611444611f45565b61144d33611a28565b611455611f45565b6001600160a01b03169081156116cc576001600160a01b03169081156116cc5782156116bb5783156116aa57428511156116995784861115611699578615610295578715801561168f575b6102955788158015611685575b610295578915801561167b575b610295578a15610295576001600160601b0360a01b60005416176000556001600160601b0360a01b60015416176001556001600160601b0360a01b60025416176002556001600160601b0360a01b6003541617600355600455600555600655600d55600e55600c55600b5561016435600f5561153533611beb565b5061153f33611c9d565b5060025460405163e5a6b10f60e01b81526001600160a01b0390911690602081600481855afa90811561057957600091611634575b5060405163095ea7b360e01b815260048101929092526000196024830152602090829060449082906000906001600160a01b03165af1801561057957611615575b506115bc57005b68ff000000000000000019600080516020611fb48339815191525416600080516020611fb4833981519152557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b61162d9060203d6020116105c1576105b481836119b3565b50816115b5565b6020813d602011611673575b8161164d602093836119b3565b8101031261166f5751906001600160a01b0382168203610c7857506000611574565b5080fd5b3d9150611640565b5060648a116114ba565b50606489116114ad565b50868810156114a0565b63b7d0949760e01b60005260046000fd5b631bf06d4d60e31b60005260046000fd5b632b33b1fb60e21b60005260046000fd5b630f58058360e11b60005260046000fd5b68ffffffffffffffffff19166801000000000000000117600080516020611fb4833981519152558c611433565b63f92ee8a960e01b60005260046000fd5b9050158e611409565b303b159150611401565b91508e6113f6565b34610258576020366003190112610258576001600160a01b03611757611923565b16600052601060205260a0604060002080549060018101549060ff600282015416600460038301549201549260405194855260208501521515604084015260608301526080820152f35b3461025857600036600319011261025857602060ff60095460081c166040519015158152f35b34610258576020366003190112610258576117e0611adc565b60ff600954166102b257600435600f55005b346102585760003660031901126102585760ff60095460081c161561082d57336000526010602052604060002060018101549081156107df5760020180549160ff831661189657606461184a600192600c5490611980565b049260ff1916179055611868813360018060a01b0360005416611a9e565b6040519081527f1db3d897126a63b6e2ce74502c05c2867d4246724fb12e092410859138231dc260203392a2005b630c8d9eab60e31b60005260046000fd5b34610258576000366003190112610258576003546040516001600160a01b039091168152602090f35b34610258576020366003190112610258576004359063ffffffff60e01b821680920361025857602091637965db0b60e01b8114908115611912575b5015158152f35b6301ffc9a760e01b1490508361190b565b600435906001600160a01b038216820361025857565b602435906001600160a01b038216820361025857565b60115481101561196a57601160005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b8181029291811591840414171561058557565b811561199d570490565b634e487b7160e01b600052601260045260246000fd5b90601f8019910116810190811067ffffffffffffffff821117610a5a57604052565b90816020910312610258575180151581036102585790565b600052600080516020611f9483398151915260205260016040600020015490565b9190820391821161058557565b9190820180921161058557565b6001600160a01b03168015611a8857600080516020611f7483398151915280546001600160a01b0319811683179091556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b631e4fbdf760e01b600052600060045260246000fd5b60405163a9059cbb60e01b60208201526001600160a01b03929092166024830152604480830193909352918152611ada916108c76064836119b3565b565b3360009081527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb456602052604090205460ff1615611b1557565b63e2517d3f60e01b600052336004527f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92960245260446000fd5b3360009081527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d602052604090205460ff1615611b8757565b63e2517d3f60e01b60005233600452600060245260446000fd5b6000818152600080516020611f948339815191526020908152604080832033845290915290205460ff1615611bd35750565b63e2517d3f60e01b6000523360045260245260446000fd5b6001600160a01b03811660009081527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d602052604090205460ff16611c97576001600160a01b031660008181527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d60205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b50600090565b6001600160a01b03811660009081527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb456602052604090205460ff16611c97576001600160a01b031660008181527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb45660205260408120805460ff191660011790553391907f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b6000818152600080516020611f94833981519152602090815260408083206001600160a01b038616845290915290205460ff16611e0d576000818152600080516020611f94833981519152602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b5050600090565b6000818152600080516020611f94833981519152602090815260408083206001600160a01b038616845290915290205460ff1615611e0d576000818152600080516020611f94833981519152602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b600080516020611f74833981519152546001600160a01b03163303611ed557565b63118cdaa760e01b6000523360045260246000fd5b906000602091828151910182855af115610579576000513d611f3c57506001600160a01b0381163b155b611f1b5750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b60011415611f14565b60ff600080516020611fb48339815191525460401c1615611f6257565b631afcd79f60e31b60005260046000fdfe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212201525e21c01fa85e362480bacb2da0c958a316eb9f1975b179ac74a1b866f425064736f6c634300081c0033",
1208
+ "deployedBytecode": "0x608080604052600436101561001357600080fd5b60003560e01c90816301ffc9a7146118d0575080630758d924146118a757806307bb0a22146117f257806309295d09146117c75780630e141a9b146117a15780630f6ca1a814611736578063128b4e981461135e5780631514617e146113405780632081a88c146112e8578063248a9ca3146112c25780632f2ff15d146112915780633197cbb61461127357806336568abe1461122d578063380d831b1461111d5780633845cebf146110db5780633cb5d100146110b257806341cf19ba146110945780634b60ce771461106b5780634b8ce6021461104d57806360219c7b1461102f5780636386c1c714610ebf57806366349e3f14610e42578063684d411e14610e00578063692c931a14610de2578063715018a614610d7857806378065f2714610d4f57806378e9792514610d315780637ff9b59614610d135780638da5cb5b14610cdd57806391d1485414610c83578063928ba37f14610bb95780639b8906ae14610b96578063a1db978214610af5578063a217fddf14610ad9578063a8660a7814610abb578063b068375514610a9d578063c1cbbca71461085c578063c5c4744c1461083e578063d01c44cd146106fc578063d547741f146106c6578063d9443923146106a0578063db83694c14610638578063dd19aa5714610607578063e8078d9414610352578063f1bd27a814610329578063f2fde38b146102fe578063f5b541a6146102c3578063fa09267c1461025d5763feed55611461023a57600080fd5b34610258576000366003190112610258576020601154604051908152f35b600080fd5b3461025857602036600319011261025857600435610279611adc565b60ff600954166102b257801580156102a6575b61029557600d55005b63162908e360e11b60005260046000fd5b5060065481101561028c565b637ce54feb60e11b60005260046000fd5b346102585760003660031901126102585760206040517f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b9298152f35b346102585760203660031901126102585761032761031a611923565b610322611eb4565b611a28565b005b34610258576000366003190112610258576002546040516001600160a01b039091168152602090f35b346102585760003660031901126102585761036b611adc565b60095460ff8116156105f65760ff8160101c166105e557620100009062ff000019161760095560646103a2600754600e5490611980565b60008054600354600d5460405163095ea7b360e01b81526001600160a01b03928316600482015260248101919091529490930493926020928492604492849291165af18015610579576105c8575b5060015460035460405163095ea7b360e01b81526001600160a01b039182166004820152602481018490529160209183916044918391600091165af180156105795761059b575b50600354600d54916062808402926001600160a01b03169190848404148415171561058557606281029080820460621481151715610585576000546001546001600160a01b03908116949116919042610708810190811061058557606461010495816060996000966040519c8d9b8c9a62e8e33760e81b8c5260048c015260248b015260448a0152828901520460848701520460a48501523060c485015260e48401525af180156105795760009160009161051f575b7f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b6040848482519182526020820152a1005b9150506060813d606011610571575b8161053b606093836119b3565b810103126102585780516020909101517f38f8a0c92f4c5b0b6877f878cb4c0c8d348a47b76d716c8e78f425043df9515b6104ed565b3d915061052e565b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b6105bc9060203d6020116105c1575b6105b481836119b3565b8101906119d5565b610437565b503d6105aa565b6105e09060203d6020116105c1576105b481836119b3565b6103f0565b630fd02b6d60e41b60005260046000fd5b639d98b04b60e01b60005260046000fd5b3461025857602036600319011261025857600435610623611adc565b60ff600954166102b257801561029557600b55005b346102585760003660031901126102585761010060045460ff60055460065460075460085491600954936040519687526020870152604086015260608501526080840152818116151560a0840152818160081c16151560c084015260101c16151560e0820152f35b3461025857600036600319011261025857602060ff60095460101c166040519015158152f35b34610258576040366003190112610258576103276004356106e5611939565b906106f76106f2826119ed565b611ba1565b611e14565b346102585760003660031901126102585760095460ff8160081c161561082d5760ff16156105f6573360005260106020526040600020600181015480156107df57600c5460640390606482116105855760649161075891611980565b0490600a54600b549061076b8282611a1b565b42106107f0575060039190505b0161078581548093611a0e565b9182156107df578261079691611a1b565b90556000546107b190829033906001600160a01b0316611a9e565b6040519081527fc15eb22beb780252072bdeec94b7fce7b15822d73417b8a4f92640577eb6fceb60203392a2005b6312d37ee560e31b60005260046000fd5b9061080d603c806108046108129542611a0e565b04920485611993565b611980565b91808311610824575b50600390610778565b9150600361081b565b6371642c7760e11b60005260046000fd5b34610258576000366003190112610258576020600754604051908152f35b346102585760203660031901126102585760043560045442108015610a92575b610a81578015610a70576001546040516323b872dd60e01b6020820152336024820152306044820152606480820184905281526108cc916001600160a01b03166108c76084836119b3565b611eea565b3360005260106020526040600020805415610a15575b6108ed828254611a1b565b81556108fb82600754611a1b565b60075561090d600454600f5490611a1b565b42111580610a09575b61094a575b506040519081527f62722348256371b5147820d6cad90c40fd2da1ccee18c3ed52c0bca5a61dbbab60203392a2005b60025460405163307ada3960e21b815260048101849052336024820152929190602090849060449082906000906001600160a01b03165af1928315610579576000936109d2575b5091600481929301556040519081528160208201527fdb4445d4f94b7320d1834734c8c6f93a74a25048fc5295cac114fe2734d8e34860403392a28161091b565b6020813d602011610a01575b816109eb602093836119b3565b810103126109fd575192506004610991565b8380fd5b3d91506109de565b50600481015415610916565b60115468010000000000000000811015610a5a57806001610a39920160115561194f565b81546001600160a01b0360039290921b91821b19163390911b1790556108e2565b634e487b7160e01b600052604160045260246000fd5b631f2a200560e01b60005260046000fd5b63b7b2409760e01b60005260046000fd5b50600554421161087c565b34610258576000366003190112610258576020600e54604051908152f35b34610258576000366003190112610258576020600a54604051908152f35b3461025857600036600319011261025857602060405160008152f35b3461025857604036600319011261025857610b0e611923565b60243590610b1a611b4e565b6001600160a01b0316908115610b85578015610a705760ff600954161580610b5d575b610b4c57610327913390611a9e565b63ea8e4eb560e01b60005260046000fd5b506000546001600160a01b0316821480610b3d57506001546001600160a01b03168214610b3d565b63d92e233d60e01b60005260046000fd5b3461025857600036600319011261025857602060ff600954166040519015158152f35b3461025857604036600319011261025857610bd2611923565b610bda611939565b90610be3611b4e565b60ff60095460101c16156105e5576001600160a01b0316908115610b85576001600160a01b03811615610b85576040516370a0823160e01b815230600482015290602082602481865afa91821561057957600092610c4c575b508115610a705761032792611a9e565b90916020823d602011610c7b575b81610c67602093836119b3565b81010312610c785750519083610c3c565b80fd5b3d9150610c5a565b3461025857604036600319011261025857610c9c611939565b600435600052600080516020611f9483398151915260205260406000209060018060a01b0316600052602052602060ff604060002054166040519015158152f35b3461025857600036600319011261025857600080516020611f74833981519152546040516001600160a01b039091168152602090f35b34610258576000366003190112610258576020600854604051908152f35b34610258576000366003190112610258576020600454604051908152f35b34610258576000366003190112610258576001546040516001600160a01b039091168152602090f35b3461025857600036600319011261025857610d91611eb4565b600080516020611f7483398151915280546001600160a01b031981169091556000906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3005b34610258576000366003190112610258576020600f54604051908152f35b3461025857602036600319011261025857600435610e1c611adc565b60ff600954166102b25780158015610e38575b61029557600e55005b5060648111610e2f565b3461025857602036600319011261025857600435601154811015610e8457610e6b60209161194f565b905460405160039290921b1c6001600160a01b03168152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b3461025857602036600319011261025857610ed8611923565b6000809160018060a01b0316825260106020526040822091825491600184015460ff60028601541694600460038201549101549160ff60095460081c1680611026575b610f4c575b9560e0966040519687526020870152151560408601526060850152608084015260a083015260c0820152f35b9395801561100f575b600c5460640360648111610ffb5796826064610f7360e09a89611980565b048290600a54600b5490610f878282611a1b565b4210610fb457505090505b81811115610fad57610fa49250611a0e565b94909650610f20565b5050610fa4565b804211610fc4575b505050610f92565b610fe3929350603c80610fda61080d9342611a0e565b04920484611993565b90808211610ff3575b8080610fbc565b90508a610fec565b634e487b7160e01b88526011600452602488fd5b9250606461101f600c5486611980565b0492610f55565b50801515610f1b565b34610258576000366003190112610258576020600654604051908152f35b34610258576000366003190112610258576020600d54604051908152f35b34610258576000366003190112610258576000546040516001600160a01b039091168152602090f35b34610258576000366003190112610258576020600c54604051908152f35b346102585760203660031901126102585760043560115481101561025857610e6b60209161194f565b34610258576020366003190112610258576004356110f7611adc565b60ff600954166102b25780158015611113575b61029557600c55005b506064811161110a565b3461025857600036600319011261025857611136611adc565b6005544211156105f65760095460ff81166102b25760ff19166001176009556007541561122357600754670de0b6b3a7640000810290808204670de0b6b3a764000014901517156105855760065461118d91611993565b6008555b60005b6011548110156111e957806111aa60019261194f565b838060a01b0391549060031b1c1660005260106020526040600020826111e06111d7835460065490611980565b60075490611993565b91015501611194565b42600a557fce4010416b0dec196298b584ceebdd43ecf89e6c03007517c3a7f4403db6c212604060075460085482519182526020820152a1005b6000600855611191565b3461025857604036600319011261025857611246611939565b336001600160a01b038216036112625761032790600435611e14565b63334bd91960e11b60005260046000fd5b34610258576000366003190112610258576020600554604051908152f35b34610258576040366003190112610258576103276004356112b0611939565b906112bd6106f2826119ed565b611d6b565b346102585760203660031901126102585760206112e06004356119ed565b604051908152f35b3461025857600036600319011261025857611301611adc565b60095460ff8116156105f65761ff001916610100176009557f25b238f97b16f614c2cc471460ad0d72c33c632bde1300d098e531ed9b5a627a600080a1005b34610258576000366003190112610258576020600b54604051908152f35b346102585761018036600319011261025857611378611923565b611380611939565b6044356001600160a01b03811690819003610258576064356001600160a01b038116908190036102585760843560a43560c4359060e43592610104359461012435966101443598600080516020611fb4833981519152549a60ff8c60401c16159b8c67ffffffffffffffff82168015918261172e575b506001149081611724575b15908161171b575b5061170a5767ffffffffffffffff198116600117600080516020611fb4833981519152558c6116dd575b5061143c611f45565b611444611f45565b61144d33611a28565b611455611f45565b6001600160a01b03169081156116cc576001600160a01b03169081156116cc5782156116bb5783156116aa57428511156116995784861115611699578615610295578715801561168f575b6102955788158015611685575b610295578915801561167b575b610295578a15610295576001600160601b0360a01b60005416176000556001600160601b0360a01b60015416176001556001600160601b0360a01b60025416176002556001600160601b0360a01b6003541617600355600455600555600655600d55600e55600c55600b5561016435600f5561153533611beb565b5061153f33611c9d565b5060025460405163e5a6b10f60e01b81526001600160a01b0390911690602081600481855afa90811561057957600091611634575b5060405163095ea7b360e01b815260048101929092526000196024830152602090829060449082906000906001600160a01b03165af1801561057957611615575b506115bc57005b68ff000000000000000019600080516020611fb48339815191525416600080516020611fb4833981519152557fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602060405160018152a1005b61162d9060203d6020116105c1576105b481836119b3565b50816115b5565b6020813d602011611673575b8161164d602093836119b3565b8101031261166f5751906001600160a01b0382168203610c7857506000611574565b5080fd5b3d9150611640565b5060648a116114ba565b50606489116114ad565b50868810156114a0565b63b7d0949760e01b60005260046000fd5b631bf06d4d60e31b60005260046000fd5b632b33b1fb60e21b60005260046000fd5b630f58058360e11b60005260046000fd5b68ffffffffffffffffff19166801000000000000000117600080516020611fb4833981519152558c611433565b63f92ee8a960e01b60005260046000fd5b9050158e611409565b303b159150611401565b91508e6113f6565b34610258576020366003190112610258576001600160a01b03611757611923565b16600052601060205260a0604060002080549060018101549060ff600282015416600460038301549201549260405194855260208501521515604084015260608301526080820152f35b3461025857600036600319011261025857602060ff60095460081c166040519015158152f35b34610258576020366003190112610258576117e0611adc565b60ff600954166102b257600435600f55005b346102585760003660031901126102585760ff60095460081c161561082d57336000526010602052604060002060018101549081156107df5760020180549160ff831661189657606461184a600192600c5490611980565b049260ff1916179055611868813360018060a01b0360005416611a9e565b6040519081527f1db3d897126a63b6e2ce74502c05c2867d4246724fb12e092410859138231dc260203392a2005b630c8d9eab60e31b60005260046000fd5b34610258576000366003190112610258576003546040516001600160a01b039091168152602090f35b34610258576020366003190112610258576004359063ffffffff60e01b821680920361025857602091637965db0b60e01b8114908115611912575b5015158152f35b6301ffc9a760e01b1490508361190b565b600435906001600160a01b038216820361025857565b602435906001600160a01b038216820361025857565b60115481101561196a57601160005260206000200190600090565b634e487b7160e01b600052603260045260246000fd5b8181029291811591840414171561058557565b811561199d570490565b634e487b7160e01b600052601260045260246000fd5b90601f8019910116810190811067ffffffffffffffff821117610a5a57604052565b90816020910312610258575180151581036102585790565b600052600080516020611f9483398151915260205260016040600020015490565b9190820391821161058557565b9190820180921161058557565b6001600160a01b03168015611a8857600080516020611f7483398151915280546001600160a01b0319811683179091556001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b631e4fbdf760e01b600052600060045260246000fd5b60405163a9059cbb60e01b60208201526001600160a01b03929092166024830152604480830193909352918152611ada916108c76064836119b3565b565b3360009081527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb456602052604090205460ff1615611b1557565b63e2517d3f60e01b600052336004527f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b92960245260446000fd5b3360009081527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d602052604090205460ff1615611b8757565b63e2517d3f60e01b60005233600452600060245260446000fd5b6000818152600080516020611f948339815191526020908152604080832033845290915290205460ff1615611bd35750565b63e2517d3f60e01b6000523360045260245260446000fd5b6001600160a01b03811660009081527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d602052604090205460ff16611c97576001600160a01b031660008181527fb7db2dd08fcb62d0c9e08c51941cae53c267786a0b75803fb7960902fc8ef97d60205260408120805460ff191660011790553391907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b50600090565b6001600160a01b03811660009081527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb456602052604090205460ff16611c97576001600160a01b031660008181527f448256db8f8fb95ee3eaaf89c1051414494e85cebb6057fcf996cc3d0ccfb45660205260408120805460ff191660011790553391907f97667070c54ef182b0f5858b034beac1b6f3089aa2d3188bb1e8929f4fa9b929907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b6000818152600080516020611f94833981519152602090815260408083206001600160a01b038616845290915290205460ff16611e0d576000818152600080516020611f94833981519152602090815260408083206001600160a01b0395909516808452949091528120805460ff19166001179055339291907f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4600190565b5050600090565b6000818152600080516020611f94833981519152602090815260408083206001600160a01b038616845290915290205460ff1615611e0d576000818152600080516020611f94833981519152602090815260408083206001600160a01b0395909516808452949091528120805460ff19169055339291907ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4600190565b600080516020611f74833981519152546001600160a01b03163303611ed557565b63118cdaa760e01b6000523360045260246000fd5b906000602091828151910182855af115610579576000513d611f3c57506001600160a01b0381163b155b611f1b5750565b635274afe760e01b60009081526001600160a01b0391909116600452602490fd5b60011415611f14565b60ff600080516020611fb48339815191525460401c1615611f6257565b631afcd79f60e31b60005260046000fdfe9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930002dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b626800f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212201525e21c01fa85e362480bacb2da0c958a316eb9f1975b179ac74a1b866f425064736f6c634300081c0033",
1209
+ "linkReferences": {},
1210
+ "deployedLinkReferences": {}
1211
+ }