@gainsnetwork/sdk 1.0.6-rc3 → 1.1.0-rc1

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 (147) hide show
  1. package/lib/backend/globalTrades/index.js +10 -10
  2. package/lib/backend/tradingVariables/backend.types.d.ts +11 -4
  3. package/lib/backend/tradingVariables/converter.d.ts +7 -3
  4. package/lib/backend/tradingVariables/converter.js +70 -63
  5. package/lib/backend/tradingVariables/index.js +11 -7
  6. package/lib/backend/tradingVariables/types.d.ts +4 -2
  7. package/lib/contracts/addresses.js +1 -4
  8. package/lib/contracts/index.d.ts +1 -1
  9. package/lib/contracts/index.js +3 -3
  10. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -0
  11. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -0
  12. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +1067 -0
  13. package/lib/contracts/types/generated/GNSBorrowingFees.js +2 -0
  14. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.d.ts +979 -0
  15. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.js +2 -0
  16. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +1058 -0
  17. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.js +2 -0
  18. package/lib/contracts/types/generated/GNSMultiCollatDiamond.d.ts +223 -40
  19. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +533 -0
  20. package/lib/contracts/types/generated/GNSNftRewardsV6.js +2 -0
  21. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +613 -0
  22. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +2 -0
  23. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -0
  24. package/lib/contracts/types/generated/GNSPairInfosV6_1.js +2 -0
  25. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -0
  26. package/lib/contracts/types/generated/GNSPairsStorageV6.js +2 -0
  27. package/lib/contracts/types/generated/GNSTrading.d.ts +758 -0
  28. package/lib/contracts/types/generated/GNSTrading.js +2 -0
  29. package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +875 -0
  30. package/lib/contracts/types/generated/GNSTradingCallbacks.js +2 -0
  31. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.d.ts +806 -0
  32. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.js +2 -0
  33. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.d.ts +821 -0
  34. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.js +2 -0
  35. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +1387 -0
  36. package/lib/contracts/types/generated/GNSTradingStorage.js +2 -0
  37. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +1838 -0
  38. package/lib/contracts/types/generated/GTokenV6_3_2.js +2 -0
  39. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -0
  40. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -0
  41. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.d.ts +88 -0
  42. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.js +1654 -0
  43. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +113 -0
  44. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +1742 -0
  45. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +124 -0
  46. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +1784 -0
  47. package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.d.ts +10 -2
  48. package/lib/contracts/types/generated/factories/GNSMultiCollatDiamond__factory.js +317 -36
  49. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +100 -0
  50. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +1116 -0
  51. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +100 -0
  52. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +1003 -0
  53. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
  54. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -0
  55. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -0
  56. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -0
  57. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.d.ts +82 -0
  58. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.js +1273 -0
  59. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +82 -0
  60. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +1326 -0
  61. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +113 -0
  62. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +1428 -0
  63. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +96 -0
  64. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +2241 -0
  65. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +95 -0
  66. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +1071 -0
  67. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +110 -0
  68. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +2682 -0
  69. package/lib/contracts/utils/borrowingFees.js +20 -9
  70. package/lib/contracts/utils/openTrades.js +20 -11
  71. package/lib/contracts/utils/pairs.d.ts +13 -2
  72. package/lib/contracts/utils/pairs.js +89 -21
  73. package/lib/index.d.ts +1 -0
  74. package/lib/index.js +1 -0
  75. package/lib/markets/forex.js +1 -1
  76. package/lib/markets/leverage/builder.js +2 -2
  77. package/lib/markets/oi/fetcher.d.ts +58 -0
  78. package/lib/markets/oi/fetcher.js +181 -0
  79. package/lib/markets/oi/validation.d.ts +80 -0
  80. package/lib/markets/oi/validation.js +172 -0
  81. package/lib/markets/price/index.d.ts +0 -1
  82. package/lib/markets/price/index.js +0 -1
  83. package/lib/markets/price/signedPrices.d.ts +7 -0
  84. package/lib/markets/price/signedPrices.js +55 -2
  85. package/lib/markets/price/types.d.ts +0 -27
  86. package/lib/pricing/depthBands/converter.d.ts +65 -0
  87. package/lib/pricing/depthBands/converter.js +155 -0
  88. package/lib/pricing/depthBands/decoder.d.ts +32 -0
  89. package/lib/pricing/depthBands/decoder.js +109 -0
  90. package/lib/pricing/depthBands/encoder.d.ts +19 -0
  91. package/lib/pricing/depthBands/encoder.js +105 -0
  92. package/lib/pricing/depthBands/index.d.ts +8 -0
  93. package/lib/pricing/depthBands/index.js +26 -0
  94. package/lib/pricing/depthBands/types.d.ts +49 -0
  95. package/lib/pricing/depthBands/types.js +10 -0
  96. package/lib/pricing/depthBands/validator.d.ts +22 -0
  97. package/lib/pricing/depthBands/validator.js +113 -0
  98. package/lib/pricing/depthBands.d.ts +39 -0
  99. package/lib/pricing/depthBands.js +92 -0
  100. package/lib/pricing/index.d.ts +4 -0
  101. package/lib/pricing/index.js +20 -0
  102. package/lib/trade/effectiveLeverage/builder.d.ts +23 -0
  103. package/lib/trade/effectiveLeverage/builder.js +30 -0
  104. package/lib/trade/fees/borrowing/builder.js +3 -2
  105. package/lib/trade/fees/borrowing/converter.js +1 -5
  106. package/lib/trade/fees/borrowing/index.js +5 -5
  107. package/lib/trade/fees/borrowingV2/builder.js +4 -3
  108. package/lib/trade/fees/borrowingV2/converter.js +1 -1
  109. package/lib/trade/fees/borrowingV2/fetcher.d.ts +0 -1
  110. package/lib/trade/fees/borrowingV2/fetcher.js +32 -26
  111. package/lib/trade/fees/borrowingV2/index.js +3 -3
  112. package/lib/trade/fees/converter.js +22 -22
  113. package/lib/trade/fees/fundingFees/builder.js +7 -6
  114. package/lib/trade/fees/fundingFees/converter.js +1 -1
  115. package/lib/trade/fees/fundingFees/fetcher.js +25 -16
  116. package/lib/trade/fees/fundingFees/index.js +3 -2
  117. package/lib/trade/fees/holdingFees/index.d.ts +46 -0
  118. package/lib/trade/fees/holdingFees/index.js +105 -0
  119. package/lib/trade/fees/holdingFees/types.d.ts +23 -0
  120. package/lib/trade/fees/holdingFees/types.js +5 -0
  121. package/lib/trade/fees/tiers/index.js +2 -1
  122. package/lib/trade/fees/trading/holdingFees.d.ts +28 -0
  123. package/lib/trade/fees/trading/holdingFees.js +66 -0
  124. package/lib/trade/fees/trading/holdingFeesStructured.d.ts +28 -0
  125. package/lib/trade/fees/trading/holdingFeesStructured.js +66 -0
  126. package/lib/trade/fees/trading/index.js +3 -5
  127. package/lib/trade/liquidation/builder.js +3 -6
  128. package/lib/trade/liquidation/index.js +6 -4
  129. package/lib/trade/oiWindows.js +2 -1
  130. package/lib/trade/pnl/builder.js +2 -1
  131. package/lib/trade/pnl/converter.js +1 -1
  132. package/lib/trade/pnl/index.js +7 -4
  133. package/lib/trade/priceImpact/close/builder.js +2 -1
  134. package/lib/trade/priceImpact/close/index.js +1 -4
  135. package/lib/trade/priceImpact/cumulVol/builder.js +11 -18
  136. package/lib/trade/priceImpact/cumulVol/converter.d.ts +63 -0
  137. package/lib/trade/priceImpact/cumulVol/converter.js +97 -1
  138. package/lib/trade/priceImpact/cumulVol/index.d.ts +3 -0
  139. package/lib/trade/priceImpact/cumulVol/index.js +123 -25
  140. package/lib/trade/priceImpact/cumulVol/types.d.ts +11 -0
  141. package/lib/trade/priceImpact/cumulVol/types.js +2 -0
  142. package/lib/trade/priceImpact/open/builder.js +2 -1
  143. package/lib/trade/priceImpact/open/index.js +1 -4
  144. package/lib/trade/priceImpact/skew/builder.js +3 -2
  145. package/lib/trade/priceImpact/skew/converter.js +1 -1
  146. package/lib/trade/priceImpact/skew/fetcher.js +33 -24
  147. package/package.json +2 -2
@@ -3,6 +3,14 @@ import type { Provider } from "@ethersproject/providers";
3
3
  import type { GNSMultiCollatDiamond, GNSMultiCollatDiamondInterface } from "../GNSMultiCollatDiamond";
4
4
  export declare class GNSMultiCollatDiamond__factory {
5
5
  static readonly abi: ({
6
+ inputs: never[];
7
+ stateMutability: string;
8
+ type: string;
9
+ name?: undefined;
10
+ outputs?: undefined;
11
+ signature?: undefined;
12
+ anonymous?: undefined;
13
+ } | {
6
14
  inputs: {
7
15
  internalType: string;
8
16
  name: string;
@@ -10,8 +18,8 @@ export declare class GNSMultiCollatDiamond__factory {
10
18
  }[];
11
19
  name: string;
12
20
  type: string;
13
- outputs?: undefined;
14
21
  stateMutability?: undefined;
22
+ outputs?: undefined;
15
23
  signature?: undefined;
16
24
  anonymous?: undefined;
17
25
  } | {
@@ -150,8 +158,8 @@ export declare class GNSMultiCollatDiamond__factory {
150
158
  name: string;
151
159
  type: string;
152
160
  signature: string;
153
- outputs?: undefined;
154
161
  stateMutability?: undefined;
162
+ outputs?: undefined;
155
163
  } | {
156
164
  inputs: ({
157
165
  components: {
@@ -6,6 +6,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.GNSMultiCollatDiamond__factory = void 0;
7
7
  const ethers_1 = require("ethers");
8
8
  const _abi = [
9
+ {
10
+ inputs: [],
11
+ stateMutability: "nonpayable",
12
+ type: "constructor",
13
+ },
9
14
  {
10
15
  inputs: [],
11
16
  name: "AboveMax",
@@ -3715,6 +3720,21 @@ const _abi = [
3715
3720
  type: "function",
3716
3721
  signature: "0xfed8a190",
3717
3722
  },
3723
+ {
3724
+ inputs: [],
3725
+ name: "DepthBandsAboveMax",
3726
+ type: "error",
3727
+ },
3728
+ {
3729
+ inputs: [],
3730
+ name: "DepthBandsIncomplete",
3731
+ type: "error",
3732
+ },
3733
+ {
3734
+ inputs: [],
3735
+ name: "WrongDepthBandsOrder",
3736
+ type: "error",
3737
+ },
3718
3738
  {
3719
3739
  inputs: [],
3720
3740
  name: "WrongWindowsCount",
@@ -3745,6 +3765,26 @@ const _abi = [
3745
3765
  type: "event",
3746
3766
  signature: "0x2742ec28d0252b4477106a77a10b04e1c1ecd2b568c7168d56c3a3154d3a3122",
3747
3767
  },
3768
+ {
3769
+ anonymous: false,
3770
+ inputs: [
3771
+ {
3772
+ indexed: false,
3773
+ internalType: "uint256",
3774
+ name: "slot1",
3775
+ type: "uint256",
3776
+ },
3777
+ {
3778
+ indexed: false,
3779
+ internalType: "uint256",
3780
+ name: "slot2",
3781
+ type: "uint256",
3782
+ },
3783
+ ],
3784
+ name: "DepthBandsMappingUpdated",
3785
+ type: "event",
3786
+ signature: "0x22391293f5705268ac47df15d88a7704e1267eff228801ac480dbe5ecf5ea3ef",
3787
+ },
3748
3788
  {
3749
3789
  anonymous: false,
3750
3790
  inputs: [
@@ -3871,6 +3911,44 @@ const _abi = [
3871
3911
  type: "event",
3872
3912
  signature: "0xbe433d32d9112c2fcf91407f28314200753b05ef3e9c85b8a0e9d135e77a6c29",
3873
3913
  },
3914
+ {
3915
+ anonymous: false,
3916
+ inputs: [
3917
+ {
3918
+ indexed: true,
3919
+ internalType: "uint256",
3920
+ name: "pairIndex",
3921
+ type: "uint256",
3922
+ },
3923
+ {
3924
+ indexed: false,
3925
+ internalType: "uint256",
3926
+ name: "aboveSlot1",
3927
+ type: "uint256",
3928
+ },
3929
+ {
3930
+ indexed: false,
3931
+ internalType: "uint256",
3932
+ name: "aboveSlot2",
3933
+ type: "uint256",
3934
+ },
3935
+ {
3936
+ indexed: false,
3937
+ internalType: "uint256",
3938
+ name: "belowSlot1",
3939
+ type: "uint256",
3940
+ },
3941
+ {
3942
+ indexed: false,
3943
+ internalType: "uint256",
3944
+ name: "belowSlot2",
3945
+ type: "uint256",
3946
+ },
3947
+ ],
3948
+ name: "PairDepthBandsUpdated",
3949
+ type: "event",
3950
+ signature: "0x7a9ee81b0015d0b7824d14757416905ea9ace5b9ad54dc08cb426cd0ae3dff9f",
3951
+ },
3874
3952
  {
3875
3953
  anonymous: false,
3876
3954
  inputs: [
@@ -4230,6 +4308,39 @@ const _abi = [
4230
4308
  type: "function",
4231
4309
  signature: "0x81688f7b",
4232
4310
  },
4311
+ {
4312
+ inputs: [],
4313
+ name: "getDepthBandsMapping",
4314
+ outputs: [
4315
+ {
4316
+ internalType: "uint256",
4317
+ name: "slot1",
4318
+ type: "uint256",
4319
+ },
4320
+ {
4321
+ internalType: "uint256",
4322
+ name: "slot2",
4323
+ type: "uint256",
4324
+ },
4325
+ ],
4326
+ stateMutability: "view",
4327
+ type: "function",
4328
+ signature: "0xd40e0d20",
4329
+ },
4330
+ {
4331
+ inputs: [],
4332
+ name: "getDepthBandsMappingDecoded",
4333
+ outputs: [
4334
+ {
4335
+ internalType: "uint16[]",
4336
+ name: "bands",
4337
+ type: "uint16[]",
4338
+ },
4339
+ ],
4340
+ stateMutability: "view",
4341
+ type: "function",
4342
+ signature: "0x9615d82a",
4343
+ },
4233
4344
  {
4234
4345
  inputs: [],
4235
4346
  name: "getNegPnlCumulVolMultiplier",
@@ -4362,66 +4473,156 @@ const _abi = [
4362
4473
  {
4363
4474
  inputs: [
4364
4475
  {
4365
- internalType: "uint256",
4366
- name: "_pairIndex",
4367
- type: "uint256",
4476
+ internalType: "uint256[]",
4477
+ name: "_indices",
4478
+ type: "uint256[]",
4368
4479
  },
4369
4480
  ],
4370
- name: "getPairDepth",
4481
+ name: "getPairDepthBands",
4371
4482
  outputs: [
4372
4483
  {
4373
4484
  components: [
4374
4485
  {
4375
- internalType: "uint128",
4376
- name: "onePercentDepthAboveUsd",
4377
- type: "uint128",
4486
+ internalType: "uint256",
4487
+ name: "aboveSlot1",
4488
+ type: "uint256",
4378
4489
  },
4379
4490
  {
4380
- internalType: "uint128",
4381
- name: "onePercentDepthBelowUsd",
4382
- type: "uint128",
4491
+ internalType: "uint256",
4492
+ name: "aboveSlot2",
4493
+ type: "uint256",
4494
+ },
4495
+ {
4496
+ internalType: "uint256",
4497
+ name: "belowSlot1",
4498
+ type: "uint256",
4499
+ },
4500
+ {
4501
+ internalType: "uint256",
4502
+ name: "belowSlot2",
4503
+ type: "uint256",
4383
4504
  },
4384
4505
  ],
4385
- internalType: "struct IPriceImpact.PairDepth",
4506
+ internalType: "struct IPriceImpact.PairDepthBands[]",
4386
4507
  name: "",
4387
- type: "tuple",
4508
+ type: "tuple[]",
4388
4509
  },
4389
4510
  ],
4390
4511
  stateMutability: "view",
4391
4512
  type: "function",
4392
- signature: "0x375bb2bb",
4513
+ signature: "0x42105561",
4393
4514
  },
4394
4515
  {
4395
4516
  inputs: [
4396
4517
  {
4397
- internalType: "uint256[]",
4398
- name: "_indices",
4399
- type: "uint256[]",
4518
+ internalType: "uint256",
4519
+ name: "_pairIndex",
4520
+ type: "uint256",
4400
4521
  },
4401
4522
  ],
4402
- name: "getPairDepths",
4523
+ name: "getPairDepthBands",
4403
4524
  outputs: [
4404
4525
  {
4405
4526
  components: [
4406
4527
  {
4407
- internalType: "uint128",
4408
- name: "onePercentDepthAboveUsd",
4409
- type: "uint128",
4528
+ internalType: "uint256",
4529
+ name: "aboveSlot1",
4530
+ type: "uint256",
4410
4531
  },
4411
4532
  {
4412
- internalType: "uint128",
4413
- name: "onePercentDepthBelowUsd",
4414
- type: "uint128",
4533
+ internalType: "uint256",
4534
+ name: "aboveSlot2",
4535
+ type: "uint256",
4536
+ },
4537
+ {
4538
+ internalType: "uint256",
4539
+ name: "belowSlot1",
4540
+ type: "uint256",
4541
+ },
4542
+ {
4543
+ internalType: "uint256",
4544
+ name: "belowSlot2",
4545
+ type: "uint256",
4415
4546
  },
4416
4547
  ],
4417
- internalType: "struct IPriceImpact.PairDepth[]",
4548
+ internalType: "struct IPriceImpact.PairDepthBands",
4418
4549
  name: "",
4419
- type: "tuple[]",
4550
+ type: "tuple",
4551
+ },
4552
+ ],
4553
+ stateMutability: "view",
4554
+ type: "function",
4555
+ signature: "0xc693e1be",
4556
+ },
4557
+ {
4558
+ inputs: [
4559
+ {
4560
+ internalType: "uint256",
4561
+ name: "_pairIndex",
4562
+ type: "uint256",
4563
+ },
4564
+ ],
4565
+ name: "getPairDepthBandsDecoded",
4566
+ outputs: [
4567
+ {
4568
+ internalType: "uint256",
4569
+ name: "totalDepthAboveUsd",
4570
+ type: "uint256",
4571
+ },
4572
+ {
4573
+ internalType: "uint256",
4574
+ name: "totalDepthBelowUsd",
4575
+ type: "uint256",
4576
+ },
4577
+ {
4578
+ internalType: "uint16[]",
4579
+ name: "bandsAbove",
4580
+ type: "uint16[]",
4581
+ },
4582
+ {
4583
+ internalType: "uint16[]",
4584
+ name: "bandsBelow",
4585
+ type: "uint16[]",
4420
4586
  },
4421
4587
  ],
4422
4588
  stateMutability: "view",
4423
4589
  type: "function",
4424
- signature: "0x0d569f27",
4590
+ signature: "0x2b363e71",
4591
+ },
4592
+ {
4593
+ inputs: [
4594
+ {
4595
+ internalType: "uint256[]",
4596
+ name: "_indices",
4597
+ type: "uint256[]",
4598
+ },
4599
+ ],
4600
+ name: "getPairDepthBandsDecoded",
4601
+ outputs: [
4602
+ {
4603
+ internalType: "uint256[]",
4604
+ name: "totalDepthAboveUsd",
4605
+ type: "uint256[]",
4606
+ },
4607
+ {
4608
+ internalType: "uint256[]",
4609
+ name: "totalDepthBelowUsd",
4610
+ type: "uint256[]",
4611
+ },
4612
+ {
4613
+ internalType: "uint16[][]",
4614
+ name: "bandsAbove",
4615
+ type: "uint16[][]",
4616
+ },
4617
+ {
4618
+ internalType: "uint16[][]",
4619
+ name: "bandsBelow",
4620
+ type: "uint16[][]",
4621
+ },
4622
+ ],
4623
+ stateMutability: "view",
4624
+ type: "function",
4625
+ signature: "0x8c6a54d8",
4425
4626
  },
4426
4627
  {
4427
4628
  inputs: [
@@ -4850,6 +5051,25 @@ const _abi = [
4850
5051
  type: "function",
4851
5052
  signature: "0x5a1449ab",
4852
5053
  },
5054
+ {
5055
+ inputs: [
5056
+ {
5057
+ internalType: "uint256",
5058
+ name: "_slot1",
5059
+ type: "uint256",
5060
+ },
5061
+ {
5062
+ internalType: "uint256",
5063
+ name: "_slot2",
5064
+ type: "uint256",
5065
+ },
5066
+ ],
5067
+ name: "initializeDepthBandsMapping",
5068
+ outputs: [],
5069
+ stateMutability: "nonpayable",
5070
+ type: "function",
5071
+ signature: "0xbb8f07af",
5072
+ },
4853
5073
  {
4854
5074
  inputs: [
4855
5075
  {
@@ -4931,6 +5151,25 @@ const _abi = [
4931
5151
  type: "function",
4932
5152
  signature: "0xa7d518fc",
4933
5153
  },
5154
+ {
5155
+ inputs: [
5156
+ {
5157
+ internalType: "uint256",
5158
+ name: "_slot1",
5159
+ type: "uint256",
5160
+ },
5161
+ {
5162
+ internalType: "uint256",
5163
+ name: "_slot2",
5164
+ type: "uint256",
5165
+ },
5166
+ ],
5167
+ name: "setDepthBandsMapping",
5168
+ outputs: [],
5169
+ stateMutability: "nonpayable",
5170
+ type: "function",
5171
+ signature: "0x7e8462f7",
5172
+ },
4934
5173
  {
4935
5174
  inputs: [
4936
5175
  {
@@ -4991,21 +5230,38 @@ const _abi = [
4991
5230
  type: "uint256[]",
4992
5231
  },
4993
5232
  {
4994
- internalType: "uint128[]",
4995
- name: "_depthsAboveUsd",
4996
- type: "uint128[]",
4997
- },
4998
- {
4999
- internalType: "uint128[]",
5000
- name: "_depthsBelowUsd",
5001
- type: "uint128[]",
5233
+ components: [
5234
+ {
5235
+ internalType: "uint256",
5236
+ name: "aboveSlot1",
5237
+ type: "uint256",
5238
+ },
5239
+ {
5240
+ internalType: "uint256",
5241
+ name: "aboveSlot2",
5242
+ type: "uint256",
5243
+ },
5244
+ {
5245
+ internalType: "uint256",
5246
+ name: "belowSlot1",
5247
+ type: "uint256",
5248
+ },
5249
+ {
5250
+ internalType: "uint256",
5251
+ name: "belowSlot2",
5252
+ type: "uint256",
5253
+ },
5254
+ ],
5255
+ internalType: "struct IPriceImpact.PairDepthBands[]",
5256
+ name: "_depthBands",
5257
+ type: "tuple[]",
5002
5258
  },
5003
5259
  ],
5004
- name: "setPairDepths",
5260
+ name: "setPairDepthBands",
5005
5261
  outputs: [],
5006
5262
  stateMutability: "nonpayable",
5007
5263
  type: "function",
5008
- signature: "0x6474b399",
5264
+ signature: "0x88be5e4f",
5009
5265
  },
5010
5266
  {
5011
5267
  inputs: [
@@ -16625,6 +16881,31 @@ const _abi = [
16625
16881
  type: "function",
16626
16882
  signature: "0xa91fa361",
16627
16883
  },
16884
+ {
16885
+ inputs: [
16886
+ {
16887
+ internalType: "uint8",
16888
+ name: "_collateralIndex",
16889
+ type: "uint8",
16890
+ },
16891
+ {
16892
+ internalType: "uint256",
16893
+ name: "_gnsPriceCollateral",
16894
+ type: "uint256",
16895
+ },
16896
+ ],
16897
+ name: "getGnsPriceUsd",
16898
+ outputs: [
16899
+ {
16900
+ internalType: "uint256",
16901
+ name: "",
16902
+ type: "uint256",
16903
+ },
16904
+ ],
16905
+ stateMutability: "view",
16906
+ type: "function",
16907
+ signature: "0x6e27030b",
16908
+ },
16628
16909
  {
16629
16910
  inputs: [
16630
16911
  {
@@ -0,0 +1,100 @@
1
+ import { Signer, ContractFactory, Overrides } from "ethers";
2
+ import type { Provider, TransactionRequest } from "@ethersproject/providers";
3
+ import type { PromiseOrValue } from "../common";
4
+ import type { GNSNftRewardsV6_3_1, GNSNftRewardsV6_3_1Interface } from "../GNSNftRewardsV6_3_1";
5
+ type GNSNftRewardsV6_3_1ConstructorParams = [signer?: Signer] | ConstructorParameters<typeof ContractFactory>;
6
+ export declare class GNSNftRewardsV6_3_1__factory extends ContractFactory {
7
+ constructor(...args: GNSNftRewardsV6_3_1ConstructorParams);
8
+ deploy(overrides?: Overrides & {
9
+ from?: PromiseOrValue<string>;
10
+ }): Promise<GNSNftRewardsV6_3_1>;
11
+ getDeployTransaction(overrides?: Overrides & {
12
+ from?: PromiseOrValue<string>;
13
+ }): TransactionRequest;
14
+ attach(address: string): GNSNftRewardsV6_3_1;
15
+ connect(signer: Signer): GNSNftRewardsV6_3_1__factory;
16
+ static readonly bytecode = "0x608060405234801561001057600080fd5b506130f0806100206000396000f3fe608060405234801561001057600080fd5b50600436106101fb5760003560e01c80637e21a0731161011a578063bf654d2b116100ad578063dd6606e91161007c578063dd6606e9146105f5578063ec570610146105fd578063fa827e2e14610610578063fc6dcafc14610668578063fc8b26981461067b57600080fd5b8063bf654d2b146104e9578063d15ccfaa146104fc578063d4de65ea146105a1578063daa6a3e2146105e257600080fd5b8063956da514116100e9578063956da514146104ad5780639e28229d146104c0578063aa88fd2e146104c9578063ab5d5c22146104dc57600080fd5b80637e21a07314610443578063841714e61461046e5780638a19c8bc146104815780638fb9e0a01461048a57600080fd5b806346ea285b11610192578063613e666e11610161578063613e666e146103f4578063624601b6146104075780637a1ac61e146104275780637ceea89a1461043a57600080fd5b806346ea285b146103b357806348c54b9d146103c65780634d5c430f146103ce578063580c6570146103e157600080fd5b80631e868334116101ce5780631e8683341461034857806321187a921461036857806324597b031461038b578063448b3a68146103a057600080fd5b806301832646146102005780630c50b7ef146102e057806316fff07414610300578063196e182f14610331575b600080fd5b6102c661020e366004612908565b60408051602760f91b6020808301919091526021820189905260418201969096526bffffffffffffffffffffffff19606095861b8116606183018190526075830186905260958084018690528451808503909101815260b584018552805190890120602160f91b60d585015260d684019a909a529790951b90941660f685015261010a84019590955261011e83019190915261013e808301919091528351808303909101815261015e90910190925281519101209091565b604080519283526020830191909152015b60405180910390f35b6102f36102ee36600461297c565b610684565b6040516102d79190612998565b600054610319906201000090046001600160a01b031681565b6040516001600160a01b0390911681526020016102d7565b61033a60025481565b6040519081526020016102d7565b61033a6103563660046129e5565b60076020526000908152604090205481565b61037b61037636600461297c565b61076f565b60405190151581526020016102d7565b61039e610399366004612a02565b6108b5565b005b61039e6103ae366004612a24565b610ba7565b61039e6103c1366004612a58565b611127565b61039e6114a1565b61033a6103dc366004612a02565b611660565b61039e6103ef366004612a02565b6117e1565b61039e610402366004612a90565b6118d6565b61033a6104153660046129e5565b600c6020526000908152604090205481565b61039e610435366004612aa9565b611a32565b61033a600d5481565b61033a610451366004612ade565b600660209081526000928352604080842090915290825290205481565b61039e61047c366004612a02565b611be4565b61033a60045481565b61037b610498366004612a90565b600b6020526000908152604090205460ff1681565b61037b6104bb366004612a02565b611fde565b61033a60035481565b61039e6104d7366004612b0a565b612010565b600a5461037b9060ff1681565b61039e6104f736600461297c565b612224565b61056561050a366004612b5e565b60086020908152600094855260408086208252938552838520815291845282842090915282529020805460028201546003909201546001600160a01b0390911691906001600160f01b03811690600160f01b900461ffff1684565b604080516001600160a01b03909516855260208501939093526001600160f01b039091169183019190915261ffff1660608201526080016102d7565b6105d56105af366004612aa9565b600960209081526000938452604080852082529284528284209052825290205460ff1681565b6040516102d79190612bbc565b61039e6105f0366004612a90565b6123d1565b61039e61256a565b61039e61060b366004612be3565b61263b565b61064661061e366004612a90565b6005602052600090815260409020546001600160f01b03811690600160f01b900461ffff1682565b604080516001600160f01b03909316835261ffff9091166020830152016102d7565b61037b61067636600461297c565b612754565b61033a60015481565b60606008600061069760208501856129e5565b6001600160a01b031681526020808201929092526040908101600090812085840135825283528181208583013582529092528120906106dc6080850160608601612c2d565b60038111156106ed576106ed612ba6565b60038111156106fe576106fe612ba6565b815260200190815260200160002060010180548060200260200160405190810160405280929190818152602001828054801561076357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610745575b50505050509050919050565b60008060088161078260208601866129e5565b6001600160a01b031681526020808201929092526040908101600090812086840135825283528181208683013582529092528120906107c76080860160608701612c2d565b60038111156107d8576107d8612ba6565b60038111156107e9576107e9612ba6565b81526020808201929092526040908101600020815160a08101835281546001600160a01b03168152600182018054845181870281018701909552808552919492938584019390929083018282801561086a57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161084c575b5050509183525050600282015460208201526003909101546001600160f01b038116604080840191909152600160f01b90910461ffff16606090920191909152015115159392505050565b818110156108fb5760405162461bcd60e51b815260206004820152600e60248201526d544f5f4245464f52455f46524f4d60901b60448201526064015b60405180910390fd5b60045481106109385760405162461bcd60e51b8152602060048201526009602482015268544f4f5f4541524c5960b81b60448201526064016108f2565b6000825b8281116109ee5733600090815260066020908152604080832084845290915290205480156109db576000828152600560209081526040918290208251808401909352546001600160f01b038116808452600160f01b90910461ffff169183018290526109a89084612c5e565b6109b29190612c8b565b6109bc9085612c9f565b3360009081526006602090815260408083208784529091528120559350505b50806109e681612cb2565b91505061093c565b5060008111610a325760405162461bcd60e51b815260206004820152601060248201526f4e4f5448494e475f544f5f434c41494d60801b60448201526064016108f2565b600060029054906101000a90046001600160a01b03166001600160a01b031663fc0c546a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa99190612ccb565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b03919091169063a9059cbb906044016020604051808303816000875af1158015610af8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b1c9190612cf8565b50336000908152600c602052604081208054839290610b3c908490612c9f565b9250508190555080600d6000828254610b559190612c9f565b90915550506040805133815260208101859052908101839052606081018290527f46ac8a38885612f1237f564a5c0956490dfd5f8e749e750a4c28fafb9f4e6f3a9060800160405180910390a1505050565b600060029054906101000a90046001600160a01b03166001600160a01b031662b127836040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1d9190612ccb565b6001600160a01b0316336001600160a01b031614610c6e5760405162461bcd60e51b815260206004820152600e60248201526d43414c4c4241434b535f4f4e4c5960901b60448201526064016108f2565b6000600881610c8060208701876129e5565b6001600160a01b03168152602080820192909252604090810160009081208784013582528352818120878301358252909252812090610cc56080870160608801612c2d565b6003811115610cd657610cd6612ba6565b6003811115610ce757610ce7612ba6565b81526020808201929092526040908101600020815160a08101835281546001600160a01b031681526001820180548451818702810187019095528085529194929385840193909290830182828015610d6857602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d4a575b5050509183525050600282015460208201526003909101546001600160f01b038116604080840191909152600160f01b90910461ffff16606090920191909152810151909150610dea5760405162461bcd60e51b815260206004820152600d60248201526c1393d517d5149251d1d1549151609a1b60448201526064016108f2565b60006004546001610dfb9190612c9f565b90506000610e1683606001516001600160f01b031685611660565b905084811115610e235750835b6000836080015161ffff1682610e399190612c8b565b905060005b846020015151811015610eef57600085602001518281518110610e6357610e63612d1e565b602002602001015190508260076000836001600160a01b03166001600160a01b031681526020019081526020016000206000828254610ea29190612c9f565b90915550506001600160a01b03811660009081526006602090815260408083208884529091528120805491610ed683612cb2565b9190505550508080610ee790612cb2565b915050610e3e565b506000846020015151856080015161ffff16610f0b9190612d34565b90508015610f4c57610f1d8183612c5e565b85516001600160a01b031660009081526007602052604081208054909190610f46908490612c9f565b90915550505b610f568388612d34565b60045460009081526005602052604081208054909190610f809084906001600160f01b0316612d47565b92506101000a8154816001600160f01b0302191690836001600160f01b0316021790555084602001515160056000868152602001908152602001600020600001601e8282829054906101000a900461ffff16610fdc9190612d6e565b92506101000a81548161ffff021916908361ffff160217905550600060029054906101000a90046001600160a01b03166001600160a01b0316635378143e3060006004541161102b578561102d565b895b6040516001600160e01b031960e085901b1681526001600160a01b039092166004830152602482015260016044820152606401600060405180830381600087803b15801561107a57600080fd5b505af115801561108e573d6000803e3d6000fd5b505050506032600354036110bb576001600355600480549060006110b183612cb2565b91905055506110d1565b600380549060006110cb83612cb2565b91905055505b7f4f36bd87851f2528458a1738abf4e49a04eb6705717220577a0450ff989dd2fe88866000015187602001515188608001518b604051611115959493929190612ddc565b60405180910390a15050505050505050565b600060029054906101000a90046001600160a01b03166001600160a01b031663ec44acf26040518163ffffffff1660e01b8152600401602060405180830381865afa15801561117a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061119e9190612ccb565b6001600160a01b0316336001600160a01b0316146111ed5760405162461bcd60e51b815260206004820152600c60248201526b54524144494e475f4f4e4c5960a01b60448201526064016108f2565b60006008816111ff60208601866129e5565b6001600160a01b031681526020808201929092526040908101600090812086840135825283528181208683013582529092528120906112446080860160608701612c2d565b600381111561125557611255612ba6565b600381111561126657611266612ba6565b81526020019081526020016000209050438160020154146112b45760405162461bcd60e51b8152602060048201526008602482015267544f4f5f4c41544560c01b60448201526064016108f2565b60038101546001820154600160f01b90910461ffff161161130a5760405162461bcd60e51b815260206004820152601060248201526f14d0535157d09313d0d2d7d31253525560821b60448201526064016108f2565b60038101546000906113309061ffff600160f01b820416906001600160f01b0316612e1a565b6001600160f01b03169050600060029054906101000a90046001600160a01b03166001600160a01b031663fece4eac6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561138e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b29190612ccb565b82546040516323b872dd60e01b81526001600160a01b0386811660048301529182166024820152604481018490529116906323b872dd906064016020604051808303816000875af115801561140b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142f9190612cf8565b506001828101805491820181556000908152602090200180546001600160a01b0319166001600160a01b0385161790556040517f6cfcd117aba4d28c6c45c502123dd5d74085f21eb712ea2a5d8b63deacb81eb79061149390869086908590612e40565b60405180910390a150505050565b33600090815260076020526040902054806114f15760405162461bcd60e51b815260206004820152601060248201526f4e4f5448494e475f544f5f434c41494d60801b60448201526064016108f2565b33600090815260076020908152604080832083905591548251637e062a3560e11b81529251620100009091046001600160a01b03169263fc0c546a9260048083019391928290030181865afa15801561154e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115729190612ccb565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b03919091169063a9059cbb906044016020604051808303816000875af11580156115c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e59190612cf8565b50336000908152600c602052604081208054839290611605908490612c9f565b9250508190555080600d600082825461161e9190612c9f565b909155505060408051338152602081018390527f896e034966eaaf1adc54acc0f257056febbd300c9e47182cf761982cf1f5e43091015b60405180910390a150565b600080600060029054906101000a90046001600160a01b03166001600160a01b0316633078fff56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116da9190612ccb565b6001600160a01b031662912b376040518163ffffffff1660e01b8152600401602060405180830381865afa158015611716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173a9190612ccb565b6001600160a01b031663feaf968c6040518163ffffffff1660e01b815260040160a060405180830381865afa158015611777573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061179b9190612e82565b5050509150506305f5e100836402540be40083876117b99190612c5e565b6117c39190612c5e565b6117cd9190612c8b565b6117d79190612c8b565b9150505b92915050565b600060029054906101000a90046001600160a01b03166001600160a01b031663ec44acf26040518163ffffffff1660e01b8152600401602060405180830381865afa158015611834573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118589190612ccb565b6001600160a01b0316336001600160a01b0316146118a75760405162461bcd60e51b815260206004820152600c60248201526b54524144494e475f4f4e4c5960a01b60448201526064016108f2565b6000918252600b60205260408083208054600160ff199182168117909255928452922080549091169091179055565b600060029054906101000a90046001600160a01b03166001600160a01b03166312d43a516040518163ffffffff1660e01b8152600401602060405180830381865afa158015611929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061194d9190612ccb565b6001600160a01b0316336001600160a01b0316146119985760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b60448201526064016108f2565b60018110156119d55760405162461bcd60e51b81526020600482015260096024820152682122a627abafa6a4a760b91b60448201526064016108f2565b600181905560408051818152600e918101919091526d1d1c9a59d9d95c951a5b595bdd5d60921b6060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001611655565b600054610100900460ff1615808015611a525750600054600160ff909116105b80611a6c5750303b158015611a6c575060005460ff166001145b611acf5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016108f2565b6000805460ff191660011790558015611af2576000805461ff0019166101001790555b6001600160a01b03841615801590611b0b575060018310155b8015611b18575060058210155b8015611b25575060328211155b611b605760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b60448201526064016108f2565b6000805475ffffffffffffffffffffffffffffffffffffffff00001916620100006001600160a01b03871602179055600183815560028390556003558015611bde576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001611493565b50505050565b600060029054906101000a90046001600160a01b03166001600160a01b03166312d43a516040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c5b9190612ccb565b6001600160a01b0316336001600160a01b031614611ca65760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b60448201526064016108f2565b600a5460ff1615611ce55760405162461bcd60e51b8152602060048201526009602482015268434f50595f444f4e4560b81b60448201526064016108f2565b80821115611d275760405162461bcd60e51b815260206004820152600f60248201526e14d510549517d05195115497d15391608a1b60448201526064016108f2565b600046608903611d4c5750733470756e5b490a974bc25feeeeb24c11102f5268611dcd565b466201388103611d715750733982e3de77dad60373c0c2c539fcb93bd288d2f5611dcd565b4661a4b103611d95575073c2d107e870927e3fb1127e6c1a33de5c863505b8611dcd565b60405162461bcd60e51b815260206004820152600d60248201526c2aa725a727aba72fa1a420a4a760991b60448201526064016108f2565b60008060029054906101000a90046001600160a01b03166001600160a01b0316638a0bd7026040518163ffffffff1660e01b8152600401600060405180830381865afa158015611e21573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611e499190810190612f43565b905080518410611e8b5760405162461bcd60e51b815260206004820152600d60248201526c53544152545f544f4f5f42494760981b60448201526064016108f2565b80518310611ea45760018151611ea19190612d34565b92505b835b838111611fd7576000828281518110611ec157611ec1612d1e565b6020908102919091018101518051918101516040808301519051636a6f32f560e11b81526001600160a01b039485166004820152602481019290925260448201529092509085169063d4de65ea90606401602060405180830381865afa158015611f2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f53919061308f565b6002811115611f6457611f64612ba6565b6002811115611f7557611f75612ba6565b81516001600160a01b0316600090815260096020908152604080832082860151845282528083208186015184529091529020805460ff19166001836002811115611fc157611fc1612ba6565b0217905550611fcf82612cb2565b915050611ea6565b5050505050565b6000828152600b602052604081205460ff168061200957506000828152600b602052604090205460ff165b9392505050565b600060029054906101000a90046001600160a01b03166001600160a01b031663ec44acf26040518163ffffffff1660e01b8152600401602060405180830381865afa158015612063573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120879190612ccb565b6001600160a01b0316336001600160a01b0316146120d65760405162461bcd60e51b815260206004820152600c60248201526b54524144494e475f4f4e4c5960a01b60448201526064016108f2565b60006008816120e860208701876129e5565b6001600160a01b0316815260208082019290925260409081016000908120878401358252835281812087830135825290925281209061212d6080870160608801612c2d565b600381111561213e5761213e612ba6565b600381111561214f5761214f612ba6565b81526020810191909152604001600090812080546001600160a01b0319166001600160a01b0386161781556003810180546001600160f01b0319166001600160f01b0386169081178255600254600160f01b61ffff9091160217905591506121bb9060018301906128b9565b4360028201556001808201805491820181556000908152602090200180546001600160a01b0319166001600160a01b0385161790556040517fb638490faee2b0061f35ab3febba125b8a3d6dac667b31db6309f5fde2c7fa8f9061149390869086908690612e40565b600060029054906101000a90046001600160a01b03166001600160a01b031662b127836040518163ffffffff1660e01b8152600401602060405180830381865afa158015612276573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061229a9190612ccb565b6001600160a01b0316336001600160a01b0316146122eb5760405162461bcd60e51b815260206004820152600e60248201526d43414c4c4241434b535f4f4e4c5960901b60448201526064016108f2565b600860006122fc60208401846129e5565b6001600160a01b031681526020808201929092526040908101600090812084840135825283528181208483013582529092528120906123416080840160608501612c2d565b600381111561235257612352612ba6565b600381111561236357612363612ba6565b81526020810191909152604001600090812080546001600160a01b03191681559061239160018301826128b9565b506000600282018190556003909101556040517fbc446f372d672d41df09bf965eb61c029a34d21d04ebcd4c0ec9c7ee54f2cd84906116559083906130ac565b600060029054906101000a90046001600160a01b03166001600160a01b03166312d43a516040518163ffffffff1660e01b8152600401602060405180830381865afa158015612424573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124489190612ccb565b6001600160a01b0316336001600160a01b0316146124935760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b60448201526064016108f2565b60058110156124d05760405162461bcd60e51b81526020600482015260096024820152682122a627abafa6a4a760b91b60448201526064016108f2565b603281111561250d5760405162461bcd60e51b8152602060048201526009602482015268082849eac8abe9a82b60bb1b60448201526064016108f2565b600281905560408051818152600e918101919091526d1cd85b59509b1bd8dad31a5b5a5d60921b6060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001611655565b600060029054906101000a90046001600160a01b03166001600160a01b03166312d43a516040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125e19190612ccb565b6001600160a01b0316336001600160a01b03161461262c5760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b60448201526064016108f2565b600a805460ff19166001179055565b600060029054906101000a90046001600160a01b03166001600160a01b031663ec44acf26040518163ffffffff1660e01b8152600401602060405180830381865afa15801561268e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126b29190612ccb565b6001600160a01b0316336001600160a01b0316146127015760405162461bcd60e51b815260206004820152600c60248201526b54524144494e475f4f4e4c5960a01b60448201526064016108f2565b6001600160a01b038416600090815260096020908152604080832086845282528083208584529091529020805482919060ff1916600183600281111561274957612749612ba6565b021790555050505050565b60008060088161276760208601866129e5565b6001600160a01b031681526020808201929092526040908101600090812086840135825283528181208683013582529092528120906127ac6080860160608701612c2d565b60038111156127bd576127bd612ba6565b60038111156127ce576127ce612ba6565b81526020808201929092526040908101600020815160a08101835281546001600160a01b03168152600182018054845181870281018701909552808552919492938584019390929083018282801561284f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612831575b5050509183525050600282015460208201526003909101546001600160f01b038116604080840191909152600160f01b90910461ffff1660609092019190915281015190915015801590612009575060015460408201516128b09043612d34565b10159392505050565b50805460008255906000526020600020908101906128d791906128da565b50565b5b808211156128ef57600081556001016128db565b5090565b6001600160a01b03811681146128d757600080fd5b60008060008060008060c0878903121561292157600080fd5b863595506020870135612933816128f3565b945060408701359350606087013561294a816128f3565b9598949750929560808101359460a0909101359350915050565b60006080828403121561297657600080fd5b50919050565b60006080828403121561298e57600080fd5b6120098383612964565b6020808252825182820181905260009190848201906040850190845b818110156129d95783516001600160a01b0316835292840192918401916001016129b4565b50909695505050505050565b6000602082840312156129f757600080fd5b8135612009816128f3565b60008060408385031215612a1557600080fd5b50508035926020909101359150565b600080600060c08486031215612a3957600080fd5b612a438585612964565b956080850135955060a0909401359392505050565b60008060a08385031215612a6b57600080fd5b612a758484612964565b91506080830135612a85816128f3565b809150509250929050565b600060208284031215612aa257600080fd5b5035919050565b600080600060608486031215612abe57600080fd5b8335612ac9816128f3565b95602085013595506040909401359392505050565b60008060408385031215612af157600080fd5b8235612afc816128f3565b946020939093013593505050565b600080600060c08486031215612b1f57600080fd5b612b298585612964565b92506080840135612b39816128f3565b9295929450505060a0919091013590565b803560048110612b5957600080fd5b919050565b60008060008060808587031215612b7457600080fd5b8435612b7f816128f3565b93506020850135925060408501359150612b9b60608601612b4a565b905092959194509250565b634e487b7160e01b600052602160045260246000fd5b6020810160038310612bd057612bd0612ba6565b91905290565b600381106128d757600080fd5b60008060008060808587031215612bf957600080fd5b8435612c04816128f3565b935060208501359250604085013591506060850135612c2281612bd6565b939692955090935050565b600060208284031215612c3f57600080fd5b61200982612b4a565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176117db576117db612c48565b634e487b7160e01b600052601260045260246000fd5b600082612c9a57612c9a612c75565b500490565b808201808211156117db576117db612c48565b600060018201612cc457612cc4612c48565b5060010190565b600060208284031215612cdd57600080fd5b8151612009816128f3565b80518015158114612b5957600080fd5b600060208284031215612d0a57600080fd5b61200982612ce8565b8051612b59816128f3565b634e487b7160e01b600052603260045260246000fd5b818103818111156117db576117db612c48565b6001600160f01b03818116838216019080821115612d6757612d67612c48565b5092915050565b61ffff818116838216019080821115612d6757612d67612c48565b8035612d94816128f3565b6001600160a01b0381168352506020810135602083015260408101356040830152612dc160608201612b4a565b60048110612dd157612dd1612ba6565b806060840152505050565b6101008101612deb8288612d89565b6001600160a01b03861660808301528460a083015261ffff841660c08301528260e08301529695505050505050565b60006001600160f01b0383811680612e3457612e34612c75565b92169190910492915050565b60c08101612e4e8286612d89565b6001600160a01b0393909316608082015260a00152919050565b805169ffffffffffffffffffff81168114612b5957600080fd5b600080600080600060a08688031215612e9a57600080fd5b612ea386612e68565b9450602086015193506040860151925060608601519150612ec660808701612e68565b90509295509295909350565b634e487b7160e01b600052604160045260246000fd5b6040516101a0810167ffffffffffffffff81118282101715612f0c57612f0c612ed2565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612f3b57612f3b612ed2565b604052919050565b60006020808385031215612f5657600080fd5b825167ffffffffffffffff80821115612f6e57600080fd5b818501915085601f830112612f8257600080fd5b815181811115612f9457612f94612ed2565b612fa2848260051b01612f12565b81815284810192506101a0918202840185019188831115612fc257600080fd5b938501935b828510156130835780858a031215612fdf5760008081fd5b612fe7612ee8565b612ff086612d13565b8152858701518782015260408087015190820152606080870151908201526080808701519082015260a0613025818801612ce8565b9082015260c0868101519082015260e080870151908201526101008087015190820152610120808701519082015261014080870151908201526101608087015190820152610180808701519082015284529384019392850192612fc7565b50979650505050505050565b6000602082840312156130a157600080fd5b815161200981612bd6565b608081016117db8284612d8956fea26469706673582212209b2fe9606115a1f9288b4d1fd84af732bae5c4b753b96abba7486eaa9e3ed3c064736f6c63430008110033";
17
+ static readonly abi: ({
18
+ anonymous: boolean;
19
+ inputs: ({
20
+ components: {
21
+ internalType: string;
22
+ name: string;
23
+ type: string;
24
+ }[];
25
+ indexed: boolean;
26
+ internalType: string;
27
+ name: string;
28
+ type: string;
29
+ } | {
30
+ indexed: boolean;
31
+ internalType: string;
32
+ name: string;
33
+ type: string;
34
+ components?: undefined;
35
+ })[];
36
+ name: string;
37
+ type: string;
38
+ outputs?: undefined;
39
+ stateMutability?: undefined;
40
+ } | {
41
+ inputs: {
42
+ internalType: string;
43
+ name: string;
44
+ type: string;
45
+ }[];
46
+ name: string;
47
+ outputs: {
48
+ internalType: string;
49
+ name: string;
50
+ type: string;
51
+ }[];
52
+ stateMutability: string;
53
+ type: string;
54
+ anonymous?: undefined;
55
+ } | {
56
+ inputs: ({
57
+ components: {
58
+ internalType: string;
59
+ name: string;
60
+ type: string;
61
+ }[];
62
+ internalType: string;
63
+ name: string;
64
+ type: string;
65
+ } | {
66
+ internalType: string;
67
+ name: string;
68
+ type: string;
69
+ components?: undefined;
70
+ })[];
71
+ name: string;
72
+ outputs: never[];
73
+ stateMutability: string;
74
+ type: string;
75
+ anonymous?: undefined;
76
+ } | {
77
+ inputs: {
78
+ components: {
79
+ internalType: string;
80
+ name: string;
81
+ type: string;
82
+ }[];
83
+ internalType: string;
84
+ name: string;
85
+ type: string;
86
+ }[];
87
+ name: string;
88
+ outputs: {
89
+ internalType: string;
90
+ name: string;
91
+ type: string;
92
+ }[];
93
+ stateMutability: string;
94
+ type: string;
95
+ anonymous?: undefined;
96
+ })[];
97
+ static createInterface(): GNSNftRewardsV6_3_1Interface;
98
+ static connect(address: string, signerOrProvider: Signer | Provider): GNSNftRewardsV6_3_1;
99
+ }
100
+ export {};