aiia-vault-sdk 1.3.3 → 1.4.1

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