@gainsnetwork/sdk 1.5.0 → 1.5.1-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 (88) hide show
  1. package/lib/constants.d.ts +4 -0
  2. package/lib/constants.js +10 -4
  3. package/lib/contracts/utils/pairs.js +4 -0
  4. package/lib/trade/types.d.ts +5 -1
  5. package/lib/trade/types.js +4 -0
  6. package/package.json +1 -1
  7. package/lib/contracts/types/generated/GFarmTradingStorageV5.d.ts +0 -1911
  8. package/lib/contracts/types/generated/GFarmTradingStorageV5.js +0 -2
  9. package/lib/contracts/types/generated/GNSBorrowingFees.d.ts +0 -1067
  10. package/lib/contracts/types/generated/GNSBorrowingFees.js +0 -2
  11. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.d.ts +0 -979
  12. package/lib/contracts/types/generated/GNSBorrowingFeesV6_3_2.js +0 -2
  13. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.d.ts +0 -1058
  14. package/lib/contracts/types/generated/GNSBorrowingFeesV6_4.js +0 -2
  15. package/lib/contracts/types/generated/GNSNftRewardsV6.d.ts +0 -533
  16. package/lib/contracts/types/generated/GNSNftRewardsV6.js +0 -2
  17. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.d.ts +0 -613
  18. package/lib/contracts/types/generated/GNSNftRewardsV6_3_1.js +0 -2
  19. package/lib/contracts/types/generated/GNSPairInfosV6_1.d.ts +0 -911
  20. package/lib/contracts/types/generated/GNSPairInfosV6_1.js +0 -2
  21. package/lib/contracts/types/generated/GNSPairsStorageV6.d.ts +0 -660
  22. package/lib/contracts/types/generated/GNSPairsStorageV6.js +0 -2
  23. package/lib/contracts/types/generated/GNSTrading.d.ts +0 -758
  24. package/lib/contracts/types/generated/GNSTrading.js +0 -2
  25. package/lib/contracts/types/generated/GNSTradingCallbacks.d.ts +0 -875
  26. package/lib/contracts/types/generated/GNSTradingCallbacks.js +0 -2
  27. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.d.ts +0 -806
  28. package/lib/contracts/types/generated/GNSTradingCallbacksV6_3_2.js +0 -2
  29. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.d.ts +0 -821
  30. package/lib/contracts/types/generated/GNSTradingCallbacksV6_4.js +0 -2
  31. package/lib/contracts/types/generated/GNSTradingStorage.d.ts +0 -1387
  32. package/lib/contracts/types/generated/GNSTradingStorage.js +0 -2
  33. package/lib/contracts/types/generated/GTokenV6_3_2.d.ts +0 -1838
  34. package/lib/contracts/types/generated/GTokenV6_3_2.js +0 -2
  35. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.d.ts +0 -83
  36. package/lib/contracts/types/generated/factories/GFarmTradingStorageV5__factory.js +0 -2691
  37. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.d.ts +0 -88
  38. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_3_2__factory.js +0 -1654
  39. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.d.ts +0 -113
  40. package/lib/contracts/types/generated/factories/GNSBorrowingFeesV6_4__factory.js +0 -1742
  41. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.d.ts +0 -124
  42. package/lib/contracts/types/generated/factories/GNSBorrowingFees__factory.js +0 -1784
  43. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.d.ts +0 -100
  44. package/lib/contracts/types/generated/factories/GNSNftRewardsV6_3_1__factory.js +0 -1116
  45. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.d.ts +0 -100
  46. package/lib/contracts/types/generated/factories/GNSNftRewardsV6__factory.js +0 -1003
  47. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.d.ts +0 -98
  48. package/lib/contracts/types/generated/factories/GNSPairInfosV6_1__factory.js +0 -1485
  49. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.d.ts +0 -117
  50. package/lib/contracts/types/generated/factories/GNSPairsStorageV6__factory.js +0 -1265
  51. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.d.ts +0 -82
  52. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_3_2__factory.js +0 -1273
  53. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.d.ts +0 -82
  54. package/lib/contracts/types/generated/factories/GNSTradingCallbacksV6_4__factory.js +0 -1326
  55. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.d.ts +0 -113
  56. package/lib/contracts/types/generated/factories/GNSTradingCallbacks__factory.js +0 -1428
  57. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.d.ts +0 -96
  58. package/lib/contracts/types/generated/factories/GNSTradingStorage__factory.js +0 -2241
  59. package/lib/contracts/types/generated/factories/GNSTrading__factory.d.ts +0 -95
  60. package/lib/contracts/types/generated/factories/GNSTrading__factory.js +0 -1071
  61. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.d.ts +0 -110
  62. package/lib/contracts/types/generated/factories/GTokenV6_3_2__factory.js +0 -2682
  63. package/lib/markets/oi/fetcher.d.ts +0 -58
  64. package/lib/markets/oi/fetcher.js +0 -181
  65. package/lib/markets/oi/validation.d.ts +0 -80
  66. package/lib/markets/oi/validation.js +0 -172
  67. package/lib/pricing/depthBands/converter.d.ts +0 -65
  68. package/lib/pricing/depthBands/converter.js +0 -155
  69. package/lib/pricing/depthBands/decoder.d.ts +0 -32
  70. package/lib/pricing/depthBands/decoder.js +0 -109
  71. package/lib/pricing/depthBands/encoder.d.ts +0 -19
  72. package/lib/pricing/depthBands/encoder.js +0 -105
  73. package/lib/pricing/depthBands/index.d.ts +0 -8
  74. package/lib/pricing/depthBands/index.js +0 -26
  75. package/lib/pricing/depthBands/types.d.ts +0 -49
  76. package/lib/pricing/depthBands/types.js +0 -10
  77. package/lib/pricing/depthBands/validator.d.ts +0 -22
  78. package/lib/pricing/depthBands/validator.js +0 -113
  79. package/lib/trade/effectiveLeverage/builder.d.ts +0 -23
  80. package/lib/trade/effectiveLeverage/builder.js +0 -30
  81. package/lib/trade/fees/holdingFees/index.d.ts +0 -46
  82. package/lib/trade/fees/holdingFees/index.js +0 -105
  83. package/lib/trade/fees/holdingFees/types.d.ts +0 -23
  84. package/lib/trade/fees/holdingFees/types.js +0 -5
  85. package/lib/trade/fees/trading/holdingFees.d.ts +0 -28
  86. package/lib/trade/fees/trading/holdingFees.js +0 -66
  87. package/lib/trade/fees/trading/holdingFeesStructured.d.ts +0 -28
  88. package/lib/trade/fees/trading/holdingFeesStructured.js +0 -66
@@ -1,2241 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GNSTradingStorage__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
- inputs: [],
11
- stateMutability: "nonpayable",
12
- type: "constructor",
13
- },
14
- {
15
- anonymous: false,
16
- inputs: [
17
- {
18
- indexed: false,
19
- internalType: "string",
20
- name: "name",
21
- type: "string",
22
- },
23
- {
24
- indexed: false,
25
- internalType: "address",
26
- name: "a",
27
- type: "address",
28
- },
29
- ],
30
- name: "AddressUpdated",
31
- type: "event",
32
- },
33
- {
34
- anonymous: false,
35
- inputs: [
36
- {
37
- indexed: true,
38
- internalType: "address",
39
- name: "asset",
40
- type: "address",
41
- },
42
- {
43
- indexed: true,
44
- internalType: "address",
45
- name: "delegatee",
46
- type: "address",
47
- },
48
- {
49
- indexed: false,
50
- internalType: "bool",
51
- name: "success",
52
- type: "bool",
53
- },
54
- ],
55
- name: "Delegated",
56
- type: "event",
57
- },
58
- {
59
- anonymous: false,
60
- inputs: [
61
- {
62
- indexed: false,
63
- internalType: "uint8",
64
- name: "version",
65
- type: "uint8",
66
- },
67
- ],
68
- name: "Initialized",
69
- type: "event",
70
- },
71
- {
72
- anonymous: false,
73
- inputs: [
74
- {
75
- indexed: false,
76
- internalType: "string",
77
- name: "name",
78
- type: "string",
79
- },
80
- {
81
- indexed: false,
82
- internalType: "uint256",
83
- name: "value",
84
- type: "uint256",
85
- },
86
- ],
87
- name: "NumberUpdated",
88
- type: "event",
89
- },
90
- {
91
- anonymous: false,
92
- inputs: [
93
- {
94
- indexed: false,
95
- internalType: "string",
96
- name: "name",
97
- type: "string",
98
- },
99
- {
100
- indexed: false,
101
- internalType: "uint256",
102
- name: "pairIndex",
103
- type: "uint256",
104
- },
105
- {
106
- indexed: false,
107
- internalType: "uint256",
108
- name: "value",
109
- type: "uint256",
110
- },
111
- ],
112
- name: "NumberUpdatedPair",
113
- type: "event",
114
- },
115
- {
116
- anonymous: false,
117
- inputs: [
118
- {
119
- indexed: false,
120
- internalType: "address",
121
- name: "a",
122
- type: "address",
123
- },
124
- ],
125
- name: "TradingContractAdded",
126
- type: "event",
127
- },
128
- {
129
- anonymous: false,
130
- inputs: [
131
- {
132
- indexed: false,
133
- internalType: "address",
134
- name: "a",
135
- type: "address",
136
- },
137
- ],
138
- name: "TradingContractRemoved",
139
- type: "event",
140
- },
141
- {
142
- inputs: [],
143
- name: "MINTER_ROLE",
144
- outputs: [
145
- {
146
- internalType: "bytes32",
147
- name: "",
148
- type: "bytes32",
149
- },
150
- ],
151
- stateMutability: "view",
152
- type: "function",
153
- },
154
- {
155
- inputs: [],
156
- name: "PRECISION",
157
- outputs: [
158
- {
159
- internalType: "uint256",
160
- name: "",
161
- type: "uint256",
162
- },
163
- ],
164
- stateMutability: "view",
165
- type: "function",
166
- },
167
- {
168
- inputs: [
169
- {
170
- internalType: "address",
171
- name: "_trading",
172
- type: "address",
173
- },
174
- ],
175
- name: "addTradingContract",
176
- outputs: [],
177
- stateMutability: "nonpayable",
178
- type: "function",
179
- },
180
- {
181
- inputs: [],
182
- name: "callbacks",
183
- outputs: [
184
- {
185
- internalType: "address",
186
- name: "",
187
- type: "address",
188
- },
189
- ],
190
- stateMutability: "view",
191
- type: "function",
192
- },
193
- {
194
- inputs: [],
195
- name: "dai",
196
- outputs: [
197
- {
198
- internalType: "contract IERC20",
199
- name: "",
200
- type: "address",
201
- },
202
- ],
203
- stateMutability: "view",
204
- type: "function",
205
- },
206
- {
207
- inputs: [],
208
- name: "dev",
209
- outputs: [
210
- {
211
- internalType: "address",
212
- name: "",
213
- type: "address",
214
- },
215
- ],
216
- stateMutability: "view",
217
- type: "function",
218
- },
219
- {
220
- inputs: [],
221
- name: "devFeesDai",
222
- outputs: [
223
- {
224
- internalType: "uint256",
225
- name: "",
226
- type: "uint256",
227
- },
228
- ],
229
- stateMutability: "view",
230
- type: "function",
231
- },
232
- {
233
- inputs: [],
234
- name: "devFeesToken",
235
- outputs: [
236
- {
237
- internalType: "uint256",
238
- name: "",
239
- type: "uint256",
240
- },
241
- ],
242
- stateMutability: "view",
243
- type: "function",
244
- },
245
- {
246
- inputs: [
247
- {
248
- internalType: "address",
249
- name: "trader",
250
- type: "address",
251
- },
252
- {
253
- internalType: "uint256",
254
- name: "pairIndex",
255
- type: "uint256",
256
- },
257
- ],
258
- name: "firstEmptyOpenLimitIndex",
259
- outputs: [
260
- {
261
- internalType: "uint256",
262
- name: "index",
263
- type: "uint256",
264
- },
265
- ],
266
- stateMutability: "view",
267
- type: "function",
268
- },
269
- {
270
- inputs: [
271
- {
272
- internalType: "address",
273
- name: "trader",
274
- type: "address",
275
- },
276
- {
277
- internalType: "uint256",
278
- name: "pairIndex",
279
- type: "uint256",
280
- },
281
- ],
282
- name: "firstEmptyTradeIndex",
283
- outputs: [
284
- {
285
- internalType: "uint256",
286
- name: "index",
287
- type: "uint256",
288
- },
289
- ],
290
- stateMutability: "view",
291
- type: "function",
292
- },
293
- {
294
- inputs: [
295
- {
296
- internalType: "address",
297
- name: "_trader",
298
- type: "address",
299
- },
300
- {
301
- internalType: "uint256",
302
- name: "_pairIndex",
303
- type: "uint256",
304
- },
305
- {
306
- internalType: "uint256",
307
- name: "_index",
308
- type: "uint256",
309
- },
310
- ],
311
- name: "getOpenLimitOrder",
312
- outputs: [
313
- {
314
- components: [
315
- {
316
- internalType: "address",
317
- name: "trader",
318
- type: "address",
319
- },
320
- {
321
- internalType: "uint256",
322
- name: "pairIndex",
323
- type: "uint256",
324
- },
325
- {
326
- internalType: "uint256",
327
- name: "index",
328
- type: "uint256",
329
- },
330
- {
331
- internalType: "uint256",
332
- name: "positionSize",
333
- type: "uint256",
334
- },
335
- {
336
- internalType: "uint256",
337
- name: "spreadReductionP",
338
- type: "uint256",
339
- },
340
- {
341
- internalType: "bool",
342
- name: "buy",
343
- type: "bool",
344
- },
345
- {
346
- internalType: "uint256",
347
- name: "leverage",
348
- type: "uint256",
349
- },
350
- {
351
- internalType: "uint256",
352
- name: "tp",
353
- type: "uint256",
354
- },
355
- {
356
- internalType: "uint256",
357
- name: "sl",
358
- type: "uint256",
359
- },
360
- {
361
- internalType: "uint256",
362
- name: "minPrice",
363
- type: "uint256",
364
- },
365
- {
366
- internalType: "uint256",
367
- name: "maxPrice",
368
- type: "uint256",
369
- },
370
- {
371
- internalType: "uint256",
372
- name: "block",
373
- type: "uint256",
374
- },
375
- {
376
- internalType: "uint256",
377
- name: "tokenId",
378
- type: "uint256",
379
- },
380
- ],
381
- internalType: "struct GNSTradingStorage.OpenLimitOrder",
382
- name: "",
383
- type: "tuple",
384
- },
385
- ],
386
- stateMutability: "view",
387
- type: "function",
388
- },
389
- {
390
- inputs: [],
391
- name: "getOpenLimitOrders",
392
- outputs: [
393
- {
394
- components: [
395
- {
396
- internalType: "address",
397
- name: "trader",
398
- type: "address",
399
- },
400
- {
401
- internalType: "uint256",
402
- name: "pairIndex",
403
- type: "uint256",
404
- },
405
- {
406
- internalType: "uint256",
407
- name: "index",
408
- type: "uint256",
409
- },
410
- {
411
- internalType: "uint256",
412
- name: "positionSize",
413
- type: "uint256",
414
- },
415
- {
416
- internalType: "uint256",
417
- name: "spreadReductionP",
418
- type: "uint256",
419
- },
420
- {
421
- internalType: "bool",
422
- name: "buy",
423
- type: "bool",
424
- },
425
- {
426
- internalType: "uint256",
427
- name: "leverage",
428
- type: "uint256",
429
- },
430
- {
431
- internalType: "uint256",
432
- name: "tp",
433
- type: "uint256",
434
- },
435
- {
436
- internalType: "uint256",
437
- name: "sl",
438
- type: "uint256",
439
- },
440
- {
441
- internalType: "uint256",
442
- name: "minPrice",
443
- type: "uint256",
444
- },
445
- {
446
- internalType: "uint256",
447
- name: "maxPrice",
448
- type: "uint256",
449
- },
450
- {
451
- internalType: "uint256",
452
- name: "block",
453
- type: "uint256",
454
- },
455
- {
456
- internalType: "uint256",
457
- name: "tokenId",
458
- type: "uint256",
459
- },
460
- ],
461
- internalType: "struct GNSTradingStorage.OpenLimitOrder[]",
462
- name: "",
463
- type: "tuple[]",
464
- },
465
- ],
466
- stateMutability: "view",
467
- type: "function",
468
- },
469
- {
470
- inputs: [
471
- {
472
- internalType: "address",
473
- name: "_trader",
474
- type: "address",
475
- },
476
- ],
477
- name: "getPendingOrderIds",
478
- outputs: [
479
- {
480
- internalType: "uint256[]",
481
- name: "",
482
- type: "uint256[]",
483
- },
484
- ],
485
- stateMutability: "view",
486
- type: "function",
487
- },
488
- {
489
- inputs: [],
490
- name: "gov",
491
- outputs: [
492
- {
493
- internalType: "address",
494
- name: "",
495
- type: "address",
496
- },
497
- ],
498
- stateMutability: "view",
499
- type: "function",
500
- },
501
- {
502
- inputs: [],
503
- name: "govFeesDai",
504
- outputs: [
505
- {
506
- internalType: "uint256",
507
- name: "",
508
- type: "uint256",
509
- },
510
- ],
511
- stateMutability: "view",
512
- type: "function",
513
- },
514
- {
515
- inputs: [],
516
- name: "govFeesToken",
517
- outputs: [
518
- {
519
- internalType: "uint256",
520
- name: "",
521
- type: "uint256",
522
- },
523
- ],
524
- stateMutability: "view",
525
- type: "function",
526
- },
527
- {
528
- inputs: [
529
- {
530
- internalType: "address",
531
- name: "trader",
532
- type: "address",
533
- },
534
- {
535
- internalType: "uint256",
536
- name: "pairIndex",
537
- type: "uint256",
538
- },
539
- {
540
- internalType: "uint256",
541
- name: "index",
542
- type: "uint256",
543
- },
544
- ],
545
- name: "hasOpenLimitOrder",
546
- outputs: [
547
- {
548
- internalType: "bool",
549
- name: "",
550
- type: "bool",
551
- },
552
- ],
553
- stateMutability: "view",
554
- type: "function",
555
- },
556
- {
557
- inputs: [
558
- {
559
- internalType: "contract IERC20",
560
- name: "_dai",
561
- type: "address",
562
- },
563
- {
564
- internalType: "contract IERC20",
565
- name: "_linkErc677",
566
- type: "address",
567
- },
568
- {
569
- internalType: "contract IERC20",
570
- name: "_token",
571
- type: "address",
572
- },
573
- {
574
- internalType: "address",
575
- name: "_gov",
576
- type: "address",
577
- },
578
- ],
579
- name: "initialize",
580
- outputs: [],
581
- stateMutability: "nonpayable",
582
- type: "function",
583
- },
584
- {
585
- inputs: [
586
- {
587
- internalType: "address",
588
- name: "",
589
- type: "address",
590
- },
591
- ],
592
- name: "isTradingContract",
593
- outputs: [
594
- {
595
- internalType: "bool",
596
- name: "",
597
- type: "bool",
598
- },
599
- ],
600
- stateMutability: "view",
601
- type: "function",
602
- },
603
- {
604
- inputs: [],
605
- name: "linkErc677",
606
- outputs: [
607
- {
608
- internalType: "contract IERC20",
609
- name: "",
610
- type: "address",
611
- },
612
- ],
613
- stateMutability: "view",
614
- type: "function",
615
- },
616
- {
617
- inputs: [],
618
- name: "maxPendingMarketOrders",
619
- outputs: [
620
- {
621
- internalType: "uint256",
622
- name: "",
623
- type: "uint256",
624
- },
625
- ],
626
- stateMutability: "view",
627
- type: "function",
628
- },
629
- {
630
- inputs: [],
631
- name: "maxTradesPerPair",
632
- outputs: [
633
- {
634
- internalType: "uint256",
635
- name: "",
636
- type: "uint256",
637
- },
638
- ],
639
- stateMutability: "view",
640
- type: "function",
641
- },
642
- {
643
- inputs: [
644
- {
645
- internalType: "uint256",
646
- name: "",
647
- type: "uint256",
648
- },
649
- ],
650
- name: "nftLastSuccess",
651
- outputs: [
652
- {
653
- internalType: "uint256",
654
- name: "",
655
- type: "uint256",
656
- },
657
- ],
658
- stateMutability: "view",
659
- type: "function",
660
- },
661
- {
662
- inputs: [],
663
- name: "nftRewards",
664
- outputs: [
665
- {
666
- internalType: "uint256",
667
- name: "",
668
- type: "uint256",
669
- },
670
- ],
671
- stateMutability: "view",
672
- type: "function",
673
- },
674
- {
675
- inputs: [],
676
- name: "nftSuccessTimelock",
677
- outputs: [
678
- {
679
- internalType: "uint256",
680
- name: "",
681
- type: "uint256",
682
- },
683
- ],
684
- stateMutability: "view",
685
- type: "function",
686
- },
687
- {
688
- inputs: [
689
- {
690
- internalType: "uint256",
691
- name: "",
692
- type: "uint256",
693
- },
694
- ],
695
- name: "nfts",
696
- outputs: [
697
- {
698
- internalType: "address",
699
- name: "",
700
- type: "address",
701
- },
702
- ],
703
- stateMutability: "view",
704
- type: "function",
705
- },
706
- {
707
- inputs: [
708
- {
709
- internalType: "uint256",
710
- name: "",
711
- type: "uint256",
712
- },
713
- {
714
- internalType: "uint256",
715
- name: "",
716
- type: "uint256",
717
- },
718
- ],
719
- name: "openInterestDai",
720
- outputs: [
721
- {
722
- internalType: "uint256",
723
- name: "",
724
- type: "uint256",
725
- },
726
- ],
727
- stateMutability: "view",
728
- type: "function",
729
- },
730
- {
731
- inputs: [
732
- {
733
- internalType: "address",
734
- name: "",
735
- type: "address",
736
- },
737
- {
738
- internalType: "uint256",
739
- name: "",
740
- type: "uint256",
741
- },
742
- {
743
- internalType: "uint256",
744
- name: "",
745
- type: "uint256",
746
- },
747
- ],
748
- name: "openLimitOrderIds",
749
- outputs: [
750
- {
751
- internalType: "uint256",
752
- name: "",
753
- type: "uint256",
754
- },
755
- ],
756
- stateMutability: "view",
757
- type: "function",
758
- },
759
- {
760
- inputs: [
761
- {
762
- internalType: "uint256",
763
- name: "",
764
- type: "uint256",
765
- },
766
- ],
767
- name: "openLimitOrders",
768
- outputs: [
769
- {
770
- internalType: "address",
771
- name: "trader",
772
- type: "address",
773
- },
774
- {
775
- internalType: "uint256",
776
- name: "pairIndex",
777
- type: "uint256",
778
- },
779
- {
780
- internalType: "uint256",
781
- name: "index",
782
- type: "uint256",
783
- },
784
- {
785
- internalType: "uint256",
786
- name: "positionSize",
787
- type: "uint256",
788
- },
789
- {
790
- internalType: "uint256",
791
- name: "spreadReductionP",
792
- type: "uint256",
793
- },
794
- {
795
- internalType: "bool",
796
- name: "buy",
797
- type: "bool",
798
- },
799
- {
800
- internalType: "uint256",
801
- name: "leverage",
802
- type: "uint256",
803
- },
804
- {
805
- internalType: "uint256",
806
- name: "tp",
807
- type: "uint256",
808
- },
809
- {
810
- internalType: "uint256",
811
- name: "sl",
812
- type: "uint256",
813
- },
814
- {
815
- internalType: "uint256",
816
- name: "minPrice",
817
- type: "uint256",
818
- },
819
- {
820
- internalType: "uint256",
821
- name: "maxPrice",
822
- type: "uint256",
823
- },
824
- {
825
- internalType: "uint256",
826
- name: "block",
827
- type: "uint256",
828
- },
829
- {
830
- internalType: "uint256",
831
- name: "tokenId",
832
- type: "uint256",
833
- },
834
- ],
835
- stateMutability: "view",
836
- type: "function",
837
- },
838
- {
839
- inputs: [
840
- {
841
- internalType: "address",
842
- name: "",
843
- type: "address",
844
- },
845
- {
846
- internalType: "uint256",
847
- name: "",
848
- type: "uint256",
849
- },
850
- ],
851
- name: "openLimitOrdersCount",
852
- outputs: [
853
- {
854
- internalType: "uint256",
855
- name: "",
856
- type: "uint256",
857
- },
858
- ],
859
- stateMutability: "view",
860
- type: "function",
861
- },
862
- {
863
- inputs: [
864
- {
865
- internalType: "address",
866
- name: "",
867
- type: "address",
868
- },
869
- {
870
- internalType: "uint256",
871
- name: "",
872
- type: "uint256",
873
- },
874
- {
875
- internalType: "uint256",
876
- name: "",
877
- type: "uint256",
878
- },
879
- ],
880
- name: "openTrades",
881
- outputs: [
882
- {
883
- internalType: "address",
884
- name: "trader",
885
- type: "address",
886
- },
887
- {
888
- internalType: "uint256",
889
- name: "pairIndex",
890
- type: "uint256",
891
- },
892
- {
893
- internalType: "uint256",
894
- name: "index",
895
- type: "uint256",
896
- },
897
- {
898
- internalType: "uint256",
899
- name: "initialPosToken",
900
- type: "uint256",
901
- },
902
- {
903
- internalType: "uint256",
904
- name: "positionSizeDai",
905
- type: "uint256",
906
- },
907
- {
908
- internalType: "uint256",
909
- name: "openPrice",
910
- type: "uint256",
911
- },
912
- {
913
- internalType: "bool",
914
- name: "buy",
915
- type: "bool",
916
- },
917
- {
918
- internalType: "uint256",
919
- name: "leverage",
920
- type: "uint256",
921
- },
922
- {
923
- internalType: "uint256",
924
- name: "tp",
925
- type: "uint256",
926
- },
927
- {
928
- internalType: "uint256",
929
- name: "sl",
930
- type: "uint256",
931
- },
932
- ],
933
- stateMutability: "view",
934
- type: "function",
935
- },
936
- {
937
- inputs: [
938
- {
939
- internalType: "address",
940
- name: "",
941
- type: "address",
942
- },
943
- {
944
- internalType: "uint256",
945
- name: "",
946
- type: "uint256",
947
- },
948
- ],
949
- name: "openTradesCount",
950
- outputs: [
951
- {
952
- internalType: "uint256",
953
- name: "",
954
- type: "uint256",
955
- },
956
- ],
957
- stateMutability: "view",
958
- type: "function",
959
- },
960
- {
961
- inputs: [
962
- {
963
- internalType: "address",
964
- name: "",
965
- type: "address",
966
- },
967
- {
968
- internalType: "uint256",
969
- name: "",
970
- type: "uint256",
971
- },
972
- {
973
- internalType: "uint256",
974
- name: "",
975
- type: "uint256",
976
- },
977
- ],
978
- name: "openTradesInfo",
979
- outputs: [
980
- {
981
- internalType: "uint256",
982
- name: "tokenId",
983
- type: "uint256",
984
- },
985
- {
986
- internalType: "uint256",
987
- name: "tokenPriceDai",
988
- type: "uint256",
989
- },
990
- {
991
- internalType: "uint256",
992
- name: "openInterestDai",
993
- type: "uint256",
994
- },
995
- {
996
- internalType: "uint256",
997
- name: "tpLastUpdated",
998
- type: "uint256",
999
- },
1000
- {
1001
- internalType: "uint256",
1002
- name: "slLastUpdated",
1003
- type: "uint256",
1004
- },
1005
- {
1006
- internalType: "bool",
1007
- name: "beingMarketClosed",
1008
- type: "bool",
1009
- },
1010
- ],
1011
- stateMutability: "view",
1012
- type: "function",
1013
- },
1014
- {
1015
- inputs: [
1016
- {
1017
- internalType: "uint256",
1018
- name: "",
1019
- type: "uint256",
1020
- },
1021
- {
1022
- internalType: "uint256",
1023
- name: "",
1024
- type: "uint256",
1025
- },
1026
- ],
1027
- name: "pairTraders",
1028
- outputs: [
1029
- {
1030
- internalType: "address",
1031
- name: "",
1032
- type: "address",
1033
- },
1034
- ],
1035
- stateMutability: "view",
1036
- type: "function",
1037
- },
1038
- {
1039
- inputs: [
1040
- {
1041
- internalType: "uint256",
1042
- name: "_pairIndex",
1043
- type: "uint256",
1044
- },
1045
- ],
1046
- name: "pairTradersArray",
1047
- outputs: [
1048
- {
1049
- internalType: "address[]",
1050
- name: "",
1051
- type: "address[]",
1052
- },
1053
- ],
1054
- stateMutability: "view",
1055
- type: "function",
1056
- },
1057
- {
1058
- inputs: [
1059
- {
1060
- internalType: "address",
1061
- name: "",
1062
- type: "address",
1063
- },
1064
- {
1065
- internalType: "uint256",
1066
- name: "",
1067
- type: "uint256",
1068
- },
1069
- ],
1070
- name: "pairTradersId",
1071
- outputs: [
1072
- {
1073
- internalType: "uint256",
1074
- name: "",
1075
- type: "uint256",
1076
- },
1077
- ],
1078
- stateMutability: "view",
1079
- type: "function",
1080
- },
1081
- {
1082
- inputs: [
1083
- {
1084
- internalType: "address",
1085
- name: "",
1086
- type: "address",
1087
- },
1088
- {
1089
- internalType: "uint256",
1090
- name: "",
1091
- type: "uint256",
1092
- },
1093
- ],
1094
- name: "pendingMarketCloseCount",
1095
- outputs: [
1096
- {
1097
- internalType: "uint256",
1098
- name: "",
1099
- type: "uint256",
1100
- },
1101
- ],
1102
- stateMutability: "view",
1103
- type: "function",
1104
- },
1105
- {
1106
- inputs: [
1107
- {
1108
- internalType: "address",
1109
- name: "",
1110
- type: "address",
1111
- },
1112
- {
1113
- internalType: "uint256",
1114
- name: "",
1115
- type: "uint256",
1116
- },
1117
- ],
1118
- name: "pendingMarketOpenCount",
1119
- outputs: [
1120
- {
1121
- internalType: "uint256",
1122
- name: "",
1123
- type: "uint256",
1124
- },
1125
- ],
1126
- stateMutability: "view",
1127
- type: "function",
1128
- },
1129
- {
1130
- inputs: [
1131
- {
1132
- internalType: "address",
1133
- name: "",
1134
- type: "address",
1135
- },
1136
- {
1137
- internalType: "uint256",
1138
- name: "",
1139
- type: "uint256",
1140
- },
1141
- ],
1142
- name: "pendingOrderIds",
1143
- outputs: [
1144
- {
1145
- internalType: "uint256",
1146
- name: "",
1147
- type: "uint256",
1148
- },
1149
- ],
1150
- stateMutability: "view",
1151
- type: "function",
1152
- },
1153
- {
1154
- inputs: [
1155
- {
1156
- internalType: "address",
1157
- name: "_trader",
1158
- type: "address",
1159
- },
1160
- ],
1161
- name: "pendingOrderIdsCount",
1162
- outputs: [
1163
- {
1164
- internalType: "uint256",
1165
- name: "",
1166
- type: "uint256",
1167
- },
1168
- ],
1169
- stateMutability: "view",
1170
- type: "function",
1171
- },
1172
- {
1173
- inputs: [],
1174
- name: "pool",
1175
- outputs: [
1176
- {
1177
- internalType: "address",
1178
- name: "",
1179
- type: "address",
1180
- },
1181
- ],
1182
- stateMutability: "view",
1183
- type: "function",
1184
- },
1185
- {
1186
- inputs: [],
1187
- name: "priceAggregator",
1188
- outputs: [
1189
- {
1190
- internalType: "contract IGNSPriceAggregator",
1191
- name: "",
1192
- type: "address",
1193
- },
1194
- ],
1195
- stateMutability: "view",
1196
- type: "function",
1197
- },
1198
- {
1199
- inputs: [
1200
- {
1201
- internalType: "address",
1202
- name: "_trading",
1203
- type: "address",
1204
- },
1205
- ],
1206
- name: "removeTradingContract",
1207
- outputs: [],
1208
- stateMutability: "nonpayable",
1209
- type: "function",
1210
- },
1211
- {
1212
- inputs: [
1213
- {
1214
- internalType: "uint256",
1215
- name: "",
1216
- type: "uint256",
1217
- },
1218
- ],
1219
- name: "reqID_pendingMarketOrder",
1220
- outputs: [
1221
- {
1222
- components: [
1223
- {
1224
- internalType: "address",
1225
- name: "trader",
1226
- type: "address",
1227
- },
1228
- {
1229
- internalType: "uint256",
1230
- name: "pairIndex",
1231
- type: "uint256",
1232
- },
1233
- {
1234
- internalType: "uint256",
1235
- name: "index",
1236
- type: "uint256",
1237
- },
1238
- {
1239
- internalType: "uint256",
1240
- name: "initialPosToken",
1241
- type: "uint256",
1242
- },
1243
- {
1244
- internalType: "uint256",
1245
- name: "positionSizeDai",
1246
- type: "uint256",
1247
- },
1248
- {
1249
- internalType: "uint256",
1250
- name: "openPrice",
1251
- type: "uint256",
1252
- },
1253
- {
1254
- internalType: "bool",
1255
- name: "buy",
1256
- type: "bool",
1257
- },
1258
- {
1259
- internalType: "uint256",
1260
- name: "leverage",
1261
- type: "uint256",
1262
- },
1263
- {
1264
- internalType: "uint256",
1265
- name: "tp",
1266
- type: "uint256",
1267
- },
1268
- {
1269
- internalType: "uint256",
1270
- name: "sl",
1271
- type: "uint256",
1272
- },
1273
- ],
1274
- internalType: "struct GNSTradingStorage.Trade",
1275
- name: "trade",
1276
- type: "tuple",
1277
- },
1278
- {
1279
- internalType: "uint256",
1280
- name: "block",
1281
- type: "uint256",
1282
- },
1283
- {
1284
- internalType: "uint256",
1285
- name: "wantedPrice",
1286
- type: "uint256",
1287
- },
1288
- {
1289
- internalType: "uint256",
1290
- name: "slippageP",
1291
- type: "uint256",
1292
- },
1293
- {
1294
- internalType: "uint256",
1295
- name: "spreadReductionP",
1296
- type: "uint256",
1297
- },
1298
- {
1299
- internalType: "uint256",
1300
- name: "tokenId",
1301
- type: "uint256",
1302
- },
1303
- ],
1304
- stateMutability: "view",
1305
- type: "function",
1306
- },
1307
- {
1308
- inputs: [
1309
- {
1310
- internalType: "uint256",
1311
- name: "",
1312
- type: "uint256",
1313
- },
1314
- ],
1315
- name: "reqID_pendingNftOrder",
1316
- outputs: [
1317
- {
1318
- internalType: "address",
1319
- name: "nftHolder",
1320
- type: "address",
1321
- },
1322
- {
1323
- internalType: "uint256",
1324
- name: "nftId",
1325
- type: "uint256",
1326
- },
1327
- {
1328
- internalType: "address",
1329
- name: "trader",
1330
- type: "address",
1331
- },
1332
- {
1333
- internalType: "uint256",
1334
- name: "pairIndex",
1335
- type: "uint256",
1336
- },
1337
- {
1338
- internalType: "uint256",
1339
- name: "index",
1340
- type: "uint256",
1341
- },
1342
- {
1343
- internalType: "enum GNSTradingStorage.LimitOrder",
1344
- name: "orderType",
1345
- type: "uint8",
1346
- },
1347
- ],
1348
- stateMutability: "view",
1349
- type: "function",
1350
- },
1351
- {
1352
- inputs: [
1353
- {
1354
- internalType: "address",
1355
- name: "_callbacks",
1356
- type: "address",
1357
- },
1358
- ],
1359
- name: "setCallbacks",
1360
- outputs: [],
1361
- stateMutability: "nonpayable",
1362
- type: "function",
1363
- },
1364
- {
1365
- inputs: [
1366
- {
1367
- internalType: "address",
1368
- name: "_delegatee",
1369
- type: "address",
1370
- },
1371
- ],
1372
- name: "setDelegatee",
1373
- outputs: [],
1374
- stateMutability: "nonpayable",
1375
- type: "function",
1376
- },
1377
- {
1378
- inputs: [
1379
- {
1380
- internalType: "address",
1381
- name: "_gov",
1382
- type: "address",
1383
- },
1384
- ],
1385
- name: "setGov",
1386
- outputs: [],
1387
- stateMutability: "nonpayable",
1388
- type: "function",
1389
- },
1390
- {
1391
- inputs: [
1392
- {
1393
- internalType: "uint256",
1394
- name: "_maxPendingMarketOrders",
1395
- type: "uint256",
1396
- },
1397
- ],
1398
- name: "setMaxPendingMarketOrders",
1399
- outputs: [],
1400
- stateMutability: "nonpayable",
1401
- type: "function",
1402
- },
1403
- {
1404
- inputs: [
1405
- {
1406
- internalType: "uint256",
1407
- name: "_maxTradesPerPair",
1408
- type: "uint256",
1409
- },
1410
- ],
1411
- name: "setMaxTradesPerPair",
1412
- outputs: [],
1413
- stateMutability: "nonpayable",
1414
- type: "function",
1415
- },
1416
- {
1417
- inputs: [
1418
- {
1419
- internalType: "address",
1420
- name: "_aggregator",
1421
- type: "address",
1422
- },
1423
- ],
1424
- name: "setPriceAggregator",
1425
- outputs: [],
1426
- stateMutability: "nonpayable",
1427
- type: "function",
1428
- },
1429
- {
1430
- inputs: [
1431
- {
1432
- internalType: "address",
1433
- name: "_vault",
1434
- type: "address",
1435
- },
1436
- ],
1437
- name: "setVault",
1438
- outputs: [],
1439
- stateMutability: "nonpayable",
1440
- type: "function",
1441
- },
1442
- {
1443
- inputs: [
1444
- {
1445
- internalType: "uint256",
1446
- name: "",
1447
- type: "uint256",
1448
- },
1449
- ],
1450
- name: "spreadReductionsP",
1451
- outputs: [
1452
- {
1453
- internalType: "uint256",
1454
- name: "",
1455
- type: "uint256",
1456
- },
1457
- ],
1458
- stateMutability: "view",
1459
- type: "function",
1460
- },
1461
- {
1462
- inputs: [
1463
- {
1464
- components: [
1465
- {
1466
- internalType: "address",
1467
- name: "trader",
1468
- type: "address",
1469
- },
1470
- {
1471
- internalType: "uint256",
1472
- name: "pairIndex",
1473
- type: "uint256",
1474
- },
1475
- {
1476
- internalType: "uint256",
1477
- name: "index",
1478
- type: "uint256",
1479
- },
1480
- {
1481
- internalType: "uint256",
1482
- name: "positionSize",
1483
- type: "uint256",
1484
- },
1485
- {
1486
- internalType: "uint256",
1487
- name: "spreadReductionP",
1488
- type: "uint256",
1489
- },
1490
- {
1491
- internalType: "bool",
1492
- name: "buy",
1493
- type: "bool",
1494
- },
1495
- {
1496
- internalType: "uint256",
1497
- name: "leverage",
1498
- type: "uint256",
1499
- },
1500
- {
1501
- internalType: "uint256",
1502
- name: "tp",
1503
- type: "uint256",
1504
- },
1505
- {
1506
- internalType: "uint256",
1507
- name: "sl",
1508
- type: "uint256",
1509
- },
1510
- {
1511
- internalType: "uint256",
1512
- name: "minPrice",
1513
- type: "uint256",
1514
- },
1515
- {
1516
- internalType: "uint256",
1517
- name: "maxPrice",
1518
- type: "uint256",
1519
- },
1520
- {
1521
- internalType: "uint256",
1522
- name: "block",
1523
- type: "uint256",
1524
- },
1525
- {
1526
- internalType: "uint256",
1527
- name: "tokenId",
1528
- type: "uint256",
1529
- },
1530
- ],
1531
- internalType: "struct GNSTradingStorage.OpenLimitOrder",
1532
- name: "o",
1533
- type: "tuple",
1534
- },
1535
- ],
1536
- name: "storeOpenLimitOrder",
1537
- outputs: [],
1538
- stateMutability: "nonpayable",
1539
- type: "function",
1540
- },
1541
- {
1542
- inputs: [
1543
- {
1544
- components: [
1545
- {
1546
- components: [
1547
- {
1548
- internalType: "address",
1549
- name: "trader",
1550
- type: "address",
1551
- },
1552
- {
1553
- internalType: "uint256",
1554
- name: "pairIndex",
1555
- type: "uint256",
1556
- },
1557
- {
1558
- internalType: "uint256",
1559
- name: "index",
1560
- type: "uint256",
1561
- },
1562
- {
1563
- internalType: "uint256",
1564
- name: "initialPosToken",
1565
- type: "uint256",
1566
- },
1567
- {
1568
- internalType: "uint256",
1569
- name: "positionSizeDai",
1570
- type: "uint256",
1571
- },
1572
- {
1573
- internalType: "uint256",
1574
- name: "openPrice",
1575
- type: "uint256",
1576
- },
1577
- {
1578
- internalType: "bool",
1579
- name: "buy",
1580
- type: "bool",
1581
- },
1582
- {
1583
- internalType: "uint256",
1584
- name: "leverage",
1585
- type: "uint256",
1586
- },
1587
- {
1588
- internalType: "uint256",
1589
- name: "tp",
1590
- type: "uint256",
1591
- },
1592
- {
1593
- internalType: "uint256",
1594
- name: "sl",
1595
- type: "uint256",
1596
- },
1597
- ],
1598
- internalType: "struct GNSTradingStorage.Trade",
1599
- name: "trade",
1600
- type: "tuple",
1601
- },
1602
- {
1603
- internalType: "uint256",
1604
- name: "block",
1605
- type: "uint256",
1606
- },
1607
- {
1608
- internalType: "uint256",
1609
- name: "wantedPrice",
1610
- type: "uint256",
1611
- },
1612
- {
1613
- internalType: "uint256",
1614
- name: "slippageP",
1615
- type: "uint256",
1616
- },
1617
- {
1618
- internalType: "uint256",
1619
- name: "spreadReductionP",
1620
- type: "uint256",
1621
- },
1622
- {
1623
- internalType: "uint256",
1624
- name: "tokenId",
1625
- type: "uint256",
1626
- },
1627
- ],
1628
- internalType: "struct GNSTradingStorage.PendingMarketOrder",
1629
- name: "_order",
1630
- type: "tuple",
1631
- },
1632
- {
1633
- internalType: "uint256",
1634
- name: "_id",
1635
- type: "uint256",
1636
- },
1637
- {
1638
- internalType: "bool",
1639
- name: "_open",
1640
- type: "bool",
1641
- },
1642
- ],
1643
- name: "storePendingMarketOrder",
1644
- outputs: [],
1645
- stateMutability: "nonpayable",
1646
- type: "function",
1647
- },
1648
- {
1649
- inputs: [
1650
- {
1651
- components: [
1652
- {
1653
- internalType: "address",
1654
- name: "nftHolder",
1655
- type: "address",
1656
- },
1657
- {
1658
- internalType: "uint256",
1659
- name: "nftId",
1660
- type: "uint256",
1661
- },
1662
- {
1663
- internalType: "address",
1664
- name: "trader",
1665
- type: "address",
1666
- },
1667
- {
1668
- internalType: "uint256",
1669
- name: "pairIndex",
1670
- type: "uint256",
1671
- },
1672
- {
1673
- internalType: "uint256",
1674
- name: "index",
1675
- type: "uint256",
1676
- },
1677
- {
1678
- internalType: "enum GNSTradingStorage.LimitOrder",
1679
- name: "orderType",
1680
- type: "uint8",
1681
- },
1682
- ],
1683
- internalType: "struct GNSTradingStorage.PendingNftOrder",
1684
- name: "_nftOrder",
1685
- type: "tuple",
1686
- },
1687
- {
1688
- internalType: "uint256",
1689
- name: "_orderId",
1690
- type: "uint256",
1691
- },
1692
- ],
1693
- name: "storePendingNftOrder",
1694
- outputs: [],
1695
- stateMutability: "nonpayable",
1696
- type: "function",
1697
- },
1698
- {
1699
- inputs: [
1700
- {
1701
- components: [
1702
- {
1703
- internalType: "address",
1704
- name: "trader",
1705
- type: "address",
1706
- },
1707
- {
1708
- internalType: "uint256",
1709
- name: "pairIndex",
1710
- type: "uint256",
1711
- },
1712
- {
1713
- internalType: "uint256",
1714
- name: "index",
1715
- type: "uint256",
1716
- },
1717
- {
1718
- internalType: "uint256",
1719
- name: "initialPosToken",
1720
- type: "uint256",
1721
- },
1722
- {
1723
- internalType: "uint256",
1724
- name: "positionSizeDai",
1725
- type: "uint256",
1726
- },
1727
- {
1728
- internalType: "uint256",
1729
- name: "openPrice",
1730
- type: "uint256",
1731
- },
1732
- {
1733
- internalType: "bool",
1734
- name: "buy",
1735
- type: "bool",
1736
- },
1737
- {
1738
- internalType: "uint256",
1739
- name: "leverage",
1740
- type: "uint256",
1741
- },
1742
- {
1743
- internalType: "uint256",
1744
- name: "tp",
1745
- type: "uint256",
1746
- },
1747
- {
1748
- internalType: "uint256",
1749
- name: "sl",
1750
- type: "uint256",
1751
- },
1752
- ],
1753
- internalType: "struct GNSTradingStorage.Trade",
1754
- name: "_trade",
1755
- type: "tuple",
1756
- },
1757
- {
1758
- components: [
1759
- {
1760
- internalType: "uint256",
1761
- name: "tokenId",
1762
- type: "uint256",
1763
- },
1764
- {
1765
- internalType: "uint256",
1766
- name: "tokenPriceDai",
1767
- type: "uint256",
1768
- },
1769
- {
1770
- internalType: "uint256",
1771
- name: "openInterestDai",
1772
- type: "uint256",
1773
- },
1774
- {
1775
- internalType: "uint256",
1776
- name: "tpLastUpdated",
1777
- type: "uint256",
1778
- },
1779
- {
1780
- internalType: "uint256",
1781
- name: "slLastUpdated",
1782
- type: "uint256",
1783
- },
1784
- {
1785
- internalType: "bool",
1786
- name: "beingMarketClosed",
1787
- type: "bool",
1788
- },
1789
- ],
1790
- internalType: "struct GNSTradingStorage.TradeInfo",
1791
- name: "_tradeInfo",
1792
- type: "tuple",
1793
- },
1794
- ],
1795
- name: "storeTrade",
1796
- outputs: [],
1797
- stateMutability: "nonpayable",
1798
- type: "function",
1799
- },
1800
- {
1801
- inputs: [
1802
- {
1803
- internalType: "uint256",
1804
- name: "",
1805
- type: "uint256",
1806
- },
1807
- ],
1808
- name: "supportedTokens",
1809
- outputs: [
1810
- {
1811
- internalType: "address",
1812
- name: "",
1813
- type: "address",
1814
- },
1815
- ],
1816
- stateMutability: "view",
1817
- type: "function",
1818
- },
1819
- {
1820
- inputs: [],
1821
- name: "token",
1822
- outputs: [
1823
- {
1824
- internalType: "contract IERC20",
1825
- name: "",
1826
- type: "address",
1827
- },
1828
- ],
1829
- stateMutability: "view",
1830
- type: "function",
1831
- },
1832
- {
1833
- inputs: [],
1834
- name: "tokensBurned",
1835
- outputs: [
1836
- {
1837
- internalType: "uint256",
1838
- name: "",
1839
- type: "uint256",
1840
- },
1841
- ],
1842
- stateMutability: "view",
1843
- type: "function",
1844
- },
1845
- {
1846
- inputs: [],
1847
- name: "tokensMinted",
1848
- outputs: [
1849
- {
1850
- internalType: "uint256",
1851
- name: "",
1852
- type: "uint256",
1853
- },
1854
- ],
1855
- stateMutability: "view",
1856
- type: "function",
1857
- },
1858
- {
1859
- inputs: [],
1860
- name: "trading",
1861
- outputs: [
1862
- {
1863
- internalType: "address",
1864
- name: "",
1865
- type: "address",
1866
- },
1867
- ],
1868
- stateMutability: "view",
1869
- type: "function",
1870
- },
1871
- {
1872
- inputs: [
1873
- {
1874
- internalType: "address",
1875
- name: "_from",
1876
- type: "address",
1877
- },
1878
- {
1879
- internalType: "address",
1880
- name: "_to",
1881
- type: "address",
1882
- },
1883
- {
1884
- internalType: "uint256",
1885
- name: "_amount",
1886
- type: "uint256",
1887
- },
1888
- ],
1889
- name: "transferDai",
1890
- outputs: [],
1891
- stateMutability: "nonpayable",
1892
- type: "function",
1893
- },
1894
- {
1895
- inputs: [
1896
- {
1897
- internalType: "address",
1898
- name: "_from",
1899
- type: "address",
1900
- },
1901
- {
1902
- internalType: "uint256",
1903
- name: "_pairIndex",
1904
- type: "uint256",
1905
- },
1906
- {
1907
- internalType: "uint256",
1908
- name: "_leveragedPosDai",
1909
- type: "uint256",
1910
- },
1911
- ],
1912
- name: "transferLinkToAggregator",
1913
- outputs: [],
1914
- stateMutability: "nonpayable",
1915
- type: "function",
1916
- },
1917
- {
1918
- inputs: [
1919
- {
1920
- internalType: "address",
1921
- name: "_trader",
1922
- type: "address",
1923
- },
1924
- {
1925
- internalType: "uint256",
1926
- name: "_pairIndex",
1927
- type: "uint256",
1928
- },
1929
- {
1930
- internalType: "uint256",
1931
- name: "_index",
1932
- type: "uint256",
1933
- },
1934
- ],
1935
- name: "unregisterOpenLimitOrder",
1936
- outputs: [],
1937
- stateMutability: "nonpayable",
1938
- type: "function",
1939
- },
1940
- {
1941
- inputs: [
1942
- {
1943
- internalType: "uint256",
1944
- name: "_id",
1945
- type: "uint256",
1946
- },
1947
- {
1948
- internalType: "bool",
1949
- name: "_open",
1950
- type: "bool",
1951
- },
1952
- ],
1953
- name: "unregisterPendingMarketOrder",
1954
- outputs: [],
1955
- stateMutability: "nonpayable",
1956
- type: "function",
1957
- },
1958
- {
1959
- inputs: [
1960
- {
1961
- internalType: "uint256",
1962
- name: "_order",
1963
- type: "uint256",
1964
- },
1965
- ],
1966
- name: "unregisterPendingNftOrder",
1967
- outputs: [],
1968
- stateMutability: "nonpayable",
1969
- type: "function",
1970
- },
1971
- {
1972
- inputs: [
1973
- {
1974
- internalType: "address",
1975
- name: "trader",
1976
- type: "address",
1977
- },
1978
- {
1979
- internalType: "uint256",
1980
- name: "pairIndex",
1981
- type: "uint256",
1982
- },
1983
- {
1984
- internalType: "uint256",
1985
- name: "index",
1986
- type: "uint256",
1987
- },
1988
- ],
1989
- name: "unregisterTrade",
1990
- outputs: [],
1991
- stateMutability: "nonpayable",
1992
- type: "function",
1993
- },
1994
- {
1995
- inputs: [
1996
- {
1997
- components: [
1998
- {
1999
- internalType: "address",
2000
- name: "trader",
2001
- type: "address",
2002
- },
2003
- {
2004
- internalType: "uint256",
2005
- name: "pairIndex",
2006
- type: "uint256",
2007
- },
2008
- {
2009
- internalType: "uint256",
2010
- name: "index",
2011
- type: "uint256",
2012
- },
2013
- {
2014
- internalType: "uint256",
2015
- name: "positionSize",
2016
- type: "uint256",
2017
- },
2018
- {
2019
- internalType: "uint256",
2020
- name: "spreadReductionP",
2021
- type: "uint256",
2022
- },
2023
- {
2024
- internalType: "bool",
2025
- name: "buy",
2026
- type: "bool",
2027
- },
2028
- {
2029
- internalType: "uint256",
2030
- name: "leverage",
2031
- type: "uint256",
2032
- },
2033
- {
2034
- internalType: "uint256",
2035
- name: "tp",
2036
- type: "uint256",
2037
- },
2038
- {
2039
- internalType: "uint256",
2040
- name: "sl",
2041
- type: "uint256",
2042
- },
2043
- {
2044
- internalType: "uint256",
2045
- name: "minPrice",
2046
- type: "uint256",
2047
- },
2048
- {
2049
- internalType: "uint256",
2050
- name: "maxPrice",
2051
- type: "uint256",
2052
- },
2053
- {
2054
- internalType: "uint256",
2055
- name: "block",
2056
- type: "uint256",
2057
- },
2058
- {
2059
- internalType: "uint256",
2060
- name: "tokenId",
2061
- type: "uint256",
2062
- },
2063
- ],
2064
- internalType: "struct GNSTradingStorage.OpenLimitOrder",
2065
- name: "_o",
2066
- type: "tuple",
2067
- },
2068
- ],
2069
- name: "updateOpenLimitOrder",
2070
- outputs: [],
2071
- stateMutability: "nonpayable",
2072
- type: "function",
2073
- },
2074
- {
2075
- inputs: [
2076
- {
2077
- internalType: "address",
2078
- name: "_trader",
2079
- type: "address",
2080
- },
2081
- {
2082
- internalType: "uint256",
2083
- name: "_pairIndex",
2084
- type: "uint256",
2085
- },
2086
- {
2087
- internalType: "uint256",
2088
- name: "_index",
2089
- type: "uint256",
2090
- },
2091
- {
2092
- internalType: "uint256",
2093
- name: "_newSl",
2094
- type: "uint256",
2095
- },
2096
- ],
2097
- name: "updateSl",
2098
- outputs: [],
2099
- stateMutability: "nonpayable",
2100
- type: "function",
2101
- },
2102
- {
2103
- inputs: [
2104
- {
2105
- internalType: "address",
2106
- name: "_trader",
2107
- type: "address",
2108
- },
2109
- {
2110
- internalType: "uint256",
2111
- name: "_pairIndex",
2112
- type: "uint256",
2113
- },
2114
- {
2115
- internalType: "uint256",
2116
- name: "_index",
2117
- type: "uint256",
2118
- },
2119
- {
2120
- internalType: "uint256",
2121
- name: "_newTp",
2122
- type: "uint256",
2123
- },
2124
- ],
2125
- name: "updateTp",
2126
- outputs: [],
2127
- stateMutability: "nonpayable",
2128
- type: "function",
2129
- },
2130
- {
2131
- inputs: [
2132
- {
2133
- components: [
2134
- {
2135
- internalType: "address",
2136
- name: "trader",
2137
- type: "address",
2138
- },
2139
- {
2140
- internalType: "uint256",
2141
- name: "pairIndex",
2142
- type: "uint256",
2143
- },
2144
- {
2145
- internalType: "uint256",
2146
- name: "index",
2147
- type: "uint256",
2148
- },
2149
- {
2150
- internalType: "uint256",
2151
- name: "initialPosToken",
2152
- type: "uint256",
2153
- },
2154
- {
2155
- internalType: "uint256",
2156
- name: "positionSizeDai",
2157
- type: "uint256",
2158
- },
2159
- {
2160
- internalType: "uint256",
2161
- name: "openPrice",
2162
- type: "uint256",
2163
- },
2164
- {
2165
- internalType: "bool",
2166
- name: "buy",
2167
- type: "bool",
2168
- },
2169
- {
2170
- internalType: "uint256",
2171
- name: "leverage",
2172
- type: "uint256",
2173
- },
2174
- {
2175
- internalType: "uint256",
2176
- name: "tp",
2177
- type: "uint256",
2178
- },
2179
- {
2180
- internalType: "uint256",
2181
- name: "sl",
2182
- type: "uint256",
2183
- },
2184
- ],
2185
- internalType: "struct GNSTradingStorage.Trade",
2186
- name: "_t",
2187
- type: "tuple",
2188
- },
2189
- ],
2190
- name: "updateTrade",
2191
- outputs: [],
2192
- stateMutability: "nonpayable",
2193
- type: "function",
2194
- },
2195
- {
2196
- inputs: [],
2197
- name: "vault",
2198
- outputs: [
2199
- {
2200
- internalType: "address",
2201
- name: "",
2202
- type: "address",
2203
- },
2204
- ],
2205
- stateMutability: "view",
2206
- type: "function",
2207
- },
2208
- ];
2209
- const _bytecode = "0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61455780620000f36000396000f3fe608060405234801561001057600080fd5b50600436106104325760003560e01c8063aa3b7d7711610236578063e3cbe3a71161013b578063f65d9dbe116100c3578063fbfa77cf11610087578063fbfa77cf14610cc7578063fc0c546a14610cda578063fdb5941314610ced578063fe0fc8d614610cf6578063fece4eac14610d0957600080fd5b8063f65d9dbe14610c66578063f7b3c6fd14610c6f578063f823e2ae14610c98578063f8c8765e14610cab578063f8d24b4814610cbe57600080fd5b8063ec44acf21161010a578063ec44acf214610bed578063ecf56a1f14610c00578063eda00d5414610c13578063ee92a4ff14610c44578063f4b9fa7514610c4d57600080fd5b8063e3cbe3a714610bb5578063e7873b5814610bc8578063e842a64b14610bd1578063ea5c3c3314610be457600080fd5b8063c6255626116101be578063d3b5fe701161018d578063d3b5fe7014610b54578063d4bda90814610b67578063d539139314610b7a578063dc2123ff14610b8f578063dcdf339a14610ba257600080fd5b8063c625562614610b08578063c76faf7814610b1b578063cab9458014610b2e578063cfad57a214610b4157600080fd5b8063b767608a11610205578063b767608a14610a84578063b7682d5414610a97578063b8878a2c14610ac2578063bcc9f1d314610ae2578063c311ab3114610af557600080fd5b8063aa3b7d7714610973578063aaf5eb6814610993578063b4b0f5671461099f578063b66e6b05146109b257600080fd5b80635fbfe8cc1161033c5780638a0bd702116102c457806397e7995a1161029357806397e7995a146107d257806399794d35146107fd5780639c8912f114610861578063a35441811461088c578063a3a80ffe1461089f57600080fd5b80638a0bd702146107135780638c8ff1d51461072857806390d112b9146107ac57806391cca3db146107bf57600080fd5b80636de9f32b1161030b5780636de9f32b146106c85780636e70e7b6146106d15780637fdb96f3146106e45780638049fde7146106f7578063817fa1a41461070057600080fd5b80635fbfe8cc1461064f5780636690a8061461066f5780636817031b146106825780636d81d9811461069557600080fd5b80633078fff5116103bf57806344d44f5a1161038e57806344d44f5a146105ed5780635070e837146106005780635ad9f993146106135780635b621e321461061c5780635c76ac9e1461062f57600080fd5b80633078fff51461051d57806332149592146105305780633dae10a0146105af5780634415b369146105c257600080fd5b80631c8636b4116104065780631c8636b4146104a4578063201d8bdb146104cf578063265aa621146104e457806328daca21146104f7578063292c16171461050a57600080fd5b8062b127831461043757806312d43a511461046757806316f0115b1461047a57806318407fe01461048d575b600080fd5b60055461044a906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b60155461044a906001600160a01b031681565b60035461044a906001600160a01b031681565b610496601a5481565b60405190815260200161045e565b6104966104b2366004613b3f565b602160209081526000928352604080842090915290825290205481565b6104e26104dd366004613b6b565b610d1c565b005b61044a6104f2366004613b6b565b610e0c565b610496610505366004613b84565b610e2c565b610496610518366004613b3f565b610e51565b60025461044a906001600160a01b031681565b61054361053e366004613b6b565b610eb3565b604080516001600160a01b03909e168e5260208e019c909c529a8c019990995260608b019790975260808a019590955292151560a089015260c088019190915260e08701526101008601526101208501526101408401526101608301526101808201526101a00161045e565b6104966105bd366004613b6b565b610f3a565b6104966105d0366004613b3f565b602b60209081526000928352604080842090915290825290205481565b6104966105fb366004613b3f565b610f51565b6104e261060e366004613ba6565b610f86565b610496601d5481565b6104e261062a366004613ba6565b61101d565b61064261063d366004613ba6565b611098565b60405161045e9190613bc3565b61066261065d366004613b6b565b611104565b60405161045e9190613c07565b6104e261067d366004613c48565b61116f565b6104e2610690366004613ba6565b6112a8565b6106b86106a3366004613ba6565b602e6020526000908152604090205460ff1681565b604051901515815260200161045e565b610496601c5481565b6104e26106df366004613c7d565b61132e565b6104e26106f2366004613cbe565b61141d565b610496600e5481565b6104e261070e366004613d94565b61152e565b61071b61166e565b60405161045e9190613eb9565b61077d610736366004613c48565b602080805260009384526040808520825292845282842090528252902080546001820154600283015460038401546004850154600590950154939492939192909160ff1686565b6040805196875260208701959095529385019290925260608401526080830152151560a082015260c00161045e565b6104e26107ba366004613c48565b61175d565b60165461044a906001600160a01b031681565b6104966107e0366004613b3f565b602360209081526000928352604080842090915290825290205481565b61084f61080b366004613b6b565b6026602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b0394851695939490921692909160ff1686565b60405161045e96959493929190613f12565b61049661086f366004613b3f565b602860209081526000928352604080842090915290825290205481565b6104e261089a366004613cbe565b611acb565b61091d6108ad366004613c48565b601f60209081526000938452604080852082529284528284209052825290208054600182015460028301546003840154600485015460058601546006870154600788015460088901546009909901546001600160a01b03909816989697959694959394929360ff9092169290918a565b604080516001600160a01b03909b168b5260208b0199909952978901969096526060880194909452608087019290925260a0860152151560c085015260e08401526101008301526101208201526101400161045e565b610496610981366004613b6b565b602d6020526000908152604090205481565b6104966402540be40081565b6104e26109ad366004613c48565b611bdb565b610a726109c0366004613b6b565b60256020908152600091825260409182902082516101408101845281546001600160a01b031681526001820154928101929092526002810154928201929092526003820154606082015260048201546080820152600582015460a0820152600682015460ff16151560c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154600b830154600c840154600d850154600e90950154939492939192909186565b60405161045e96959493929190613f6e565b6104e2610a92366004614014565b611f5c565b610496610aa5366004613b3f565b602960209081526000928352604080842090915290825290205481565b610ad5610ad0366004613c48565b612100565b60405161045e919061402d565b610496610af0366004613b3f565b612284565b6104e2610b033660046140ee565b6122b5565b61044a610b16366004613b6b565b612579565b6104e2610b2936600461417e565b6125a3565b6104e2610b3c366004614210565b6127f9565b6104e2610b4f366004613ba6565b612b6d565b6104e2610b62366004614240565b612bf1565b6104e2610b753660046142f3565b612f7c565b61049660008051602061450283398151915281565b6104e2610b9d366004613b6b565b61308e565b6106b8610bb0366004613c48565b613111565b61044a610bc3366004613b84565b6131b0565b610496601b5481565b6104e2610bdf366004613ba6565b6131e8565b61049660185481565b60045461044a906001600160a01b031681565b6104e2610c0e366004613b6b565b613262565b610496610c21366004613c48565b602260209081526000938452604080852082529284528284209052825290205481565b61049660175481565b60005461044a906201000090046001600160a01b031681565b610496600d5481565b610496610c7d366004613ba6565b6001600160a01b031660009081526027602052604090205490565b6104e2610ca6366004613ba6565b6132eb565b6104e2610cb9366004614310565b613423565b610496600f5481565b600c5461044a906001600160a01b031681565b60065461044a906001600160a01b031681565b61049660195481565b6104e2610d04366004613ba6565b613619565b60015461044a906001600160a01b031681565b336000908152602e602052604090205460ff168015610db75750600654604051632474521560e21b81526001600160a01b03909116906391d1485490610d769060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015610d93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db79190614383565b610dc057600080fd5b600090815260266020526040812080546001600160a01b03199081168255600182018390556002820180549091169055600381018290556004810191909155600501805460ff19169055565b60078160058110610e1c57600080fd5b01546001600160a01b0316905081565b602c6020528160005260406000208160038110610e4857600080fd5b01549150829050565b6000805b600d54811015610eac576001600160a01b0384166000908152601f6020908152604080832086845282528083208484529091528120600701549003610e9c57809150610eac565b610ea5816143b6565b9050610e55565b5092915050565b60248181548110610ec357600080fd5b60009182526020909120600d9091020180546001820154600283015460038401546004850154600586015460068701546007880154600889015460098a0154600a8b0154600b8c0154600c909c01546001600160a01b03909b169c50989a97999698959760ff90951696939592949193909291908d565b60108160058110610f4a57600080fd5b0154905081565b6000805b600d54811015610eac57610f6a848483613111565b610f7657809150610eac565b610f7f816143b6565b9050610f55565b6015546001600160a01b03163314610f9d57600080fd5b6001600160a01b038116610fb057600080fd5b600280546001600160a01b0319166001600160a01b03831690811790915560408051818152600f918101919091526e383934b1b2a0b3b3b932b3b0ba37b960891b606082015260208101919091526000805160206144e2833981519152906080015b60405180910390a150565b6015546001600160a01b0316331461103457600080fd5b6001600160a01b03811661104757600080fd5b6001600160a01b0381166000818152602e6020908152604091829020805460ff1916905590519182527ff9cf924d7d98e6e0a27ec523cd7214b0bbdfaba197018b33b41a702f5238190e9101611012565b6001600160a01b0381166000908152602760209081526040918290208054835181840281018401909452808452606093928301828280156110f857602002820191906000526020600020905b8154815260200190600101908083116110e4575b50505050509050919050565b6000818152602a60209081526040918290208054835181840281018401909452808452606093928301828280156110f857602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116111465750505050509050919050565b336000908152602e602052604090205460ff16801561120a5750600654604051632474521560e21b81526001600160a01b03909116906391d14854906111c99060008051602061450283398151915290339060040161436c565b602060405180830381865afa1580156111e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120a9190614383565b61121357600080fd5b60025460405163b9e0336f60e01b815260048101849052602481018390526112a39185916001600160a01b0390911690819063b9e0336f90604401602060405180830381865afa15801561126b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128f91906143cf565b6001546001600160a01b03169291906136a3565b505050565b6015546001600160a01b031633146112bf57600080fd5b6001600160a01b0381166112d257600080fd5b600c80546001600160a01b0319166001600160a01b03831690811790915560408051818152600591810191909152641d985d5b1d60da1b606082015260208101919091526000805160206144e283398151915290608001611012565b336000908152602e602052604090205460ff1680156113c95750600654604051632474521560e21b81526001600160a01b03909116906391d14854906113889060008051602061450283398151915290339060040161436c565b602060405180830381865afa1580156113a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113c99190614383565b6113d257600080fd5b306001600160a01b038416036113ff576000546112a3906201000090046001600160a01b0316838361370e565b6000546112a3906201000090046001600160a01b03168484846136a3565b336000908152602e602052604090205460ff1680156114b85750600654604051632474521560e21b81526001600160a01b03909116906391d14854906114779060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015611494573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114b89190614383565b6114c157600080fd5b6001600160a01b0384166000818152601f6020908152604080832087845282528083208684528252808320938352818052808320878452825280832086845290915281206007830154909103611518575050611528565b6008909101829055436003909101555b50505050565b336000908152602e602052604090205460ff1680156115c95750600654604051632474521560e21b81526001600160a01b03909116906391d14854906115889060008051602061450283398151915290339060040161436c565b602060405180830381865afa1580156115a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115c99190614383565b6115d257600080fd5b600081815260266020908152604091829020845181546001600160a01b03199081166001600160a01b03928316178355928601516001808401919091559386015160028301805490941691161790915560608401516003808301919091556080850151600483015560a085015160058301805487959293919260ff1990911691849081111561166357611663613efc565b021790555050505050565b60606024805480602002602001604051908101604052809291908181526020016000905b82821015611754576000848152602090819020604080516101a081018252600d860290920180546001600160a01b03168352600180820154848601526002820154928401929092526003810154606084015260048101546080840152600581015460ff16151560a0840152600681015460c0840152600781015460e084015260088101546101008401526009810154610120840152600a810154610140840152600b810154610160840152600c01546101808301529083529092019101611692565b50505050905090565b336000908152602e602052604090205460ff1680156117f85750600654604051632474521560e21b81526001600160a01b03909116906391d14854906117b79060008051602061450283398151915290339060040161436c565b602060405180830381865afa1580156117d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117f89190614383565b61180157600080fd5b6001600160a01b0383166000818152601f6020908152604080832086845282528083208584528252808320938352818052808320868452825280832085845290915281206007830154909103611858575050505050565b6002810154600683015461187391869160009060ff1661373e565b6001600160a01b03851660009081526021602090815260408083208784529091529020546001036119e0576001600160a01b0385166000908152602b60209081526040808320878452825280832054602a909252909120805481906118da906001906143e8565b815481106118ea576118ea6143fb565b9060005260206000200160009054906101000a90046001600160a01b031681838154811061191a5761191a6143fb565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081602b600083858154811061195f5761195f6143fb565b60009182526020808320909101546001600160a01b03908116845283820194909452604092830182208b8352815282822094909455918a168252602b83528082208983529092529081205580548190806119bb576119bb614411565b600082815260209020810160001990810180546001600160a01b031916905501905550505b6001600160a01b0385166000818152601f602090815260408083208884528252808320878452825280832080546001600160a01b03191681556001808201859055600280830186905560038084018790556004808501889055600580860189905560068601805460ff19908116909155600787018a9055600887018a905560099096018990558989528780528689208e8a5288528689208d8a52885286892089815594850189905592840188905590830187905582018690550180549091169055928252602181528282208783529052908120805491611abf83614427565b91905055505050505050565b336000908152602e602052604090205460ff168015611b665750600654604051632474521560e21b81526001600160a01b03909116906391d1485490611b259060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015611b42573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b669190614383565b611b6f57600080fd5b6001600160a01b0384166000818152601f6020908152604080832087845282528083208684528252808320938352818052808320878452825280832086845290915281206007830154909103611bc6575050611528565b60099091018290554360049091015550505050565b336000908152602e602052604090205460ff168015611c765750600654604051632474521560e21b81526001600160a01b03909116906391d1485490611c359060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015611c52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c769190614383565b611c7f57600080fd5b611c8a838383613111565b156112a3576001600160a01b0383166000908152602260209081526040808320858452825280832084845290915290205460248054611ccb906001906143e8565b81548110611cdb57611cdb6143fb565b90600052602060002090600d020160248281548110611cfc57611cfc6143fb565b6000918252602082208354600d9092020180546001600160a01b0319166001600160a01b0390921691909117815560018084015490820155600280840154908201556003808401549082015560048084015490820155600580840154908201805460ff909216151560ff1990921691909117905560068084015490820155600780840154908201556008808401549082015560098084015490820155600a8084015490820155600b8084015490820155600c92830154920191909155602480548392602292909184908110611dd357611dd36143fb565b60009182526020808320600d909202909101546001600160a01b0316835282019290925260400181206024805491929185908110611e1357611e136143fb565b90600052602060002090600d0201600101548152602001908152602001600020600060248481548110611e4857611e486143fb565b600091825260208083206002600d90930201919091015483528281019390935260409182018120939093556001600160a01b03871683526022825280832086845282528083208584529091528120556024805480611ea857611ea8614411565b60008281526020808220600d6000199094019384020180546001600160a01b03191681556001810183905560028101839055600381018390556004810183905560058101805460ff1916905560068101839055600781018390556008810183905560098101839055600a8101839055600b8101839055600c01829055919092556001600160a01b03861682526023815260408083208684529091528120805491611f5183614427565b919050555050505050565b336000908152602e602052604090205460ff168015611ff75750600654604051632474521560e21b81526001600160a01b03909116906391d1485490611fb69060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015611fd3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ff79190614383565b61200057600080fd5b61201f6120106020830183613ba6565b82602001358360400135613111565b156120fd57600060246022826120386020860186613ba6565b6001600160a01b031681526020808201929092526040908101600090812086840135825283528181208683013582529092529020548154811061207d5761207d6143fb565b90600052602060002090600d02019050816060013581600301819055508160a00160208101906120ad919061443e565b60058201805460ff191691151591909117905560c0820135600682015560e0820135600782015561010082013560088201556101208201356009820155610140820135600a82015543600b909101555b50565b612176604051806101a0016040528060006001600160a01b0316815260200160008152602001600081526020016000815260200160008152602001600015158152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b612181848484613111565b61218a57600080fd5b6001600160a01b038416600090815260226020908152604080832086845282528083208584529091529020546024805490919081106121cb576121cb6143fb565b6000918252602091829020604080516101a081018252600d90930290910180546001600160a01b031683526001810154938301939093526002830154908201526003820154606082015260048201546080820152600582015460ff16151560a0820152600682015460c0820152600782015460e082015260088201546101008201526009820154610120820152600a820154610140820152600b820154610160820152600c9091015461018082015290505b9392505050565b602760205281600052604060002081815481106122a057600080fd5b90600052602060002001600091509150505481565b336000908152602e602052604090205460ff1680156123505750600654604051632474521560e21b81526001600160a01b03909116906391d148549061230f9060008051602061450283398151915290339060040161436c565b602060405180830381865afa15801561232c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123509190614383565b61235957600080fd5b61236b82600001518360200151610e51565b604083810191825283516001600160a01b039081166000908152601f602090815283822081880180518452908252848320865184528252848320885181546001600160a01b031916951694851781558151600182015595516002870155606088015160038701556080880151600487015560a0880151600587015560c088015160068701805460ff191691151591909117905560e08801516007870155610100880151600887015561012088015160099096019590955591815260218252828120935181529290528120805491612441836143b6565b909155505081516001600160a01b031660009081526021602090815260408083208286015184529091529020546001036124e157602082810180516000908152602a80845260408083205487516001600160a01b039081168552602b87528285208651865287528285209190915593518352908452812085518154600181018355918352939091200180546001600160a01b031916929091169190911790555b600060a0820181815283516001600160a01b03168252602080805260408084208287018051865290835281852082880151865283529381902085518155918501516001808401919091559085015160028301819055606086015160038401556080860151600484015592516005909201805460ff191692151592909217909155915160c0850151612575939192919061373e565b5050565b601e818154811061258957600080fd5b6000918252602090912001546001600160a01b0316905081565b336000908152602e602052604090205460ff16801561263e5750600654604051632474521560e21b81526001600160a01b03909116906391d14854906125fd9060008051602061450283398151915290339060040161436c565b602060405180830381865afa15801561261a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061263e9190614383565b61264757600080fd5b8251516001600160a01b0390811660009081526027602090815260408083208054600180820183559185528385200187905586845260258352928190208751805182546001600160a01b031916961695909517815591840151928201929092558282015160028201556060808401516003830155608080850151600484015560a080860151600585015560c086015160068501805460ff191691151591909117905560e08601516007850155610100860151600885015561012090950151600984015592870151600b830155860151600c82015590850151600d82015590840151600e82015543600a909101558015612779578251516001600160a01b0316600090815260286020908152604080832086518301518452909152812080549161276f836143b6565b9190505550505050565b8251516001600160a01b031660009081526029602090815260408083208651830151845290915281208054916127ae836143b6565b90915550508251516001600160a01b0316600090815260208080526040808320865183015184528252808320865182015184529091529020600501805460ff19166001179055505050565b336000908152602e602052604090205460ff1680156128945750600654604051632474521560e21b81526001600160a01b03909116906391d14854906128539060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015612870573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128949190614383565b61289d57600080fd5b600082815260256020908152604080832081516102008101835281546001600160a01b031660c08201818152600184015460e08401526002840154610100840152600384015461012084015260048401546101408401526005840154610160840152600684015460ff16151561018084015260078401546101a084015260088401546101c084015260098401546101e08401528252600a83015482860152600b83015482850152600c8301546060830152600d8301546080830152600e9092015460a08201529084526027909252822090915b8154811015612b66578482828154811061298c5761298c6143fb565b906000526020600020015403612b565783156129e1578251516001600160a01b031660009081526028602090815260408083208651830151845290915281208054916129d783614427565b9190505550612a5a565b8251516001600160a01b03166000908152602960209081526040808320865183015184529091528120805491612a1683614427565b90915550508251516001600160a01b0316600090815260208080526040808320865183015184528252808320865182015184529091529020600501805460ff191690555b81548290612a6a906001906143e8565b81548110612a7a57612a7a6143fb565b9060005260206000200154828281548110612a9757612a976143fb565b906000526020600020018190555081805480612ab557612ab5614411565b600082815260208082208301600019908101839055909201909255868252602590526040812080546001600160a01b0319168155600181018290556002810182905560038101829055600481018290556005810182905560068101805460ff19169055600781018290556008810182905560098101829055600a8101829055600b8101829055600c8101829055600d8101829055600e015550612575915050565b612b5f816143b6565b9050612970565b5050505050565b6015546001600160a01b03163314612b8457600080fd5b6001600160a01b038116612b9757600080fd5b601580546001600160a01b0319166001600160a01b038316908117909155604080518181526003918101919091526233b7bb60e91b606082015260208101919091526000805160206144e283398151915290608001611012565b336000908152602e602052604090205460ff168015612c8c5750600654604051632474521560e21b81526001600160a01b03909116906391d1485490612c4b9060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015612c68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c8c9190614383565b612c9557600080fd5b612ca781600001518260200151610f51565b604082019081524361016083019081526024805460018082018355600083905285517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec4600d90930292830180546001600160a01b0319166001600160a01b0390921691909117905560208601517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec583015593517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec682015560608501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec782015560808501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec882015560a08501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ec98201805460ff191691151591909117905560c08501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22eca82015560e08501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ecb8201556101008501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ecc8201556101208501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ecd8201556101408501517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ece82015591517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ecf8301556101808401517f7cd332d19b93bcabe3cce7ca0c18a052f57e5fd03b4758a09f30f5ddc4b22ed09092019190915554612f1691906143e8565b81516001600160a01b03908116600090815260226020908152604080832082870180518552908352818420828801518552835281842095909555855190931682526023815282822093518252929092528120805491612f74836143b6565b919050555050565b336000908152602e602052604090205460ff1680156130175750600654604051632474521560e21b81526001600160a01b03909116906391d1485490612fd69060008051602061450283398151915290339060040161436c565b602060405180830381865afa158015612ff3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130179190614383565b61302057600080fd5b80516001600160a01b03166000908152601f60209081526040808320828501518452825280832081850151845290915281206007810154909103613062575050565b606082015160038201556080820151600482015560a0820151600582015560e082015160079091015550565b6015546001600160a01b031633146130a557600080fd5b600081116130b257600080fd5b600d819055604080518181526010918101919091526f36b0bc2a3930b232b9a832b92830b4b960811b6060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001611012565b60245460009081036131255750600061227d565b6001600160a01b03841660009081526022602090815260408083208684528252808320858452909152812054602480549091908110613166576131666143fb565b60009182526020909120600d9091020180549091506001600160a01b0386811691161480156131985750838160010154145b80156131a75750828160020154145b95945050505050565b602a60205281600052604060002081815481106131cc57600080fd5b6000918252602090912001546001600160a01b03169150829050565b6015546001600160a01b031633146131ff57600080fd5b6001600160a01b0381166132465760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b60448201526064015b60405180910390fd5b6000546120fd906201000090046001600160a01b0316826137c9565b6015546001600160a01b0316331461327957600080fd5b6000811161328657600080fd5b600e81905560408051818152601691810191909152756d617850656e64696e674d61726b65744f726465727360501b6060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001611012565b6015546001600160a01b0316331461330257600080fd5b600654604051632474521560e21b81526001600160a01b03909116906391d14854906133429060008051602061450283398151915290859060040161436c565b602060405180830381865afa15801561335f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133839190614383565b6133bc5760405162461bcd60e51b815260206004820152600a6024820152692727aa2fa6a4a72a22a960b11b604482015260640161323d565b6001600160a01b0381166133cf57600080fd5b6001600160a01b0381166000818152602e6020908152604091829020805460ff1916600117905590519182527fb692fa98cbec9bd705572b4c7e0927e3f7698e9fe526dcef6f40f3d4d4980ca39101611012565b600054610100900460ff16158080156134435750600054600160ff909116105b8061345d5750303b15801561345d575060005460ff166001145b6134c05760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161323d565b6000805460ff1916600117905580156134e3576000805461ff0019166101001790555b6001600160a01b0385161580159061350357506001600160a01b03841615155b801561351757506001600160a01b03831615155b801561352b57506001600160a01b03821615155b6135665760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b604482015260640161323d565b6000805462010000600160b01b031916620100006001600160a01b038881169190910291909117909155600180546001600160a01b031990811687841617909155600680548216868416179055601580549091169184169190911790556003600d556005600e558015612b66576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050505050565b6015546001600160a01b0316331461363057600080fd5b6001600160a01b03811661364357600080fd5b600580546001600160a01b0319166001600160a01b038316908117909155604080518181526009918101919091526863616c6c6261636b7360b81b606082015260208101919091526000805160206144e283398151915290608001611012565b6040516001600160a01b03808516602483015283166044820152606481018290526115289085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526138b5565b6040516001600160a01b0383166024820152604481018290526112a390849063a9059cbb60e01b906064016136d7565b60008161374c57600161374f565b60005b6000868152602c6020526040902060ff9190911691508361378e578481836003811061377d5761377d6143fb565b015461378991906143e8565b6137ad565b848183600381106137a1576137a16143fb565b01546137ad919061445b565b8183600381106137bf576137bf6143fb565b0155505050505050565b6040516001600160a01b0382811660248301526000919084169060440160408051601f198184030181529181526020820180516001600160e01b03166317066a5760e21b1790525161381b9190614492565b6000604051808303816000865af19150503d8060008114613858576040519150601f19603f3d011682016040523d82523d6000602084013e61385d565b606091505b50509050816001600160a01b0316836001600160a01b03167fb1247c60c1f535e393496ecb92a45670b346b057bf9e382c99cb0dca11ee8abc836040516138a8911515815260200190565b60405180910390a3505050565b600061390a826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661398a9092919063ffffffff16565b905080516000148061392b57508080602001905181019061392b9190614383565b6112a35760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161323d565b606061399984846000856139a1565b949350505050565b606082471015613a025760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161323d565b600080866001600160a01b03168587604051613a1e9190614492565b60006040518083038185875af1925050503d8060008114613a5b576040519150601f19603f3d011682016040523d82523d6000602084013e613a60565b606091505b5091509150613a7187838387613a7c565b979650505050505050565b60608315613aeb578251600003613ae4576001600160a01b0385163b613ae45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161323d565b5081613999565b6139998383815115613b005781518083602001fd5b8060405162461bcd60e51b815260040161323d91906144ae565b6001600160a01b03811681146120fd57600080fd5b8035613b3a81613b1a565b919050565b60008060408385031215613b5257600080fd5b8235613b5d81613b1a565b946020939093013593505050565b600060208284031215613b7d57600080fd5b5035919050565b60008060408385031215613b9757600080fd5b50508035926020909101359150565b600060208284031215613bb857600080fd5b813561227d81613b1a565b6020808252825182820181905260009190848201906040850190845b81811015613bfb57835183529284019291840191600101613bdf565b50909695505050505050565b6020808252825182820181905260009190848201906040850190845b81811015613bfb5783516001600160a01b031683529284019291840191600101613c23565b600080600060608486031215613c5d57600080fd5b8335613c6881613b1a565b95602085013595506040909401359392505050565b600080600060608486031215613c9257600080fd5b8335613c9d81613b1a565b92506020840135613cad81613b1a565b929592945050506040919091013590565b60008060008060808587031215613cd457600080fd5b8435613cdf81613b1a565b966020860135965060408601359560600135945092505050565b60405160c0810167ffffffffffffffff81118282101715613d2a57634e487b7160e01b600052604160045260246000fd5b60405290565b604051610140810167ffffffffffffffff81118282101715613d2a57634e487b7160e01b600052604160045260246000fd5b6040516101a0810167ffffffffffffffff81118282101715613d2a57634e487b7160e01b600052604160045260246000fd5b60008082840360e0811215613da857600080fd5b60c0811215613db657600080fd5b50613dbf613cf9565b8335613dca81613b1a565b8152602084810135908201526040840135613de481613b1a565b80604083015250606084013560608201526080840135608082015260a084013560048110613e1157600080fd5b60a08201529460c0939093013593505050565b80516001600160a01b031682526020810151602083015260408101516040830152606081015160608301526080810151608083015260a0810151613e6c60a084018215159052565b5060c0818101519083015260e08082015190830152610100808201519083015261012080820151908301526101408082015190830152610160808201519083015261018090810151910152565b6020808252825182820181905260009190848201906040850190845b81811015613bfb57613ee8838551613e24565b928401926101a09290920191600101613ed5565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b0387811682526020820187905285166040820152606081018490526080810183905260c0810160048310613f5d57634e487b7160e01b600052602160045260246000fd5b8260a0830152979650505050505050565b86516001600160a01b031681526101e081016020880151602083015260408801516040830152606088015160608301526080880151608083015260a088015160a083015260c0880151613fc560c084018215159052565b5060e08881015190830152610100808901519083015261012097880151978201979097526101408101959095526101608501939093526101808401919091526101a08301526101c09091015290565b60006101a0828403121561402757600080fd5b50919050565b6101a0810161403c8284613e24565b92915050565b80151581146120fd57600080fd5b8035613b3a81614042565b6000610140828403121561406e57600080fd5b614076613d30565b905061408182613b2f565b81526020820135602082015260408201356040820152606082013560608201526080820135608082015260a082013560a08201526140c160c08301614050565b60c082015260e082013560e082015261010080830135818301525061012080830135818301525092915050565b60008082840361020081121561410357600080fd5b61410d858561405b565b925060c061013f198201121561412257600080fd5b5061412b613cf9565b6101408401358152610160840135602082015261018084013560408201526101a084013560608201526101c084013560808201526101e084013561416e81614042565b60a0820152919491935090915050565b600080600083850361022081121561419557600080fd5b6101e0808212156141a557600080fd5b6141ad613cf9565b91506141b9878761405b565b82526101408601356020830152610160860135604083015261018086013560608301526101a086013560808301526101c086013560a083015290935084013591506142076102008501614050565b90509250925092565b6000806040838503121561422357600080fd5b82359150602083013561423581614042565b809150509250929050565b60006101a0828403121561425357600080fd5b61425b613d62565b61426483613b2f565b81526020830135602082015260408301356040820152606083013560608201526080830135608082015261429a60a08401614050565b60a082015260c0838101359082015260e080840135908201526101008084013590820152610120808401359082015261014080840135908201526101608084013590820152610180928301359281019290925250919050565b6000610140828403121561430657600080fd5b61227d838361405b565b6000806000806080858703121561432657600080fd5b843561433181613b1a565b9350602085013561434181613b1a565b9250604085013561435181613b1a565b9150606085013561436181613b1a565b939692955090935050565b9182526001600160a01b0316602082015260400190565b60006020828403121561439557600080fd5b815161227d81614042565b634e487b7160e01b600052601160045260246000fd5b6000600182016143c8576143c86143a0565b5060010190565b6000602082840312156143e157600080fd5b5051919050565b8181038181111561403c5761403c6143a0565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b600081614436576144366143a0565b506000190190565b60006020828403121561445057600080fd5b813561227d81614042565b8082018082111561403c5761403c6143a0565b60005b83811015614489578181015183820152602001614471565b50506000910152565b600082516144a481846020870161446e565b9190910192915050565b60208152600082518060208401526144cd81604085016020870161446e565b601f01601f1916919091016040019291505056fe943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee444227819f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6a2646970667358221220741350b63869771d0f69678aaa333a2a5d02e58083bb19c1b9ed8b4d32e9836e64736f6c63430008110033";
2210
- const isSuperArgs = (xs) => xs.length > 1;
2211
- class GNSTradingStorage__factory extends ethers_1.ContractFactory {
2212
- constructor(...args) {
2213
- if (isSuperArgs(args)) {
2214
- super(...args);
2215
- }
2216
- else {
2217
- super(_abi, _bytecode, args[0]);
2218
- }
2219
- }
2220
- deploy(overrides) {
2221
- return super.deploy(overrides || {});
2222
- }
2223
- getDeployTransaction(overrides) {
2224
- return super.getDeployTransaction(overrides || {});
2225
- }
2226
- attach(address) {
2227
- return super.attach(address);
2228
- }
2229
- connect(signer) {
2230
- return super.connect(signer);
2231
- }
2232
- static createInterface() {
2233
- return new ethers_1.utils.Interface(_abi);
2234
- }
2235
- static connect(address, signerOrProvider) {
2236
- return new ethers_1.Contract(address, _abi, signerOrProvider);
2237
- }
2238
- }
2239
- exports.GNSTradingStorage__factory = GNSTradingStorage__factory;
2240
- GNSTradingStorage__factory.bytecode = _bytecode;
2241
- GNSTradingStorage__factory.abi = _abi;