@gainsnetwork/sdk 1.6.11 → 1.7.0-rc2

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.
Files changed (40) hide show
  1. package/lib/constants.d.ts +1 -0
  2. package/lib/constants.js +2 -1
  3. package/lib/contracts/utils/pairs.js +1 -0
  4. package/lib/markets/schedules/builders.js +5 -6
  5. package/lib/markets/schedules/holidays.js +0 -3
  6. package/lib/trade/types.d.ts +2 -1
  7. package/lib/trade/types.js +1 -0
  8. package/package.json +1 -1
  9. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +0 -1911
  10. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +0 -2
  11. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +0 -1067
  12. package/lib/contracts/types/generated/GNSBorrowingFees.js +0 -2
  13. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +0 -533
  14. package/lib/contracts/types/generated/GNSNftRewardsV6.js +0 -2
  15. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +0 -613
  16. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +0 -2
  17. package/lib/contracts/types/generated/GNSTrading.d.ts +0 -758
  18. package/lib/contracts/types/generated/GNSTrading.js +0 -2
  19. package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +0 -875
  20. package/lib/contracts/types/generated/GNSTradingCallbacks.js +0 -2
  21. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +0 -1387
  22. package/lib/contracts/types/generated/GNSTradingStorage.js +0 -2
  23. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +0 -1838
  24. package/lib/contracts/types/generated/GTokenV6_3_2.js +0 -2
  25. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +0 -83
  26. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +0 -2691
  27. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +0 -124
  28. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +0 -1784
  29. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +0 -100
  30. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +0 -1116
  31. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +0 -100
  32. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +0 -1003
  33. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +0 -113
  34. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +0 -1428
  35. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +0 -96
  36. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +0 -2241
  37. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +0 -95
  38. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +0 -1071
  39. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +0 -110
  40. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +0 -2682
@@ -1,2682 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GTokenV6_3_2__factory = void 0;
4
- /* Autogenerated file. Do not edit manually. */
5
- /* tslint:disable */
6
- /* eslint-disable */
7
- const ethers_1 = require("ethers");
8
- const _abi = [
9
- {
10
- anonymous: false,
11
- inputs: [
12
- {
13
- indexed: false,
14
- internalType: "uint256",
15
- name: "newAccValue",
16
- type: "uint256",
17
- },
18
- ],
19
- name: "AccBlockWeightedMarketCapStored",
20
- type: "event",
21
- },
22
- {
23
- anonymous: false,
24
- inputs: [
25
- {
26
- indexed: true,
27
- internalType: "address",
28
- name: "sender",
29
- type: "address",
30
- },
31
- {
32
- indexed: true,
33
- internalType: "uint256",
34
- name: "newEpoch",
35
- type: "uint256",
36
- },
37
- {
38
- indexed: false,
39
- internalType: "uint256",
40
- name: "prevPositiveOpenPnl",
41
- type: "uint256",
42
- },
43
- {
44
- indexed: false,
45
- internalType: "uint256",
46
- name: "newPositiveOpenPnl",
47
- type: "uint256",
48
- },
49
- {
50
- indexed: false,
51
- internalType: "uint256",
52
- name: "newEpochPositiveOpenPnl",
53
- type: "uint256",
54
- },
55
- {
56
- indexed: false,
57
- internalType: "int256",
58
- name: "newAccPnlPerTokenUsed",
59
- type: "int256",
60
- },
61
- ],
62
- name: "AccPnlPerTokenUsedUpdated",
63
- type: "event",
64
- },
65
- {
66
- anonymous: false,
67
- inputs: [
68
- {
69
- indexed: false,
70
- internalType: "string",
71
- name: "name",
72
- type: "string",
73
- },
74
- {
75
- indexed: false,
76
- internalType: "address",
77
- name: "newValue",
78
- type: "address",
79
- },
80
- ],
81
- name: "AddressParamUpdated",
82
- type: "event",
83
- },
84
- {
85
- anonymous: false,
86
- inputs: [
87
- {
88
- indexed: true,
89
- internalType: "address",
90
- name: "owner",
91
- type: "address",
92
- },
93
- {
94
- indexed: true,
95
- internalType: "address",
96
- name: "spender",
97
- type: "address",
98
- },
99
- {
100
- indexed: false,
101
- internalType: "uint256",
102
- name: "value",
103
- type: "uint256",
104
- },
105
- ],
106
- name: "Approval",
107
- type: "event",
108
- },
109
- {
110
- anonymous: false,
111
- inputs: [
112
- {
113
- indexed: true,
114
- internalType: "address",
115
- name: "sender",
116
- type: "address",
117
- },
118
- {
119
- indexed: true,
120
- internalType: "address",
121
- name: "user",
122
- type: "address",
123
- },
124
- {
125
- indexed: false,
126
- internalType: "uint256",
127
- name: "assets",
128
- type: "uint256",
129
- },
130
- {
131
- indexed: false,
132
- internalType: "uint256",
133
- name: "assetsLessDeplete",
134
- type: "uint256",
135
- },
136
- ],
137
- name: "AssetsReceived",
138
- type: "event",
139
- },
140
- {
141
- anonymous: false,
142
- inputs: [
143
- {
144
- indexed: true,
145
- internalType: "address",
146
- name: "sender",
147
- type: "address",
148
- },
149
- {
150
- indexed: true,
151
- internalType: "address",
152
- name: "receiver",
153
- type: "address",
154
- },
155
- {
156
- indexed: false,
157
- internalType: "uint256",
158
- name: "assets",
159
- type: "uint256",
160
- },
161
- ],
162
- name: "AssetsSent",
163
- type: "event",
164
- },
165
- {
166
- anonymous: false,
167
- inputs: [
168
- {
169
- indexed: false,
170
- internalType: "uint256",
171
- name: "newValue",
172
- type: "uint256",
173
- },
174
- ],
175
- name: "CurrentMaxSupplyUpdated",
176
- type: "event",
177
- },
178
- {
179
- anonymous: false,
180
- inputs: [],
181
- name: "DailyAccPnlDeltaReset",
182
- type: "event",
183
- },
184
- {
185
- anonymous: false,
186
- inputs: [
187
- {
188
- indexed: true,
189
- internalType: "address",
190
- name: "sender",
191
- type: "address",
192
- },
193
- {
194
- indexed: false,
195
- internalType: "uint256",
196
- name: "assets",
197
- type: "uint256",
198
- },
199
- {
200
- indexed: false,
201
- internalType: "uint256",
202
- name: "amountGns",
203
- type: "uint256",
204
- },
205
- ],
206
- name: "Depleted",
207
- type: "event",
208
- },
209
- {
210
- anonymous: false,
211
- inputs: [
212
- {
213
- indexed: true,
214
- internalType: "address",
215
- name: "sender",
216
- type: "address",
217
- },
218
- {
219
- indexed: true,
220
- internalType: "address",
221
- name: "owner",
222
- type: "address",
223
- },
224
- {
225
- indexed: false,
226
- internalType: "uint256",
227
- name: "assets",
228
- type: "uint256",
229
- },
230
- {
231
- indexed: false,
232
- internalType: "uint256",
233
- name: "shares",
234
- type: "uint256",
235
- },
236
- ],
237
- name: "Deposit",
238
- type: "event",
239
- },
240
- {
241
- anonymous: false,
242
- inputs: [
243
- {
244
- indexed: true,
245
- internalType: "address",
246
- name: "sender",
247
- type: "address",
248
- },
249
- {
250
- indexed: true,
251
- internalType: "address",
252
- name: "owner",
253
- type: "address",
254
- },
255
- {
256
- indexed: false,
257
- internalType: "uint256",
258
- name: "depositId",
259
- type: "uint256",
260
- },
261
- {
262
- components: [
263
- {
264
- internalType: "address",
265
- name: "owner",
266
- type: "address",
267
- },
268
- {
269
- internalType: "uint256",
270
- name: "shares",
271
- type: "uint256",
272
- },
273
- {
274
- internalType: "uint256",
275
- name: "assetsDeposited",
276
- type: "uint256",
277
- },
278
- {
279
- internalType: "uint256",
280
- name: "assetsDiscount",
281
- type: "uint256",
282
- },
283
- {
284
- internalType: "uint256",
285
- name: "atTimestamp",
286
- type: "uint256",
287
- },
288
- {
289
- internalType: "uint256",
290
- name: "lockDuration",
291
- type: "uint256",
292
- },
293
- ],
294
- indexed: false,
295
- internalType: "struct IGToken.LockedDeposit",
296
- name: "d",
297
- type: "tuple",
298
- },
299
- ],
300
- name: "DepositLocked",
301
- type: "event",
302
- },
303
- {
304
- anonymous: false,
305
- inputs: [
306
- {
307
- indexed: true,
308
- internalType: "address",
309
- name: "sender",
310
- type: "address",
311
- },
312
- {
313
- indexed: true,
314
- internalType: "address",
315
- name: "receiver",
316
- type: "address",
317
- },
318
- {
319
- indexed: true,
320
- internalType: "address",
321
- name: "owner",
322
- type: "address",
323
- },
324
- {
325
- indexed: false,
326
- internalType: "uint256",
327
- name: "depositId",
328
- type: "uint256",
329
- },
330
- {
331
- components: [
332
- {
333
- internalType: "address",
334
- name: "owner",
335
- type: "address",
336
- },
337
- {
338
- internalType: "uint256",
339
- name: "shares",
340
- type: "uint256",
341
- },
342
- {
343
- internalType: "uint256",
344
- name: "assetsDeposited",
345
- type: "uint256",
346
- },
347
- {
348
- internalType: "uint256",
349
- name: "assetsDiscount",
350
- type: "uint256",
351
- },
352
- {
353
- internalType: "uint256",
354
- name: "atTimestamp",
355
- type: "uint256",
356
- },
357
- {
358
- internalType: "uint256",
359
- name: "lockDuration",
360
- type: "uint256",
361
- },
362
- ],
363
- indexed: false,
364
- internalType: "struct IGToken.LockedDeposit",
365
- name: "d",
366
- type: "tuple",
367
- },
368
- ],
369
- name: "DepositUnlocked",
370
- type: "event",
371
- },
372
- {
373
- anonymous: false,
374
- inputs: [
375
- {
376
- components: [
377
- {
378
- internalType: "address",
379
- name: "addr",
380
- type: "address",
381
- },
382
- {
383
- internalType: "bytes",
384
- name: "signature",
385
- type: "bytes",
386
- },
387
- ],
388
- indexed: false,
389
- internalType: "struct GTokenV6_3_2.GnsPriceProvider",
390
- name: "newValue",
391
- type: "tuple",
392
- },
393
- ],
394
- name: "GnsPriceProviderUpdated",
395
- type: "event",
396
- },
397
- {
398
- anonymous: false,
399
- inputs: [
400
- {
401
- indexed: false,
402
- internalType: "uint8",
403
- name: "version",
404
- type: "uint8",
405
- },
406
- ],
407
- name: "Initialized",
408
- type: "event",
409
- },
410
- {
411
- anonymous: false,
412
- inputs: [
413
- {
414
- indexed: false,
415
- internalType: "string",
416
- name: "name",
417
- type: "string",
418
- },
419
- {
420
- indexed: false,
421
- internalType: "uint256",
422
- name: "newValue",
423
- type: "uint256",
424
- },
425
- ],
426
- name: "NumberParamUpdated",
427
- type: "event",
428
- },
429
- {
430
- anonymous: false,
431
- inputs: [],
432
- name: "OpenTradesPnlFeedCallFailed",
433
- type: "event",
434
- },
435
- {
436
- anonymous: false,
437
- inputs: [
438
- {
439
- indexed: true,
440
- internalType: "address",
441
- name: "previousOwner",
442
- type: "address",
443
- },
444
- {
445
- indexed: true,
446
- internalType: "address",
447
- name: "newOwner",
448
- type: "address",
449
- },
450
- ],
451
- name: "OwnershipTransferred",
452
- type: "event",
453
- },
454
- {
455
- anonymous: false,
456
- inputs: [
457
- {
458
- indexed: true,
459
- internalType: "address",
460
- name: "sender",
461
- type: "address",
462
- },
463
- {
464
- indexed: false,
465
- internalType: "uint256",
466
- name: "assets",
467
- type: "uint256",
468
- },
469
- {
470
- indexed: false,
471
- internalType: "uint256",
472
- name: "amountGns",
473
- type: "uint256",
474
- },
475
- ],
476
- name: "Refilled",
477
- type: "event",
478
- },
479
- {
480
- anonymous: false,
481
- inputs: [
482
- {
483
- indexed: true,
484
- internalType: "address",
485
- name: "sender",
486
- type: "address",
487
- },
488
- {
489
- indexed: false,
490
- internalType: "uint256",
491
- name: "assets",
492
- type: "uint256",
493
- },
494
- ],
495
- name: "RewardDistributed",
496
- type: "event",
497
- },
498
- {
499
- anonymous: false,
500
- inputs: [
501
- {
502
- indexed: false,
503
- internalType: "uint256",
504
- name: "newValue",
505
- type: "uint256",
506
- },
507
- ],
508
- name: "ShareToAssetsPriceUpdated",
509
- type: "event",
510
- },
511
- {
512
- anonymous: false,
513
- inputs: [
514
- {
515
- indexed: true,
516
- internalType: "address",
517
- name: "from",
518
- type: "address",
519
- },
520
- {
521
- indexed: true,
522
- internalType: "address",
523
- name: "to",
524
- type: "address",
525
- },
526
- {
527
- indexed: false,
528
- internalType: "uint256",
529
- name: "value",
530
- type: "uint256",
531
- },
532
- ],
533
- name: "Transfer",
534
- type: "event",
535
- },
536
- {
537
- anonymous: false,
538
- inputs: [
539
- {
540
- indexed: true,
541
- internalType: "address",
542
- name: "sender",
543
- type: "address",
544
- },
545
- {
546
- indexed: true,
547
- internalType: "address",
548
- name: "receiver",
549
- type: "address",
550
- },
551
- {
552
- indexed: true,
553
- internalType: "address",
554
- name: "owner",
555
- type: "address",
556
- },
557
- {
558
- indexed: false,
559
- internalType: "uint256",
560
- name: "assets",
561
- type: "uint256",
562
- },
563
- {
564
- indexed: false,
565
- internalType: "uint256",
566
- name: "shares",
567
- type: "uint256",
568
- },
569
- ],
570
- name: "Withdraw",
571
- type: "event",
572
- },
573
- {
574
- anonymous: false,
575
- inputs: [
576
- {
577
- indexed: true,
578
- internalType: "address",
579
- name: "sender",
580
- type: "address",
581
- },
582
- {
583
- indexed: true,
584
- internalType: "address",
585
- name: "owner",
586
- type: "address",
587
- },
588
- {
589
- indexed: false,
590
- internalType: "uint256",
591
- name: "shares",
592
- type: "uint256",
593
- },
594
- {
595
- indexed: false,
596
- internalType: "uint256",
597
- name: "currEpoch",
598
- type: "uint256",
599
- },
600
- {
601
- indexed: true,
602
- internalType: "uint256",
603
- name: "unlockEpoch",
604
- type: "uint256",
605
- },
606
- ],
607
- name: "WithdrawCanceled",
608
- type: "event",
609
- },
610
- {
611
- anonymous: false,
612
- inputs: [
613
- {
614
- indexed: false,
615
- internalType: "uint256[2]",
616
- name: "newValue",
617
- type: "uint256[2]",
618
- },
619
- ],
620
- name: "WithdrawLockThresholdsPUpdated",
621
- type: "event",
622
- },
623
- {
624
- anonymous: false,
625
- inputs: [
626
- {
627
- indexed: true,
628
- internalType: "address",
629
- name: "sender",
630
- type: "address",
631
- },
632
- {
633
- indexed: true,
634
- internalType: "address",
635
- name: "owner",
636
- type: "address",
637
- },
638
- {
639
- indexed: false,
640
- internalType: "uint256",
641
- name: "shares",
642
- type: "uint256",
643
- },
644
- {
645
- indexed: false,
646
- internalType: "uint256",
647
- name: "currEpoch",
648
- type: "uint256",
649
- },
650
- {
651
- indexed: true,
652
- internalType: "uint256",
653
- name: "unlockEpoch",
654
- type: "uint256",
655
- },
656
- ],
657
- name: "WithdrawRequested",
658
- type: "event",
659
- },
660
- {
661
- inputs: [],
662
- name: "MIN_LOCK_DURATION",
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: "accBlockWeightedMarketCap",
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: "accBlockWeightedMarketCapLastStored",
689
- outputs: [
690
- {
691
- internalType: "uint256",
692
- name: "",
693
- type: "uint256",
694
- },
695
- ],
696
- stateMutability: "view",
697
- type: "function",
698
- },
699
- {
700
- inputs: [],
701
- name: "accPnlPerToken",
702
- outputs: [
703
- {
704
- internalType: "int256",
705
- name: "",
706
- type: "int256",
707
- },
708
- ],
709
- stateMutability: "view",
710
- type: "function",
711
- },
712
- {
713
- inputs: [],
714
- name: "accPnlPerTokenUsed",
715
- outputs: [
716
- {
717
- internalType: "int256",
718
- name: "",
719
- type: "int256",
720
- },
721
- ],
722
- stateMutability: "view",
723
- type: "function",
724
- },
725
- {
726
- inputs: [],
727
- name: "accRewardsPerToken",
728
- outputs: [
729
- {
730
- internalType: "uint256",
731
- name: "",
732
- type: "uint256",
733
- },
734
- ],
735
- stateMutability: "view",
736
- type: "function",
737
- },
738
- {
739
- inputs: [],
740
- name: "admin",
741
- outputs: [
742
- {
743
- internalType: "address",
744
- name: "",
745
- type: "address",
746
- },
747
- ],
748
- stateMutability: "view",
749
- type: "function",
750
- },
751
- {
752
- inputs: [
753
- {
754
- internalType: "address",
755
- name: "owner",
756
- type: "address",
757
- },
758
- {
759
- internalType: "address",
760
- name: "spender",
761
- type: "address",
762
- },
763
- ],
764
- name: "allowance",
765
- outputs: [
766
- {
767
- internalType: "uint256",
768
- name: "",
769
- type: "uint256",
770
- },
771
- ],
772
- stateMutability: "view",
773
- type: "function",
774
- },
775
- {
776
- inputs: [
777
- {
778
- internalType: "address",
779
- name: "spender",
780
- type: "address",
781
- },
782
- {
783
- internalType: "uint256",
784
- name: "amount",
785
- type: "uint256",
786
- },
787
- ],
788
- name: "approve",
789
- outputs: [
790
- {
791
- internalType: "bool",
792
- name: "",
793
- type: "bool",
794
- },
795
- ],
796
- stateMutability: "nonpayable",
797
- type: "function",
798
- },
799
- {
800
- inputs: [],
801
- name: "asset",
802
- outputs: [
803
- {
804
- internalType: "address",
805
- name: "",
806
- type: "address",
807
- },
808
- ],
809
- stateMutability: "view",
810
- type: "function",
811
- },
812
- {
813
- inputs: [],
814
- name: "assetsToDeplete",
815
- outputs: [
816
- {
817
- internalType: "uint256",
818
- name: "",
819
- type: "uint256",
820
- },
821
- ],
822
- stateMutability: "view",
823
- type: "function",
824
- },
825
- {
826
- inputs: [],
827
- name: "availableAssets",
828
- outputs: [
829
- {
830
- internalType: "uint256",
831
- name: "",
832
- type: "uint256",
833
- },
834
- ],
835
- stateMutability: "view",
836
- type: "function",
837
- },
838
- {
839
- inputs: [
840
- {
841
- internalType: "address",
842
- name: "account",
843
- type: "address",
844
- },
845
- ],
846
- name: "balanceOf",
847
- outputs: [
848
- {
849
- internalType: "uint256",
850
- name: "",
851
- type: "uint256",
852
- },
853
- ],
854
- stateMutability: "view",
855
- type: "function",
856
- },
857
- {
858
- inputs: [
859
- {
860
- internalType: "uint256",
861
- name: "shares",
862
- type: "uint256",
863
- },
864
- {
865
- internalType: "address",
866
- name: "owner",
867
- type: "address",
868
- },
869
- {
870
- internalType: "uint256",
871
- name: "unlockEpoch",
872
- type: "uint256",
873
- },
874
- ],
875
- name: "cancelWithdrawRequest",
876
- outputs: [],
877
- stateMutability: "nonpayable",
878
- type: "function",
879
- },
880
- {
881
- inputs: [],
882
- name: "collateralizationP",
883
- outputs: [
884
- {
885
- internalType: "uint256",
886
- name: "",
887
- type: "uint256",
888
- },
889
- ],
890
- stateMutability: "view",
891
- type: "function",
892
- },
893
- {
894
- inputs: [
895
- {
896
- internalType: "uint256",
897
- name: "shares",
898
- type: "uint256",
899
- },
900
- ],
901
- name: "convertToAssets",
902
- outputs: [
903
- {
904
- internalType: "uint256",
905
- name: "assets",
906
- type: "uint256",
907
- },
908
- ],
909
- stateMutability: "view",
910
- type: "function",
911
- },
912
- {
913
- inputs: [
914
- {
915
- internalType: "uint256",
916
- name: "assets",
917
- type: "uint256",
918
- },
919
- ],
920
- name: "convertToShares",
921
- outputs: [
922
- {
923
- internalType: "uint256",
924
- name: "shares",
925
- type: "uint256",
926
- },
927
- ],
928
- stateMutability: "view",
929
- type: "function",
930
- },
931
- {
932
- inputs: [],
933
- name: "currentBalanceDai",
934
- outputs: [
935
- {
936
- internalType: "uint256",
937
- name: "",
938
- type: "uint256",
939
- },
940
- ],
941
- stateMutability: "view",
942
- type: "function",
943
- },
944
- {
945
- inputs: [],
946
- name: "currentEpoch",
947
- outputs: [
948
- {
949
- internalType: "uint256",
950
- name: "",
951
- type: "uint256",
952
- },
953
- ],
954
- stateMutability: "view",
955
- type: "function",
956
- },
957
- {
958
- inputs: [],
959
- name: "currentEpochPositiveOpenPnl",
960
- outputs: [
961
- {
962
- internalType: "uint256",
963
- name: "",
964
- type: "uint256",
965
- },
966
- ],
967
- stateMutability: "view",
968
- type: "function",
969
- },
970
- {
971
- inputs: [],
972
- name: "currentEpochStart",
973
- outputs: [
974
- {
975
- internalType: "uint256",
976
- name: "",
977
- type: "uint256",
978
- },
979
- ],
980
- stateMutability: "view",
981
- type: "function",
982
- },
983
- {
984
- inputs: [],
985
- name: "currentMaxSupply",
986
- outputs: [
987
- {
988
- internalType: "uint256",
989
- name: "",
990
- type: "uint256",
991
- },
992
- ],
993
- stateMutability: "view",
994
- type: "function",
995
- },
996
- {
997
- inputs: [],
998
- name: "dailyAccPnlDelta",
999
- outputs: [
1000
- {
1001
- internalType: "int256",
1002
- name: "",
1003
- type: "int256",
1004
- },
1005
- ],
1006
- stateMutability: "view",
1007
- type: "function",
1008
- },
1009
- {
1010
- inputs: [],
1011
- name: "dailyMintedGns",
1012
- outputs: [
1013
- {
1014
- internalType: "uint256",
1015
- name: "",
1016
- type: "uint256",
1017
- },
1018
- ],
1019
- stateMutability: "view",
1020
- type: "function",
1021
- },
1022
- {
1023
- inputs: [],
1024
- name: "decimals",
1025
- outputs: [
1026
- {
1027
- internalType: "uint8",
1028
- name: "",
1029
- type: "uint8",
1030
- },
1031
- ],
1032
- stateMutability: "view",
1033
- type: "function",
1034
- },
1035
- {
1036
- inputs: [
1037
- {
1038
- internalType: "address",
1039
- name: "spender",
1040
- type: "address",
1041
- },
1042
- {
1043
- internalType: "uint256",
1044
- name: "subtractedValue",
1045
- type: "uint256",
1046
- },
1047
- ],
1048
- name: "decreaseAllowance",
1049
- outputs: [
1050
- {
1051
- internalType: "bool",
1052
- name: "",
1053
- type: "bool",
1054
- },
1055
- ],
1056
- stateMutability: "nonpayable",
1057
- type: "function",
1058
- },
1059
- {
1060
- inputs: [
1061
- {
1062
- internalType: "uint256",
1063
- name: "assets",
1064
- type: "uint256",
1065
- },
1066
- ],
1067
- name: "deplete",
1068
- outputs: [],
1069
- stateMutability: "nonpayable",
1070
- type: "function",
1071
- },
1072
- {
1073
- inputs: [
1074
- {
1075
- internalType: "uint256",
1076
- name: "assets",
1077
- type: "uint256",
1078
- },
1079
- {
1080
- internalType: "address",
1081
- name: "receiver",
1082
- type: "address",
1083
- },
1084
- ],
1085
- name: "deposit",
1086
- outputs: [
1087
- {
1088
- internalType: "uint256",
1089
- name: "",
1090
- type: "uint256",
1091
- },
1092
- ],
1093
- stateMutability: "nonpayable",
1094
- type: "function",
1095
- },
1096
- {
1097
- inputs: [
1098
- {
1099
- internalType: "uint256",
1100
- name: "assets",
1101
- type: "uint256",
1102
- },
1103
- {
1104
- internalType: "uint256",
1105
- name: "lockDuration",
1106
- type: "uint256",
1107
- },
1108
- {
1109
- internalType: "address",
1110
- name: "receiver",
1111
- type: "address",
1112
- },
1113
- ],
1114
- name: "depositWithDiscountAndLock",
1115
- outputs: [
1116
- {
1117
- internalType: "uint256",
1118
- name: "",
1119
- type: "uint256",
1120
- },
1121
- ],
1122
- stateMutability: "nonpayable",
1123
- type: "function",
1124
- },
1125
- {
1126
- inputs: [
1127
- {
1128
- internalType: "uint256",
1129
- name: "assets",
1130
- type: "uint256",
1131
- },
1132
- ],
1133
- name: "distributeReward",
1134
- outputs: [],
1135
- stateMutability: "nonpayable",
1136
- type: "function",
1137
- },
1138
- {
1139
- inputs: [
1140
- {
1141
- internalType: "uint256",
1142
- name: "depositId",
1143
- type: "uint256",
1144
- },
1145
- ],
1146
- name: "getLockedDeposit",
1147
- outputs: [
1148
- {
1149
- components: [
1150
- {
1151
- internalType: "address",
1152
- name: "owner",
1153
- type: "address",
1154
- },
1155
- {
1156
- internalType: "uint256",
1157
- name: "shares",
1158
- type: "uint256",
1159
- },
1160
- {
1161
- internalType: "uint256",
1162
- name: "assetsDeposited",
1163
- type: "uint256",
1164
- },
1165
- {
1166
- internalType: "uint256",
1167
- name: "assetsDiscount",
1168
- type: "uint256",
1169
- },
1170
- {
1171
- internalType: "uint256",
1172
- name: "atTimestamp",
1173
- type: "uint256",
1174
- },
1175
- {
1176
- internalType: "uint256",
1177
- name: "lockDuration",
1178
- type: "uint256",
1179
- },
1180
- ],
1181
- internalType: "struct IGToken.LockedDeposit",
1182
- name: "",
1183
- type: "tuple",
1184
- },
1185
- ],
1186
- stateMutability: "view",
1187
- type: "function",
1188
- },
1189
- {
1190
- inputs: [
1191
- {
1192
- internalType: "uint256",
1193
- name: "currentBlock",
1194
- type: "uint256",
1195
- },
1196
- ],
1197
- name: "getPendingAccBlockWeightedMarketCap",
1198
- outputs: [
1199
- {
1200
- internalType: "uint256",
1201
- name: "",
1202
- type: "uint256",
1203
- },
1204
- ],
1205
- stateMutability: "view",
1206
- type: "function",
1207
- },
1208
- {
1209
- inputs: [],
1210
- name: "gnsPriceProvider",
1211
- outputs: [
1212
- {
1213
- internalType: "address",
1214
- name: "addr",
1215
- type: "address",
1216
- },
1217
- {
1218
- internalType: "bytes",
1219
- name: "signature",
1220
- type: "bytes",
1221
- },
1222
- ],
1223
- stateMutability: "view",
1224
- type: "function",
1225
- },
1226
- {
1227
- inputs: [],
1228
- name: "gnsToken",
1229
- outputs: [
1230
- {
1231
- internalType: "address",
1232
- name: "",
1233
- type: "address",
1234
- },
1235
- ],
1236
- stateMutability: "view",
1237
- type: "function",
1238
- },
1239
- {
1240
- inputs: [],
1241
- name: "gnsTokenToAssetsPrice",
1242
- outputs: [
1243
- {
1244
- internalType: "uint256",
1245
- name: "price",
1246
- type: "uint256",
1247
- },
1248
- ],
1249
- stateMutability: "view",
1250
- type: "function",
1251
- },
1252
- {
1253
- inputs: [
1254
- {
1255
- internalType: "address",
1256
- name: "spender",
1257
- type: "address",
1258
- },
1259
- {
1260
- internalType: "uint256",
1261
- name: "addedValue",
1262
- type: "uint256",
1263
- },
1264
- ],
1265
- name: "increaseAllowance",
1266
- outputs: [
1267
- {
1268
- internalType: "bool",
1269
- name: "",
1270
- type: "bool",
1271
- },
1272
- ],
1273
- stateMutability: "nonpayable",
1274
- type: "function",
1275
- },
1276
- {
1277
- inputs: [
1278
- {
1279
- internalType: "string",
1280
- name: "_name",
1281
- type: "string",
1282
- },
1283
- {
1284
- internalType: "string",
1285
- name: "_symbol",
1286
- type: "string",
1287
- },
1288
- {
1289
- components: [
1290
- {
1291
- internalType: "address",
1292
- name: "asset",
1293
- type: "address",
1294
- },
1295
- {
1296
- internalType: "address",
1297
- name: "owner",
1298
- type: "address",
1299
- },
1300
- {
1301
- internalType: "address",
1302
- name: "manager",
1303
- type: "address",
1304
- },
1305
- {
1306
- internalType: "address",
1307
- name: "admin",
1308
- type: "address",
1309
- },
1310
- {
1311
- internalType: "address",
1312
- name: "gnsToken",
1313
- type: "address",
1314
- },
1315
- {
1316
- internalType: "address",
1317
- name: "lockedDepositNft",
1318
- type: "address",
1319
- },
1320
- {
1321
- internalType: "address",
1322
- name: "pnlHandler",
1323
- type: "address",
1324
- },
1325
- {
1326
- internalType: "address",
1327
- name: "openTradesPnlFeed",
1328
- type: "address",
1329
- },
1330
- {
1331
- components: [
1332
- {
1333
- internalType: "address",
1334
- name: "addr",
1335
- type: "address",
1336
- },
1337
- {
1338
- internalType: "bytes",
1339
- name: "signature",
1340
- type: "bytes",
1341
- },
1342
- ],
1343
- internalType: "struct GTokenV6_3_2.GnsPriceProvider",
1344
- name: "gnsPriceProvider",
1345
- type: "tuple",
1346
- },
1347
- ],
1348
- internalType: "struct GTokenV6_3_2.ContractAddresses",
1349
- name: "_contractAddresses",
1350
- type: "tuple",
1351
- },
1352
- {
1353
- internalType: "uint256",
1354
- name: "_MIN_LOCK_DURATION",
1355
- type: "uint256",
1356
- },
1357
- {
1358
- internalType: "uint256",
1359
- name: "_maxAccOpenPnlDelta",
1360
- type: "uint256",
1361
- },
1362
- {
1363
- internalType: "uint256",
1364
- name: "_maxDailyAccPnlDelta",
1365
- type: "uint256",
1366
- },
1367
- {
1368
- internalType: "uint256[2]",
1369
- name: "_withdrawLockThresholdsP",
1370
- type: "uint256[2]",
1371
- },
1372
- {
1373
- internalType: "uint256",
1374
- name: "_maxSupplyIncreaseDailyP",
1375
- type: "uint256",
1376
- },
1377
- {
1378
- internalType: "uint256",
1379
- name: "_lossesBurnP",
1380
- type: "uint256",
1381
- },
1382
- {
1383
- internalType: "uint256",
1384
- name: "_maxGnsSupplyMintDailyP",
1385
- type: "uint256",
1386
- },
1387
- {
1388
- internalType: "uint256",
1389
- name: "_maxDiscountP",
1390
- type: "uint256",
1391
- },
1392
- {
1393
- internalType: "uint256",
1394
- name: "_maxDiscountThresholdP",
1395
- type: "uint256",
1396
- },
1397
- ],
1398
- name: "initialize",
1399
- outputs: [],
1400
- stateMutability: "nonpayable",
1401
- type: "function",
1402
- },
1403
- {
1404
- inputs: [],
1405
- name: "initializeV2",
1406
- outputs: [],
1407
- stateMutability: "nonpayable",
1408
- type: "function",
1409
- },
1410
- {
1411
- inputs: [],
1412
- name: "lastDailyAccPnlDeltaReset",
1413
- outputs: [
1414
- {
1415
- internalType: "uint256",
1416
- name: "",
1417
- type: "uint256",
1418
- },
1419
- ],
1420
- stateMutability: "view",
1421
- type: "function",
1422
- },
1423
- {
1424
- inputs: [],
1425
- name: "lastDailyMintedGnsReset",
1426
- outputs: [
1427
- {
1428
- internalType: "uint256",
1429
- name: "",
1430
- type: "uint256",
1431
- },
1432
- ],
1433
- stateMutability: "view",
1434
- type: "function",
1435
- },
1436
- {
1437
- inputs: [],
1438
- name: "lastMaxSupplyUpdate",
1439
- outputs: [
1440
- {
1441
- internalType: "uint256",
1442
- name: "",
1443
- type: "uint256",
1444
- },
1445
- ],
1446
- stateMutability: "view",
1447
- type: "function",
1448
- },
1449
- {
1450
- inputs: [
1451
- {
1452
- internalType: "uint256",
1453
- name: "collatP",
1454
- type: "uint256",
1455
- },
1456
- {
1457
- internalType: "uint256",
1458
- name: "lockDuration",
1459
- type: "uint256",
1460
- },
1461
- ],
1462
- name: "lockDiscountP",
1463
- outputs: [
1464
- {
1465
- internalType: "uint256",
1466
- name: "",
1467
- type: "uint256",
1468
- },
1469
- ],
1470
- stateMutability: "view",
1471
- type: "function",
1472
- },
1473
- {
1474
- inputs: [],
1475
- name: "lockedDepositNft",
1476
- outputs: [
1477
- {
1478
- internalType: "contract INft",
1479
- name: "",
1480
- type: "address",
1481
- },
1482
- ],
1483
- stateMutability: "view",
1484
- type: "function",
1485
- },
1486
- {
1487
- inputs: [
1488
- {
1489
- internalType: "uint256",
1490
- name: "",
1491
- type: "uint256",
1492
- },
1493
- ],
1494
- name: "lockedDeposits",
1495
- outputs: [
1496
- {
1497
- internalType: "address",
1498
- name: "owner",
1499
- type: "address",
1500
- },
1501
- {
1502
- internalType: "uint256",
1503
- name: "shares",
1504
- type: "uint256",
1505
- },
1506
- {
1507
- internalType: "uint256",
1508
- name: "assetsDeposited",
1509
- type: "uint256",
1510
- },
1511
- {
1512
- internalType: "uint256",
1513
- name: "assetsDiscount",
1514
- type: "uint256",
1515
- },
1516
- {
1517
- internalType: "uint256",
1518
- name: "atTimestamp",
1519
- type: "uint256",
1520
- },
1521
- {
1522
- internalType: "uint256",
1523
- name: "lockDuration",
1524
- type: "uint256",
1525
- },
1526
- ],
1527
- stateMutability: "view",
1528
- type: "function",
1529
- },
1530
- {
1531
- inputs: [],
1532
- name: "lockedDepositsCount",
1533
- outputs: [
1534
- {
1535
- internalType: "uint256",
1536
- name: "",
1537
- type: "uint256",
1538
- },
1539
- ],
1540
- stateMutability: "view",
1541
- type: "function",
1542
- },
1543
- {
1544
- inputs: [],
1545
- name: "lossesBurnP",
1546
- outputs: [
1547
- {
1548
- internalType: "uint256",
1549
- name: "",
1550
- type: "uint256",
1551
- },
1552
- ],
1553
- stateMutability: "view",
1554
- type: "function",
1555
- },
1556
- {
1557
- inputs: [
1558
- {
1559
- internalType: "uint256",
1560
- name: "shares",
1561
- type: "uint256",
1562
- },
1563
- {
1564
- internalType: "address",
1565
- name: "owner",
1566
- type: "address",
1567
- },
1568
- ],
1569
- name: "makeWithdrawRequest",
1570
- outputs: [],
1571
- stateMutability: "nonpayable",
1572
- type: "function",
1573
- },
1574
- {
1575
- inputs: [],
1576
- name: "manager",
1577
- outputs: [
1578
- {
1579
- internalType: "address",
1580
- name: "",
1581
- type: "address",
1582
- },
1583
- ],
1584
- stateMutability: "view",
1585
- type: "function",
1586
- },
1587
- {
1588
- inputs: [],
1589
- name: "marketCap",
1590
- outputs: [
1591
- {
1592
- internalType: "uint256",
1593
- name: "",
1594
- type: "uint256",
1595
- },
1596
- ],
1597
- stateMutability: "view",
1598
- type: "function",
1599
- },
1600
- {
1601
- inputs: [],
1602
- name: "maxAccOpenPnlDelta",
1603
- outputs: [
1604
- {
1605
- internalType: "uint256",
1606
- name: "",
1607
- type: "uint256",
1608
- },
1609
- ],
1610
- stateMutability: "view",
1611
- type: "function",
1612
- },
1613
- {
1614
- inputs: [],
1615
- name: "maxAccPnlPerToken",
1616
- outputs: [
1617
- {
1618
- internalType: "uint256",
1619
- name: "",
1620
- type: "uint256",
1621
- },
1622
- ],
1623
- stateMutability: "view",
1624
- type: "function",
1625
- },
1626
- {
1627
- inputs: [],
1628
- name: "maxDailyAccPnlDelta",
1629
- outputs: [
1630
- {
1631
- internalType: "uint256",
1632
- name: "",
1633
- type: "uint256",
1634
- },
1635
- ],
1636
- stateMutability: "view",
1637
- type: "function",
1638
- },
1639
- {
1640
- inputs: [
1641
- {
1642
- internalType: "address",
1643
- name: "owner",
1644
- type: "address",
1645
- },
1646
- ],
1647
- name: "maxDeposit",
1648
- outputs: [
1649
- {
1650
- internalType: "uint256",
1651
- name: "",
1652
- type: "uint256",
1653
- },
1654
- ],
1655
- stateMutability: "view",
1656
- type: "function",
1657
- },
1658
- {
1659
- inputs: [],
1660
- name: "maxDiscountP",
1661
- outputs: [
1662
- {
1663
- internalType: "uint256",
1664
- name: "",
1665
- type: "uint256",
1666
- },
1667
- ],
1668
- stateMutability: "view",
1669
- type: "function",
1670
- },
1671
- {
1672
- inputs: [],
1673
- name: "maxDiscountThresholdP",
1674
- outputs: [
1675
- {
1676
- internalType: "uint256",
1677
- name: "",
1678
- type: "uint256",
1679
- },
1680
- ],
1681
- stateMutability: "view",
1682
- type: "function",
1683
- },
1684
- {
1685
- inputs: [],
1686
- name: "maxGnsSupplyMintDailyP",
1687
- outputs: [
1688
- {
1689
- internalType: "uint256",
1690
- name: "",
1691
- type: "uint256",
1692
- },
1693
- ],
1694
- stateMutability: "view",
1695
- type: "function",
1696
- },
1697
- {
1698
- inputs: [
1699
- {
1700
- internalType: "address",
1701
- name: "",
1702
- type: "address",
1703
- },
1704
- ],
1705
- name: "maxMint",
1706
- outputs: [
1707
- {
1708
- internalType: "uint256",
1709
- name: "",
1710
- type: "uint256",
1711
- },
1712
- ],
1713
- stateMutability: "view",
1714
- type: "function",
1715
- },
1716
- {
1717
- inputs: [
1718
- {
1719
- internalType: "address",
1720
- name: "owner",
1721
- type: "address",
1722
- },
1723
- ],
1724
- name: "maxRedeem",
1725
- outputs: [
1726
- {
1727
- internalType: "uint256",
1728
- name: "",
1729
- type: "uint256",
1730
- },
1731
- ],
1732
- stateMutability: "view",
1733
- type: "function",
1734
- },
1735
- {
1736
- inputs: [],
1737
- name: "maxSupplyIncreaseDailyP",
1738
- outputs: [
1739
- {
1740
- internalType: "uint256",
1741
- name: "",
1742
- type: "uint256",
1743
- },
1744
- ],
1745
- stateMutability: "view",
1746
- type: "function",
1747
- },
1748
- {
1749
- inputs: [
1750
- {
1751
- internalType: "address",
1752
- name: "owner",
1753
- type: "address",
1754
- },
1755
- ],
1756
- name: "maxWithdraw",
1757
- outputs: [
1758
- {
1759
- internalType: "uint256",
1760
- name: "",
1761
- type: "uint256",
1762
- },
1763
- ],
1764
- stateMutability: "view",
1765
- type: "function",
1766
- },
1767
- {
1768
- inputs: [
1769
- {
1770
- internalType: "uint256",
1771
- name: "shares",
1772
- type: "uint256",
1773
- },
1774
- {
1775
- internalType: "address",
1776
- name: "receiver",
1777
- type: "address",
1778
- },
1779
- ],
1780
- name: "mint",
1781
- outputs: [
1782
- {
1783
- internalType: "uint256",
1784
- name: "",
1785
- type: "uint256",
1786
- },
1787
- ],
1788
- stateMutability: "nonpayable",
1789
- type: "function",
1790
- },
1791
- {
1792
- inputs: [
1793
- {
1794
- internalType: "uint256",
1795
- name: "shares",
1796
- type: "uint256",
1797
- },
1798
- {
1799
- internalType: "uint256",
1800
- name: "lockDuration",
1801
- type: "uint256",
1802
- },
1803
- {
1804
- internalType: "address",
1805
- name: "receiver",
1806
- type: "address",
1807
- },
1808
- ],
1809
- name: "mintWithDiscountAndLock",
1810
- outputs: [
1811
- {
1812
- internalType: "uint256",
1813
- name: "",
1814
- type: "uint256",
1815
- },
1816
- ],
1817
- stateMutability: "nonpayable",
1818
- type: "function",
1819
- },
1820
- {
1821
- inputs: [],
1822
- name: "name",
1823
- outputs: [
1824
- {
1825
- internalType: "string",
1826
- name: "",
1827
- type: "string",
1828
- },
1829
- ],
1830
- stateMutability: "view",
1831
- type: "function",
1832
- },
1833
- {
1834
- inputs: [],
1835
- name: "openTradesPnlFeed",
1836
- outputs: [
1837
- {
1838
- internalType: "contract IOpenTradesPnlFeed",
1839
- name: "",
1840
- type: "address",
1841
- },
1842
- ],
1843
- stateMutability: "view",
1844
- type: "function",
1845
- },
1846
- {
1847
- inputs: [],
1848
- name: "owner",
1849
- outputs: [
1850
- {
1851
- internalType: "address",
1852
- name: "",
1853
- type: "address",
1854
- },
1855
- ],
1856
- stateMutability: "view",
1857
- type: "function",
1858
- },
1859
- {
1860
- inputs: [],
1861
- name: "pnlHandler",
1862
- outputs: [
1863
- {
1864
- internalType: "address",
1865
- name: "",
1866
- type: "address",
1867
- },
1868
- ],
1869
- stateMutability: "view",
1870
- type: "function",
1871
- },
1872
- {
1873
- inputs: [
1874
- {
1875
- internalType: "uint256",
1876
- name: "assets",
1877
- type: "uint256",
1878
- },
1879
- ],
1880
- name: "previewDeposit",
1881
- outputs: [
1882
- {
1883
- internalType: "uint256",
1884
- name: "",
1885
- type: "uint256",
1886
- },
1887
- ],
1888
- stateMutability: "view",
1889
- type: "function",
1890
- },
1891
- {
1892
- inputs: [
1893
- {
1894
- internalType: "uint256",
1895
- name: "shares",
1896
- type: "uint256",
1897
- },
1898
- ],
1899
- name: "previewMint",
1900
- outputs: [
1901
- {
1902
- internalType: "uint256",
1903
- name: "",
1904
- type: "uint256",
1905
- },
1906
- ],
1907
- stateMutability: "view",
1908
- type: "function",
1909
- },
1910
- {
1911
- inputs: [
1912
- {
1913
- internalType: "uint256",
1914
- name: "shares",
1915
- type: "uint256",
1916
- },
1917
- ],
1918
- name: "previewRedeem",
1919
- outputs: [
1920
- {
1921
- internalType: "uint256",
1922
- name: "",
1923
- type: "uint256",
1924
- },
1925
- ],
1926
- stateMutability: "view",
1927
- type: "function",
1928
- },
1929
- {
1930
- inputs: [
1931
- {
1932
- internalType: "uint256",
1933
- name: "assets",
1934
- type: "uint256",
1935
- },
1936
- ],
1937
- name: "previewWithdraw",
1938
- outputs: [
1939
- {
1940
- internalType: "uint256",
1941
- name: "",
1942
- type: "uint256",
1943
- },
1944
- ],
1945
- stateMutability: "view",
1946
- type: "function",
1947
- },
1948
- {
1949
- inputs: [
1950
- {
1951
- internalType: "uint256",
1952
- name: "assets",
1953
- type: "uint256",
1954
- },
1955
- {
1956
- internalType: "address",
1957
- name: "user",
1958
- type: "address",
1959
- },
1960
- ],
1961
- name: "receiveAssets",
1962
- outputs: [],
1963
- stateMutability: "nonpayable",
1964
- type: "function",
1965
- },
1966
- {
1967
- inputs: [
1968
- {
1969
- internalType: "uint256",
1970
- name: "shares",
1971
- type: "uint256",
1972
- },
1973
- {
1974
- internalType: "address",
1975
- name: "receiver",
1976
- type: "address",
1977
- },
1978
- {
1979
- internalType: "address",
1980
- name: "owner",
1981
- type: "address",
1982
- },
1983
- ],
1984
- name: "redeem",
1985
- outputs: [
1986
- {
1987
- internalType: "uint256",
1988
- name: "",
1989
- type: "uint256",
1990
- },
1991
- ],
1992
- stateMutability: "nonpayable",
1993
- type: "function",
1994
- },
1995
- {
1996
- inputs: [
1997
- {
1998
- internalType: "uint256",
1999
- name: "assets",
2000
- type: "uint256",
2001
- },
2002
- ],
2003
- name: "refill",
2004
- outputs: [],
2005
- stateMutability: "nonpayable",
2006
- type: "function",
2007
- },
2008
- {
2009
- inputs: [],
2010
- name: "renounceOwnership",
2011
- outputs: [],
2012
- stateMutability: "nonpayable",
2013
- type: "function",
2014
- },
2015
- {
2016
- inputs: [
2017
- {
2018
- internalType: "uint256",
2019
- name: "assets",
2020
- type: "uint256",
2021
- },
2022
- {
2023
- internalType: "address",
2024
- name: "receiver",
2025
- type: "address",
2026
- },
2027
- ],
2028
- name: "sendAssets",
2029
- outputs: [],
2030
- stateMutability: "nonpayable",
2031
- type: "function",
2032
- },
2033
- {
2034
- inputs: [],
2035
- name: "shareToAssetsPrice",
2036
- outputs: [
2037
- {
2038
- internalType: "uint256",
2039
- name: "",
2040
- type: "uint256",
2041
- },
2042
- ],
2043
- stateMutability: "view",
2044
- type: "function",
2045
- },
2046
- {
2047
- inputs: [],
2048
- name: "storeAccBlockWeightedMarketCap",
2049
- outputs: [],
2050
- stateMutability: "nonpayable",
2051
- type: "function",
2052
- },
2053
- {
2054
- inputs: [],
2055
- name: "symbol",
2056
- outputs: [
2057
- {
2058
- internalType: "string",
2059
- name: "",
2060
- type: "string",
2061
- },
2062
- ],
2063
- stateMutability: "view",
2064
- type: "function",
2065
- },
2066
- {
2067
- inputs: [],
2068
- name: "totalAssets",
2069
- outputs: [
2070
- {
2071
- internalType: "uint256",
2072
- name: "",
2073
- type: "uint256",
2074
- },
2075
- ],
2076
- stateMutability: "view",
2077
- type: "function",
2078
- },
2079
- {
2080
- inputs: [],
2081
- name: "totalClosedPnl",
2082
- outputs: [
2083
- {
2084
- internalType: "int256",
2085
- name: "",
2086
- type: "int256",
2087
- },
2088
- ],
2089
- stateMutability: "view",
2090
- type: "function",
2091
- },
2092
- {
2093
- inputs: [],
2094
- name: "totalDepleted",
2095
- outputs: [
2096
- {
2097
- internalType: "uint256",
2098
- name: "",
2099
- type: "uint256",
2100
- },
2101
- ],
2102
- stateMutability: "view",
2103
- type: "function",
2104
- },
2105
- {
2106
- inputs: [],
2107
- name: "totalDepletedGns",
2108
- outputs: [
2109
- {
2110
- internalType: "uint256",
2111
- name: "",
2112
- type: "uint256",
2113
- },
2114
- ],
2115
- stateMutability: "view",
2116
- type: "function",
2117
- },
2118
- {
2119
- inputs: [],
2120
- name: "totalDeposited",
2121
- outputs: [
2122
- {
2123
- internalType: "uint256",
2124
- name: "",
2125
- type: "uint256",
2126
- },
2127
- ],
2128
- stateMutability: "view",
2129
- type: "function",
2130
- },
2131
- {
2132
- inputs: [],
2133
- name: "totalDiscounts",
2134
- outputs: [
2135
- {
2136
- internalType: "uint256",
2137
- name: "",
2138
- type: "uint256",
2139
- },
2140
- ],
2141
- stateMutability: "view",
2142
- type: "function",
2143
- },
2144
- {
2145
- inputs: [],
2146
- name: "totalLiability",
2147
- outputs: [
2148
- {
2149
- internalType: "int256",
2150
- name: "",
2151
- type: "int256",
2152
- },
2153
- ],
2154
- stateMutability: "view",
2155
- type: "function",
2156
- },
2157
- {
2158
- inputs: [],
2159
- name: "totalLockedDiscounts",
2160
- outputs: [
2161
- {
2162
- internalType: "uint256",
2163
- name: "",
2164
- type: "uint256",
2165
- },
2166
- ],
2167
- stateMutability: "view",
2168
- type: "function",
2169
- },
2170
- {
2171
- inputs: [],
2172
- name: "totalRefilled",
2173
- outputs: [
2174
- {
2175
- internalType: "uint256",
2176
- name: "",
2177
- type: "uint256",
2178
- },
2179
- ],
2180
- stateMutability: "view",
2181
- type: "function",
2182
- },
2183
- {
2184
- inputs: [],
2185
- name: "totalRefilledGns",
2186
- outputs: [
2187
- {
2188
- internalType: "uint256",
2189
- name: "",
2190
- type: "uint256",
2191
- },
2192
- ],
2193
- stateMutability: "view",
2194
- type: "function",
2195
- },
2196
- {
2197
- inputs: [],
2198
- name: "totalRewards",
2199
- outputs: [
2200
- {
2201
- internalType: "uint256",
2202
- name: "",
2203
- type: "uint256",
2204
- },
2205
- ],
2206
- stateMutability: "view",
2207
- type: "function",
2208
- },
2209
- {
2210
- inputs: [
2211
- {
2212
- internalType: "address",
2213
- name: "owner",
2214
- type: "address",
2215
- },
2216
- ],
2217
- name: "totalSharesBeingWithdrawn",
2218
- outputs: [
2219
- {
2220
- internalType: "uint256",
2221
- name: "shares",
2222
- type: "uint256",
2223
- },
2224
- ],
2225
- stateMutability: "view",
2226
- type: "function",
2227
- },
2228
- {
2229
- inputs: [],
2230
- name: "totalSupply",
2231
- outputs: [
2232
- {
2233
- internalType: "uint256",
2234
- name: "",
2235
- type: "uint256",
2236
- },
2237
- ],
2238
- stateMutability: "view",
2239
- type: "function",
2240
- },
2241
- {
2242
- inputs: [
2243
- {
2244
- internalType: "address",
2245
- name: "to",
2246
- type: "address",
2247
- },
2248
- {
2249
- internalType: "uint256",
2250
- name: "amount",
2251
- type: "uint256",
2252
- },
2253
- ],
2254
- name: "transfer",
2255
- outputs: [
2256
- {
2257
- internalType: "bool",
2258
- name: "",
2259
- type: "bool",
2260
- },
2261
- ],
2262
- stateMutability: "nonpayable",
2263
- type: "function",
2264
- },
2265
- {
2266
- inputs: [
2267
- {
2268
- internalType: "address",
2269
- name: "from",
2270
- type: "address",
2271
- },
2272
- {
2273
- internalType: "address",
2274
- name: "to",
2275
- type: "address",
2276
- },
2277
- {
2278
- internalType: "uint256",
2279
- name: "amount",
2280
- type: "uint256",
2281
- },
2282
- ],
2283
- name: "transferFrom",
2284
- outputs: [
2285
- {
2286
- internalType: "bool",
2287
- name: "",
2288
- type: "bool",
2289
- },
2290
- ],
2291
- stateMutability: "nonpayable",
2292
- type: "function",
2293
- },
2294
- {
2295
- inputs: [
2296
- {
2297
- internalType: "address",
2298
- name: "newOwner",
2299
- type: "address",
2300
- },
2301
- ],
2302
- name: "transferOwnership",
2303
- outputs: [],
2304
- stateMutability: "nonpayable",
2305
- type: "function",
2306
- },
2307
- {
2308
- inputs: [],
2309
- name: "tryNewOpenPnlRequestOrEpoch",
2310
- outputs: [],
2311
- stateMutability: "nonpayable",
2312
- type: "function",
2313
- },
2314
- {
2315
- inputs: [],
2316
- name: "tryResetDailyAccPnlDelta",
2317
- outputs: [],
2318
- stateMutability: "nonpayable",
2319
- type: "function",
2320
- },
2321
- {
2322
- inputs: [],
2323
- name: "tryUpdateCurrentMaxSupply",
2324
- outputs: [],
2325
- stateMutability: "nonpayable",
2326
- type: "function",
2327
- },
2328
- {
2329
- inputs: [],
2330
- name: "tvl",
2331
- outputs: [
2332
- {
2333
- internalType: "uint256",
2334
- name: "",
2335
- type: "uint256",
2336
- },
2337
- ],
2338
- stateMutability: "view",
2339
- type: "function",
2340
- },
2341
- {
2342
- inputs: [
2343
- {
2344
- internalType: "uint256",
2345
- name: "depositId",
2346
- type: "uint256",
2347
- },
2348
- {
2349
- internalType: "address",
2350
- name: "receiver",
2351
- type: "address",
2352
- },
2353
- ],
2354
- name: "unlockDeposit",
2355
- outputs: [],
2356
- stateMutability: "nonpayable",
2357
- type: "function",
2358
- },
2359
- {
2360
- inputs: [
2361
- {
2362
- internalType: "uint256",
2363
- name: "prevPositiveOpenPnl",
2364
- type: "uint256",
2365
- },
2366
- {
2367
- internalType: "uint256",
2368
- name: "newPositiveOpenPnl",
2369
- type: "uint256",
2370
- },
2371
- ],
2372
- name: "updateAccPnlPerTokenUsed",
2373
- outputs: [
2374
- {
2375
- internalType: "uint256",
2376
- name: "",
2377
- type: "uint256",
2378
- },
2379
- ],
2380
- stateMutability: "nonpayable",
2381
- type: "function",
2382
- },
2383
- {
2384
- inputs: [
2385
- {
2386
- internalType: "address",
2387
- name: "newValue",
2388
- type: "address",
2389
- },
2390
- ],
2391
- name: "updateAdmin",
2392
- outputs: [],
2393
- stateMutability: "nonpayable",
2394
- type: "function",
2395
- },
2396
- {
2397
- inputs: [
2398
- {
2399
- components: [
2400
- {
2401
- internalType: "address",
2402
- name: "addr",
2403
- type: "address",
2404
- },
2405
- {
2406
- internalType: "bytes",
2407
- name: "signature",
2408
- type: "bytes",
2409
- },
2410
- ],
2411
- internalType: "struct GTokenV6_3_2.GnsPriceProvider",
2412
- name: "newValue",
2413
- type: "tuple",
2414
- },
2415
- ],
2416
- name: "updateGnsPriceProvider",
2417
- outputs: [],
2418
- stateMutability: "nonpayable",
2419
- type: "function",
2420
- },
2421
- {
2422
- inputs: [
2423
- {
2424
- internalType: "uint256",
2425
- name: "newValue",
2426
- type: "uint256",
2427
- },
2428
- ],
2429
- name: "updateLossesBurnP",
2430
- outputs: [],
2431
- stateMutability: "nonpayable",
2432
- type: "function",
2433
- },
2434
- {
2435
- inputs: [
2436
- {
2437
- internalType: "address",
2438
- name: "newValue",
2439
- type: "address",
2440
- },
2441
- ],
2442
- name: "updateManager",
2443
- outputs: [],
2444
- stateMutability: "nonpayable",
2445
- type: "function",
2446
- },
2447
- {
2448
- inputs: [
2449
- {
2450
- internalType: "uint256",
2451
- name: "newValue",
2452
- type: "uint256",
2453
- },
2454
- ],
2455
- name: "updateMaxAccOpenPnlDelta",
2456
- outputs: [],
2457
- stateMutability: "nonpayable",
2458
- type: "function",
2459
- },
2460
- {
2461
- inputs: [
2462
- {
2463
- internalType: "uint256",
2464
- name: "newValue",
2465
- type: "uint256",
2466
- },
2467
- ],
2468
- name: "updateMaxDailyAccPnlDelta",
2469
- outputs: [],
2470
- stateMutability: "nonpayable",
2471
- type: "function",
2472
- },
2473
- {
2474
- inputs: [
2475
- {
2476
- internalType: "uint256",
2477
- name: "newValue",
2478
- type: "uint256",
2479
- },
2480
- ],
2481
- name: "updateMaxDiscountP",
2482
- outputs: [],
2483
- stateMutability: "nonpayable",
2484
- type: "function",
2485
- },
2486
- {
2487
- inputs: [
2488
- {
2489
- internalType: "uint256",
2490
- name: "newValue",
2491
- type: "uint256",
2492
- },
2493
- ],
2494
- name: "updateMaxDiscountThresholdP",
2495
- outputs: [],
2496
- stateMutability: "nonpayable",
2497
- type: "function",
2498
- },
2499
- {
2500
- inputs: [
2501
- {
2502
- internalType: "uint256",
2503
- name: "newValue",
2504
- type: "uint256",
2505
- },
2506
- ],
2507
- name: "updateMaxGnsSupplyMintDailyP",
2508
- outputs: [],
2509
- stateMutability: "nonpayable",
2510
- type: "function",
2511
- },
2512
- {
2513
- inputs: [
2514
- {
2515
- internalType: "uint256",
2516
- name: "newValue",
2517
- type: "uint256",
2518
- },
2519
- ],
2520
- name: "updateMaxSupplyIncreaseDailyP",
2521
- outputs: [],
2522
- stateMutability: "nonpayable",
2523
- type: "function",
2524
- },
2525
- {
2526
- inputs: [
2527
- {
2528
- internalType: "address",
2529
- name: "newValue",
2530
- type: "address",
2531
- },
2532
- ],
2533
- name: "updateOpenTradesPnlFeed",
2534
- outputs: [],
2535
- stateMutability: "nonpayable",
2536
- type: "function",
2537
- },
2538
- {
2539
- inputs: [
2540
- {
2541
- internalType: "address",
2542
- name: "newValue",
2543
- type: "address",
2544
- },
2545
- ],
2546
- name: "updatePnlHandler",
2547
- outputs: [],
2548
- stateMutability: "nonpayable",
2549
- type: "function",
2550
- },
2551
- {
2552
- inputs: [
2553
- {
2554
- internalType: "uint256[2]",
2555
- name: "newValue",
2556
- type: "uint256[2]",
2557
- },
2558
- ],
2559
- name: "updateWithdrawLockThresholdsP",
2560
- outputs: [],
2561
- stateMutability: "nonpayable",
2562
- type: "function",
2563
- },
2564
- {
2565
- inputs: [
2566
- {
2567
- internalType: "uint256",
2568
- name: "assets",
2569
- type: "uint256",
2570
- },
2571
- {
2572
- internalType: "address",
2573
- name: "receiver",
2574
- type: "address",
2575
- },
2576
- {
2577
- internalType: "address",
2578
- name: "owner",
2579
- type: "address",
2580
- },
2581
- ],
2582
- name: "withdraw",
2583
- outputs: [
2584
- {
2585
- internalType: "uint256",
2586
- name: "",
2587
- type: "uint256",
2588
- },
2589
- ],
2590
- stateMutability: "nonpayable",
2591
- type: "function",
2592
- },
2593
- {
2594
- inputs: [],
2595
- name: "withdrawEpochsTimelock",
2596
- outputs: [
2597
- {
2598
- internalType: "uint256",
2599
- name: "",
2600
- type: "uint256",
2601
- },
2602
- ],
2603
- stateMutability: "view",
2604
- type: "function",
2605
- },
2606
- {
2607
- inputs: [
2608
- {
2609
- internalType: "uint256",
2610
- name: "",
2611
- type: "uint256",
2612
- },
2613
- ],
2614
- name: "withdrawLockThresholdsP",
2615
- outputs: [
2616
- {
2617
- internalType: "uint256",
2618
- name: "",
2619
- type: "uint256",
2620
- },
2621
- ],
2622
- stateMutability: "view",
2623
- type: "function",
2624
- },
2625
- {
2626
- inputs: [
2627
- {
2628
- internalType: "address",
2629
- name: "",
2630
- type: "address",
2631
- },
2632
- {
2633
- internalType: "uint256",
2634
- name: "",
2635
- type: "uint256",
2636
- },
2637
- ],
2638
- name: "withdrawRequests",
2639
- outputs: [
2640
- {
2641
- internalType: "uint256",
2642
- name: "",
2643
- type: "uint256",
2644
- },
2645
- ],
2646
- stateMutability: "view",
2647
- type: "function",
2648
- },
2649
- ];
2650
- const _bytecode = "0x608060405234801561001057600080fd5b50615f2280620000216000396000f3fe608060405234801561001057600080fd5b50600436106106175760003560e01c80638da5cb5b11610328578063ce96cb77116101b4578063e7839676116100fa578063f2fde38b116100a8578063f2fde38b14610d3f578063f31bd8f714610d52578063f5521eaa14610d5b578063f851a44014610d6e578063f8fb10f714610d81578063faf33f2914610d8a578063fe0b6d9014610d93578063ff50abdc14610da657600080fd5b8063e783967614610ca6578063e7899c0614610d09578063e8e4311014610d11578063ea5f2bba14610d24578063ef01ed9314610d2d578063ef8b30f714610b84578063f0a7744614610d3657600080fd5b8063d905777e11610162578063d905777e14610c37578063db0447d514610c4a578063dd62ed3e14610c53578063ddd65e3114610c66578063e065600514610c6f578063e2f273bd14610c78578063e5328e0614610c8b578063e66a6e3b14610c9357600080fd5b8063ce96cb7714610bbd578063ce9e1b2114610bd0578063cf39c2db14610be3578063d1e08c2014610bf6578063d229b2dd14610c09578063d272df1014610c1c578063d8bdfd4814610c2f57600080fd5b8063b224e73511610279578063be216e8311610227578063be216e8314610b45578063c117ef3d14610b4d578063c4c1416914610b56578063c63384ab14610b69578063c63d75b614610b71578063c6e6f59214610b84578063ca9d07ba14610b97578063cb7f2c3914610baa57600080fd5b8063b224e73514610a59578063b3c4850a14610a62578063b3d7f6b914610a75578063b460af9414610a88578063b54bf9c914610a9b578063b82c589914610aae578063ba08765214610b3257600080fd5b8063a457c2d7116102d6578063a457c2d7146109d4578063a481c14b146109e7578063a50043a0146109fa578063a8abe90514610a0d578063a9059cbb14610a20578063aabf8ede14610a33578063ad00a5a414610a4657600080fd5b80638da5cb5b14610966578063940a4e451461097757806394bf804d1461098a57806395d89b411461099d578063979abb25146109a5578063979b0895146109b85780639aca06dc146109cb57600080fd5b8063481c6a75116104a75780636ce7dcc9116103f857806375cd9da9116103a657806375cd9da914610914578063766718081461091d57806378b4330f1461092657806379431d9c1461092f5780637dfc6922146109425780637fcff2af1461094b5780638c465629146109545780638d6cb2881461095d57600080fd5b80636ce7dcc9146108825780636d6ca319146108955780636e553f65146108c05780636ee432f2146108d357806370a08231146108e6578063715018a6146108f95780637361a5441461090157600080fd5b80635a6953d3116104555780635a6953d31461083b5780635cd8a76b1461084e5780635e93f860146108565780635f4ae7411461085f57806361a8c8c4146108685780636445ec001461087157806366d8ecf11461087957600080fd5b8063481c6a75146107da5780634cdad5061461066a5780634ea0ddf7146107ed57806353409be2146107f657806354508847146107ff57806358aba00f14610812578063596f0bc51461082557600080fd5b80631f91f2871161056c5780632c135b931161051a5780632c135b9314610762578063313ce5671461076a57806338d52e0f14610789578063395093511461079a5780633b418c1e146107ad5780633cc77527146107b65780633d7e4587146107bf578063402d267d146107c757600080fd5b80631f91f287146106ef5780631fc8d0991461071a57806320124bce1461072257806320e70a561461072a578063215e2fae1461073d57806322b2ef851461074657806323b872dd1461074f57600080fd5b80630a28a477116105c95780630a28a477146106a85780630dfb5287146106bb5780630e15561a146106c35780630fc29349146106cc5780630fcc6f31146106d5578063104aeef8146106de57806318160ddd146106e757600080fd5b806301e1d1141461061c5780630307604f146106375780630344e8a31461064057806306fdde031461065557806307a2d13a1461066a5780630851a2021461067d578063095ea7b314610685575b600080fd5b610624610daf565b6040519081526020015b60405180910390f35b61062460f75481565b61065361064e36600461514d565b610e21565b005b61065d6111bb565b60405161062e91906151cd565b6106246106783660046151e0565b61124d565b610624611260565b6106986106933660046151f9565b61126a565b604051901515815260200161062e565b6106246106b63660046151e0565b611282565b61065361128f565b61062460ef5481565b61062460f05481565b61062460ee5481565b61062460e55481565b603554610624565b60ce54610702906001600160a01b031681565b6040516001600160a01b03909116815260200161062e565b61062461134a565b61062461145c565b610653610738366004615225565b611499565b61062460e85481565b61062460e65481565b61069861075d366004615242565b611536565b610624611590565b606554600160a01b900460ff1660405160ff909116815260200161062e565b6065546001600160a01b0316610702565b6106986107a83660046151f9565b6115a7565b61062460d45481565b61062460d95481565b6106536115c9565b6106246107d5366004615225565b611618565b60cb54610702906001600160a01b031681565b61062460de5481565b61062460f15481565b61065361080d3660046151e0565b61162d565b610653610820366004615225565b6116e2565b61082d6117b6565b60405161062e929190615283565b60cd54610702906001600160a01b031681565b610653611857565b61062460e05481565b61062460f55481565b61062460e35481565b610653611908565b61062460ea5481565b6106536108903660046151e0565b6119a9565b6106246108a33660046151f9565b60e760209081526000928352604080842090915290825290205481565b6106246108ce36600461514d565b611af6565b6106246108e13660046151e0565b611bc2565b6106246108f4366004615225565b611bd9565b610653611bf4565b61062461090f3660046152a7565b611c06565b61062460d85481565b61062460e25481565b61062460d15481565b60ca54610702906001600160a01b031681565b61062460db5481565b61062460df5481565b61062460eb5481565b61062460f85481565b6097546001600160a01b0316610702565b6106536109853660046151e0565b611dd2565b61062461099836600461514d565b611e96565b61065d611f58565b6106536109b33660046151e0565b611f67565b6106246109c63660046151e0565b61203a565b61062460f25481565b6106986109e23660046151f9565b61208f565b6106536109f536600461514d565b612115565b610653610a083660046152c9565b61229b565b610653610a1b36600461514d565b6123fa565b610698610a2e3660046151f9565b612609565b610653610a41366004615592565b612652565b610624610a54366004615225565b612a9d565b61062460e15481565b610624610a70366004615689565b612b1e565b610624610a833660046151e0565b612c92565b610624610a963660046156c2565b612c9f565b610653610aa93660046156f9565b612da9565b610afb610abc3660046151e0565b60e9602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039094169492939192909186565b604080516001600160a01b0390971687526020870195909552938501929092526060840152608083015260a082015260c00161062e565b610624610b403660046156c2565b612eab565b610624612fa9565b61062460f45481565b610653610b643660046151e0565b612fc1565b610624613079565b610624610b7f366004615225565b6130ea565b610624610b923660046151e0565b613119565b610653610ba53660046151e0565b613126565b60c954610702906001600160a01b031681565b610624610bcb366004615225565b613458565b610653610bde3660046151e0565b613466565b610653610bf13660046151e0565b613513565b610624610c043660046152a7565b6135ca565b610653610c17366004615225565b61365f565b610653610c2a3660046151e0565b6136ee565b610624613745565b610624610c45366004615225565b6137e9565b61062460d75481565b610624610c6136600461572d565b6138a2565b61062460dd5481565b61062460ec5481565b610653610c86366004615225565b6138cd565b6106246139ca565b610653610ca136600461514d565b6139e6565b610cb9610cb43660046151e0565b613baa565b60405161062e919081516001600160a01b031681526020808301519082015260408083015190820152606080830151908201526080808301519082015260a0918201519181019190915260c00190565b610653613c4e565b610624610d1f366004615689565b613c99565b61062460dc5481565b61062460f65481565b61062460d35481565b610653610d4d366004615225565b613e05565b61062460f35481565b610653610d6936600461575b565b613ec3565b60cc54610702906001600160a01b031681565b61062460da5481565b61062460e45481565b610653610da13660046151e0565b613f4b565b61062460ed5481565b6065546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015610df8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1c9190615777565b905090565b600082815260e960205260408120903360ca546040516331a9108f60e11b8152600481018790529192506000916001600160a01b0390911690636352211e90602401602060405180830381865afa158015610e80573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea49190615790565b9050816001600160a01b0316816001600160a01b03161480610f3b575060ca5460405163020604bf60e21b8152600481018790526001600160a01b0384811692169063081812fc90602401602060405180830381865afa158015610f0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f309190615790565b6001600160a01b0316145b80610fb7575060ca5460405163e985e9c560e01b81526001600160a01b03838116600483015284811660248301529091169063e985e9c590604401602060405180830381865afa158015610f93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb791906157ad565b610fdc5760405162461bcd60e51b8152600401610fd3906157cf565b60405180910390fd5b82600501548360040154610ff0919061580a565b42101561102e5760405162461bcd60e51b815260206004820152600c60248201526b1393d517d5539313d0d2d15160a21b6044820152606401610fd3565b6000611053670de0b6b3a764000061104560355490565b600387015491906001614004565b90508060de6000828254611067919061581d565b909155506110759050612fa9565b60de5413156110965760405162461bcd60e51b8152600401610fd390615845565b60ca54604051630852cd8d60e31b8152600481018890526001600160a01b03909116906342966c6890602401600060405180830381600087803b1580156110dc57600080fd5b505af11580156110f0573d6000803e3d6000fd5b505050508060dd6000828254611106919061581d565b909155506111149050614063565b836003015460f0600082825461112a919061581d565b9091555050600384015460f18054600090611146908490615870565b9250508190555061115c308686600101546140c7565b816001600160a01b0316856001600160a01b0316846001600160a01b03167fe37405a4f414fe3119839681cc26ea3462fc575fd2f81734417e52144d3f34b989886040516111ab929190615883565b60405180910390a4505050505050565b6060603680546111ca906158cd565b80601f01602080910402602001604051908101604052809291908181526020018280546111f6906158cd565b80156112435780601f1061121857610100808354040283529160200191611243565b820191906000526020600020905b81548152906001019060200180831161122657829003601f168201915b5050505050905090565b600061125a826000614259565b92915050565b6000610e1c61145c565b60003361127881858561429a565b5060019392505050565b600061125a8260016143be565b60ce5460408051600481526024810182526020810180516001600160e01b031663bef35b7960e01b17905290516000926001600160a01b0316916112d291615901565b6000604051808303816000865af19150503d806000811461130f576040519150601f19603f3d011682016040523d82523d6000602084013e611314565b606091505b5050905080611347576040517f46f2d6138acb3be39ad6ae5c9279b648c2a2c68743d0ddc18cc3a81cedecebd590600090a15b50565b60cf54604051600091829182916001600160a01b03169061136d9060d09061591d565b600060405180830381855afa9150503d80600081146113a8576040519150601f19603f3d011682016040523d82523d6000602084013e6113ad565b606091505b5090925090506001821515146113fd5760405162461bcd60e51b815260206004820152601560248201527411d394d7d4149250d157d0d0531317d19052531151605a1b6044820152606401610fd3565b808060200190518101906114119190615777565b9250600083116114575760405162461bcd60e51b81526020600482015260116024820152700474e535f544f4b454e5f50524943455f3607c1b6044820152606401610fd3565b505090565b6000670de0b6b3a764000061147060355490565b60dd5461147b612fa9565b6114859190615993565b61148f91906159b3565b610e1c91906159e0565b6114a16143da565b6001600160a01b0381166114c75760405162461bcd60e51b8152600401610fd3906159f4565b60ce80546001600160a01b0319166001600160a01b03831690811790915560408051818152601191810191909152701bdc195b951c9859195cd41b9b11995959607a1b60608201526020810191909152600080516020615ecd833981519152906080015b60405180910390a150565b60008161154285611bd9565b61154c9190615870565b61155585612a9d565b11156115735760405162461bcd60e51b8152600401610fd390615a17565b61157e843384614434565b6112788484846140c7565b9392505050565b6000670de0b6b3a764000060dc5461148560355490565b6000336112788185856115ba83836138a2565b6115c4919061580a565b61429a565b60006115d36144a8565b90506115de8161203a565b60f781905560f88290556040519081527f9551c7fda0233728a7b7eae3d388b53a068086c3f7d613bdf74e6e58dd6b41ec9060200161152b565b600061125a611626836130ea565b6000614259565b60cb546001600160a01b0316336001600160a01b0316146116605760405162461bcd60e51b8152600401610fd390615a43565b611673600a670de0b6b3a76400006159e0565b8110156116925760405162461bcd60e51b8152600401610fd390615a69565b60d481905560408051818152601391810191909152726d61784461696c79416363506e6c44656c746160681b606082015260208101829052600080516020615e8d8339815191529060800161152b565b6116ea6143da565b6001600160a01b0381166117105760405162461bcd60e51b8152600401610fd3906159f4565b6097546001600160a01b0382811691161480159061173c575060cc546001600160a01b03828116911614155b6117585760405162461bcd60e51b8152600401610fd390615a8c565b60cb80546001600160a01b0319166001600160a01b038316908117909155604080518181526007918101919091526636b0b730b3b2b960c91b60608201526020810191909152600080516020615ecd8339815191529060800161152b565b60cf805460d080546001600160a01b0390921692916117d4906158cd565b80601f0160208091040260200160405190810160405280929190818152602001828054611800906158cd565b801561184d5780601f106118225761010080835404028352916020019161184d565b820191906000526020600020905b81548152906001019060200180831161183057829003601f168201915b5050505050905082565b600054600290610100900460ff16158015611879575060005460ff8083169116105b6118955760405162461bcd60e51b8152600401610fd390615ab1565b6000805461ffff191660ff8316176101001790556118b16115c9565b60ef5460ed60008282546118c5919061580a565b90915550506000805461ff001916905560405160ff821681527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200161152b565b6201518060e6544261191a9190615870565b106119a757611932670de0b6b3a764000060646159b3565b60d754611948670de0b6b3a764000060646159b3565b611952919061580a565b60355461195f91906159b3565b61196991906159e0565b60e58190554260e6556040519081527fd103db6eec024592fa6d47db028ec6408076ac4762eb021a6e52b525828bab9b906020015b60405180910390a15b565b60ea548111156119cb5760405162461bcd60e51b8152600401610fd390615aff565b8060ea60008282546119dd9190615870565b9091555060009050611a006402540be4006119f661134a565b8491906001614004565b905060003360c954604051632770a7eb60e21b81529192506001600160a01b031690639dc29fac90611a389084908690600401615b27565b600060405180830381600087803b158015611a5257600080fd5b505af1158015611a66573d6000803e3d6000fd5b505050508260f36000828254611a7c919061580a565b925050819055508160f46000828254611a95919061580a565b90915550611aad9050611aa6614505565b8285614519565b60408051848152602081018490526001600160a01b038316917f1fb4f167278bb29c47ac4fd58ca1586b0626b52807f2991ef78abdbb97bb4333910160405180910390a2505050565b600082600060dc5411611b1b5760405162461bcd60e51b8152600401610fd390615b40565b60008111611b3b5760405162461bcd60e51b8152600401610fd390615b61565b611b4483611618565b841115611b935760405162461bcd60e51b815260206004820152601e60248201527f455243343632363a206465706f736974206d6f7265207468616e206d617800006044820152606401610fd3565b6000611b9e85613119565b9050611bac81866001614574565b611bb833858784614650565b91505b5092915050565b60d58160028110611bd257600080fd5b0154905081565b6001600160a01b031660009081526033602052604090205490565b611bfc6143da565b6119a760006146c0565b60ce5460009033906001600160a01b03168114611c555760405162461bcd60e51b815260206004820152600d60248201526c13d3931657d4139317d1915151609a1b6044820152606401610fd3565b6000611c618585615993565b90506000611c6e60355490565b90506000611cce670de0b6b3a76400008360de54611c8a612fa9565b611c949190615993565b611c9e91906159b3565b611ca891906159e0565b670de0b6b3a76400008460d354611cbf91906159b3565b611cc991906159e0565b614712565b9050808313611cdd5782611cdf565b805b925081611cf4670de0b6b3a764000085615b82565b611cfe9190615bb2565b60de6000828254611d0f919061581d565b925050819055508260f06000828254611d28919061581d565b909155505060de5460dd55611d3b614063565b60e28054906000611d4b83615be0565b90915550504260e355611d5e838861581d565b60e455611d69611908565b60e25460e45460dd54604080518b8152602081018b90529081019290925260608201526001600160a01b038616907f115621a72d6f59323a1d752b116219634bc004cadb85d6bdc8e7eb254905722d9060800160405180910390a3505060e45495945050505050565b33611de6611dde614505565b823085614728565b603554611dfb670de0b6b3a7640000846159b3565b611e0591906159e0565b60df6000828254611e16919061580a565b90915550611e249050614063565b8160ef6000828254611e36919061580a565b925050819055508160ed6000828254611e4f919061580a565b90915550506040518281526001600160a01b038216907fe34918ff1c7084970068b53fd71ad6d8b04e9f15d3886cbf006443e6cdc52ea69060200160405180910390a25050565b600082600060dc5411611ebb5760405162461bcd60e51b8152600401610fd390615b40565b60008111611edb5760405162461bcd60e51b8152600401610fd390615b61565b611ee4836130ea565b841115611f335760405162461bcd60e51b815260206004820152601b60248201527f455243343632363a206d696e74206d6f7265207468616e206d617800000000006044820152606401610fd3565b6000611f3e85612c92565b9050611f4c85826001614574565b611bb833858388614650565b6060603780546111ca906158cd565b60cb546001600160a01b0316336001600160a01b031614611f9a5760405162461bcd60e51b8152600401610fd390615a43565b611fad670de0b6b3a7640000600a6159b3565b811115611ff15760405162461bcd60e51b8152602060048201526012602482015271105093d59157d3505617d11254d0d3d5539560721b6044820152606401610fd3565b60da81905560408051818152600c918101919091526b06d6178446973636f756e74560a41b606082015260208101829052600080516020615e8d8339815191529060800161152b565b600061204e612047611590565b6001614760565b701d6329f1c35ca4bfabb9f561000000000060f8548461206e9190615870565b61207891906159b3565b61208291906159e0565b60f75461125a919061580a565b6000338161209d82866138a2565b9050838110156120fd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610fd3565b61210a828686840361429a565b506001949350505050565b33612129612121614505565b823086614728565b60dd548390600013801561213f5750600060de54125b1561219b5760006064670de0b6b3a764000060d8548761215f91906159b3565b61216991906159e0565b61217391906159e0565b90508060ea6000828254612187919061580a565b9091555061219790508183615870565b9150505b60006121a660355490565b6121b8670de0b6b3a7640000846159b3565b6121c291906159e0565b90508060de60008282546121d69190615993565b909155506121e49050613c4e565b8060e060008282546121f69190615993565b925050819055508160f0600082825461220f9190615993565b925050819055508160ee60008282546122289190615993565b90915550612236905061128f565b61223e611908565b836001600160a01b0316836001600160a01b03167f2083893e39f8ae736fed502f7e149cc5bfe6159878615fae685a9a98bc452d5a878560405161228c929190918252602082015260400190565b60405180910390a35050505050565b6001600160a01b038216600090815260e76020908152604080832084845290915290205483111561230a5760405162461bcd60e51b81526020600482015260196024820152781353d49157d512105397d5d2551211149055d7d05353d55395603a1b6044820152606401610fd3565b33600061231784836138a2565b9050836001600160a01b0316826001600160a01b0316148061234457506000811180156123445750848110155b6123605760405162461bcd60e51b8152600401610fd3906157cf565b6001600160a01b038416600090815260e76020908152604080832086845290915281208054879290612393908490615870565b9250508190555082846001600160a01b0316836001600160a01b03167f443ccdbbbde35bd48740a9ea14c47318b735db4631ed1ebcdaaaa9f4636c84ea8860e2546040516123eb929190918252602082015260400190565b60405180910390a45050505050565b60ce60009054906101000a90046001600160a01b03166001600160a01b031663b8feee646040518163ffffffff1660e01b8152600401602060405180830381865afa15801561244d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124719190615777565b156124ad5760405162461bcd60e51b815260206004820152600c60248201526b08a9c88be9e8cbe8aa09e86960a31b6044820152606401610fd3565b3360006124ba83836138a2565b9050826001600160a01b0316826001600160a01b031614806124e757506000811180156124e75750838110155b6125035760405162461bcd60e51b8152600401610fd3906157cf565b61250c83611bd9565b8461251685612a9d565b612520919061580a565b11156125625760405162461bcd60e51b81526020600482015260116024820152704d4f52455f5448414e5f42414c414e434560781b6044820152606401610fd3565b600061256c613745565b60e254612579919061580a565b6001600160a01b038516600090815260e7602090815260408083208484529091528120805492935087929091906125b190849061580a565b9250508190555080846001600160a01b0316846001600160a01b03167f21b8e5e36008677ea26efbbc967e568e01b127f731ed0fda0a8685fda37d0d5f8860e2546040516123eb929190918252602082015260400190565b6000338261261682611bd9565b6126209190615870565b61262982612a9d565b11156126475760405162461bcd60e51b8152600401610fd390615a17565b6112788185856140c7565b600054610100900460ff16158080156126725750600054600160ff909116105b8061268c5750303b15801561268c575060005460ff166001145b6126a85760405162461bcd60e51b8152600401610fd390615ab1565b6000805460ff1916600117905580156126cb576000805461ff0019166101001790555b8a516001600160a01b0316158015906126f0575060208b01516001600160a01b031615155b8015612708575060408b01516001600160a01b031615155b8015612720575060608b01516001600160a01b031615155b801561274657508a604001516001600160a01b03168b602001516001600160a01b031614155b801561276c57508a606001516001600160a01b03168b604001516001600160a01b031614155b8015612784575060808b01516001600160a01b031615155b801561279c575060a08b01516001600160a01b031615155b80156127b4575060c08b01516001600160a01b031615155b80156127cc575060e08b01516001600160a01b031615155b80156127e657506101008b0151516001600160a01b031615155b80156127fc575060008b61010001516020015151115b801561281a5750612816600a670de0b6b3a76400006159e0565b8810155b801561282a575086516020880151115b80156128485750612844670de0b6b3a764000060326159b3565b8611155b80156128665750612862670de0b6b3a764000060196159b3565b8511155b801561288457506128806014670de0b6b3a76400006159e0565b8411155b80156128a2575061289e670de0b6b3a7640000600a6159b3565b8311155b80156128c057506128bc670de0b6b3a764000060646159b3565b8210155b6128fb5760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b6044820152606401610fd3565b6129058d8d61476f565b8a51612910906147a4565b61291d8b602001516146c0565b60808b015160c980546001600160a01b03199081166001600160a01b039384161790915560a08d015160ca8054831691841691909117905560408d015160cb8054831691841691909117905560608d015160cc8054831691841691909117905560c08d015160cd8054831691841691909117905560e08d015160ce805483169184169190911790556101008d0151805160cf80549093169316929092178155602082015160d0906129ce9082615c5d565b50505060d18a905560d389905560d48890556129ed60d5886002615095565b5060d786905560d885905560d984905560da83905560db829055670de0b6b3a764000060dc55600160e28190554260e3556040805160608101825260038082526002602083015291810192909252612a479160d2916150d3565b508015612a8e576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50505050505050505050505050565b60e2546000905b60d2600081548110612ab857612ab8615bf9565b906000526020600020015460e254612ad0919061580a565b8111612b18576001600160a01b038316600090815260e760209081526040808320848452909152902054612b04908361580a565b915080612b1081615be0565b915050612aa4565b50919050565b600083600060dc5411612b435760405162461bcd60e51b8152600401610fd390615b40565b60008111612b635760405162461bcd60e51b8152600401610fd390615b61565b83600060da5411612b865760405162461bcd60e51b8152600401610fd390615d1c565b60d154811015612ba85760405162461bcd60e51b8152600401610fd390615d48565b6301e13380811115612bcc5760405162461bcd60e51b8152600401610fd390615d79565b612bd5846130ea565b861115612c195760405162461bcd60e51b815260206004820152601260248201527109a929ca8be9a9ea48abea890829cbe9a82b60731b6044820152606401610fd3565b6000612c2487612c92565b9050612c8781612c3b612c35613079565b896135ca565b612c4e670de0b6b3a764000060646159b3565b612c58919061580a565b612c6b670de0b6b3a764000060646159b3565b612c7590856159b3565b612c7f91906159e0565b8989896147d4565b979650505050505050565b600061125a826001614259565b600083600060dc5411612cc45760405162461bcd60e51b8152600401610fd390615b40565b60008111612ce45760405162461bcd60e51b8152600401610fd390615b61565b612ced83613458565b851115612d3c5760405162461bcd60e51b815260206004820152601f60248201527f455243343632363a207769746864726177206d6f7265207468616e206d6178006044820152606401610fd3565b6000612d4786611282565b6001600160a01b038516600090815260e76020908152604080832060e2548452909152812080549293508392909190612d81908490615870565b90915550612d93905081876000614574565b612da0338686898561498d565b95945050505050565b60cb546001600160a01b0316336001600160a01b031614612ddc5760405162461bcd60e51b8152600401610fd390615a43565b80516001600160a01b0316612e035760405162461bcd60e51b8152600401610fd3906159f4565b600081602001515111612e425760405162461bcd60e51b8152602060048201526007602482015266042595445535f360cc1b6044820152606401610fd3565b805160cf80546001600160a01b0319166001600160a01b03909216919091178155602082015182919060d090612e789082615c5d565b509050507f2763c7adb1b7018e25499ef5553ec78e35bb46be6384b393861c35d501825dce8160405161152b9190615daa565b600083600060dc5411612ed05760405162461bcd60e51b8152600401610fd390615b40565b60008111612ef05760405162461bcd60e51b8152600401610fd390615b61565b612ef9836137e9565b851115612f485760405162461bcd60e51b815260206004820152601d60248201527f455243343632363a2072656465656d206d6f7265207468616e206d61780000006044820152606401610fd3565b6001600160a01b038316600090815260e76020908152604080832060e254845290915281208054879290612f7d908490615870565b9091555060009050612f8e8661124d565b9050612f9c86826000614574565b612da0338686848a61498d565b600060df54670de0b6b3a7640000610e1c919061580a565b60cb546001600160a01b0316336001600160a01b031614612ff45760405162461bcd60e51b8152600401610fd390615a43565b6130076014670de0b6b3a76400006159e0565b8111156130265760405162461bcd60e51b8152600401610fd390615dd7565b60d9819055604080518181526016918101919091527506d6178476e73537570706c794d696e744461696c79560541b606082015260208101829052600080516020615e8d8339815191529060800161152b565b600080613084612fa9565b905080670de0b6b3a7640000600060dd54136130b85760dd546130a990600019615b82565b6130b3908461580a565b6130c5565b60dd546130c59084615870565b6130d09060646159b3565b6130da91906159b3565b6130e491906159e0565b91505090565b60008060dd54136130fd5760001961125a565b61310c60e554611cc960355490565b60e55461125a9190615870565b600061125a8260006143be565b600060dd54136131735760405162461bcd60e51b81526020600482015260186024820152771393d517d55391115497d0d3d3131055115490531256915160421b6044820152606401610fd3565b600061317e60355490565b9050670de0b6b3a76400008160dd5461319791906159b3565b6131a191906159e0565b8211156131c05760405162461bcd60e51b8152600401610fd390615aff565b6201518060ec54426131d29190615870565b106131e157600060eb554260ec555b60006131eb61134a565b6131fa6402540be400856159b3565b61320491906159e0565b90508060eb6000828254613218919061580a565b925050819055506064670de0b6b3a764000060c960009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561327d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906132a19190615777565b60d9546132ae91906159b3565b6132b891906159e0565b6132c291906159e0565b60eb54111561330b5760405162461bcd60e51b8152602060048201526015602482015274105093d59157d253919310551253d397d312535255605a1b6044820152606401610fd3565b3361331f613317614505565b823087614728565b600083613334670de0b6b3a7640000876159b3565b61333e91906159e0565b90508060de60008282546133529190615993565b925050819055508060dd600082825461336b9190615993565b909155506133799050614063565b8460f5600082825461338b919061580a565b925050819055508260f660008282546133a4919061580a565b909155505060c9546040516340c10f1960e01b81526001600160a01b03909116906340c10f19906133db9085908790600401615b27565b600060405180830381600087803b1580156133f557600080fd5b505af1158015613409573d6000803e3d6000fd5b505060408051888152602081018790526001600160a01b03861693507f19aee2c21e4d63823896cb2a77a3e61197dda70b1043a55fca38aa8d75c0edd392500160405180910390a25050505050565b600061125a611626836137e9565b60cb546001600160a01b0316336001600160a01b0316146134995760405162461bcd60e51b8152600401610fd390615a43565b6134ac670de0b6b3a764000060196159b3565b8111156134cb5760405162461bcd60e51b8152600401610fd390615dd7565b60d881905560408051818152600b918101919091526a06c6f737365734275726e560ac1b606082015260208101829052600080516020615e8d8339815191529060800161152b565b60cb546001600160a01b0316336001600160a01b0316146135465760405162461bcd60e51b8152600401610fd390615a43565b613559670de0b6b3a764000060646159b3565b8110156135785760405162461bcd60e51b8152600401610fd390615a69565b60db819055604080518181526015918101919091527406d6178446973636f756e745468726573686f6c645605c1b606082015260208101829052600080516020615e8d8339815191529060800161152b565b60006301e13380826135e5670de0b6b3a764000060646159b3565b8511156136475760db548511156135fd57600061364b565b613610670de0b6b3a764000060646159b3565b60db5461361d9190615870565b8560db5461362b9190615870565b60da5461363891906159b3565b61364291906159e0565b61364b565b60da545b61365591906159b3565b61158991906159e0565b6136676143da565b6001600160a01b03811661368d5760405162461bcd60e51b8152600401610fd3906159f4565b60cd80546001600160a01b0319166001600160a01b03831690811790915560408051818152600a91810191909152693837362430b7323632b960b11b60608201526020810191909152600080516020615ecd8339815191529060800161152b565b6136f66143da565b60d381905560408051818152601291810191909152716d61784163634f70656e506e6c44656c746160701b606082015260208101829052600080516020615e8d8339815191529060800161152b565b600080613750613079565b9050600061376b82611cc9670de0b6b3a764000060646159b3565b6137759083615870565b60d65490915081116137c25760d55481116137ae5760d260008154811061379e5761379e615bf9565b90600052602060002001546137e2565b60d260018154811061379e5761379e615bf9565b60d26002815481106137d6576137d6615bf9565b90600052602060002001545b9250505090565b60ce5460408051632e3fbb9960e21b815290516000926001600160a01b03169163b8feee649160048083019260209291908290030181865afa158015613833573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138579190615777565b1561386357600061125a565b6001600160a01b038216600090815260e76020908152604080832060e254845290915290205461125a90600161389860355490565b611cc99190615870565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b60cb546001600160a01b0316336001600160a01b0316146139005760405162461bcd60e51b8152600401610fd390615a43565b6001600160a01b0381166139265760405162461bcd60e51b8152600401610fd3906159f4565b6097546001600160a01b03828116911614801590613952575060cb546001600160a01b03828116911614155b61396e5760405162461bcd60e51b8152600401610fd390615a8c565b60cc80546001600160a01b0319166001600160a01b038316908117909155604080518181526005918101919091526430b236b4b760d91b60608201526020810191909152600080516020615ecd8339815191529060800161152b565b6000670de0b6b3a76400006139de60355490565b611485612fa9565b60cd5433906001600160a01b03168114613a3d5760405162461bcd60e51b815260206004820152601860248201527727a7262cafaa2920a224a723afa827262fa420a7222622a960411b6044820152606401610fd3565b6000613a5e670de0b6b3a7640000613a5460355490565b8691906001614004565b90508060de6000828254613a72919061581d565b90915550613a809050612fa9565b60de541315613aa15760405162461bcd60e51b8152600401610fd390615845565b613aa9613c4e565b8060e06000828254613abb919061581d565b909155505060d45460e0541315613b045760405162461bcd60e51b815260206004820152600d60248201526c13505617d11052531657d41393609a1b6044820152606401610fd3565b8360f06000828254613b16919061581d565b925050819055508360ee6000828254613b2f919061581d565b90915550613b3d905061128f565b613b45611908565b613b57613b50614505565b8486614519565b826001600160a01b0316826001600160a01b03167f17ffe64fb2212f31d60284d6471e06abb7db8d66f0a60f9b884b29f1597d05da86604051613b9c91815260200190565b60405180910390a350505050565b613bec6040518060c0016040528060006001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600081525090565b50600090815260e96020908152604091829020825160c08101845281546001600160a01b03168152600182015492810192909252600281015492820192909252600382015460608201526004820154608082015260059091015460a082015290565b6201518060e15442613c609190615870565b106119a757600060e08190554260e1556040517fa047de172c12fcf40e0ff45a86ac45befb232ae644862699ef140a8c5f763b419190a1565b600083600060dc5411613cbe5760405162461bcd60e51b8152600401610fd390615b40565b60008111613cde5760405162461bcd60e51b8152600401610fd390615b61565b83600060da5411613d015760405162461bcd60e51b8152600401610fd390615d1c565b60d154811015613d235760405162461bcd60e51b8152600401610fd390615d48565b6301e13380811115613d475760405162461bcd60e51b8152600401610fd390615d79565b6000613d5c670de0b6b3a764000060646159b3565b613d6d613d67613079565b886135ca565b613d80670de0b6b3a764000060646159b3565b613d8a919061580a565b613d9490896159b3565b613d9e91906159e0565b9050613da985611618565b811115613df05760405162461bcd60e51b81526020600482015260156024820152740888aa09ea692a8be9a9ea48abea890829cbe9a82b605b1b6044820152606401610fd3565b612c878188613dfe84613119565b89896147d4565b613e0d6143da565b6001600160a01b038116613e725760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610fd3565b60cb546001600160a01b03828116911614801590613e9e575060cc546001600160a01b03828116911614155b613eba5760405162461bcd60e51b8152600401610fd390615a8c565b611347816146c0565b613ecb6143da565b8051602082015111613f0e5760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f56414c55455360a01b6044820152606401610fd3565b613f1b60d5826002615095565b507f8472b50e25b52d8de564f9719bd793b18d83cf59ce4d309e211fb6a4fdc148118160405161152b9190615dfa565b60cb546001600160a01b0316336001600160a01b031614613f7e5760405162461bcd60e51b8152600401610fd390615a43565b613f91670de0b6b3a764000060326159b3565b811115613fb05760405162461bcd60e51b8152600401610fd390615dd7565b60d7819055604080518181526017918101919091527606d6178537570706c79496e6372656173654461696c795604c1b606082015260208101829052600080516020615e8d8339815191529060800161152b565b600080614012868686614a2a565b9050600183600281111561402857614028615e2b565b148015614045575060008480614040576140406159ca565b868809115b156140585761405560018261580a565b90505b90505b949350505050565b61406b6115c9565b600060dd541361407c576000614080565b60dd545b614088612fa9565b6140929190615870565b60dc8190556040519081527f547c25b7a5677a006ff044a0e4b5e699598339825e7b42d3dc645117ceee80509060200161199e565b6001600160a01b03831661412b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610fd3565b6001600160a01b03821661418d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610fd3565b6001600160a01b038316600090815260336020526040902054818110156142055760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610fd3565b6001600160a01b038085166000818152603360205260408082208686039055928616808252908390208054860190559151600080516020615ead83398151915290613b9c9086815260200190565b50505050565b6000600019831480156142765750670de0b6b3a764000060dc5410155b1561428257508161125a565b60dc54611589908490670de0b6b3a764000085614004565b6001600160a01b0383166142fc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610fd3565b6001600160a01b03821661435d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610fd3565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60dc54600090611589908490670de0b6b3a76400009085614004565b6097546001600160a01b031633146119a75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610fd3565b600061444084846138a2565b90506000198114614253578181101561449b5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610fd3565b614253848484840361429a565b600061a4b14614806144bc575062066eed46145b156145005760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610df8573d6000803e3d6000fd5b504390565b6000610e1c6065546001600160a01b031690565b61456f8363a9059cbb60e01b8484604051602401614538929190615b27565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152614ad9565b505050565b600061457f60355490565b9050600060de5412156145ca57816145a05761459b8482615870565b6145aa565b6145aa848261580a565b8160de546145b89190615b82565b6145c29190615bb2565b60de5561461f565b600060de54131561461f57816145e2576000196145e5565b60015b8160f054866145f49190615b82565b6145fe9190615bb2565b6146089190615b82565b60f06000828254614619919061581d565b90915550505b81614637578260ed546146329190615870565b614645565b8260ed54614645919061580a565b60ed556142536115c9565b606554614668906001600160a01b0316853085614728565b6146728382614bab565b826001600160a01b0316846001600160a01b03167fdcbc1c05240f31ff3ad067ef1ee35ce4997762752e3a095284754544f4c709d78484604051613b9c929190918252602082015260400190565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60008183106147215781611589565b5090919050565b6040516001600160a01b03808516602483015283166044820152606481018290526142539085906323b872dd60e01b90608401614538565b60008183116147215781611589565b600054610100900460ff166147965760405162461bcd60e51b8152600401610fd390615e41565b6147a08282614c5a565b5050565b600054610100900460ff166147cb5760405162461bcd60e51b8152600401610fd390615e41565b61134781614c9a565b60008486116148135760405162461bcd60e51b815260206004820152600b60248201526a1393d7d11254d0d3d5539560aa1b6044820152606401610fd3565b600060e86000815461482490615be0565b9182905550905060006148378789615870565b600083815260e96020526040902080546001600160a01b0319166001600160a01b0387161781556001808201899055600282018a90556003820183905542600483015560058201889055919250906148929088908a90614574565b3361489f81308b8b614650565b8260f260008282546148b1919061580a565b925050819055508260f160008282546148ca919061580a565b909155505060ca546040516340c10f1960e01b81526001600160a01b03909116906340c10f19906149019089908890600401615b27565b600060405180830381600087803b15801561491b57600080fd5b505af115801561492f573d6000803e3d6000fd5b505083546040516001600160a01b03918216935090841691507f5d26cdffbd8401ba2a961d2094f7f008ee7bd735ac02a949721ee0fd0f0d5afc906149779088908790615883565b60405180910390a3509198975050505050505050565b826001600160a01b0316856001600160a01b0316146149b1576149b1838683614434565b6149bb8382614d1f565b6065546149d2906001600160a01b03168584614519565b826001600160a01b0316846001600160a01b0316866001600160a01b03167ffbde797d201c681b91056529119e0b02407c7bb96a4a2c75c01fc9667232c8db85856040516123eb929190918252602082015260400190565b6000808060001985870985870292508281108382030391505080600003614a6457838281614a5a57614a5a6159ca565b0492505050611589565b808411614a7057600080fd5b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b6000614b2e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316614e419092919063ffffffff16565b80519091501561456f5780806020019051810190614b4c91906157ad565b61456f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610fd3565b6001600160a01b038216614c015760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610fd3565b8060356000828254614c13919061580a565b90915550506001600160a01b038216600081815260336020908152604080832080548601905551848152600080516020615ead833981519152910160405180910390a35050565b600054610100900460ff16614c815760405162461bcd60e51b8152600401610fd390615e41565b6036614c8d8382615c5d565b50603761456f8282615c5d565b600054610100900460ff16614cc15760405162461bcd60e51b8152600401610fd390615e41565b600080614ccd83614e50565b9150915081614cdd576012614cdf565b805b606580546001600160a01b039095166001600160a01b031960ff93909316600160a01b02929092166001600160a81b031990951694909417179092555050565b6001600160a01b038216614d7f5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610fd3565b6001600160a01b03821660009081526033602052604090205481811015614df35760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610fd3565b6001600160a01b0383166000818152603360209081526040808320868603905560358054879003905551858152919291600080516020615ead833981519152910160405180910390a3505050565b606061405b8484600085614f2c565b60408051600481526024810182526020810180516001600160e01b031663313ce56760e01b17905290516000918291829182916001600160a01b03871691614e9791615901565b600060405180830381855afa9150503d8060008114614ed2576040519150601f19603f3d011682016040523d82523d6000602084013e614ed7565b606091505b5091509150818015614eeb57506020815110155b15614f1f57600081806020019051810190614f069190615777565b905060ff8111614f1d576001969095509350505050565b505b5060009485945092505050565b606082471015614f8d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610fd3565b600080866001600160a01b03168587604051614fa99190615901565b60006040518083038185875af1925050503d8060008114614fe6576040519150601f19603f3d011682016040523d82523d6000602084013e614feb565b606091505b5091509150612c87878383876060831561506657825160000361505f576001600160a01b0385163b61505f5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610fd3565b508161405b565b61405b838381511561507b5781518083602001fd5b8060405162461bcd60e51b8152600401610fd391906151cd565b82600281019282156150c3579160200282015b828111156150c35782518255916020019190600101906150a8565b506150cf929150615113565b5090565b8280548282559060005260206000209081019282156150c3579160200282015b828111156150c3578251829060ff169055916020019190600101906150f3565b5b808211156150cf5760008155600101615114565b6001600160a01b038116811461134757600080fd5b803561514881615128565b919050565b6000806040838503121561516057600080fd5b82359150602083013561517281615128565b809150509250929050565b60005b83811015615198578181015183820152602001615180565b50506000910152565b600081518084526151b981602086016020860161517d565b601f01601f19169290920160200192915050565b60208152600061158960208301846151a1565b6000602082840312156151f257600080fd5b5035919050565b6000806040838503121561520c57600080fd5b823561521781615128565b946020939093013593505050565b60006020828403121561523757600080fd5b813561158981615128565b60008060006060848603121561525757600080fd5b833561526281615128565b9250602084013561527281615128565b929592945050506040919091013590565b6001600160a01b038316815260406020820181905260009061405b908301846151a1565b600080604083850312156152ba57600080fd5b50508035926020909101359150565b6000806000606084860312156152de57600080fd5b83359250602084013561527281615128565b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b0381118282101715615329576153296152f0565b60405290565b60006001600160401b0380841115615349576153496152f0565b604051601f8501601f19908116603f01168101908282118183101715615371576153716152f0565b8160405280935085815286868601111561538a57600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126153b557600080fd5b6115898383356020850161532f565b6000604082840312156153d657600080fd5b604051604081016001600160401b0382821081831117156153f9576153f96152f0565b816040528293508435915061540d82615128565b9082526020840135908082111561542357600080fd5b508301601f8101851361543557600080fd5b6154448582356020840161532f565b6020830152505092915050565b6000610120828403121561546457600080fd5b61546c615306565b90506154778261513d565b81526154856020830161513d565b60208201526154966040830161513d565b60408201526154a76060830161513d565b60608201526154b86080830161513d565b60808201526154c960a0830161513d565b60a08201526154da60c0830161513d565b60c08201526154eb60e0830161513d565b60e0820152610100808301356001600160401b0381111561550b57600080fd5b615517858286016153c4565b82840152505092915050565b600082601f83011261553457600080fd5b604051604081018181106001600160401b0382111715615556576155566152f0565b806040525080604084018581111561556d57600080fd5b845b8181101561558757803583526020928301920161556f565b509195945050505050565b6000806000806000806000806000806000806101a08d8f0312156155b557600080fd5b6001600160401b038d3511156155ca57600080fd5b6155d78e8e358f016153a4565b9b506001600160401b0360208e013511156155f157600080fd5b6156018e60208f01358f016153a4565b9a506001600160401b0360408e0135111561561b57600080fd5b61562b8e60408f01358f01615451565b995060608d0135985060808d0135975060a08d0135965061564f8e60c08f01615523565b95506101008d013594506101208d013593506101408d013592506101608d013591506101808d013590509295989b509295989b509295989b565b60008060006060848603121561569e57600080fd5b833592506020840135915060408401356156b781615128565b809150509250925092565b6000806000606084860312156156d757600080fd5b8335925060208401356156e981615128565b915060408401356156b781615128565b60006020828403121561570b57600080fd5b81356001600160401b0381111561572157600080fd5b61405b848285016153c4565b6000806040838503121561574057600080fd5b823561574b81615128565b9150602083013561517281615128565b60006040828403121561576d57600080fd5b6115898383615523565b60006020828403121561578957600080fd5b5051919050565b6000602082840312156157a257600080fd5b815161158981615128565b6000602082840312156157bf57600080fd5b8151801515811461158957600080fd5b6020808252600b908201526a1393d517d0531313d5d15160aa1b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561125a5761125a6157f4565b808201828112600083128015821682158216171561583d5761583d6157f4565b505092915050565b6020808252601190820152704e4f545f454e4f5547485f41535345545360781b604082015260600190565b8181038181111561125a5761125a6157f4565b91825280546001600160a01b03166020830152600181015460408301526002810154606083015260038101546080830152600481015460a08301526005015460c082015260e00190565b600181811c908216806158e157607f821691505b602082108103612b1857634e487b7160e01b600052602260045260246000fd5b6000825161591381846020870161517d565b9190910192915050565b600080835461592b816158cd565b60018281168015615943576001811461595857615987565b60ff1984168752821515830287019450615987565b8760005260208060002060005b8581101561597e5781548a820152908401908201615965565b50505082870194505b50929695505050505050565b8181036000831280158383131683831282161715611bbb57611bbb6157f4565b808202811582820484141761125a5761125a6157f4565b634e487b7160e01b600052601260045260246000fd5b6000826159ef576159ef6159ca565b500490565b6020808252600990820152680414444524553535f360bc1b604082015260600190565b60208082526012908201527114115391125391d7d5d2551211149055d05360721b604082015260600190565b6020808252600c908201526b27a7262cafa6a0a720a3a2a960a11b604082015260600190565b6020808252600990820152682122a627abafa6a4a760b91b604082015260600190565b6020808252600b908201526a57524f4e475f56414c554560a81b604082015260600190565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252600e908201526d414d4f554e545f544f4f5f42494760901b604082015260600190565b6001600160a01b03929092168252602082015260400190565b602080825260079082015266050524943455f360cc1b604082015260600190565b602080825260079082015266056414c55455f360cc1b604082015260600190565b80820260008212600160ff1b84141615615b9e57615b9e6157f4565b818105831482151761125a5761125a6157f4565b600082615bc157615bc16159ca565b600160ff1b821460001984141615615bdb57615bdb6157f4565b500590565b600060018201615bf257615bf26157f4565b5060010190565b634e487b7160e01b600052603260045260246000fd5b601f82111561456f57600081815260208120601f850160051c81016020861015615c365750805b601f850160051c820191505b81811015615c5557828155600101615c42565b505050505050565b81516001600160401b03811115615c7657615c766152f0565b615c8a81615c8484546158cd565b84615c0f565b602080601f831160018114615cbf5760008415615ca75750858301515b600019600386901b1c1916600185901b178555615c55565b600085815260208120601f198616915b82811015615cee57888601518255948401946001909101908401615ccf565b5085821015615d0c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252601290820152711393d7d050d512559157d11254d0d3d5539560721b604082015260600190565b6020808252601790820152762122a627abafa6a4a72fa627a1a5afa22aa920aa24a7a760491b604082015260600190565b60208082526017908201527620a127ab22afa6a0ac2fa627a1a5afa22aa920aa24a7a760491b604082015260600190565b602080825282516001600160a01b03168282015282015160408083015260009061405b60608401826151a1565b602080825260099082015268082849eac8abe9a82b60bb1b604082015260600190565b60408101818360005b6002811015615e22578151835260209283019290910190600101615e03565b50505092915050565b634e487b7160e01b600052602160045260246000fd5b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b60608201526080019056fe127735ae9d047cae55da37db2c8ee184c735aacd68cef068d4e70be6a41661d9ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60f89fdb372abe626eac485ef96b2a09f1cfbd7f225dd1e2b491a2b4069c2376a2646970667358221220aafb7c26f659db268e3f2f0d77cbe317a91ab3e58694896912507103987d7d4f64736f6c63430008110033";
2651
- const isSuperArgs = (xs) => xs.length > 1;
2652
- class GTokenV6_3_2__factory extends ethers_1.ContractFactory {
2653
- constructor(...args) {
2654
- if (isSuperArgs(args)) {
2655
- super(...args);
2656
- }
2657
- else {
2658
- super(_abi, _bytecode, args[0]);
2659
- }
2660
- }
2661
- deploy(overrides) {
2662
- return super.deploy(overrides || {});
2663
- }
2664
- getDeployTransaction(overrides) {
2665
- return super.getDeployTransaction(overrides || {});
2666
- }
2667
- attach(address) {
2668
- return super.attach(address);
2669
- }
2670
- connect(signer) {
2671
- return super.connect(signer);
2672
- }
2673
- static createInterface() {
2674
- return new ethers_1.utils.Interface(_abi);
2675
- }
2676
- static connect(address, signerOrProvider) {
2677
- return new ethers_1.Contract(address, _abi, signerOrProvider);
2678
- }
2679
- }
2680
- exports.GTokenV6_3_2__factory = GTokenV6_3_2__factory;
2681
- GTokenV6_3_2__factory.bytecode = _bytecode;
2682
- GTokenV6_3_2__factory.abi = _abi;