@gainsnetwork/sdk 1.5.0-rc2 → 1.5.0-rc4

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 (86) hide show
  1. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +1911 -0
  2. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +2 -0
  3. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +1067 -0
  4. package/lib/contracts/types/generated/GNSBorrowingFees.js +2 -0
  5. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.d.ts +979 -0
  6. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.js +2 -0
  7. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +1058 -0
  8. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.js +2 -0
  9. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +533 -0
  10. package/lib/contracts/types/generated/GNSNftRewardsV6.js +2 -0
  11. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +613 -0
  12. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +2 -0
  13. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +911 -0
  14. package/lib/contracts/types/generated/GNSPairInfosV6_1.js +2 -0
  15. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +660 -0
  16. package/lib/contracts/types/generated/GNSPairsStorageV6.js +2 -0
  17. package/lib/contracts/types/generated/GNSTrading.d.ts +758 -0
  18. package/lib/contracts/types/generated/GNSTrading.js +2 -0
  19. package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +875 -0
  20. package/lib/contracts/types/generated/GNSTradingCallbacks.js +2 -0
  21. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.d.ts +806 -0
  22. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.js +2 -0
  23. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.d.ts +821 -0
  24. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.js +2 -0
  25. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +1387 -0
  26. package/lib/contracts/types/generated/GNSTradingStorage.js +2 -0
  27. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +1838 -0
  28. package/lib/contracts/types/generated/GTokenV6_3_2.js +2 -0
  29. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +83 -0
  30. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +2691 -0
  31. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.d.ts +88 -0
  32. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.js +1654 -0
  33. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +113 -0
  34. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +1742 -0
  35. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +124 -0
  36. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +1784 -0
  37. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +100 -0
  38. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +1116 -0
  39. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +100 -0
  40. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +1003 -0
  41. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +98 -0
  42. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +1485 -0
  43. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +117 -0
  44. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +1265 -0
  45. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.d.ts +82 -0
  46. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.js +1273 -0
  47. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +82 -0
  48. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +1326 -0
  49. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +113 -0
  50. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +1428 -0
  51. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +96 -0
  52. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +2241 -0
  53. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +95 -0
  54. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +1071 -0
  55. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +110 -0
  56. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +2682 -0
  57. package/lib/markets/oi/fetcher.d.ts +58 -0
  58. package/lib/markets/oi/fetcher.js +181 -0
  59. package/lib/markets/oi/validation.d.ts +80 -0
  60. package/lib/markets/oi/validation.js +172 -0
  61. package/lib/pricing/depthBands/converter.d.ts +65 -0
  62. package/lib/pricing/depthBands/converter.js +155 -0
  63. package/lib/pricing/depthBands/decoder.d.ts +32 -0
  64. package/lib/pricing/depthBands/decoder.js +109 -0
  65. package/lib/pricing/depthBands/encoder.d.ts +19 -0
  66. package/lib/pricing/depthBands/encoder.js +105 -0
  67. package/lib/pricing/depthBands/index.d.ts +8 -0
  68. package/lib/pricing/depthBands/index.js +26 -0
  69. package/lib/pricing/depthBands/types.d.ts +49 -0
  70. package/lib/pricing/depthBands/types.js +10 -0
  71. package/lib/pricing/depthBands/validator.d.ts +22 -0
  72. package/lib/pricing/depthBands/validator.js +113 -0
  73. package/lib/trade/effectiveLeverage/builder.d.ts +23 -0
  74. package/lib/trade/effectiveLeverage/builder.js +30 -0
  75. package/lib/trade/fees/borrowingV2/fetcher.d.ts +0 -1
  76. package/lib/trade/fees/holdingFees/index.d.ts +46 -0
  77. package/lib/trade/fees/holdingFees/index.js +105 -0
  78. package/lib/trade/fees/holdingFees/types.d.ts +23 -0
  79. package/lib/trade/fees/holdingFees/types.js +5 -0
  80. package/lib/trade/fees/trading/holdingFees.d.ts +28 -0
  81. package/lib/trade/fees/trading/holdingFees.js +66 -0
  82. package/lib/trade/fees/trading/holdingFeesStructured.d.ts +28 -0
  83. package/lib/trade/fees/trading/holdingFeesStructured.js +66 -0
  84. package/lib/trade/priceImpact/cumulVol/index.js +0 -27
  85. package/lib/trade/priceImpact/open/index.js +0 -3
  86. package/package.json +1 -1
@@ -0,0 +1,1654 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GNSBorrowingFeesV6_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: true,
14
+ internalType: "uint16",
15
+ name: "groupIndex",
16
+ type: "uint16",
17
+ },
18
+ {
19
+ indexed: false,
20
+ internalType: "uint256",
21
+ name: "currentBlock",
22
+ type: "uint256",
23
+ },
24
+ {
25
+ indexed: false,
26
+ internalType: "uint64",
27
+ name: "accFeeLong",
28
+ type: "uint64",
29
+ },
30
+ {
31
+ indexed: false,
32
+ internalType: "uint64",
33
+ name: "accFeeShort",
34
+ type: "uint64",
35
+ },
36
+ {
37
+ indexed: false,
38
+ internalType: "uint256",
39
+ name: "accBlockWeightedMarketCap",
40
+ type: "uint256",
41
+ },
42
+ ],
43
+ name: "GroupAccFeesUpdated",
44
+ type: "event",
45
+ },
46
+ {
47
+ anonymous: false,
48
+ inputs: [
49
+ {
50
+ indexed: true,
51
+ internalType: "uint16",
52
+ name: "groupIndex",
53
+ type: "uint16",
54
+ },
55
+ {
56
+ indexed: true,
57
+ internalType: "bool",
58
+ name: "long",
59
+ type: "bool",
60
+ },
61
+ {
62
+ indexed: true,
63
+ internalType: "bool",
64
+ name: "increase",
65
+ type: "bool",
66
+ },
67
+ {
68
+ indexed: false,
69
+ internalType: "uint112",
70
+ name: "amount",
71
+ type: "uint112",
72
+ },
73
+ {
74
+ indexed: false,
75
+ internalType: "uint112",
76
+ name: "oiLong",
77
+ type: "uint112",
78
+ },
79
+ {
80
+ indexed: false,
81
+ internalType: "uint112",
82
+ name: "oiShort",
83
+ type: "uint112",
84
+ },
85
+ ],
86
+ name: "GroupOiUpdated",
87
+ type: "event",
88
+ },
89
+ {
90
+ anonymous: false,
91
+ inputs: [
92
+ {
93
+ indexed: true,
94
+ internalType: "uint16",
95
+ name: "groupIndex",
96
+ type: "uint16",
97
+ },
98
+ {
99
+ indexed: false,
100
+ internalType: "uint32",
101
+ name: "feePerBlock",
102
+ type: "uint32",
103
+ },
104
+ {
105
+ indexed: false,
106
+ internalType: "uint80",
107
+ name: "maxOi",
108
+ type: "uint80",
109
+ },
110
+ ],
111
+ name: "GroupUpdated",
112
+ type: "event",
113
+ },
114
+ {
115
+ anonymous: false,
116
+ inputs: [
117
+ {
118
+ indexed: false,
119
+ internalType: "uint8",
120
+ name: "version",
121
+ type: "uint8",
122
+ },
123
+ ],
124
+ name: "Initialized",
125
+ type: "event",
126
+ },
127
+ {
128
+ anonymous: false,
129
+ inputs: [
130
+ {
131
+ indexed: true,
132
+ internalType: "uint256",
133
+ name: "pairIndex",
134
+ type: "uint256",
135
+ },
136
+ {
137
+ indexed: false,
138
+ internalType: "uint256",
139
+ name: "currentBlock",
140
+ type: "uint256",
141
+ },
142
+ {
143
+ indexed: false,
144
+ internalType: "uint64",
145
+ name: "accFeeLong",
146
+ type: "uint64",
147
+ },
148
+ {
149
+ indexed: false,
150
+ internalType: "uint64",
151
+ name: "accFeeShort",
152
+ type: "uint64",
153
+ },
154
+ {
155
+ indexed: false,
156
+ internalType: "uint256",
157
+ name: "accBlockWeightedMarketCap",
158
+ type: "uint256",
159
+ },
160
+ ],
161
+ name: "PairAccFeesUpdated",
162
+ type: "event",
163
+ },
164
+ {
165
+ anonymous: false,
166
+ inputs: [
167
+ {
168
+ indexed: true,
169
+ internalType: "uint256",
170
+ name: "pairIndex",
171
+ type: "uint256",
172
+ },
173
+ {
174
+ indexed: true,
175
+ internalType: "uint16",
176
+ name: "prevGroupIndex",
177
+ type: "uint16",
178
+ },
179
+ {
180
+ indexed: true,
181
+ internalType: "uint16",
182
+ name: "newGroupIndex",
183
+ type: "uint16",
184
+ },
185
+ ],
186
+ name: "PairGroupUpdated",
187
+ type: "event",
188
+ },
189
+ {
190
+ anonymous: false,
191
+ inputs: [
192
+ {
193
+ indexed: true,
194
+ internalType: "uint256",
195
+ name: "pairIndex",
196
+ type: "uint256",
197
+ },
198
+ {
199
+ indexed: true,
200
+ internalType: "uint16",
201
+ name: "groupIndex",
202
+ type: "uint16",
203
+ },
204
+ {
205
+ indexed: false,
206
+ internalType: "uint32",
207
+ name: "feePerBlock",
208
+ type: "uint32",
209
+ },
210
+ ],
211
+ name: "PairParamsUpdated",
212
+ type: "event",
213
+ },
214
+ {
215
+ anonymous: false,
216
+ inputs: [
217
+ {
218
+ indexed: true,
219
+ internalType: "address",
220
+ name: "trader",
221
+ type: "address",
222
+ },
223
+ {
224
+ indexed: true,
225
+ internalType: "uint256",
226
+ name: "pairIndex",
227
+ type: "uint256",
228
+ },
229
+ {
230
+ indexed: false,
231
+ internalType: "uint256",
232
+ name: "index",
233
+ type: "uint256",
234
+ },
235
+ {
236
+ indexed: false,
237
+ internalType: "bool",
238
+ name: "open",
239
+ type: "bool",
240
+ },
241
+ {
242
+ indexed: false,
243
+ internalType: "bool",
244
+ name: "long",
245
+ type: "bool",
246
+ },
247
+ {
248
+ indexed: false,
249
+ internalType: "uint256",
250
+ name: "positionSizeDai",
251
+ type: "uint256",
252
+ },
253
+ ],
254
+ name: "TradeActionHandled",
255
+ type: "event",
256
+ },
257
+ {
258
+ anonymous: false,
259
+ inputs: [
260
+ {
261
+ indexed: true,
262
+ internalType: "address",
263
+ name: "trader",
264
+ type: "address",
265
+ },
266
+ {
267
+ indexed: true,
268
+ internalType: "uint256",
269
+ name: "pairIndex",
270
+ type: "uint256",
271
+ },
272
+ {
273
+ indexed: false,
274
+ internalType: "uint256",
275
+ name: "index",
276
+ type: "uint256",
277
+ },
278
+ {
279
+ indexed: false,
280
+ internalType: "uint64",
281
+ name: "initialPairAccFee",
282
+ type: "uint64",
283
+ },
284
+ {
285
+ indexed: false,
286
+ internalType: "uint64",
287
+ name: "initialGroupAccFee",
288
+ type: "uint64",
289
+ },
290
+ ],
291
+ name: "TradeInitialAccFeesStored",
292
+ type: "event",
293
+ },
294
+ {
295
+ inputs: [],
296
+ name: "getAllPairs",
297
+ outputs: [
298
+ {
299
+ components: [
300
+ {
301
+ components: [
302
+ {
303
+ internalType: "uint16",
304
+ name: "groupIndex",
305
+ type: "uint16",
306
+ },
307
+ {
308
+ internalType: "uint48",
309
+ name: "block",
310
+ type: "uint48",
311
+ },
312
+ {
313
+ internalType: "uint64",
314
+ name: "initialAccFeeLong",
315
+ type: "uint64",
316
+ },
317
+ {
318
+ internalType: "uint64",
319
+ name: "initialAccFeeShort",
320
+ type: "uint64",
321
+ },
322
+ {
323
+ internalType: "uint64",
324
+ name: "prevGroupAccFeeLong",
325
+ type: "uint64",
326
+ },
327
+ {
328
+ internalType: "uint64",
329
+ name: "prevGroupAccFeeShort",
330
+ type: "uint64",
331
+ },
332
+ {
333
+ internalType: "uint64",
334
+ name: "pairAccFeeLong",
335
+ type: "uint64",
336
+ },
337
+ {
338
+ internalType: "uint64",
339
+ name: "pairAccFeeShort",
340
+ type: "uint64",
341
+ },
342
+ {
343
+ internalType: "uint64",
344
+ name: "_placeholder",
345
+ type: "uint64",
346
+ },
347
+ ],
348
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.PairGroup[]",
349
+ name: "groups",
350
+ type: "tuple[]",
351
+ },
352
+ {
353
+ internalType: "uint32",
354
+ name: "feePerBlock",
355
+ type: "uint32",
356
+ },
357
+ {
358
+ internalType: "uint64",
359
+ name: "accFeeLong",
360
+ type: "uint64",
361
+ },
362
+ {
363
+ internalType: "uint64",
364
+ name: "accFeeShort",
365
+ type: "uint64",
366
+ },
367
+ {
368
+ internalType: "uint48",
369
+ name: "accLastUpdatedBlock",
370
+ type: "uint48",
371
+ },
372
+ {
373
+ internalType: "uint48",
374
+ name: "_placeholder",
375
+ type: "uint48",
376
+ },
377
+ {
378
+ internalType: "uint256",
379
+ name: "lastAccBlockWeightedMarketCap",
380
+ type: "uint256",
381
+ },
382
+ ],
383
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.Pair[]",
384
+ name: "",
385
+ type: "tuple[]",
386
+ },
387
+ ],
388
+ stateMutability: "view",
389
+ type: "function",
390
+ },
391
+ {
392
+ inputs: [
393
+ {
394
+ internalType: "uint16",
395
+ name: "groupIndex",
396
+ type: "uint16",
397
+ },
398
+ ],
399
+ name: "getGroup",
400
+ outputs: [
401
+ {
402
+ components: [
403
+ {
404
+ internalType: "uint112",
405
+ name: "oiLong",
406
+ type: "uint112",
407
+ },
408
+ {
409
+ internalType: "uint112",
410
+ name: "oiShort",
411
+ type: "uint112",
412
+ },
413
+ {
414
+ internalType: "uint32",
415
+ name: "feePerBlock",
416
+ type: "uint32",
417
+ },
418
+ {
419
+ internalType: "uint64",
420
+ name: "accFeeLong",
421
+ type: "uint64",
422
+ },
423
+ {
424
+ internalType: "uint64",
425
+ name: "accFeeShort",
426
+ type: "uint64",
427
+ },
428
+ {
429
+ internalType: "uint48",
430
+ name: "accLastUpdatedBlock",
431
+ type: "uint48",
432
+ },
433
+ {
434
+ internalType: "uint80",
435
+ name: "maxOi",
436
+ type: "uint80",
437
+ },
438
+ {
439
+ internalType: "uint256",
440
+ name: "lastAccBlockWeightedMarketCap",
441
+ type: "uint256",
442
+ },
443
+ ],
444
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.Group",
445
+ name: "",
446
+ type: "tuple",
447
+ },
448
+ ],
449
+ stateMutability: "view",
450
+ type: "function",
451
+ },
452
+ {
453
+ inputs: [
454
+ {
455
+ internalType: "uint16",
456
+ name: "groupIndex",
457
+ type: "uint16",
458
+ },
459
+ {
460
+ internalType: "uint256",
461
+ name: "currentBlock",
462
+ type: "uint256",
463
+ },
464
+ {
465
+ internalType: "bool",
466
+ name: "long",
467
+ type: "bool",
468
+ },
469
+ ],
470
+ name: "getGroupPendingAccFee",
471
+ outputs: [
472
+ {
473
+ internalType: "uint64",
474
+ name: "accFee",
475
+ type: "uint64",
476
+ },
477
+ ],
478
+ stateMutability: "view",
479
+ type: "function",
480
+ },
481
+ {
482
+ inputs: [
483
+ {
484
+ internalType: "uint16",
485
+ name: "groupIndex",
486
+ type: "uint16",
487
+ },
488
+ {
489
+ internalType: "uint256",
490
+ name: "currentBlock",
491
+ type: "uint256",
492
+ },
493
+ ],
494
+ name: "getGroupPendingAccFees",
495
+ outputs: [
496
+ {
497
+ internalType: "uint64",
498
+ name: "accFeeLong",
499
+ type: "uint64",
500
+ },
501
+ {
502
+ internalType: "uint64",
503
+ name: "accFeeShort",
504
+ type: "uint64",
505
+ },
506
+ {
507
+ internalType: "int256",
508
+ name: "groupAccFeeDelta",
509
+ type: "int256",
510
+ },
511
+ ],
512
+ stateMutability: "view",
513
+ type: "function",
514
+ },
515
+ {
516
+ inputs: [
517
+ {
518
+ internalType: "uint16",
519
+ name: "groupIndex",
520
+ type: "uint16",
521
+ },
522
+ {
523
+ internalType: "uint256",
524
+ name: "currentBlock",
525
+ type: "uint256",
526
+ },
527
+ ],
528
+ name: "getGroupWeightedVaultMarketCapSinceLastUpdate",
529
+ outputs: [
530
+ {
531
+ internalType: "uint256",
532
+ name: "",
533
+ type: "uint256",
534
+ },
535
+ ],
536
+ stateMutability: "view",
537
+ type: "function",
538
+ },
539
+ {
540
+ inputs: [
541
+ {
542
+ internalType: "uint16[]",
543
+ name: "indices",
544
+ type: "uint16[]",
545
+ },
546
+ ],
547
+ name: "getGroups",
548
+ outputs: [
549
+ {
550
+ components: [
551
+ {
552
+ internalType: "uint112",
553
+ name: "oiLong",
554
+ type: "uint112",
555
+ },
556
+ {
557
+ internalType: "uint112",
558
+ name: "oiShort",
559
+ type: "uint112",
560
+ },
561
+ {
562
+ internalType: "uint32",
563
+ name: "feePerBlock",
564
+ type: "uint32",
565
+ },
566
+ {
567
+ internalType: "uint64",
568
+ name: "accFeeLong",
569
+ type: "uint64",
570
+ },
571
+ {
572
+ internalType: "uint64",
573
+ name: "accFeeShort",
574
+ type: "uint64",
575
+ },
576
+ {
577
+ internalType: "uint48",
578
+ name: "accLastUpdatedBlock",
579
+ type: "uint48",
580
+ },
581
+ {
582
+ internalType: "uint80",
583
+ name: "maxOi",
584
+ type: "uint80",
585
+ },
586
+ {
587
+ internalType: "uint256",
588
+ name: "lastAccBlockWeightedMarketCap",
589
+ type: "uint256",
590
+ },
591
+ ],
592
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.Group[]",
593
+ name: "",
594
+ type: "tuple[]",
595
+ },
596
+ ],
597
+ stateMutability: "view",
598
+ type: "function",
599
+ },
600
+ {
601
+ inputs: [
602
+ {
603
+ internalType: "uint256",
604
+ name: "pairIndex",
605
+ type: "uint256",
606
+ },
607
+ ],
608
+ name: "getPair",
609
+ outputs: [
610
+ {
611
+ components: [
612
+ {
613
+ components: [
614
+ {
615
+ internalType: "uint16",
616
+ name: "groupIndex",
617
+ type: "uint16",
618
+ },
619
+ {
620
+ internalType: "uint48",
621
+ name: "block",
622
+ type: "uint48",
623
+ },
624
+ {
625
+ internalType: "uint64",
626
+ name: "initialAccFeeLong",
627
+ type: "uint64",
628
+ },
629
+ {
630
+ internalType: "uint64",
631
+ name: "initialAccFeeShort",
632
+ type: "uint64",
633
+ },
634
+ {
635
+ internalType: "uint64",
636
+ name: "prevGroupAccFeeLong",
637
+ type: "uint64",
638
+ },
639
+ {
640
+ internalType: "uint64",
641
+ name: "prevGroupAccFeeShort",
642
+ type: "uint64",
643
+ },
644
+ {
645
+ internalType: "uint64",
646
+ name: "pairAccFeeLong",
647
+ type: "uint64",
648
+ },
649
+ {
650
+ internalType: "uint64",
651
+ name: "pairAccFeeShort",
652
+ type: "uint64",
653
+ },
654
+ {
655
+ internalType: "uint64",
656
+ name: "_placeholder",
657
+ type: "uint64",
658
+ },
659
+ ],
660
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.PairGroup[]",
661
+ name: "groups",
662
+ type: "tuple[]",
663
+ },
664
+ {
665
+ internalType: "uint32",
666
+ name: "feePerBlock",
667
+ type: "uint32",
668
+ },
669
+ {
670
+ internalType: "uint64",
671
+ name: "accFeeLong",
672
+ type: "uint64",
673
+ },
674
+ {
675
+ internalType: "uint64",
676
+ name: "accFeeShort",
677
+ type: "uint64",
678
+ },
679
+ {
680
+ internalType: "uint48",
681
+ name: "accLastUpdatedBlock",
682
+ type: "uint48",
683
+ },
684
+ {
685
+ internalType: "uint48",
686
+ name: "_placeholder",
687
+ type: "uint48",
688
+ },
689
+ {
690
+ internalType: "uint256",
691
+ name: "lastAccBlockWeightedMarketCap",
692
+ type: "uint256",
693
+ },
694
+ ],
695
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.Pair",
696
+ name: "",
697
+ type: "tuple",
698
+ },
699
+ ],
700
+ stateMutability: "view",
701
+ type: "function",
702
+ },
703
+ {
704
+ inputs: [
705
+ {
706
+ internalType: "uint256",
707
+ name: "i",
708
+ type: "uint256",
709
+ },
710
+ {
711
+ components: [
712
+ {
713
+ internalType: "uint16",
714
+ name: "groupIndex",
715
+ type: "uint16",
716
+ },
717
+ {
718
+ internalType: "uint48",
719
+ name: "block",
720
+ type: "uint48",
721
+ },
722
+ {
723
+ internalType: "uint64",
724
+ name: "initialAccFeeLong",
725
+ type: "uint64",
726
+ },
727
+ {
728
+ internalType: "uint64",
729
+ name: "initialAccFeeShort",
730
+ type: "uint64",
731
+ },
732
+ {
733
+ internalType: "uint64",
734
+ name: "prevGroupAccFeeLong",
735
+ type: "uint64",
736
+ },
737
+ {
738
+ internalType: "uint64",
739
+ name: "prevGroupAccFeeShort",
740
+ type: "uint64",
741
+ },
742
+ {
743
+ internalType: "uint64",
744
+ name: "pairAccFeeLong",
745
+ type: "uint64",
746
+ },
747
+ {
748
+ internalType: "uint64",
749
+ name: "pairAccFeeShort",
750
+ type: "uint64",
751
+ },
752
+ {
753
+ internalType: "uint64",
754
+ name: "_placeholder",
755
+ type: "uint64",
756
+ },
757
+ ],
758
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.PairGroup[]",
759
+ name: "pairGroups",
760
+ type: "tuple[]",
761
+ },
762
+ {
763
+ components: [
764
+ {
765
+ internalType: "uint64",
766
+ name: "accPairFee",
767
+ type: "uint64",
768
+ },
769
+ {
770
+ internalType: "uint64",
771
+ name: "accGroupFee",
772
+ type: "uint64",
773
+ },
774
+ {
775
+ internalType: "uint48",
776
+ name: "block",
777
+ type: "uint48",
778
+ },
779
+ {
780
+ internalType: "uint80",
781
+ name: "_placeholder",
782
+ type: "uint80",
783
+ },
784
+ ],
785
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.InitialAccFees",
786
+ name: "initialFees",
787
+ type: "tuple",
788
+ },
789
+ {
790
+ internalType: "uint256",
791
+ name: "pairIndex",
792
+ type: "uint256",
793
+ },
794
+ {
795
+ internalType: "bool",
796
+ name: "long",
797
+ type: "bool",
798
+ },
799
+ {
800
+ internalType: "uint256",
801
+ name: "currentBlock",
802
+ type: "uint256",
803
+ },
804
+ ],
805
+ name: "getPairGroupAccFeesDeltas",
806
+ outputs: [
807
+ {
808
+ internalType: "uint64",
809
+ name: "deltaGroup",
810
+ type: "uint64",
811
+ },
812
+ {
813
+ internalType: "uint64",
814
+ name: "deltaPair",
815
+ type: "uint64",
816
+ },
817
+ {
818
+ internalType: "bool",
819
+ name: "beforeTradeOpen",
820
+ type: "bool",
821
+ },
822
+ ],
823
+ stateMutability: "view",
824
+ type: "function",
825
+ },
826
+ {
827
+ inputs: [
828
+ {
829
+ internalType: "uint256",
830
+ name: "pairIndex",
831
+ type: "uint256",
832
+ },
833
+ ],
834
+ name: "getPairGroupIndex",
835
+ outputs: [
836
+ {
837
+ internalType: "uint16",
838
+ name: "groupIndex",
839
+ type: "uint16",
840
+ },
841
+ ],
842
+ stateMutability: "view",
843
+ type: "function",
844
+ },
845
+ {
846
+ inputs: [
847
+ {
848
+ internalType: "uint256",
849
+ name: "pairIndex",
850
+ type: "uint256",
851
+ },
852
+ ],
853
+ name: "getPairOpenInterestDai",
854
+ outputs: [
855
+ {
856
+ internalType: "uint256",
857
+ name: "",
858
+ type: "uint256",
859
+ },
860
+ {
861
+ internalType: "uint256",
862
+ name: "",
863
+ type: "uint256",
864
+ },
865
+ ],
866
+ stateMutability: "view",
867
+ type: "function",
868
+ },
869
+ {
870
+ inputs: [
871
+ {
872
+ internalType: "uint256",
873
+ name: "pairIndex",
874
+ type: "uint256",
875
+ },
876
+ {
877
+ internalType: "uint256",
878
+ name: "currentBlock",
879
+ type: "uint256",
880
+ },
881
+ {
882
+ internalType: "bool",
883
+ name: "long",
884
+ type: "bool",
885
+ },
886
+ ],
887
+ name: "getPairPendingAccFee",
888
+ outputs: [
889
+ {
890
+ internalType: "uint64",
891
+ name: "accFee",
892
+ type: "uint64",
893
+ },
894
+ ],
895
+ stateMutability: "view",
896
+ type: "function",
897
+ },
898
+ {
899
+ inputs: [
900
+ {
901
+ internalType: "uint256",
902
+ name: "pairIndex",
903
+ type: "uint256",
904
+ },
905
+ {
906
+ internalType: "uint256",
907
+ name: "currentBlock",
908
+ type: "uint256",
909
+ },
910
+ ],
911
+ name: "getPairPendingAccFees",
912
+ outputs: [
913
+ {
914
+ internalType: "uint64",
915
+ name: "accFeeLong",
916
+ type: "uint64",
917
+ },
918
+ {
919
+ internalType: "uint64",
920
+ name: "accFeeShort",
921
+ type: "uint64",
922
+ },
923
+ {
924
+ internalType: "int256",
925
+ name: "pairAccFeeDelta",
926
+ type: "int256",
927
+ },
928
+ ],
929
+ stateMutability: "view",
930
+ type: "function",
931
+ },
932
+ {
933
+ inputs: [
934
+ {
935
+ internalType: "uint256",
936
+ name: "pairIndex",
937
+ type: "uint256",
938
+ },
939
+ {
940
+ internalType: "uint256",
941
+ name: "currentBlock",
942
+ type: "uint256",
943
+ },
944
+ ],
945
+ name: "getPairWeightedVaultMarketCapSinceLastUpdate",
946
+ outputs: [
947
+ {
948
+ internalType: "uint256",
949
+ name: "",
950
+ type: "uint256",
951
+ },
952
+ ],
953
+ stateMutability: "view",
954
+ type: "function",
955
+ },
956
+ {
957
+ inputs: [
958
+ {
959
+ internalType: "uint256",
960
+ name: "currentBlock",
961
+ type: "uint256",
962
+ },
963
+ ],
964
+ name: "getPendingAccBlockWeightedMarketCap",
965
+ outputs: [
966
+ {
967
+ internalType: "uint256",
968
+ name: "",
969
+ type: "uint256",
970
+ },
971
+ ],
972
+ stateMutability: "view",
973
+ type: "function",
974
+ },
975
+ {
976
+ inputs: [
977
+ {
978
+ internalType: "uint64",
979
+ name: "accFeeLong",
980
+ type: "uint64",
981
+ },
982
+ {
983
+ internalType: "uint64",
984
+ name: "accFeeShort",
985
+ type: "uint64",
986
+ },
987
+ {
988
+ internalType: "uint256",
989
+ name: "oiLong",
990
+ type: "uint256",
991
+ },
992
+ {
993
+ internalType: "uint256",
994
+ name: "oiShort",
995
+ type: "uint256",
996
+ },
997
+ {
998
+ internalType: "uint32",
999
+ name: "feePerBlock",
1000
+ type: "uint32",
1001
+ },
1002
+ {
1003
+ internalType: "uint256",
1004
+ name: "currentBlock",
1005
+ type: "uint256",
1006
+ },
1007
+ {
1008
+ internalType: "uint256",
1009
+ name: "accLastUpdatedBlock",
1010
+ type: "uint256",
1011
+ },
1012
+ {
1013
+ internalType: "uint256",
1014
+ name: "vaultMarketCap",
1015
+ type: "uint256",
1016
+ },
1017
+ ],
1018
+ name: "getPendingAccFees",
1019
+ outputs: [
1020
+ {
1021
+ internalType: "uint64",
1022
+ name: "newAccFeeLong",
1023
+ type: "uint64",
1024
+ },
1025
+ {
1026
+ internalType: "uint64",
1027
+ name: "newAccFeeShort",
1028
+ type: "uint64",
1029
+ },
1030
+ {
1031
+ internalType: "int256",
1032
+ name: "delta",
1033
+ type: "int256",
1034
+ },
1035
+ ],
1036
+ stateMutability: "pure",
1037
+ type: "function",
1038
+ },
1039
+ {
1040
+ inputs: [
1041
+ {
1042
+ components: [
1043
+ {
1044
+ internalType: "address",
1045
+ name: "trader",
1046
+ type: "address",
1047
+ },
1048
+ {
1049
+ internalType: "uint256",
1050
+ name: "pairIndex",
1051
+ type: "uint256",
1052
+ },
1053
+ {
1054
+ internalType: "uint256",
1055
+ name: "index",
1056
+ type: "uint256",
1057
+ },
1058
+ {
1059
+ internalType: "bool",
1060
+ name: "long",
1061
+ type: "bool",
1062
+ },
1063
+ {
1064
+ internalType: "uint256",
1065
+ name: "collateral",
1066
+ type: "uint256",
1067
+ },
1068
+ {
1069
+ internalType: "uint256",
1070
+ name: "leverage",
1071
+ type: "uint256",
1072
+ },
1073
+ ],
1074
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.BorrowingFeeInput",
1075
+ name: "input",
1076
+ type: "tuple",
1077
+ },
1078
+ ],
1079
+ name: "getTradeBorrowingFee",
1080
+ outputs: [
1081
+ {
1082
+ internalType: "uint256",
1083
+ name: "fee",
1084
+ type: "uint256",
1085
+ },
1086
+ ],
1087
+ stateMutability: "view",
1088
+ type: "function",
1089
+ },
1090
+ {
1091
+ inputs: [
1092
+ {
1093
+ internalType: "address",
1094
+ name: "trader",
1095
+ type: "address",
1096
+ },
1097
+ {
1098
+ internalType: "uint256",
1099
+ name: "pairIndex",
1100
+ type: "uint256",
1101
+ },
1102
+ {
1103
+ internalType: "uint256",
1104
+ name: "index",
1105
+ type: "uint256",
1106
+ },
1107
+ ],
1108
+ name: "getTradeInitialAccFees",
1109
+ outputs: [
1110
+ {
1111
+ components: [
1112
+ {
1113
+ internalType: "uint64",
1114
+ name: "accPairFee",
1115
+ type: "uint64",
1116
+ },
1117
+ {
1118
+ internalType: "uint64",
1119
+ name: "accGroupFee",
1120
+ type: "uint64",
1121
+ },
1122
+ {
1123
+ internalType: "uint48",
1124
+ name: "block",
1125
+ type: "uint48",
1126
+ },
1127
+ {
1128
+ internalType: "uint80",
1129
+ name: "_placeholder",
1130
+ type: "uint80",
1131
+ },
1132
+ ],
1133
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.InitialAccFees",
1134
+ name: "borrowingFees",
1135
+ type: "tuple",
1136
+ },
1137
+ {
1138
+ components: [
1139
+ {
1140
+ internalType: "uint256",
1141
+ name: "rollover",
1142
+ type: "uint256",
1143
+ },
1144
+ {
1145
+ internalType: "int256",
1146
+ name: "funding",
1147
+ type: "int256",
1148
+ },
1149
+ {
1150
+ internalType: "bool",
1151
+ name: "openedAfterUpdate",
1152
+ type: "bool",
1153
+ },
1154
+ ],
1155
+ internalType: "struct GNSPairInfosInterfaceV6.TradeInitialAccFees",
1156
+ name: "otherFees",
1157
+ type: "tuple",
1158
+ },
1159
+ ],
1160
+ stateMutability: "view",
1161
+ type: "function",
1162
+ },
1163
+ {
1164
+ inputs: [
1165
+ {
1166
+ components: [
1167
+ {
1168
+ internalType: "address",
1169
+ name: "trader",
1170
+ type: "address",
1171
+ },
1172
+ {
1173
+ internalType: "uint256",
1174
+ name: "pairIndex",
1175
+ type: "uint256",
1176
+ },
1177
+ {
1178
+ internalType: "uint256",
1179
+ name: "index",
1180
+ type: "uint256",
1181
+ },
1182
+ {
1183
+ internalType: "uint256",
1184
+ name: "openPrice",
1185
+ type: "uint256",
1186
+ },
1187
+ {
1188
+ internalType: "bool",
1189
+ name: "long",
1190
+ type: "bool",
1191
+ },
1192
+ {
1193
+ internalType: "uint256",
1194
+ name: "collateral",
1195
+ type: "uint256",
1196
+ },
1197
+ {
1198
+ internalType: "uint256",
1199
+ name: "leverage",
1200
+ type: "uint256",
1201
+ },
1202
+ ],
1203
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.LiqPriceInput",
1204
+ name: "input",
1205
+ type: "tuple",
1206
+ },
1207
+ ],
1208
+ name: "getTradeLiquidationPrice",
1209
+ outputs: [
1210
+ {
1211
+ internalType: "uint256",
1212
+ name: "",
1213
+ type: "uint256",
1214
+ },
1215
+ ],
1216
+ stateMutability: "view",
1217
+ type: "function",
1218
+ },
1219
+ {
1220
+ inputs: [
1221
+ {
1222
+ internalType: "uint256",
1223
+ name: "accBlockWeightedMarketCap",
1224
+ type: "uint256",
1225
+ },
1226
+ {
1227
+ internalType: "uint256",
1228
+ name: "lastAccBlockWeightedMarketCap",
1229
+ type: "uint256",
1230
+ },
1231
+ {
1232
+ internalType: "uint256",
1233
+ name: "blockDelta",
1234
+ type: "uint256",
1235
+ },
1236
+ ],
1237
+ name: "getWeightedVaultMarketCap",
1238
+ outputs: [
1239
+ {
1240
+ internalType: "uint256",
1241
+ name: "",
1242
+ type: "uint256",
1243
+ },
1244
+ ],
1245
+ stateMutability: "pure",
1246
+ type: "function",
1247
+ },
1248
+ {
1249
+ inputs: [
1250
+ {
1251
+ internalType: "uint16",
1252
+ name: "",
1253
+ type: "uint16",
1254
+ },
1255
+ ],
1256
+ name: "groups",
1257
+ outputs: [
1258
+ {
1259
+ internalType: "uint112",
1260
+ name: "oiLong",
1261
+ type: "uint112",
1262
+ },
1263
+ {
1264
+ internalType: "uint112",
1265
+ name: "oiShort",
1266
+ type: "uint112",
1267
+ },
1268
+ {
1269
+ internalType: "uint32",
1270
+ name: "feePerBlock",
1271
+ type: "uint32",
1272
+ },
1273
+ {
1274
+ internalType: "uint64",
1275
+ name: "accFeeLong",
1276
+ type: "uint64",
1277
+ },
1278
+ {
1279
+ internalType: "uint64",
1280
+ name: "accFeeShort",
1281
+ type: "uint64",
1282
+ },
1283
+ {
1284
+ internalType: "uint48",
1285
+ name: "accLastUpdatedBlock",
1286
+ type: "uint48",
1287
+ },
1288
+ {
1289
+ internalType: "uint80",
1290
+ name: "maxOi",
1291
+ type: "uint80",
1292
+ },
1293
+ {
1294
+ internalType: "uint256",
1295
+ name: "lastAccBlockWeightedMarketCap",
1296
+ type: "uint256",
1297
+ },
1298
+ ],
1299
+ stateMutability: "view",
1300
+ type: "function",
1301
+ },
1302
+ {
1303
+ inputs: [
1304
+ {
1305
+ internalType: "address",
1306
+ name: "trader",
1307
+ type: "address",
1308
+ },
1309
+ {
1310
+ internalType: "uint256",
1311
+ name: "pairIndex",
1312
+ type: "uint256",
1313
+ },
1314
+ {
1315
+ internalType: "uint256",
1316
+ name: "index",
1317
+ type: "uint256",
1318
+ },
1319
+ {
1320
+ internalType: "uint256",
1321
+ name: "positionSizeDai",
1322
+ type: "uint256",
1323
+ },
1324
+ {
1325
+ internalType: "bool",
1326
+ name: "open",
1327
+ type: "bool",
1328
+ },
1329
+ {
1330
+ internalType: "bool",
1331
+ name: "long",
1332
+ type: "bool",
1333
+ },
1334
+ ],
1335
+ name: "handleTradeAction",
1336
+ outputs: [],
1337
+ stateMutability: "nonpayable",
1338
+ type: "function",
1339
+ },
1340
+ {
1341
+ inputs: [
1342
+ {
1343
+ internalType: "address",
1344
+ name: "",
1345
+ type: "address",
1346
+ },
1347
+ {
1348
+ internalType: "uint256",
1349
+ name: "",
1350
+ type: "uint256",
1351
+ },
1352
+ {
1353
+ internalType: "uint256",
1354
+ name: "",
1355
+ type: "uint256",
1356
+ },
1357
+ ],
1358
+ name: "initialAccFees",
1359
+ outputs: [
1360
+ {
1361
+ internalType: "uint64",
1362
+ name: "accPairFee",
1363
+ type: "uint64",
1364
+ },
1365
+ {
1366
+ internalType: "uint64",
1367
+ name: "accGroupFee",
1368
+ type: "uint64",
1369
+ },
1370
+ {
1371
+ internalType: "uint48",
1372
+ name: "block",
1373
+ type: "uint48",
1374
+ },
1375
+ {
1376
+ internalType: "uint80",
1377
+ name: "_placeholder",
1378
+ type: "uint80",
1379
+ },
1380
+ ],
1381
+ stateMutability: "view",
1382
+ type: "function",
1383
+ },
1384
+ {
1385
+ inputs: [
1386
+ {
1387
+ internalType: "contract StorageInterfaceV5",
1388
+ name: "_storageT",
1389
+ type: "address",
1390
+ },
1391
+ {
1392
+ internalType: "contract GNSPairInfosInterfaceV6",
1393
+ name: "_pairInfos",
1394
+ type: "address",
1395
+ },
1396
+ ],
1397
+ name: "initialize",
1398
+ outputs: [],
1399
+ stateMutability: "nonpayable",
1400
+ type: "function",
1401
+ },
1402
+ {
1403
+ inputs: [],
1404
+ name: "pairInfos",
1405
+ outputs: [
1406
+ {
1407
+ internalType: "contract GNSPairInfosInterfaceV6",
1408
+ name: "",
1409
+ type: "address",
1410
+ },
1411
+ ],
1412
+ stateMutability: "view",
1413
+ type: "function",
1414
+ },
1415
+ {
1416
+ inputs: [
1417
+ {
1418
+ internalType: "uint256",
1419
+ name: "",
1420
+ type: "uint256",
1421
+ },
1422
+ ],
1423
+ name: "pairs",
1424
+ outputs: [
1425
+ {
1426
+ internalType: "uint32",
1427
+ name: "feePerBlock",
1428
+ type: "uint32",
1429
+ },
1430
+ {
1431
+ internalType: "uint64",
1432
+ name: "accFeeLong",
1433
+ type: "uint64",
1434
+ },
1435
+ {
1436
+ internalType: "uint64",
1437
+ name: "accFeeShort",
1438
+ type: "uint64",
1439
+ },
1440
+ {
1441
+ internalType: "uint48",
1442
+ name: "accLastUpdatedBlock",
1443
+ type: "uint48",
1444
+ },
1445
+ {
1446
+ internalType: "uint48",
1447
+ name: "_placeholder",
1448
+ type: "uint48",
1449
+ },
1450
+ {
1451
+ internalType: "uint256",
1452
+ name: "lastAccBlockWeightedMarketCap",
1453
+ type: "uint256",
1454
+ },
1455
+ ],
1456
+ stateMutability: "view",
1457
+ type: "function",
1458
+ },
1459
+ {
1460
+ inputs: [
1461
+ {
1462
+ internalType: "uint16",
1463
+ name: "groupIndex",
1464
+ type: "uint16",
1465
+ },
1466
+ {
1467
+ components: [
1468
+ {
1469
+ internalType: "uint32",
1470
+ name: "feePerBlock",
1471
+ type: "uint32",
1472
+ },
1473
+ {
1474
+ internalType: "uint80",
1475
+ name: "maxOi",
1476
+ type: "uint80",
1477
+ },
1478
+ ],
1479
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.GroupParams",
1480
+ name: "value",
1481
+ type: "tuple",
1482
+ },
1483
+ ],
1484
+ name: "setGroupParams",
1485
+ outputs: [],
1486
+ stateMutability: "nonpayable",
1487
+ type: "function",
1488
+ },
1489
+ {
1490
+ inputs: [
1491
+ {
1492
+ internalType: "uint16[]",
1493
+ name: "indices",
1494
+ type: "uint16[]",
1495
+ },
1496
+ {
1497
+ components: [
1498
+ {
1499
+ internalType: "uint32",
1500
+ name: "feePerBlock",
1501
+ type: "uint32",
1502
+ },
1503
+ {
1504
+ internalType: "uint80",
1505
+ name: "maxOi",
1506
+ type: "uint80",
1507
+ },
1508
+ ],
1509
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.GroupParams[]",
1510
+ name: "values",
1511
+ type: "tuple[]",
1512
+ },
1513
+ ],
1514
+ name: "setGroupParamsArray",
1515
+ outputs: [],
1516
+ stateMutability: "nonpayable",
1517
+ type: "function",
1518
+ },
1519
+ {
1520
+ inputs: [
1521
+ {
1522
+ internalType: "uint256",
1523
+ name: "pairIndex",
1524
+ type: "uint256",
1525
+ },
1526
+ {
1527
+ components: [
1528
+ {
1529
+ internalType: "uint16",
1530
+ name: "groupIndex",
1531
+ type: "uint16",
1532
+ },
1533
+ {
1534
+ internalType: "uint32",
1535
+ name: "feePerBlock",
1536
+ type: "uint32",
1537
+ },
1538
+ ],
1539
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.PairParams",
1540
+ name: "value",
1541
+ type: "tuple",
1542
+ },
1543
+ ],
1544
+ name: "setPairParams",
1545
+ outputs: [],
1546
+ stateMutability: "nonpayable",
1547
+ type: "function",
1548
+ },
1549
+ {
1550
+ inputs: [
1551
+ {
1552
+ internalType: "uint256[]",
1553
+ name: "indices",
1554
+ type: "uint256[]",
1555
+ },
1556
+ {
1557
+ components: [
1558
+ {
1559
+ internalType: "uint16",
1560
+ name: "groupIndex",
1561
+ type: "uint16",
1562
+ },
1563
+ {
1564
+ internalType: "uint32",
1565
+ name: "feePerBlock",
1566
+ type: "uint32",
1567
+ },
1568
+ ],
1569
+ internalType: "struct GNSBorrowingFeesInterfaceV6_3_2.PairParams[]",
1570
+ name: "values",
1571
+ type: "tuple[]",
1572
+ },
1573
+ ],
1574
+ name: "setPairParamsArray",
1575
+ outputs: [],
1576
+ stateMutability: "nonpayable",
1577
+ type: "function",
1578
+ },
1579
+ {
1580
+ inputs: [],
1581
+ name: "storageT",
1582
+ outputs: [
1583
+ {
1584
+ internalType: "contract StorageInterfaceV5",
1585
+ name: "",
1586
+ type: "address",
1587
+ },
1588
+ ],
1589
+ stateMutability: "view",
1590
+ type: "function",
1591
+ },
1592
+ {
1593
+ inputs: [
1594
+ {
1595
+ internalType: "uint256",
1596
+ name: "pairIndex",
1597
+ type: "uint256",
1598
+ },
1599
+ {
1600
+ internalType: "bool",
1601
+ name: "long",
1602
+ type: "bool",
1603
+ },
1604
+ {
1605
+ internalType: "uint256",
1606
+ name: "positionSizeDai",
1607
+ type: "uint256",
1608
+ },
1609
+ ],
1610
+ name: "withinMaxGroupOi",
1611
+ outputs: [
1612
+ {
1613
+ internalType: "bool",
1614
+ name: "",
1615
+ type: "bool",
1616
+ },
1617
+ ],
1618
+ stateMutability: "view",
1619
+ type: "function",
1620
+ },
1621
+ ];
1622
+ const _bytecode = "0x608060405234801561001057600080fd5b5061455f806100206000396000f3fe608060405234801561001057600080fd5b50600436106101a55760003560e01c80638ee1caa7116100ef578063bdf391cc11610092578063bdf391cc146106b1578063ca90cda5146106d1578063ce67edfb146106e4578063cee4fa5a146106f7578063d62745051461070a578063e4d668671461072d578063f800ece914610740578063ff933fc41461075557600080fd5b80638ee1caa7146104cd5780638f694238146104e057806390895ff114610506578063979b0895146105af5780639d1798cb146105c2578063a4e95196146105d5578063b91ac788146105e8578063bcb788711461069e57600080fd5b80633d17a5d0116101575780633d17a5d014610391578063485cc955146103a65780634c67cfa0146103b9578063706faf3a146103e15780637b64112b146103f45780637cbd3c9814610407578063826616b514610481578063876ffd97146104ba57600080fd5b80630f8df7e0146101aa5780631346b0ff146101ea57806316fff074146102155780631ab5911a1461022e57806322005202146102595780632d28a817146102795780633979324d1461029a575b600080fd5b6101bd6101b83660046138fa565b610775565b604080516001600160401b0394851681529390921660208401521515908201526060015b60405180910390f35b6001546101fd906001600160a01b031681565b6040516001600160a01b0390911681526020016101e1565b6000546101fd906201000090046001600160a01b031681565b61024161023c366004613a8a565b6108f5565b6040516001600160401b0390911681526020016101e1565b61026c610267366004613b15565b610920565b6040516101e19190613bdc565b61028c610287366004613c40565b610a89565b6040519081526020016101e1565b6103266102a8366004613cca565b60026020819052600091825260409091208054600182015491909201546001600160701b0380841693600160701b810490911692600160e01b90910463ffffffff16916001600160401b0380831692600160401b810490911691600160801b820465ffffffffffff1691600160b01b90046001600160501b03169088565b604080516001600160701b03998a16815298909716602089015263ffffffff909516958701959095526001600160401b0392831660608701529116608085015265ffffffffffff1660a08401526001600160501b0390911660c083015260e0820152610100016101e1565b6103a461039f366004613cfd565b610d99565b005b6103a46103b4366004613d31565b610e57565b6103cc6103c7366004613d6a565b610ffe565b604080519283526020830191909152016101e1565b61028c6103ef366004613d83565b6110fb565b610241610402366004613d95565b611397565b61041a610415366004613dc3565b6113a6565b6040805183516001600160401b039081168252602080860151909116818301528483015165ffffffffffff16828401526060948501516001600160501b031694820194909452825160808201529282015160a08401520151151560c082015260e0016101e1565b61049461048f366004613e0c565b6114db565b604080516001600160401b039485168152939092166020840152908201526060016101e1565b61028c6104c8366004613e7e565b6115ce565b6104946104db366004613e7e565b611752565b6104f36104ee366004613d6a565b611902565b60405161ffff90911681526020016101e1565b61056e610514366004613dc3565b60046020908152600093845260408085208252928452828420905282529020546001600160401b0380821691600160401b810490911690600160801b810465ffffffffffff1690600160b01b90046001600160501b031684565b604080516001600160401b03958616815294909316602085015265ffffffffffff909116918301919091526001600160501b031660608201526080016101e1565b61028c6105bd366004613d6a565b611a25565b6103a46105d0366004613ea0565b611aca565b61028c6105e3366004613ec4565b611b7b565b6106526105f6366004613d6a565b6003602052600090815260409020600181015460029091015463ffffffff8216916001600160401b03600160201b8204811692600160601b83049091169165ffffffffffff600160a01b8204811692600160d01b909204169086565b6040805163ffffffff9790971687526001600160401b039586166020880152939094169285019290925265ffffffffffff908116606085015216608083015260a082015260c0016101e1565b6104946106ac366004613ec4565b611c49565b6106c46106bf366004613d6a565b611d93565b6040516101e19190614025565b6103a46106df36600461407c565b611ef3565b6103a46106f23660046140e7565b61201c565b6103a461070536600461407c565b61236e565b61071d61071836600461414e565b612481565b60405190151581526020016101e1565b61028c61073b366004614186565b6125a7565b6107486125e6565b6040516101e191906141b2565b610768610763366004613cca565b612905565b6040516101e19190614214565b600080600080888a8151811061078d5761078d614223565b60200260200101519050876040015165ffffffffffff16816020015165ffffffffffff16109150600189516107c2919061424f565b8a036107e95780516107d59086886108f5565b93506107e2878688611397565b9250610879565b6000896107f78c6001614262565b8151811061080757610807614223565b602002602001015190508280156108365750886040015165ffffffffffff16816020015165ffffffffffff1611155b15610849576000809450945050506108e9565b86610858578060a0015161085e565b80608001515b94508661086f578060e00151610875565b8060c001515b9350505b81156108a457602088015161088e9085614275565b885190945061089d9084614275565b92506108e7565b856108b35780606001516108b9565b80604001515b6108c39085614275565b9350856108d4578060e001516108da565b8060c001515b6108e49084614275565b92505b505b96509650969350505050565b60008060006109048686611c49565b5091509150836109145780610916565b815b9695505050505050565b60606000826001600160401b0381111561093c5761093c613795565b60405190808252806020026020018201604052801561097557816020015b610962613715565b81526020019060019003908161095a5790505b5090508260005b81811015610a7d576002600087878481811061099a5761099a614223565b90506020020160208101906109af9190613cca565b61ffff168152602080820192909252604090810160002081516101008101835281546001600160701b038082168352600160701b82041694820194909452600160e01b90930463ffffffff169183019190915260018101546001600160401b038082166060850152600160401b8204166080840152600160801b810465ffffffffffff1660a0840152600160b01b90046001600160501b031660c08301526002015460e08201528351849083908110610a6a57610a6a614223565b602090810291909101015260010161097c565b50909150505b92915050565b80516001600160a01b03166000908152600460209081526040808320828501805185529083528184208286015185528352818420825160808101845290546001600160401b038082168352600160401b82041682860152600160801b810465ffffffffffff1682850152600160b01b90046001600160501b0316606082015290518452600383528184208054835181860281018601909452808452919385939290849084015b82821015610be0576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e086015292049091166101008301529083529092019101610b2f565b5050505090506000610bf06129b6565b6040805161012081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101829052610100810191909152909150825115610c615782600081518110610c5657610c56614223565b602002602001015190505b82511580610c865750836040015165ffffffffffff16816020015165ffffffffffff16115b15610cda578351835115610cb1578660600151610ca7578160e00151610cc4565b8160c00151610cc4565b610cc48760200151848960600151611397565b610cce9190614275565b6001600160401b031694505b82515b8015610d5d5760008080610d07610cf560018661424f565b888a8d602001518e606001518b610775565b925092509250816001600160401b0316836001600160401b031611610d2c5781610d2e565b825b610d41906001600160401b03168a614262565b98508015610d5157505050610d5d565b50505060001901610cdd565b5060646402540be400868860a001518960800151610d7b9190614295565b610d859190614295565b610d8f91906142c2565b61091691906142c2565b600160009054906101000a90046001600160a01b03166001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015610dec573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1091906142d6565b6001600160a01b0316336001600160a01b031614610e495760405162461bcd60e51b8152600401610e40906142f3565b60405180910390fd5b610e538282612a3c565b5050565b600054610100900460ff1615808015610e775750600054600160ff909116105b80610e915750303b158015610e91575060005460ff166001145b610ef45760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610e40565b6000805460ff191660011790558015610f17576000805461ff0019166101001790555b6001600160a01b03831615801590610f3757506001600160a01b03821615155b610f725760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b6044820152606401610e40565b6000805462010000600160b01b031916620100006001600160a01b038681169190910291909117909155600180546001600160a01b0319169184169190911790558015610ff9576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b600080546040516328daca2160e01b8152600481018490526024810183905282916201000090046001600160a01b0316906328daca2190604401602060405180830381865afa158015611055573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110799190614319565b6000546040516328daca2160e01b81526004810186905260016024820152620100009091046001600160a01b0316906328daca2190604401602060405180830381865afa1580156110ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f29190614319565b91509150915091565b6001546000906001600160a01b0316636bcbe860606084013561112460a0860160808701614332565b8560a001358660c0013561119f6040518060c001604052808a600001602081019061114f919061434f565b6001600160a01b0316815260208b810135908201526040808c01359082015260600161118160a08c0160808d01614332565b151581526020018a60a0013581526020018a60c00135815250610a89565b6001546001600160a01b03166358f796bc6111bd60208c018c61434f565b604080516001600160e01b031960e085901b1681526001600160a01b03909216600483015260208d013560248301528c0135604482015260a08c01356064820152608401602060405180830381865afa15801561121e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112429190614319565b61124c9190614262565b6001546001600160a01b031663f6c50efe61126a60208c018c61434f565b8b602001358c604001358d60800160208101906112879190614332565b6040516001600160e01b031960e087901b1681526001600160a01b039094166004850152602484019290925260448301521515606482015260a08c0135608482015260c08c013560a482015260c401602060405180830381865afa1580156112f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113179190614319565b6040516001600160e01b031960e089901b1681526004810196909652931515602486015260448501929092526064840152608483015260a482015260c4015b602060405180830381865afa158015611373573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a839190614319565b60008060006109048686611752565b604080516080810182526000808252602080830182905282840182905260608084018390528451908101855282815290810182905292830152906001600160a01b0385811660008181526004602081815260408084208a85528252808420898552825292839020835160808101855290546001600160401b038082168352600160401b82041692820192909252600160801b820465ffffffffffff1681850152600160b01b9091046001600160501b031660608201526001549251632f6ac02760e11b815291820193909352602481018890526044810187905291945090911690635ed5804e90606401606060405180830381865afa1580156114ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d1919061436c565b9050935093915050565b60008060008486101561151e5760405162461bcd60e51b815260206004820152600b60248201526a212627a1a5afa7a92222a960a91b6044820152606401610e40565b83611529868861424f565b63ffffffff891661153a8b8d6143cd565b61154491906143ed565b61154e91906143ed565b611558919061441d565b905060008082121561158657611570826000196143ed565b8c9450905061157f818c61444b565b9250611598565b5080611592818d61444b565b93508a92505b6001600160401b038111156115bf5760405162461bcd60e51b8152600401610e409061446b565b50985098509895505050505050565b6000828152600360209081526040808320815181546101009481028201850190935260e08101838152859491938492849190879085015b828210156116b6576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e086015292049091166101008301529083529092019101611605565b50505090825250600182015463ffffffff811660208301526001600160401b03600160201b820481166040840152600160601b820416606083015265ffffffffffff600160a01b820481166080840152600160d01b9091041660a082015260029091015460c090910152905061174a61172e84611a25565b60c0830151608084015161073b9065ffffffffffff168761424f565b949350505050565b60008060008061176286866115ce565b6000878152600360209081526040808320815181546101009481028201850190935260e081018381529596509394909284928491879085015b8282101561184c576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e08601529204909116610100830152908352909201910161179b565b50505090825250600182015463ffffffff811660208301526001600160401b03600160201b820481166040840152600160601b820416606083015265ffffffffffff600160a01b820481166080840152600160d01b9091041660a082015260029091015460c09091015290506000806118c489610ffe565b915091506118f083604001518460600151848487602001518d896080015165ffffffffffff168b6114db565b919b909a509098509650505050505050565b600081815260036020908152604080832080548251818502810185019093528083528493849084015b828210156119dc576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e08601529204909116610100830152908352909201910161192b565b5050505090508051600014611a1b5780600182516119fa919061424f565b81518110611a0a57611a0a614223565b602002602001015160000151611a1e565b60005b9392505050565b60008060029054906101000a90046001600160a01b03166001600160a01b031663fbfa77cf6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a9d91906142d6565b6001600160a01b031663979b0895836040518263ffffffff1660e01b815260040161135691815260200190565b600160009054906101000a90046001600160a01b03166001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b1d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4191906142d6565b6001600160a01b0316336001600160a01b031614611b715760405162461bcd60e51b8152600401610e40906142f3565b610e538282612b8d565b61ffff8216600090815260026020818152604080842081516101008101835281546001600160701b038082168352600160701b82041694820194909452600160e01b90930463ffffffff169183019190915260018101546001600160401b038082166060850152600160401b8204166080840152600160801b810465ffffffffffff1660a0840152600160b01b90046001600160501b031660c08301529091015460e082015261174a611c2d84611a25565b60e083015160a084015161073b9065ffffffffffff168761424f565b600080600080611c598686611b7b565b61ffff871660009081526002602081815260409283902083516101008101855281546001600160701b03808216808452600160701b830490911694830194909452600160e01b900463ffffffff169481019490945260018101546001600160401b0380821660608701819052600160401b830490911660808701819052600160801b830465ffffffffffff1660a0880152600160b01b9092046001600160501b031660c0870152919093015460e08501529394509192611d83929091906402540be40090611d2f90670de0b6b3a7640000614295565b611d3991906142c2565b6402540be40085602001516001600160701b0316670de0b6b3a7640000611d609190614295565b611d6a91906142c2565b85604001518b8760a0015165ffffffffffff16896114db565b9199909850909650945050505050565b611d9b613759565b6000828152600360209081526040808320815181546101009481028201850190935260e08101838152909491938593919285929185015b82821015611e83576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e086015292049091166101008301529083529092019101611dd2565b50505090825250600182015463ffffffff811660208301526001600160401b03600160201b820481166040840152600160601b820416606083015265ffffffffffff600160a01b820481166080840152600160d01b9091041660a082015260029091015460c09091015292915050565b600160009054906101000a90046001600160a01b03166001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f6a91906142d6565b6001600160a01b0316336001600160a01b031614611f9a5760405162461bcd60e51b8152600401610e40906142f3565b82818114611fba5760405162461bcd60e51b8152600401610e409061448d565b60005b818110156120145761200c868683818110611fda57611fda614223565b9050602002016020810190611fef9190613cca565b85858481811061200157612001614223565b905060400201612a3c565b600101611fbd565b505050505050565b600060029054906101000a90046001600160a01b03166001600160a01b031662b127836040518163ffffffff1660e01b8152600401602060405180830381865afa15801561206e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061209291906142d6565b6001600160a01b0316336001600160a01b0316146120e35760405162461bcd60e51b815260206004820152600e60248201526d43414c4c4241434b535f4f4e4c5960901b6044820152606401610e40565b60006120ee86611902565b905060006120fa6129b6565b905060008061210989846132c5565b9150915060008061211a86866133e4565b9150915061212a86888a8c6134e9565b8715612300576000604051806080016040528089612148578561214a565b865b6001600160401b03168152602001896121635783612165565b845b6001600160401b0316815260200161217c886136e9565b65ffffffffffff16815260200160006001600160501b0316815250905080600460008f6001600160a01b03166001600160a01b0316815260200190815260200160002060008e815260200190815260200160002060008d815260200190815260200160002060008201518160000160006101000a8154816001600160401b0302191690836001600160401b0316021790555060208201518160000160086101000a8154816001600160401b0302191690836001600160401b0316021790555060408201518160000160106101000a81548165ffffffffffff021916908365ffffffffffff16021790555060608201518160000160166101000a8154816001600160501b0302191690836001600160501b031602179055509050508b8d6001600160a01b03167faa00ca5c6f282cb9f35953ecb0eaf8e39c95b7c8df114efac12162a85c085e608d846000015185602001516040516122f6939291909283526001600160401b03918216602084015216604082015260600190565b60405180910390a3505b8a8c6001600160a01b03167f66baa1848f5d4d14567e9bc527e5608778c86e512490d413cfafc9250327308f8c8b8b8e6040516123589493929190938452911515602084015215156040830152606082015260800190565b60405180910390a3505050505050505050505050565b600160009054906101000a90046001600160a01b03166001600160a01b031663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123e591906142d6565b6001600160a01b0316336001600160a01b0316146124155760405162461bcd60e51b8152600401610e40906142f3565b828181146124355760405162461bcd60e51b8152600401610e409061448d565b60005b818110156120145761247986868381811061245557612455614223565b9050602002013585858481811061246e5761246e614223565b905060400201612b8d565b600101612438565b6000806002600061249187611902565b61ffff168152602080820192909252604090810160002081516101008101835281546001600160701b038082168352600160701b82041694820194909452600160e01b90930463ffffffff169183019190915260018101546001600160401b038082166060850152600160401b8204166080840152600160801b810465ffffffffffff1660a0840152600160b01b90046001600160501b031660c0830181905260029091015460e0830152909150158061259e575060c08101516001600160501b0316670de0b6b3a764000061256c6402540be40086614295565b61257691906142c2565b85612585578260200151612588565b82515b6001600160701b031661259b9190614262565b11155b95945050505050565b60008082116125b757600161174a565b6125c1838561424f565b6125dc701d6329f1c35ca4bfabb9f561000000000084614295565b61174a91906142c2565b606060008060029054906101000a90046001600160a01b03166001600160a01b0316633078fff56040518163ffffffff1660e01b8152600401602060405180830381865afa15801561263c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061266091906142d6565b6001600160a01b03166335b03c176040518163ffffffff1660e01b8152600401602060405180830381865afa15801561269d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126c191906142d6565b6001600160a01b031663b81b2b716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127229190614319565b90506000816001600160401b0381111561273e5761273e613795565b60405190808252806020026020018201604052801561277757816020015b612764613759565b81526020019060019003908161275c5790505b50905060005b828110156128fe576000818152600360209081526040808320815181546101009481028201850190935260e08101838152909491938593919285929185015b8282101561286d576000848152602090819020604080516101208101825260028602909201805461ffff8116845265ffffffffffff62010000820416848601526001600160401b03600160401b808304821694860194909452600160801b80830482166060870152600160c01b928390048216608087015260019384015480831660a0880152948504821660c08701528404811660e0860152920490911661010083015290835290920191016127bc565b50505090825250600182015463ffffffff811660208301526001600160401b03600160201b820481166040840152600160601b820416606083015265ffffffffffff600160a01b820481166080840152600160d01b9091041660a082015260029091015460c09091015282518390839081106128eb576128eb614223565b602090810291909101015260010161277d565b5092915050565b61290d613715565b5061ffff1660009081526002602081815260409283902083516101008101855281546001600160701b038082168352600160701b82041693820193909352600160e01b90920463ffffffff169382019390935260018301546001600160401b038082166060840152600160401b8204166080830152600160801b810465ffffffffffff1660a0830152600160b01b90046001600160501b031660c082015291015460e082015290565b600061a4b14614806129ca575062066eed46145b15612a375760646001600160a01b031663a3b1b31d6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a0e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a329190614319565b905090565b504390565b60008261ffff1611612a7a5760405162461bcd60e51b8152602060048201526007602482015266047524f55505f360cc1b6044820152606401610e40565b612a8b82612a866129b6565b6133e4565b50612a9b905060208201826144b3565b61ffff8316600090815260026020908152604091829020805463ffffffff94909416600160e01b026001600160e01b0390941693909317909255612ae4919083019083016144ce565b61ffff8316600081815260026020908152604090912060010180546001600160501b0394909416600160b01b026001600160b01b0390941693909317909255907f88d808712bd68b7f7473d7173bcddf46451c2122e6b14ff487edb7384a063a0a90612b52908401846144b3565b612b6260408501602086016144ce565b6040805163ffffffff90931683526001600160501b0390911660208301520160405180910390a25050565b600082815260036020526040812090612ba584611902565b90506000612bb16129b6565b9050612bbd85826132c5565b505061ffff8216612bd16020860186613cca565b61ffff161461323757612be482826133e4565b50612bfd9050612bf76020860186613cca565b826133e4565b5050600080612c0b87610ffe565b91509150612c1d8460016000856134e9565b612c2a84600080846134e9565b612c43612c3a6020880188613cca565b600180856134e9565b612c5d612c536020880188613cca565b60006001846134e9565b6000600281612c6f60208a018a613cca565b61ffff1661ffff168152602001908152602001600020604051806101000160405290816000820160009054906101000a90046001600160701b03166001600160701b03166001600160701b0316815260200160008201600e9054906101000a90046001600160701b03166001600160701b03166001600160701b0316815260200160008201601c9054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016001820160009054906101000a90046001600160401b03166001600160401b03166001600160401b031681526020016001820160089054906101000a90046001600160401b03166001600160401b03166001600160401b031681526020016001820160109054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020016001820160169054906101000a90046001600160501b03166001600160501b03166001600160501b0316815260200160028201548152505090506000600260008761ffff1661ffff168152602001908152602001600020604051806101000160405290816000820160009054906101000a90046001600160701b03166001600160701b03166001600160701b0316815260200160008201600e9054906101000a90046001600160701b03166001600160701b03166001600160701b0316815260200160008201601c9054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016001820160009054906101000a90046001600160401b03166001600160401b03166001600160401b031681526020016001820160089054906101000a90046001600160401b03166001600160401b03166001600160401b031681526020016001820160109054906101000a900465ffffffffffff1665ffffffffffff1665ffffffffffff1681526020016001820160169054906101000a90046001600160501b03166001600160501b03166001600160501b031681526020016002820154815250509050866000016040518061012001604052808a6000016020810190612f6f9190613cca565b61ffff168152602001612f81886136e9565b65ffffffffffff16815260200184606001516001600160401b0316815260200184608001516001600160401b0316815260200183606001516001600160401b0316815260200183608001516001600160401b031681526020018960010160049054906101000a90046001600160401b03166001600160401b0316815260200189600101600c9054906101000a90046001600160401b03166001600160401b0316815260200160006001600160401b0316815250908060018154018082558091505060019003906000526020600020906002020160009091909190915060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a81548165ffffffffffff021916908365ffffffffffff16021790555060408201518160000160086101000a8154816001600160401b0302191690836001600160401b0316021790555060608201518160000160106101000a8154816001600160401b0302191690836001600160401b0316021790555060808201518160000160186101000a8154816001600160401b0302191690836001600160401b0316021790555060a08201518160010160006101000a8154816001600160401b0302191690836001600160401b0316021790555060c08201518160010160086101000a8154816001600160401b0302191690836001600160401b0316021790555060e08201518160010160106101000a8154816001600160401b0302191690836001600160401b031602179055506101008201518160010160186101000a8154816001600160401b0302191690836001600160401b0316021790555050508760000160208101906131fc9190613cca565b61ffff168661ffff168a7f5beb7d73e1c3cd532d47c9e896931df26d9be450a833bd5fe1ace6bf5690d46860405160405180910390a4505050505b61324760408501602086016144b3565b60018401805463ffffffff191663ffffffff929092169190911790556132706020850185613cca565b61ffff16857fb952776dd028b221fddb797daabb4b4fde763e8273080fec7183df71ab84507b6132a660408801602089016144b3565b60405163ffffffff909116815260200160405180910390a35050505050565b60008060006132d48585611752565b60008881526003602052604090206001810180546001600160401b03808716600160201b026bffffffffffffffff0000000019918716600160601b0291909116640100000000600160a01b031990921691909117179055929550909350915061333c856136e9565b8160010160146101000a81548165ffffffffffff021916908365ffffffffffff16021790555061336b85611a25565b600282018190556001820154604080518881526001600160401b03600160201b840481166020830152600160601b90930490921690820152606081019190915286907fdfb420060d958fae05b55542f1db8397c379c7b40461f5ccc47df0df8ecf0551906080015b60405180910390a250509250929050565b60008060006133f38585611c49565b61ffff881660009081526002602052604090206001810180546001600160801b031916600160401b6001600160401b038681169190910267ffffffffffffffff1916919091179086161790559295509093509150613450856136e9565b8160010160106101000a81548165ffffffffffff021916908365ffffffffffff16021790555061347f85611a25565b600282018190556001820154604080518881526001600160401b038084166020830152600160401b90930490921690820152606081019190915261ffff8716907f7672014c79d6eb7b66523664177345f0729875e37653757b1cc1f70ba0f15798906080016133d3565b61ffff84166000818152600260205260408120911561367c57670de0b6b3a764000061351a6402540be40085614295565b61352491906142c2565b92506001600160701b0383111561354d5760405162461bcd60e51b8152600401610e409061446b565b508184156135d7578361359a5781546001600160701b0380831691161161357e5781546001600160701b0316613580565b805b825461359591906001600160701b03166144e9565b6135b0565b81546135b09082906001600160701b0316614509565b82546dffffffffffffffffffffffffffff19166001600160701b039190911617825561367c565b836136315781546001600160701b03808316600160701b909204161161360e578154600160701b90046001600160701b0316613610565b805b825461362c9190600160701b90046001600160701b03166144e9565b61364e565b815461364e908290600160701b90046001600160701b0316614509565b82546001600160701b0391909116600160701b026dffffffffffffffffffffffffffff60701b199091161782555b8154604080516001600160701b0380851682528084166020830152600160701b90930490921690820152841515908615159061ffff8916907f946036ec838a96db6089510038e2de4a934fb985f2ba9ef85dd4166f622db2339060600160405180910390a4505050505050565b600065ffffffffffff8211156137115760405162461bcd60e51b8152600401610e409061446b565b5090565b6040805161010081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e081019190915290565b6040805160e081018252606080825260006020830181905292820183905281018290526080810182905260a0810182905260c081019190915290565b634e487b7160e01b600052604160045260246000fd5b60405161012081016001600160401b03811182821017156137ce576137ce613795565b60405290565b604051601f8201601f191681016001600160401b03811182821017156137fc576137fc613795565b604052919050565b803561ffff8116811461381657600080fd5b919050565b803565ffffffffffff8116811461381657600080fd5b80356001600160401b038116811461381657600080fd5b80356001600160501b038116811461381657600080fd5b60006080828403121561387157600080fd5b604051608081018181106001600160401b038211171561389357613893613795565b6040529050806138a283613831565b81526138b060208401613831565b60208201526138c16040840161381b565b60408201526138d260608401613848565b60608201525092915050565b80151581146138ec57600080fd5b50565b8035613816816138de565b60008060008060008061012080888a03121561391557600080fd5b873596506020808901356001600160401b038082111561393457600080fd5b818b0191508b601f83011261394857600080fd5b81358181111561395a5761395a613795565b613968848260051b016137d4565b818152848101925090850283018401908d82111561398557600080fd5b928401925b81841015613a4b5785848f0312156139a25760008081fd5b6139aa6137ab565b6139b385613804565b81526139c086860161381b565b8682015260406139d1818701613831565b9082015260606139e2868201613831565b9082015260806139f3868201613831565b9082015260a0613a04868201613831565b9082015260c0613a15868201613831565b9082015260e0613a26868201613831565b90820152610100613a38868201613831565b908201528352928501929184019161398a565b809a50505050505050613a61886040890161385f565b935060c08701359250613a7660e088016138ef565b915061010087013590509295509295509295565b600080600060608486031215613a9f57600080fd5b613aa884613804565b9250602084013591506040840135613abf816138de565b809150509250925092565b60008083601f840112613adc57600080fd5b5081356001600160401b03811115613af357600080fd5b6020830191508360208260051b8501011115613b0e57600080fd5b9250929050565b60008060208385031215613b2857600080fd5b82356001600160401b03811115613b3e57600080fd5b613b4a85828601613aca565b90969095509350505050565b6001600160701b038082511683528060208301511660208401525063ffffffff604082015116604083015260608101516001600160401b038082166060850152806080840151166080850152505065ffffffffffff60a08201511660a083015260c0810151613bd060c08401826001600160501b03169052565b5060e090810151910152565b6020808252825182820181905260009190848201906040850190845b81811015613c1f57613c0b838551613b56565b928401926101009290920191600101613bf8565b50909695505050505050565b6001600160a01b03811681146138ec57600080fd5b600060c08284031215613c5257600080fd5b60405160c081018181106001600160401b0382111715613c7457613c74613795565b6040528235613c8281613c2b565b8082525060208301356020820152604083013560408201526060830135613ca8816138de565b60608201526080838101359082015260a0928301359281019290925250919050565b600060208284031215613cdc57600080fd5b611a1e82613804565b600060408284031215613cf757600080fd5b50919050565b60008060608385031215613d1057600080fd5b613d1983613804565b9150613d288460208501613ce5565b90509250929050565b60008060408385031215613d4457600080fd5b8235613d4f81613c2b565b91506020830135613d5f81613c2b565b809150509250929050565b600060208284031215613d7c57600080fd5b5035919050565b600060e08284031215613cf757600080fd5b600080600060608486031215613daa57600080fd5b83359250602084013591506040840135613abf816138de565b600080600060608486031215613dd857600080fd5b8335613de381613c2b565b95602085013595506040909401359392505050565b803563ffffffff8116811461381657600080fd5b600080600080600080600080610100898b031215613e2957600080fd5b613e3289613831565b9750613e4060208a01613831565b96506040890135955060608901359450613e5c60808a01613df8565b979a969950949793969560a0850135955060c08501359460e001359350915050565b60008060408385031215613e9157600080fd5b50508035926020909101359150565b60008060608385031215613eb357600080fd5b82359150613d288460208501613ce5565b60008060408385031215613ed757600080fd5b613ee083613804565b946020939093013593505050565b805160e08084528151848201819052600092610100916020918201918388019190865b82811015613fa1578451805161ffff1685528281015165ffffffffffff16838601526040808201516001600160401b039081169187019190915260608083015182169087015260808083015182169087015260a08083015182169087015260c080830151821690870152888201518116898701529087015116868501529381019361012090930192600101613f11565b508781015163ffffffff1690890152506040808701516001600160401b039081169189019190915260608088015191821690890152935060808601519350613ff3608088018565ffffffffffff169052565b60a0860151935061400e60a088018565ffffffffffff169052565b60c086015160c08801528094505050505092915050565b602081526000611a1e6020830184613eee565b60008083601f84011261404a57600080fd5b5081356001600160401b0381111561406157600080fd5b6020830191508360208260061b8501011115613b0e57600080fd5b6000806000806040858703121561409257600080fd5b84356001600160401b03808211156140a957600080fd5b6140b588838901613aca565b909650945060208701359150808211156140ce57600080fd5b506140db87828801614038565b95989497509550505050565b60008060008060008060c0878903121561410057600080fd5b863561410b81613c2b565b95506020870135945060408701359350606087013592506080870135614130816138de565b915060a0870135614140816138de565b809150509295509295509295565b60008060006060848603121561416357600080fd5b833592506020840135614175816138de565b929592945050506040919091013590565b60008060006060848603121561419b57600080fd5b505081359360208301359350604090920135919050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561420757603f198886030184526141f5858351613eee565b945092850192908501906001016141d9565b5092979650505050505050565b6101008101610a838284613b56565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b81810381811115610a8357610a83614239565b80820180821115610a8357610a83614239565b6001600160401b038281168282160390808211156128fe576128fe614239565b8082028115828204841417610a8357610a83614239565b634e487b7160e01b600052601260045260246000fd5b6000826142d1576142d16142ac565b500490565b6000602082840312156142e857600080fd5b8151611a1e81613c2b565b6020808252600c908201526b4d414e414745525f4f4e4c5960a01b604082015260600190565b60006020828403121561432b57600080fd5b5051919050565b60006020828403121561434457600080fd5b8135611a1e816138de565b60006020828403121561436157600080fd5b8135611a1e81613c2b565b60006060828403121561437e57600080fd5b604051606081018181106001600160401b03821117156143a0576143a0613795565b8060405250825181526020830151602082015260408301516143c1816138de565b60408201529392505050565b81810360008312801583831316838312821617156128fe576128fe614239565b80820260008212600160ff1b8414161561440957614409614239565b8181058314821517610a8357610a83614239565b60008261442c5761442c6142ac565b600160ff1b82146000198414161561444657614446614239565b500590565b6001600160401b038181168382160190808211156128fe576128fe614239565b6020808252600890820152674f564552464c4f5760c01b604082015260600190565b6020808252600c908201526b0aea49e9c8ebe988a9c8ea8960a31b604082015260600190565b6000602082840312156144c557600080fd5b611a1e82613df8565b6000602082840312156144e057600080fd5b611a1e82613848565b6001600160701b038281168282160390808211156128fe576128fe614239565b6001600160701b038181168382160190808211156128fe576128fe61423956fea2646970667358221220455741ae1c097709f1a140a9bf7b2af337ce8f6034fa8f2aba6abd687682e4fa64736f6c63430008110033";
1623
+ const isSuperArgs = (xs) => xs.length > 1;
1624
+ class GNSBorrowingFeesV6_3_2__factory extends ethers_1.ContractFactory {
1625
+ constructor(...args) {
1626
+ if (isSuperArgs(args)) {
1627
+ super(...args);
1628
+ }
1629
+ else {
1630
+ super(_abi, _bytecode, args[0]);
1631
+ }
1632
+ }
1633
+ deploy(overrides) {
1634
+ return super.deploy(overrides || {});
1635
+ }
1636
+ getDeployTransaction(overrides) {
1637
+ return super.getDeployTransaction(overrides || {});
1638
+ }
1639
+ attach(address) {
1640
+ return super.attach(address);
1641
+ }
1642
+ connect(signer) {
1643
+ return super.connect(signer);
1644
+ }
1645
+ static createInterface() {
1646
+ return new ethers_1.utils.Interface(_abi);
1647
+ }
1648
+ static connect(address, signerOrProvider) {
1649
+ return new ethers_1.Contract(address, _abi, signerOrProvider);
1650
+ }
1651
+ }
1652
+ exports.GNSBorrowingFeesV6_3_2__factory = GNSBorrowingFeesV6_3_2__factory;
1653
+ GNSBorrowingFeesV6_3_2__factory.bytecode = _bytecode;
1654
+ GNSBorrowingFeesV6_3_2__factory.abi = _abi;