@drift-labs/sdk 0.2.0-master.32 → 0.2.0-master.33

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 (108) hide show
  1. package/lib/accounts/bulkAccountLoader.js +2 -1
  2. package/lib/accounts/pollingClearingHouseAccountSubscriber.d.ts +2 -2
  3. package/lib/accounts/pollingClearingHouseAccountSubscriber.js +8 -8
  4. package/lib/accounts/types.d.ts +1 -0
  5. package/lib/accounts/webSocketClearingHouseAccountSubscriber.d.ts +2 -2
  6. package/lib/accounts/webSocketClearingHouseAccountSubscriber.js +7 -7
  7. package/lib/addresses/marketAddresses.js +1 -1
  8. package/lib/addresses/pda.d.ts +4 -4
  9. package/lib/addresses/pda.js +23 -22
  10. package/lib/admin.d.ts +30 -32
  11. package/lib/admin.js +111 -119
  12. package/lib/clearingHouse.d.ts +43 -34
  13. package/lib/clearingHouse.js +353 -193
  14. package/lib/clearingHouseConfig.d.ts +2 -2
  15. package/lib/clearingHouseUser.d.ts +26 -5
  16. package/lib/clearingHouseUser.js +151 -51
  17. package/lib/config.d.ts +2 -0
  18. package/lib/config.js +5 -1
  19. package/lib/constants/numericConstants.d.ts +1 -0
  20. package/lib/constants/numericConstants.js +3 -2
  21. package/lib/dlob/DLOB.d.ts +18 -11
  22. package/lib/dlob/DLOB.js +179 -107
  23. package/lib/dlob/DLOBNode.js +2 -10
  24. package/lib/dlob/NodeList.js +1 -1
  25. package/lib/events/eventSubscriber.d.ts +1 -0
  26. package/lib/events/eventSubscriber.js +11 -4
  27. package/lib/events/fetchLogs.d.ts +3 -1
  28. package/lib/events/fetchLogs.js +13 -5
  29. package/lib/events/pollingLogProvider.js +1 -1
  30. package/lib/events/types.d.ts +1 -1
  31. package/lib/events/webSocketLogProvider.js +1 -1
  32. package/lib/factory/bigNum.d.ts +5 -4
  33. package/lib/factory/bigNum.js +36 -6
  34. package/lib/idl/clearing_house.json +1527 -1242
  35. package/lib/index.d.ts +3 -0
  36. package/lib/index.js +3 -0
  37. package/lib/math/amm.js +9 -9
  38. package/lib/math/exchangeStatus.d.ts +4 -0
  39. package/lib/math/exchangeStatus.js +18 -0
  40. package/lib/math/funding.js +10 -10
  41. package/lib/math/margin.js +6 -1
  42. package/lib/math/market.js +9 -9
  43. package/lib/math/orders.d.ts +7 -3
  44. package/lib/math/orders.js +39 -31
  45. package/lib/math/repeg.js +3 -3
  46. package/lib/math/spotBalance.js +3 -3
  47. package/lib/math/spotPosition.js +2 -2
  48. package/lib/serum/serumFulfillmentConfigMap.d.ts +10 -0
  49. package/lib/serum/serumFulfillmentConfigMap.js +17 -0
  50. package/lib/serum/serumSubscriber.d.ts +4 -0
  51. package/lib/serum/serumSubscriber.js +16 -1
  52. package/lib/types.d.ts +60 -75
  53. package/lib/types.js +2 -1
  54. package/lib/userMap/userMap.d.ts +17 -1
  55. package/lib/userMap/userMap.js +12 -0
  56. package/lib/userName.d.ts +1 -0
  57. package/lib/userName.js +3 -2
  58. package/package.json +1 -1
  59. package/src/accounts/bulkAccountLoader.ts +5 -1
  60. package/src/accounts/pollingClearingHouseAccountSubscriber.ts +9 -9
  61. package/src/accounts/webSocketClearingHouseAccountSubscriber.ts +8 -8
  62. package/src/addresses/marketAddresses.ts +2 -2
  63. package/src/addresses/pda.ts +20 -20
  64. package/src/admin.ts +246 -221
  65. package/src/assert/assert.js +9 -0
  66. package/src/clearingHouse.ts +556 -236
  67. package/src/clearingHouseConfig.ts +2 -2
  68. package/src/clearingHouseUser.ts +237 -87
  69. package/src/config.ts +8 -1
  70. package/src/constants/numericConstants.ts +5 -1
  71. package/src/dlob/DLOB.ts +257 -120
  72. package/src/dlob/DLOBNode.ts +2 -14
  73. package/src/dlob/NodeList.ts +1 -1
  74. package/src/events/eventList.js +77 -0
  75. package/src/events/eventSubscriber.ts +18 -4
  76. package/src/events/fetchLogs.ts +20 -5
  77. package/src/events/pollingLogProvider.ts +1 -1
  78. package/src/events/types.ts +2 -1
  79. package/src/events/webSocketLogProvider.ts +1 -1
  80. package/src/examples/makeTradeExample.js +157 -0
  81. package/src/factory/bigNum.ts +59 -6
  82. package/src/idl/clearing_house.json +1527 -1242
  83. package/src/idl/pyth.json +98 -2
  84. package/src/index.ts +3 -0
  85. package/src/math/amm.ts +9 -9
  86. package/src/math/exchangeStatus.ts +31 -0
  87. package/src/math/funding.ts +20 -10
  88. package/src/math/margin.ts +7 -1
  89. package/src/math/market.ts +9 -9
  90. package/src/math/orders.ts +44 -29
  91. package/src/math/repeg.ts +3 -3
  92. package/src/math/spotBalance.ts +4 -4
  93. package/src/math/spotPosition.ts +2 -2
  94. package/src/serum/serumFulfillmentConfigMap.ts +26 -0
  95. package/src/serum/serumSubscriber.ts +20 -1
  96. package/src/token/index.js +38 -0
  97. package/src/tx/types.js +2 -0
  98. package/src/tx/utils.js +17 -0
  99. package/src/types.ts +65 -51
  100. package/src/userMap/userMap.ts +25 -1
  101. package/src/userName.ts +2 -1
  102. package/src/util/computeUnits.js +27 -0
  103. package/src/util/getTokenAddress.js +9 -0
  104. package/src/util/promiseTimeout.js +14 -0
  105. package/src/util/tps.js +27 -0
  106. package/tests/bn/test.ts +22 -1
  107. package/tests/dlob/helpers.ts +252 -81
  108. package/tests/dlob/test.ts +1040 -219
@@ -3,86 +3,30 @@
3
3
  "name": "clearing_house",
4
4
  "instructions": [
5
5
  {
6
- "name": "initialize",
7
- "accounts": [
8
- {
9
- "name": "admin",
10
- "isMut": true,
11
- "isSigner": true
12
- },
13
- {
14
- "name": "state",
15
- "isMut": true,
16
- "isSigner": false
17
- },
18
- {
19
- "name": "quoteAssetMint",
20
- "isMut": false,
21
- "isSigner": false
22
- },
23
- {
24
- "name": "clearingHouseSigner",
25
- "isMut": false,
26
- "isSigner": false
27
- },
28
- {
29
- "name": "rent",
30
- "isMut": false,
31
- "isSigner": false
32
- },
33
- {
34
- "name": "systemProgram",
35
- "isMut": false,
36
- "isSigner": false
37
- },
38
- {
39
- "name": "tokenProgram",
40
- "isMut": false,
41
- "isSigner": false
42
- }
43
- ],
44
- "args": []
45
- },
46
- {
47
- "name": "initializeSpotMarket",
6
+ "name": "initializeUser",
48
7
  "accounts": [
49
8
  {
50
- "name": "spotMarket",
51
- "isMut": true,
52
- "isSigner": false
53
- },
54
- {
55
- "name": "spotMarketMint",
56
- "isMut": false,
57
- "isSigner": false
58
- },
59
- {
60
- "name": "spotMarketVault",
9
+ "name": "user",
61
10
  "isMut": true,
62
11
  "isSigner": false
63
12
  },
64
13
  {
65
- "name": "insuranceFundVault",
14
+ "name": "userStats",
66
15
  "isMut": true,
67
16
  "isSigner": false
68
17
  },
69
- {
70
- "name": "clearingHouseSigner",
71
- "isMut": false,
72
- "isSigner": false
73
- },
74
18
  {
75
19
  "name": "state",
76
- "isMut": true,
20
+ "isMut": false,
77
21
  "isSigner": false
78
22
  },
79
23
  {
80
- "name": "oracle",
24
+ "name": "authority",
81
25
  "isMut": false,
82
- "isSigner": false
26
+ "isSigner": true
83
27
  },
84
28
  {
85
- "name": "admin",
29
+ "name": "payer",
86
30
  "isMut": true,
87
31
  "isSigner": true
88
32
  },
@@ -95,94 +39,30 @@
95
39
  "name": "systemProgram",
96
40
  "isMut": false,
97
41
  "isSigner": false
98
- },
99
- {
100
- "name": "tokenProgram",
101
- "isMut": false,
102
- "isSigner": false
103
42
  }
104
43
  ],
105
44
  "args": [
106
45
  {
107
- "name": "optimalUtilization",
108
- "type": "u32"
109
- },
110
- {
111
- "name": "optimalBorrowRate",
112
- "type": "u32"
113
- },
114
- {
115
- "name": "maxBorrowRate",
116
- "type": "u32"
46
+ "name": "subAccountId",
47
+ "type": "u8"
117
48
  },
118
49
  {
119
- "name": "oracleSource",
50
+ "name": "name",
120
51
  "type": {
121
- "defined": "OracleSource"
52
+ "array": [
53
+ "u8",
54
+ 32
55
+ ]
122
56
  }
123
- },
124
- {
125
- "name": "initialAssetWeight",
126
- "type": "u128"
127
- },
128
- {
129
- "name": "maintenanceAssetWeight",
130
- "type": "u128"
131
- },
132
- {
133
- "name": "initialLiabilityWeight",
134
- "type": "u128"
135
- },
136
- {
137
- "name": "maintenanceLiabilityWeight",
138
- "type": "u128"
139
- },
140
- {
141
- "name": "imfFactor",
142
- "type": "u128"
143
- },
144
- {
145
- "name": "liquidationFee",
146
- "type": "u128"
147
- },
148
- {
149
- "name": "activeStatus",
150
- "type": "bool"
151
57
  }
152
58
  ]
153
59
  },
154
60
  {
155
- "name": "updateSerumVault",
61
+ "name": "initializeUserStats",
156
62
  "accounts": [
157
63
  {
158
- "name": "state",
159
- "isMut": true,
160
- "isSigner": false
161
- },
162
- {
163
- "name": "admin",
64
+ "name": "userStats",
164
65
  "isMut": true,
165
- "isSigner": true
166
- },
167
- {
168
- "name": "srmVault",
169
- "isMut": false,
170
- "isSigner": false
171
- }
172
- ],
173
- "args": []
174
- },
175
- {
176
- "name": "initializeSerumFulfillmentConfig",
177
- "accounts": [
178
- {
179
- "name": "baseSpotMarket",
180
- "isMut": false,
181
- "isSigner": false
182
- },
183
- {
184
- "name": "quoteSpotMarket",
185
- "isMut": false,
186
66
  "isSigner": false
187
67
  },
188
68
  {
@@ -191,76 +71,15 @@
191
71
  "isSigner": false
192
72
  },
193
73
  {
194
- "name": "serumProgram",
195
- "isMut": false,
196
- "isSigner": false
197
- },
198
- {
199
- "name": "serumMarket",
200
- "isMut": false,
201
- "isSigner": false
202
- },
203
- {
204
- "name": "serumOpenOrders",
205
- "isMut": true,
206
- "isSigner": false
207
- },
208
- {
209
- "name": "clearingHouseSigner",
74
+ "name": "authority",
210
75
  "isMut": false,
211
- "isSigner": false
212
- },
213
- {
214
- "name": "serumFulfillmentConfig",
215
- "isMut": true,
216
- "isSigner": false
217
- },
218
- {
219
- "name": "admin",
220
- "isMut": true,
221
76
  "isSigner": true
222
77
  },
223
78
  {
224
- "name": "rent",
225
- "isMut": false,
226
- "isSigner": false
227
- },
228
- {
229
- "name": "systemProgram",
230
- "isMut": false,
231
- "isSigner": false
232
- }
233
- ],
234
- "args": [
235
- {
236
- "name": "marketIndex",
237
- "type": "u16"
238
- }
239
- ]
240
- },
241
- {
242
- "name": "initializeMarket",
243
- "accounts": [
244
- {
245
- "name": "admin",
79
+ "name": "payer",
246
80
  "isMut": true,
247
81
  "isSigner": true
248
82
  },
249
- {
250
- "name": "state",
251
- "isMut": true,
252
- "isSigner": false
253
- },
254
- {
255
- "name": "market",
256
- "isMut": true,
257
- "isSigner": false
258
- },
259
- {
260
- "name": "oracle",
261
- "isMut": false,
262
- "isSigner": false
263
- },
264
83
  {
265
84
  "name": "rent",
266
85
  "isMut": false,
@@ -272,46 +91,7 @@
272
91
  "isSigner": false
273
92
  }
274
93
  ],
275
- "args": [
276
- {
277
- "name": "ammBaseAssetReserve",
278
- "type": "u128"
279
- },
280
- {
281
- "name": "ammQuoteAssetReserve",
282
- "type": "u128"
283
- },
284
- {
285
- "name": "ammPeriodicity",
286
- "type": "i64"
287
- },
288
- {
289
- "name": "ammPegMultiplier",
290
- "type": "u128"
291
- },
292
- {
293
- "name": "oracleSource",
294
- "type": {
295
- "defined": "OracleSource"
296
- }
297
- },
298
- {
299
- "name": "marginRatioInitial",
300
- "type": "u32"
301
- },
302
- {
303
- "name": "marginRatioMaintenance",
304
- "type": "u32"
305
- },
306
- {
307
- "name": "liquidationFee",
308
- "type": "u128"
309
- },
310
- {
311
- "name": "activeStatus",
312
- "type": "bool"
313
- }
314
- ]
94
+ "args": []
315
95
  },
316
96
  {
317
97
  "name": "deposit",
@@ -467,7 +247,7 @@
467
247
  ]
468
248
  },
469
249
  {
470
- "name": "updateSpotMarketCumulativeInterest",
250
+ "name": "placeOrder",
471
251
  "accounts": [
472
252
  {
473
253
  "name": "state",
@@ -475,36 +255,27 @@
475
255
  "isSigner": false
476
256
  },
477
257
  {
478
- "name": "spotMarket",
258
+ "name": "user",
479
259
  "isMut": true,
480
260
  "isSigner": false
481
- }
482
- ],
483
- "args": []
484
- },
485
- {
486
- "name": "updateSpotMarketExpiry",
487
- "accounts": [
488
- {
489
- "name": "state",
490
- "isMut": false,
491
- "isSigner": false
492
261
  },
493
262
  {
494
- "name": "spotMarket",
495
- "isMut": true,
496
- "isSigner": false
263
+ "name": "authority",
264
+ "isMut": false,
265
+ "isSigner": true
497
266
  }
498
267
  ],
499
268
  "args": [
500
269
  {
501
- "name": "expiryTs",
502
- "type": "i64"
270
+ "name": "params",
271
+ "type": {
272
+ "defined": "OrderParams"
273
+ }
503
274
  }
504
275
  ]
505
276
  },
506
277
  {
507
- "name": "settleLp",
278
+ "name": "cancelOrder",
508
279
  "accounts": [
509
280
  {
510
281
  "name": "state",
@@ -515,17 +286,24 @@
515
286
  "name": "user",
516
287
  "isMut": true,
517
288
  "isSigner": false
289
+ },
290
+ {
291
+ "name": "authority",
292
+ "isMut": false,
293
+ "isSigner": true
518
294
  }
519
295
  ],
520
296
  "args": [
521
297
  {
522
- "name": "marketIndex",
523
- "type": "u16"
298
+ "name": "orderId",
299
+ "type": {
300
+ "option": "u32"
301
+ }
524
302
  }
525
303
  ]
526
304
  },
527
305
  {
528
- "name": "removeLiquidity",
306
+ "name": "cancelOrderByUserId",
529
307
  "accounts": [
530
308
  {
531
309
  "name": "state",
@@ -545,17 +323,13 @@
545
323
  ],
546
324
  "args": [
547
325
  {
548
- "name": "sharesToBurn",
549
- "type": "u64"
550
- },
551
- {
552
- "name": "marketIndex",
553
- "type": "u16"
326
+ "name": "userOrderId",
327
+ "type": "u8"
554
328
  }
555
329
  ]
556
330
  },
557
331
  {
558
- "name": "addLiquidity",
332
+ "name": "cancelOrders",
559
333
  "accounts": [
560
334
  {
561
335
  "name": "state",
@@ -575,17 +349,31 @@
575
349
  ],
576
350
  "args": [
577
351
  {
578
- "name": "nShares",
579
- "type": "u64"
352
+ "name": "marketType",
353
+ "type": {
354
+ "option": {
355
+ "defined": "MarketType"
356
+ }
357
+ }
580
358
  },
581
359
  {
582
360
  "name": "marketIndex",
583
- "type": "u16"
361
+ "type": {
362
+ "option": "u16"
363
+ }
364
+ },
365
+ {
366
+ "name": "direction",
367
+ "type": {
368
+ "option": {
369
+ "defined": "PositionDirection"
370
+ }
371
+ }
584
372
  }
585
373
  ]
586
374
  },
587
375
  {
588
- "name": "placeOrder",
376
+ "name": "placeAndTake",
589
377
  "accounts": [
590
378
  {
591
379
  "name": "state",
@@ -597,6 +385,11 @@
597
385
  "isMut": true,
598
386
  "isSigner": false
599
387
  },
388
+ {
389
+ "name": "userStats",
390
+ "isMut": true,
391
+ "isSigner": false
392
+ },
600
393
  {
601
394
  "name": "authority",
602
395
  "isMut": false,
@@ -609,11 +402,17 @@
609
402
  "type": {
610
403
  "defined": "OrderParams"
611
404
  }
405
+ },
406
+ {
407
+ "name": "makerOrderId",
408
+ "type": {
409
+ "option": "u32"
410
+ }
612
411
  }
613
412
  ]
614
413
  },
615
414
  {
616
- "name": "cancelOrder",
415
+ "name": "placeAndMake",
617
416
  "accounts": [
618
417
  {
619
418
  "name": "state",
@@ -626,30 +425,17 @@
626
425
  "isSigner": false
627
426
  },
628
427
  {
629
- "name": "authority",
630
- "isMut": false,
631
- "isSigner": true
632
- }
633
- ],
634
- "args": [
635
- {
636
- "name": "orderId",
637
- "type": {
638
- "option": "u32"
639
- }
640
- }
641
- ]
642
- },
643
- {
644
- "name": "cancelOrderByUserId",
645
- "accounts": [
428
+ "name": "userStats",
429
+ "isMut": true,
430
+ "isSigner": false
431
+ },
646
432
  {
647
- "name": "state",
648
- "isMut": false,
433
+ "name": "taker",
434
+ "isMut": true,
649
435
  "isSigner": false
650
436
  },
651
437
  {
652
- "name": "user",
438
+ "name": "takerStats",
653
439
  "isMut": true,
654
440
  "isSigner": false
655
441
  },
@@ -661,62 +447,47 @@
661
447
  ],
662
448
  "args": [
663
449
  {
664
- "name": "userOrderId",
665
- "type": "u8"
450
+ "name": "params",
451
+ "type": {
452
+ "defined": "OrderParams"
453
+ }
454
+ },
455
+ {
456
+ "name": "takerOrderId",
457
+ "type": "u32"
666
458
  }
667
459
  ]
668
460
  },
669
461
  {
670
- "name": "fillOrder",
462
+ "name": "placeSpotOrder",
671
463
  "accounts": [
672
464
  {
673
465
  "name": "state",
674
466
  "isMut": false,
675
467
  "isSigner": false
676
468
  },
677
- {
678
- "name": "authority",
679
- "isMut": false,
680
- "isSigner": true
681
- },
682
- {
683
- "name": "filler",
684
- "isMut": true,
685
- "isSigner": false
686
- },
687
- {
688
- "name": "fillerStats",
689
- "isMut": true,
690
- "isSigner": false
691
- },
692
469
  {
693
470
  "name": "user",
694
471
  "isMut": true,
695
472
  "isSigner": false
696
473
  },
697
474
  {
698
- "name": "userStats",
699
- "isMut": true,
700
- "isSigner": false
475
+ "name": "authority",
476
+ "isMut": false,
477
+ "isSigner": true
701
478
  }
702
479
  ],
703
480
  "args": [
704
481
  {
705
- "name": "orderId",
706
- "type": {
707
- "option": "u32"
708
- }
709
- },
710
- {
711
- "name": "makerOrderId",
482
+ "name": "params",
712
483
  "type": {
713
- "option": "u32"
484
+ "defined": "OrderParams"
714
485
  }
715
486
  }
716
487
  ]
717
488
  },
718
489
  {
719
- "name": "placeAndTake",
490
+ "name": "placeAndTakeSpotOrder",
720
491
  "accounts": [
721
492
  {
722
493
  "name": "state",
@@ -746,6 +517,14 @@
746
517
  "defined": "OrderParams"
747
518
  }
748
519
  },
520
+ {
521
+ "name": "fulfillmentType",
522
+ "type": {
523
+ "option": {
524
+ "defined": "SpotFulfillmentType"
525
+ }
526
+ }
527
+ },
749
528
  {
750
529
  "name": "makerOrderId",
751
530
  "type": {
@@ -755,7 +534,7 @@
755
534
  ]
756
535
  },
757
536
  {
758
- "name": "placeAndMake",
537
+ "name": "placeAndMakeSpotOrder",
759
538
  "accounts": [
760
539
  {
761
540
  "name": "state",
@@ -802,7 +581,7 @@
802
581
  ]
803
582
  },
804
583
  {
805
- "name": "triggerOrder",
584
+ "name": "addPerpLpShares",
806
585
  "accounts": [
807
586
  {
808
587
  "name": "state",
@@ -810,30 +589,29 @@
810
589
  "isSigner": false
811
590
  },
812
591
  {
813
- "name": "authority",
814
- "isMut": false,
815
- "isSigner": true
816
- },
817
- {
818
- "name": "filler",
592
+ "name": "user",
819
593
  "isMut": true,
820
594
  "isSigner": false
821
595
  },
822
596
  {
823
- "name": "user",
824
- "isMut": true,
825
- "isSigner": false
597
+ "name": "authority",
598
+ "isMut": false,
599
+ "isSigner": true
826
600
  }
827
601
  ],
828
602
  "args": [
829
603
  {
830
- "name": "orderId",
831
- "type": "u32"
604
+ "name": "nShares",
605
+ "type": "u64"
606
+ },
607
+ {
608
+ "name": "marketIndex",
609
+ "type": "u16"
832
610
  }
833
611
  ]
834
612
  },
835
613
  {
836
- "name": "placeSpotOrder",
614
+ "name": "removePerpLpShares",
837
615
  "accounts": [
838
616
  {
839
617
  "name": "state",
@@ -853,76 +631,46 @@
853
631
  ],
854
632
  "args": [
855
633
  {
856
- "name": "params",
857
- "type": {
858
- "defined": "OrderParams"
859
- }
634
+ "name": "sharesToBurn",
635
+ "type": "u64"
636
+ },
637
+ {
638
+ "name": "marketIndex",
639
+ "type": "u16"
860
640
  }
861
641
  ]
862
642
  },
863
643
  {
864
- "name": "fillSpotOrder",
644
+ "name": "removePerpLpSharesInExpiringMarket",
865
645
  "accounts": [
866
646
  {
867
647
  "name": "state",
868
648
  "isMut": false,
869
649
  "isSigner": false
870
650
  },
871
- {
872
- "name": "authority",
873
- "isMut": false,
874
- "isSigner": true
875
- },
876
- {
877
- "name": "filler",
878
- "isMut": true,
879
- "isSigner": false
880
- },
881
- {
882
- "name": "fillerStats",
883
- "isMut": true,
884
- "isSigner": false
885
- },
886
651
  {
887
652
  "name": "user",
888
653
  "isMut": true,
889
654
  "isSigner": false
890
- },
891
- {
892
- "name": "userStats",
893
- "isMut": true,
894
- "isSigner": false
895
655
  }
896
656
  ],
897
657
  "args": [
898
658
  {
899
- "name": "orderId",
900
- "type": {
901
- "option": "u32"
902
- }
903
- },
904
- {
905
- "name": "fulfillmentType",
906
- "type": {
907
- "option": {
908
- "defined": "SpotFulfillmentType"
909
- }
910
- }
659
+ "name": "sharesToBurn",
660
+ "type": "u64"
911
661
  },
912
662
  {
913
- "name": "makerOrderId",
914
- "type": {
915
- "option": "u32"
916
- }
663
+ "name": "marketIndex",
664
+ "type": "u16"
917
665
  }
918
666
  ]
919
667
  },
920
668
  {
921
- "name": "updateAmms",
669
+ "name": "updateUserName",
922
670
  "accounts": [
923
671
  {
924
- "name": "state",
925
- "isMut": false,
672
+ "name": "user",
673
+ "isMut": true,
926
674
  "isSigner": false
927
675
  },
928
676
  {
@@ -933,24 +681,48 @@
933
681
  ],
934
682
  "args": [
935
683
  {
936
- "name": "marketIndexes",
684
+ "name": "subAccountId",
685
+ "type": "u8"
686
+ },
687
+ {
688
+ "name": "name",
937
689
  "type": {
938
690
  "array": [
939
- "u16",
940
- 5
691
+ "u8",
692
+ 32
941
693
  ]
942
694
  }
943
695
  }
944
696
  ]
945
697
  },
946
698
  {
947
- "name": "settlePnl",
699
+ "name": "updateUserCustomMarginRatio",
948
700
  "accounts": [
949
701
  {
950
- "name": "state",
951
- "isMut": false,
952
- "isSigner": false
702
+ "name": "user",
703
+ "isMut": true,
704
+ "isSigner": false
705
+ },
706
+ {
707
+ "name": "authority",
708
+ "isMut": false,
709
+ "isSigner": true
710
+ }
711
+ ],
712
+ "args": [
713
+ {
714
+ "name": "subAccountId",
715
+ "type": "u8"
953
716
  },
717
+ {
718
+ "name": "marginRatio",
719
+ "type": "u32"
720
+ }
721
+ ]
722
+ },
723
+ {
724
+ "name": "updateUserDelegate",
725
+ "accounts": [
954
726
  {
955
727
  "name": "user",
956
728
  "isMut": true,
@@ -964,19 +736,191 @@
964
736
  ],
965
737
  "args": [
966
738
  {
967
- "name": "marketIndex",
968
- "type": "u16"
739
+ "name": "subAccountId",
740
+ "type": "u8"
741
+ },
742
+ {
743
+ "name": "delegate",
744
+ "type": "publicKey"
969
745
  }
970
746
  ]
971
747
  },
972
748
  {
973
- "name": "settleExpiredMarket",
749
+ "name": "deleteUser",
750
+ "accounts": [
751
+ {
752
+ "name": "user",
753
+ "isMut": true,
754
+ "isSigner": false
755
+ },
756
+ {
757
+ "name": "userStats",
758
+ "isMut": true,
759
+ "isSigner": false
760
+ },
761
+ {
762
+ "name": "state",
763
+ "isMut": false,
764
+ "isSigner": false
765
+ },
766
+ {
767
+ "name": "authority",
768
+ "isMut": false,
769
+ "isSigner": true
770
+ }
771
+ ],
772
+ "args": []
773
+ },
774
+ {
775
+ "name": "fillOrder",
776
+ "accounts": [
777
+ {
778
+ "name": "state",
779
+ "isMut": false,
780
+ "isSigner": false
781
+ },
782
+ {
783
+ "name": "authority",
784
+ "isMut": false,
785
+ "isSigner": true
786
+ },
787
+ {
788
+ "name": "filler",
789
+ "isMut": true,
790
+ "isSigner": false
791
+ },
792
+ {
793
+ "name": "fillerStats",
794
+ "isMut": true,
795
+ "isSigner": false
796
+ },
797
+ {
798
+ "name": "user",
799
+ "isMut": true,
800
+ "isSigner": false
801
+ },
802
+ {
803
+ "name": "userStats",
804
+ "isMut": true,
805
+ "isSigner": false
806
+ }
807
+ ],
808
+ "args": [
809
+ {
810
+ "name": "orderId",
811
+ "type": {
812
+ "option": "u32"
813
+ }
814
+ },
815
+ {
816
+ "name": "makerOrderId",
817
+ "type": {
818
+ "option": "u32"
819
+ }
820
+ }
821
+ ]
822
+ },
823
+ {
824
+ "name": "fillSpotOrder",
825
+ "accounts": [
826
+ {
827
+ "name": "state",
828
+ "isMut": false,
829
+ "isSigner": false
830
+ },
831
+ {
832
+ "name": "authority",
833
+ "isMut": false,
834
+ "isSigner": true
835
+ },
836
+ {
837
+ "name": "filler",
838
+ "isMut": true,
839
+ "isSigner": false
840
+ },
841
+ {
842
+ "name": "fillerStats",
843
+ "isMut": true,
844
+ "isSigner": false
845
+ },
846
+ {
847
+ "name": "user",
848
+ "isMut": true,
849
+ "isSigner": false
850
+ },
851
+ {
852
+ "name": "userStats",
853
+ "isMut": true,
854
+ "isSigner": false
855
+ }
856
+ ],
857
+ "args": [
858
+ {
859
+ "name": "orderId",
860
+ "type": {
861
+ "option": "u32"
862
+ }
863
+ },
864
+ {
865
+ "name": "fulfillmentType",
866
+ "type": {
867
+ "option": {
868
+ "defined": "SpotFulfillmentType"
869
+ }
870
+ }
871
+ },
872
+ {
873
+ "name": "makerOrderId",
874
+ "type": {
875
+ "option": "u32"
876
+ }
877
+ }
878
+ ]
879
+ },
880
+ {
881
+ "name": "triggerOrder",
882
+ "accounts": [
883
+ {
884
+ "name": "state",
885
+ "isMut": false,
886
+ "isSigner": false
887
+ },
888
+ {
889
+ "name": "authority",
890
+ "isMut": false,
891
+ "isSigner": true
892
+ },
893
+ {
894
+ "name": "filler",
895
+ "isMut": true,
896
+ "isSigner": false
897
+ },
898
+ {
899
+ "name": "user",
900
+ "isMut": true,
901
+ "isSigner": false
902
+ }
903
+ ],
904
+ "args": [
905
+ {
906
+ "name": "orderId",
907
+ "type": "u32"
908
+ }
909
+ ]
910
+ },
911
+ {
912
+ "name": "settlePnl",
974
913
  "accounts": [
975
914
  {
976
915
  "name": "state",
977
916
  "isMut": false,
978
917
  "isSigner": false
979
918
  },
919
+ {
920
+ "name": "user",
921
+ "isMut": true,
922
+ "isSigner": false
923
+ },
980
924
  {
981
925
  "name": "authority",
982
926
  "isMut": false,
@@ -991,7 +935,23 @@
991
935
  ]
992
936
  },
993
937
  {
994
- "name": "settleExpiredPosition",
938
+ "name": "settleFundingPayment",
939
+ "accounts": [
940
+ {
941
+ "name": "state",
942
+ "isMut": false,
943
+ "isSigner": false
944
+ },
945
+ {
946
+ "name": "user",
947
+ "isMut": true,
948
+ "isSigner": false
949
+ }
950
+ ],
951
+ "args": []
952
+ },
953
+ {
954
+ "name": "settleLp",
995
955
  "accounts": [
996
956
  {
997
957
  "name": "state",
@@ -1002,6 +962,22 @@
1002
962
  "name": "user",
1003
963
  "isMut": true,
1004
964
  "isSigner": false
965
+ }
966
+ ],
967
+ "args": [
968
+ {
969
+ "name": "marketIndex",
970
+ "type": "u16"
971
+ }
972
+ ]
973
+ },
974
+ {
975
+ "name": "settleExpiredMarket",
976
+ "accounts": [
977
+ {
978
+ "name": "state",
979
+ "isMut": false,
980
+ "isSigner": false
1005
981
  },
1006
982
  {
1007
983
  "name": "authority",
@@ -1380,7 +1356,7 @@
1380
1356
  ]
1381
1357
  },
1382
1358
  {
1383
- "name": "moveAmmPrice",
1359
+ "name": "settleRevenueToInsuranceFund",
1384
1360
  "accounts": [
1385
1361
  {
1386
1362
  "name": "state",
@@ -1388,167 +1364,139 @@
1388
1364
  "isSigner": false
1389
1365
  },
1390
1366
  {
1391
- "name": "admin",
1367
+ "name": "spotMarket",
1392
1368
  "isMut": false,
1393
- "isSigner": true
1369
+ "isSigner": false
1394
1370
  },
1395
1371
  {
1396
- "name": "perpMarket",
1372
+ "name": "spotMarketVault",
1397
1373
  "isMut": true,
1398
1374
  "isSigner": false
1399
- }
1400
- ],
1401
- "args": [
1375
+ },
1402
1376
  {
1403
- "name": "baseAssetReserve",
1404
- "type": "u128"
1377
+ "name": "clearingHouseSigner",
1378
+ "isMut": false,
1379
+ "isSigner": false
1405
1380
  },
1406
1381
  {
1407
- "name": "quoteAssetReserve",
1408
- "type": "u128"
1382
+ "name": "insuranceFundVault",
1383
+ "isMut": true,
1384
+ "isSigner": false
1409
1385
  },
1410
1386
  {
1411
- "name": "sqrtK",
1412
- "type": "u128"
1387
+ "name": "tokenProgram",
1388
+ "isMut": false,
1389
+ "isSigner": false
1390
+ }
1391
+ ],
1392
+ "args": [
1393
+ {
1394
+ "name": "spotMarketIndex",
1395
+ "type": "u16"
1413
1396
  }
1414
1397
  ]
1415
1398
  },
1416
1399
  {
1417
- "name": "updateMarketExpiry",
1400
+ "name": "updateFundingRate",
1418
1401
  "accounts": [
1419
1402
  {
1420
1403
  "name": "state",
1421
1404
  "isMut": false,
1422
1405
  "isSigner": false
1423
1406
  },
1424
- {
1425
- "name": "admin",
1426
- "isMut": false,
1427
- "isSigner": true
1428
- },
1429
1407
  {
1430
1408
  "name": "perpMarket",
1431
1409
  "isMut": true,
1432
1410
  "isSigner": false
1411
+ },
1412
+ {
1413
+ "name": "oracle",
1414
+ "isMut": false,
1415
+ "isSigner": false
1433
1416
  }
1434
1417
  ],
1435
1418
  "args": [
1436
1419
  {
1437
- "name": "expiryTs",
1438
- "type": "i64"
1420
+ "name": "marketIndex",
1421
+ "type": "u16"
1439
1422
  }
1440
1423
  ]
1441
1424
  },
1442
1425
  {
1443
- "name": "settleExpiredMarketPoolsToRevenuePool",
1426
+ "name": "updateSpotMarketCumulativeInterest",
1444
1427
  "accounts": [
1445
1428
  {
1446
1429
  "name": "state",
1447
1430
  "isMut": false,
1448
1431
  "isSigner": false
1449
1432
  },
1450
- {
1451
- "name": "admin",
1452
- "isMut": false,
1453
- "isSigner": true
1454
- },
1455
1433
  {
1456
1434
  "name": "spotMarket",
1457
1435
  "isMut": true,
1458
1436
  "isSigner": false
1459
1437
  },
1460
1438
  {
1461
- "name": "perpMarket",
1462
- "isMut": true,
1439
+ "name": "oracle",
1440
+ "isMut": false,
1463
1441
  "isSigner": false
1464
1442
  }
1465
1443
  ],
1466
1444
  "args": []
1467
1445
  },
1468
1446
  {
1469
- "name": "depositIntoMarketFeePool",
1447
+ "name": "updateAmms",
1470
1448
  "accounts": [
1471
1449
  {
1472
1450
  "name": "state",
1473
- "isMut": true,
1474
- "isSigner": false
1475
- },
1476
- {
1477
- "name": "market",
1478
- "isMut": true,
1479
- "isSigner": false
1480
- },
1481
- {
1482
- "name": "admin",
1483
- "isMut": false,
1484
- "isSigner": true
1485
- },
1486
- {
1487
- "name": "sourceVault",
1488
- "isMut": true,
1489
- "isSigner": false
1490
- },
1491
- {
1492
- "name": "clearingHouseSigner",
1493
1451
  "isMut": false,
1494
1452
  "isSigner": false
1495
1453
  },
1496
1454
  {
1497
- "name": "quoteSpotMarket",
1498
- "isMut": true,
1499
- "isSigner": false
1500
- },
1501
- {
1502
- "name": "spotMarketVault",
1503
- "isMut": true,
1504
- "isSigner": false
1505
- },
1506
- {
1507
- "name": "tokenProgram",
1455
+ "name": "authority",
1508
1456
  "isMut": false,
1509
- "isSigner": false
1457
+ "isSigner": true
1510
1458
  }
1511
1459
  ],
1512
1460
  "args": [
1513
1461
  {
1514
- "name": "amount",
1515
- "type": "u64"
1462
+ "name": "marketIndexes",
1463
+ "type": {
1464
+ "array": [
1465
+ "u16",
1466
+ 5
1467
+ ]
1468
+ }
1516
1469
  }
1517
1470
  ]
1518
1471
  },
1519
1472
  {
1520
- "name": "repegAmmCurve",
1473
+ "name": "updateSpotMarketExpiry",
1521
1474
  "accounts": [
1522
1475
  {
1523
- "name": "state",
1476
+ "name": "admin",
1524
1477
  "isMut": false,
1525
- "isSigner": false
1526
- },
1527
- {
1528
- "name": "market",
1529
- "isMut": true,
1530
- "isSigner": false
1478
+ "isSigner": true
1531
1479
  },
1532
1480
  {
1533
- "name": "oracle",
1481
+ "name": "state",
1534
1482
  "isMut": false,
1535
1483
  "isSigner": false
1536
1484
  },
1537
1485
  {
1538
- "name": "admin",
1539
- "isMut": false,
1540
- "isSigner": true
1486
+ "name": "spotMarket",
1487
+ "isMut": true,
1488
+ "isSigner": false
1541
1489
  }
1542
1490
  ],
1543
1491
  "args": [
1544
1492
  {
1545
- "name": "newPegCandidate",
1546
- "type": "u128"
1493
+ "name": "expiryTs",
1494
+ "type": "i64"
1547
1495
  }
1548
1496
  ]
1549
1497
  },
1550
1498
  {
1551
- "name": "updateAmmOracleTwap",
1499
+ "name": "updateUserQuoteAssetInsuranceStake",
1552
1500
  "accounts": [
1553
1501
  {
1554
1502
  "name": "state",
@@ -1556,54 +1504,43 @@
1556
1504
  "isSigner": false
1557
1505
  },
1558
1506
  {
1559
- "name": "market",
1560
- "isMut": true,
1561
- "isSigner": false
1562
- },
1563
- {
1564
- "name": "oracle",
1507
+ "name": "spotMarket",
1565
1508
  "isMut": false,
1566
1509
  "isSigner": false
1567
1510
  },
1568
1511
  {
1569
- "name": "admin",
1570
- "isMut": false,
1571
- "isSigner": true
1572
- }
1573
- ],
1574
- "args": []
1575
- },
1576
- {
1577
- "name": "resetAmmOracleTwap",
1578
- "accounts": [
1579
- {
1580
- "name": "state",
1581
- "isMut": false,
1512
+ "name": "insuranceFundStake",
1513
+ "isMut": true,
1582
1514
  "isSigner": false
1583
1515
  },
1584
1516
  {
1585
- "name": "market",
1517
+ "name": "userStats",
1586
1518
  "isMut": true,
1587
1519
  "isSigner": false
1588
1520
  },
1589
1521
  {
1590
- "name": "oracle",
1522
+ "name": "authority",
1591
1523
  "isMut": false,
1592
- "isSigner": false
1524
+ "isSigner": true
1593
1525
  },
1594
1526
  {
1595
- "name": "admin",
1596
- "isMut": false,
1597
- "isSigner": true
1527
+ "name": "insuranceFundVault",
1528
+ "isMut": true,
1529
+ "isSigner": false
1598
1530
  }
1599
1531
  ],
1600
1532
  "args": []
1601
1533
  },
1602
1534
  {
1603
- "name": "initializeUser",
1535
+ "name": "initializeInsuranceFundStake",
1604
1536
  "accounts": [
1605
1537
  {
1606
- "name": "user",
1538
+ "name": "spotMarket",
1539
+ "isMut": false,
1540
+ "isSigner": false
1541
+ },
1542
+ {
1543
+ "name": "insuranceFundStake",
1607
1544
  "isMut": true,
1608
1545
  "isSigner": false
1609
1546
  },
@@ -1640,30 +1577,31 @@
1640
1577
  ],
1641
1578
  "args": [
1642
1579
  {
1643
- "name": "userId",
1644
- "type": "u8"
1645
- },
1646
- {
1647
- "name": "name",
1648
- "type": {
1649
- "array": [
1650
- "u8",
1651
- 32
1652
- ]
1653
- }
1580
+ "name": "marketIndex",
1581
+ "type": "u16"
1654
1582
  }
1655
1583
  ]
1656
1584
  },
1657
1585
  {
1658
- "name": "initializeUserStats",
1586
+ "name": "addInsuranceFundStake",
1659
1587
  "accounts": [
1660
1588
  {
1661
- "name": "userStats",
1589
+ "name": "state",
1590
+ "isMut": false,
1591
+ "isSigner": false
1592
+ },
1593
+ {
1594
+ "name": "spotMarket",
1595
+ "isMut": false,
1596
+ "isSigner": false
1597
+ },
1598
+ {
1599
+ "name": "insuranceFundStake",
1662
1600
  "isMut": true,
1663
1601
  "isSigner": false
1664
1602
  },
1665
1603
  {
1666
- "name": "state",
1604
+ "name": "userStats",
1667
1605
  "isMut": true,
1668
1606
  "isSigner": false
1669
1607
  },
@@ -1673,83 +1611,57 @@
1673
1611
  "isSigner": true
1674
1612
  },
1675
1613
  {
1676
- "name": "payer",
1614
+ "name": "spotMarketVault",
1677
1615
  "isMut": true,
1678
- "isSigner": true
1616
+ "isSigner": false
1679
1617
  },
1680
1618
  {
1681
- "name": "rent",
1682
- "isMut": false,
1619
+ "name": "insuranceFundVault",
1620
+ "isMut": true,
1683
1621
  "isSigner": false
1684
1622
  },
1685
1623
  {
1686
- "name": "systemProgram",
1624
+ "name": "clearingHouseSigner",
1687
1625
  "isMut": false,
1688
1626
  "isSigner": false
1689
- }
1690
- ],
1691
- "args": []
1692
- },
1693
- {
1694
- "name": "updateUserName",
1695
- "accounts": [
1627
+ },
1696
1628
  {
1697
- "name": "user",
1629
+ "name": "userTokenAccount",
1698
1630
  "isMut": true,
1699
1631
  "isSigner": false
1700
1632
  },
1701
1633
  {
1702
- "name": "authority",
1634
+ "name": "tokenProgram",
1703
1635
  "isMut": false,
1704
- "isSigner": true
1636
+ "isSigner": false
1705
1637
  }
1706
1638
  ],
1707
1639
  "args": [
1708
1640
  {
1709
- "name": "userId",
1710
- "type": "u8"
1641
+ "name": "marketIndex",
1642
+ "type": "u16"
1711
1643
  },
1712
1644
  {
1713
- "name": "name",
1714
- "type": {
1715
- "array": [
1716
- "u8",
1717
- 32
1718
- ]
1719
- }
1645
+ "name": "amount",
1646
+ "type": "u64"
1720
1647
  }
1721
1648
  ]
1722
1649
  },
1723
1650
  {
1724
- "name": "updateUserCustomMarginRatio",
1651
+ "name": "requestRemoveInsuranceFundStake",
1725
1652
  "accounts": [
1726
1653
  {
1727
- "name": "user",
1728
- "isMut": true,
1654
+ "name": "spotMarket",
1655
+ "isMut": false,
1729
1656
  "isSigner": false
1730
1657
  },
1731
1658
  {
1732
- "name": "authority",
1733
- "isMut": false,
1734
- "isSigner": true
1735
- }
1736
- ],
1737
- "args": [
1738
- {
1739
- "name": "userId",
1740
- "type": "u8"
1659
+ "name": "insuranceFundStake",
1660
+ "isMut": true,
1661
+ "isSigner": false
1741
1662
  },
1742
1663
  {
1743
- "name": "marginRatio",
1744
- "type": "u32"
1745
- }
1746
- ]
1747
- },
1748
- {
1749
- "name": "updateUserDelegate",
1750
- "accounts": [
1751
- {
1752
- "name": "user",
1664
+ "name": "userStats",
1753
1665
  "isMut": true,
1754
1666
  "isSigner": false
1755
1667
  },
@@ -1757,24 +1669,34 @@
1757
1669
  "name": "authority",
1758
1670
  "isMut": false,
1759
1671
  "isSigner": true
1672
+ },
1673
+ {
1674
+ "name": "insuranceFundVault",
1675
+ "isMut": true,
1676
+ "isSigner": false
1760
1677
  }
1761
1678
  ],
1762
1679
  "args": [
1763
1680
  {
1764
- "name": "userId",
1765
- "type": "u8"
1681
+ "name": "marketIndex",
1682
+ "type": "u16"
1766
1683
  },
1767
1684
  {
1768
- "name": "delegate",
1769
- "type": "publicKey"
1685
+ "name": "amount",
1686
+ "type": "u64"
1770
1687
  }
1771
1688
  ]
1772
1689
  },
1773
1690
  {
1774
- "name": "deleteUser",
1691
+ "name": "cancelRequestRemoveInsuranceFundStake",
1775
1692
  "accounts": [
1776
1693
  {
1777
- "name": "user",
1694
+ "name": "spotMarket",
1695
+ "isMut": false,
1696
+ "isSigner": false
1697
+ },
1698
+ {
1699
+ "name": "insuranceFundStake",
1778
1700
  "isMut": true,
1779
1701
  "isSigner": false
1780
1702
  },
@@ -1784,20 +1706,569 @@
1784
1706
  "isSigner": false
1785
1707
  },
1786
1708
  {
1787
- "name": "state",
1709
+ "name": "authority",
1710
+ "isMut": false,
1711
+ "isSigner": true
1712
+ },
1713
+ {
1714
+ "name": "insuranceFundVault",
1715
+ "isMut": true,
1716
+ "isSigner": false
1717
+ }
1718
+ ],
1719
+ "args": [
1720
+ {
1721
+ "name": "marketIndex",
1722
+ "type": "u16"
1723
+ }
1724
+ ]
1725
+ },
1726
+ {
1727
+ "name": "removeInsuranceFundStake",
1728
+ "accounts": [
1729
+ {
1730
+ "name": "state",
1731
+ "isMut": false,
1732
+ "isSigner": false
1733
+ },
1734
+ {
1735
+ "name": "spotMarket",
1736
+ "isMut": false,
1737
+ "isSigner": false
1738
+ },
1739
+ {
1740
+ "name": "insuranceFundStake",
1741
+ "isMut": true,
1742
+ "isSigner": false
1743
+ },
1744
+ {
1745
+ "name": "userStats",
1746
+ "isMut": true,
1747
+ "isSigner": false
1748
+ },
1749
+ {
1750
+ "name": "authority",
1751
+ "isMut": false,
1752
+ "isSigner": true
1753
+ },
1754
+ {
1755
+ "name": "insuranceFundVault",
1756
+ "isMut": true,
1757
+ "isSigner": false
1758
+ },
1759
+ {
1760
+ "name": "clearingHouseSigner",
1761
+ "isMut": false,
1762
+ "isSigner": false
1763
+ },
1764
+ {
1765
+ "name": "userTokenAccount",
1766
+ "isMut": true,
1767
+ "isSigner": false
1768
+ },
1769
+ {
1770
+ "name": "tokenProgram",
1771
+ "isMut": false,
1772
+ "isSigner": false
1773
+ }
1774
+ ],
1775
+ "args": [
1776
+ {
1777
+ "name": "marketIndex",
1778
+ "type": "u16"
1779
+ }
1780
+ ]
1781
+ },
1782
+ {
1783
+ "name": "initialize",
1784
+ "accounts": [
1785
+ {
1786
+ "name": "admin",
1787
+ "isMut": true,
1788
+ "isSigner": true
1789
+ },
1790
+ {
1791
+ "name": "state",
1792
+ "isMut": true,
1793
+ "isSigner": false
1794
+ },
1795
+ {
1796
+ "name": "quoteAssetMint",
1797
+ "isMut": false,
1798
+ "isSigner": false
1799
+ },
1800
+ {
1801
+ "name": "clearingHouseSigner",
1802
+ "isMut": false,
1803
+ "isSigner": false
1804
+ },
1805
+ {
1806
+ "name": "rent",
1807
+ "isMut": false,
1808
+ "isSigner": false
1809
+ },
1810
+ {
1811
+ "name": "systemProgram",
1812
+ "isMut": false,
1813
+ "isSigner": false
1814
+ },
1815
+ {
1816
+ "name": "tokenProgram",
1817
+ "isMut": false,
1818
+ "isSigner": false
1819
+ }
1820
+ ],
1821
+ "args": []
1822
+ },
1823
+ {
1824
+ "name": "initializeSpotMarket",
1825
+ "accounts": [
1826
+ {
1827
+ "name": "spotMarket",
1828
+ "isMut": true,
1829
+ "isSigner": false
1830
+ },
1831
+ {
1832
+ "name": "spotMarketMint",
1833
+ "isMut": false,
1834
+ "isSigner": false
1835
+ },
1836
+ {
1837
+ "name": "spotMarketVault",
1838
+ "isMut": true,
1839
+ "isSigner": false
1840
+ },
1841
+ {
1842
+ "name": "insuranceFundVault",
1843
+ "isMut": true,
1844
+ "isSigner": false
1845
+ },
1846
+ {
1847
+ "name": "clearingHouseSigner",
1848
+ "isMut": false,
1849
+ "isSigner": false
1850
+ },
1851
+ {
1852
+ "name": "state",
1853
+ "isMut": true,
1854
+ "isSigner": false
1855
+ },
1856
+ {
1857
+ "name": "oracle",
1858
+ "isMut": false,
1859
+ "isSigner": false
1860
+ },
1861
+ {
1862
+ "name": "admin",
1863
+ "isMut": true,
1864
+ "isSigner": true
1865
+ },
1866
+ {
1867
+ "name": "rent",
1868
+ "isMut": false,
1869
+ "isSigner": false
1870
+ },
1871
+ {
1872
+ "name": "systemProgram",
1873
+ "isMut": false,
1874
+ "isSigner": false
1875
+ },
1876
+ {
1877
+ "name": "tokenProgram",
1878
+ "isMut": false,
1879
+ "isSigner": false
1880
+ }
1881
+ ],
1882
+ "args": [
1883
+ {
1884
+ "name": "optimalUtilization",
1885
+ "type": "u32"
1886
+ },
1887
+ {
1888
+ "name": "optimalBorrowRate",
1889
+ "type": "u32"
1890
+ },
1891
+ {
1892
+ "name": "maxBorrowRate",
1893
+ "type": "u32"
1894
+ },
1895
+ {
1896
+ "name": "oracleSource",
1897
+ "type": {
1898
+ "defined": "OracleSource"
1899
+ }
1900
+ },
1901
+ {
1902
+ "name": "initialAssetWeight",
1903
+ "type": "u128"
1904
+ },
1905
+ {
1906
+ "name": "maintenanceAssetWeight",
1907
+ "type": "u128"
1908
+ },
1909
+ {
1910
+ "name": "initialLiabilityWeight",
1911
+ "type": "u128"
1912
+ },
1913
+ {
1914
+ "name": "maintenanceLiabilityWeight",
1915
+ "type": "u128"
1916
+ },
1917
+ {
1918
+ "name": "imfFactor",
1919
+ "type": "u128"
1920
+ },
1921
+ {
1922
+ "name": "liquidationFee",
1923
+ "type": "u128"
1924
+ },
1925
+ {
1926
+ "name": "activeStatus",
1927
+ "type": "bool"
1928
+ }
1929
+ ]
1930
+ },
1931
+ {
1932
+ "name": "initializeSerumFulfillmentConfig",
1933
+ "accounts": [
1934
+ {
1935
+ "name": "baseSpotMarket",
1936
+ "isMut": false,
1937
+ "isSigner": false
1938
+ },
1939
+ {
1940
+ "name": "quoteSpotMarket",
1941
+ "isMut": false,
1942
+ "isSigner": false
1943
+ },
1944
+ {
1945
+ "name": "state",
1946
+ "isMut": true,
1947
+ "isSigner": false
1948
+ },
1949
+ {
1950
+ "name": "serumProgram",
1951
+ "isMut": false,
1952
+ "isSigner": false
1953
+ },
1954
+ {
1955
+ "name": "serumMarket",
1956
+ "isMut": false,
1957
+ "isSigner": false
1958
+ },
1959
+ {
1960
+ "name": "serumOpenOrders",
1961
+ "isMut": true,
1962
+ "isSigner": false
1963
+ },
1964
+ {
1965
+ "name": "clearingHouseSigner",
1966
+ "isMut": false,
1967
+ "isSigner": false
1968
+ },
1969
+ {
1970
+ "name": "serumFulfillmentConfig",
1971
+ "isMut": true,
1972
+ "isSigner": false
1973
+ },
1974
+ {
1975
+ "name": "admin",
1976
+ "isMut": true,
1977
+ "isSigner": true
1978
+ },
1979
+ {
1980
+ "name": "rent",
1981
+ "isMut": false,
1982
+ "isSigner": false
1983
+ },
1984
+ {
1985
+ "name": "systemProgram",
1986
+ "isMut": false,
1987
+ "isSigner": false
1988
+ }
1989
+ ],
1990
+ "args": [
1991
+ {
1992
+ "name": "marketIndex",
1993
+ "type": "u16"
1994
+ }
1995
+ ]
1996
+ },
1997
+ {
1998
+ "name": "updateSerumVault",
1999
+ "accounts": [
2000
+ {
2001
+ "name": "state",
2002
+ "isMut": true,
2003
+ "isSigner": false
2004
+ },
2005
+ {
2006
+ "name": "admin",
2007
+ "isMut": true,
2008
+ "isSigner": true
2009
+ },
2010
+ {
2011
+ "name": "srmVault",
2012
+ "isMut": false,
2013
+ "isSigner": false
2014
+ }
2015
+ ],
2016
+ "args": []
2017
+ },
2018
+ {
2019
+ "name": "initializePerpMarket",
2020
+ "accounts": [
2021
+ {
2022
+ "name": "admin",
2023
+ "isMut": true,
2024
+ "isSigner": true
2025
+ },
2026
+ {
2027
+ "name": "state",
2028
+ "isMut": true,
2029
+ "isSigner": false
2030
+ },
2031
+ {
2032
+ "name": "perpMarket",
2033
+ "isMut": true,
2034
+ "isSigner": false
2035
+ },
2036
+ {
2037
+ "name": "oracle",
2038
+ "isMut": false,
2039
+ "isSigner": false
2040
+ },
2041
+ {
2042
+ "name": "rent",
2043
+ "isMut": false,
2044
+ "isSigner": false
2045
+ },
2046
+ {
2047
+ "name": "systemProgram",
2048
+ "isMut": false,
2049
+ "isSigner": false
2050
+ }
2051
+ ],
2052
+ "args": [
2053
+ {
2054
+ "name": "ammBaseAssetReserve",
2055
+ "type": "u128"
2056
+ },
2057
+ {
2058
+ "name": "ammQuoteAssetReserve",
2059
+ "type": "u128"
2060
+ },
2061
+ {
2062
+ "name": "ammPeriodicity",
2063
+ "type": "i64"
2064
+ },
2065
+ {
2066
+ "name": "ammPegMultiplier",
2067
+ "type": "u128"
2068
+ },
2069
+ {
2070
+ "name": "oracleSource",
2071
+ "type": {
2072
+ "defined": "OracleSource"
2073
+ }
2074
+ },
2075
+ {
2076
+ "name": "marginRatioInitial",
2077
+ "type": "u32"
2078
+ },
2079
+ {
2080
+ "name": "marginRatioMaintenance",
2081
+ "type": "u32"
2082
+ },
2083
+ {
2084
+ "name": "liquidationFee",
2085
+ "type": "u128"
2086
+ },
2087
+ {
2088
+ "name": "activeStatus",
2089
+ "type": "bool"
2090
+ },
2091
+ {
2092
+ "name": "name",
2093
+ "type": {
2094
+ "array": [
2095
+ "u8",
2096
+ 32
2097
+ ]
2098
+ }
2099
+ }
2100
+ ]
2101
+ },
2102
+ {
2103
+ "name": "moveAmmPrice",
2104
+ "accounts": [
2105
+ {
2106
+ "name": "admin",
2107
+ "isMut": false,
2108
+ "isSigner": true
2109
+ },
2110
+ {
2111
+ "name": "state",
2112
+ "isMut": false,
2113
+ "isSigner": false
2114
+ },
2115
+ {
2116
+ "name": "perpMarket",
2117
+ "isMut": true,
2118
+ "isSigner": false
2119
+ }
2120
+ ],
2121
+ "args": [
2122
+ {
2123
+ "name": "baseAssetReserve",
2124
+ "type": "u128"
2125
+ },
2126
+ {
2127
+ "name": "quoteAssetReserve",
2128
+ "type": "u128"
2129
+ },
2130
+ {
2131
+ "name": "sqrtK",
2132
+ "type": "u128"
2133
+ }
2134
+ ]
2135
+ },
2136
+ {
2137
+ "name": "updatePerpMarketExpiry",
2138
+ "accounts": [
2139
+ {
2140
+ "name": "admin",
2141
+ "isMut": false,
2142
+ "isSigner": true
2143
+ },
2144
+ {
2145
+ "name": "state",
2146
+ "isMut": false,
2147
+ "isSigner": false
2148
+ },
2149
+ {
2150
+ "name": "perpMarket",
2151
+ "isMut": true,
2152
+ "isSigner": false
2153
+ }
2154
+ ],
2155
+ "args": [
2156
+ {
2157
+ "name": "expiryTs",
2158
+ "type": "i64"
2159
+ }
2160
+ ]
2161
+ },
2162
+ {
2163
+ "name": "settleExpiredMarketPoolsToRevenuePool",
2164
+ "accounts": [
2165
+ {
2166
+ "name": "state",
2167
+ "isMut": false,
2168
+ "isSigner": false
2169
+ },
2170
+ {
2171
+ "name": "admin",
2172
+ "isMut": false,
2173
+ "isSigner": true
2174
+ },
2175
+ {
2176
+ "name": "spotMarket",
2177
+ "isMut": true,
2178
+ "isSigner": false
2179
+ },
2180
+ {
2181
+ "name": "perpMarket",
2182
+ "isMut": true,
2183
+ "isSigner": false
2184
+ }
2185
+ ],
2186
+ "args": []
2187
+ },
2188
+ {
2189
+ "name": "depositIntoPerpMarketFeePool",
2190
+ "accounts": [
2191
+ {
2192
+ "name": "state",
2193
+ "isMut": true,
2194
+ "isSigner": false
2195
+ },
2196
+ {
2197
+ "name": "perpMarket",
2198
+ "isMut": true,
2199
+ "isSigner": false
2200
+ },
2201
+ {
2202
+ "name": "admin",
2203
+ "isMut": false,
2204
+ "isSigner": true
2205
+ },
2206
+ {
2207
+ "name": "sourceVault",
2208
+ "isMut": true,
2209
+ "isSigner": false
2210
+ },
2211
+ {
2212
+ "name": "clearingHouseSigner",
2213
+ "isMut": false,
2214
+ "isSigner": false
2215
+ },
2216
+ {
2217
+ "name": "quoteSpotMarket",
2218
+ "isMut": true,
2219
+ "isSigner": false
2220
+ },
2221
+ {
2222
+ "name": "spotMarketVault",
2223
+ "isMut": true,
2224
+ "isSigner": false
2225
+ },
2226
+ {
2227
+ "name": "tokenProgram",
2228
+ "isMut": false,
2229
+ "isSigner": false
2230
+ }
2231
+ ],
2232
+ "args": [
2233
+ {
2234
+ "name": "amount",
2235
+ "type": "u64"
2236
+ }
2237
+ ]
2238
+ },
2239
+ {
2240
+ "name": "repegAmmCurve",
2241
+ "accounts": [
2242
+ {
2243
+ "name": "state",
1788
2244
  "isMut": false,
1789
2245
  "isSigner": false
1790
2246
  },
1791
2247
  {
1792
- "name": "authority",
2248
+ "name": "perpMarket",
2249
+ "isMut": true,
2250
+ "isSigner": false
2251
+ },
2252
+ {
2253
+ "name": "oracle",
2254
+ "isMut": false,
2255
+ "isSigner": false
2256
+ },
2257
+ {
2258
+ "name": "admin",
1793
2259
  "isMut": false,
1794
2260
  "isSigner": true
1795
2261
  }
1796
2262
  ],
1797
- "args": []
2263
+ "args": [
2264
+ {
2265
+ "name": "newPegCandidate",
2266
+ "type": "u128"
2267
+ }
2268
+ ]
1798
2269
  },
1799
2270
  {
1800
- "name": "settleFundingPayment",
2271
+ "name": "updatePerpMarketAmmOracleTwap",
1801
2272
  "accounts": [
1802
2273
  {
1803
2274
  "name": "state",
@@ -1805,15 +2276,25 @@
1805
2276
  "isSigner": false
1806
2277
  },
1807
2278
  {
1808
- "name": "user",
2279
+ "name": "perpMarket",
1809
2280
  "isMut": true,
1810
2281
  "isSigner": false
2282
+ },
2283
+ {
2284
+ "name": "oracle",
2285
+ "isMut": false,
2286
+ "isSigner": false
2287
+ },
2288
+ {
2289
+ "name": "admin",
2290
+ "isMut": false,
2291
+ "isSigner": true
1811
2292
  }
1812
2293
  ],
1813
2294
  "args": []
1814
2295
  },
1815
2296
  {
1816
- "name": "updateFundingRate",
2297
+ "name": "resetPerpMarketAmmOracleTwap",
1817
2298
  "accounts": [
1818
2299
  {
1819
2300
  "name": "state",
@@ -1821,7 +2302,7 @@
1821
2302
  "isSigner": false
1822
2303
  },
1823
2304
  {
1824
- "name": "market",
2305
+ "name": "perpMarket",
1825
2306
  "isMut": true,
1826
2307
  "isSigner": false
1827
2308
  },
@@ -1829,14 +2310,14 @@
1829
2310
  "name": "oracle",
1830
2311
  "isMut": false,
1831
2312
  "isSigner": false
1832
- }
1833
- ],
1834
- "args": [
2313
+ },
1835
2314
  {
1836
- "name": "marketIndex",
1837
- "type": "u16"
2315
+ "name": "admin",
2316
+ "isMut": false,
2317
+ "isSigner": true
1838
2318
  }
1839
- ]
2319
+ ],
2320
+ "args": []
1840
2321
  },
1841
2322
  {
1842
2323
  "name": "updateK",
@@ -1852,7 +2333,7 @@
1852
2333
  "isSigner": false
1853
2334
  },
1854
2335
  {
1855
- "name": "market",
2336
+ "name": "perpMarket",
1856
2337
  "isMut": true,
1857
2338
  "isSigner": false
1858
2339
  },
@@ -1870,7 +2351,7 @@
1870
2351
  ]
1871
2352
  },
1872
2353
  {
1873
- "name": "updateMarginRatio",
2354
+ "name": "updatePerpMarketMarginRatio",
1874
2355
  "accounts": [
1875
2356
  {
1876
2357
  "name": "admin",
@@ -1883,7 +2364,7 @@
1883
2364
  "isSigner": false
1884
2365
  },
1885
2366
  {
1886
- "name": "market",
2367
+ "name": "perpMarket",
1887
2368
  "isMut": true,
1888
2369
  "isSigner": false
1889
2370
  }
@@ -1900,7 +2381,7 @@
1900
2381
  ]
1901
2382
  },
1902
2383
  {
1903
- "name": "updateMarketMaxImbalances",
2384
+ "name": "updatePerpMarketMaxImbalances",
1904
2385
  "accounts": [
1905
2386
  {
1906
2387
  "name": "admin",
@@ -1913,7 +2394,7 @@
1913
2394
  "isSigner": false
1914
2395
  },
1915
2396
  {
1916
- "name": "market",
2397
+ "name": "perpMarket",
1917
2398
  "isMut": true,
1918
2399
  "isSigner": false
1919
2400
  }
@@ -1947,7 +2428,7 @@
1947
2428
  "isSigner": false
1948
2429
  },
1949
2430
  {
1950
- "name": "market",
2431
+ "name": "perpMarket",
1951
2432
  "isMut": true,
1952
2433
  "isSigner": false
1953
2434
  }
@@ -1964,7 +2445,7 @@
1964
2445
  ]
1965
2446
  },
1966
2447
  {
1967
- "name": "updateInsuranceWithdrawEscrowPeriod",
2448
+ "name": "updateInsuranceFundUnstakingPeriod",
1968
2449
  "accounts": [
1969
2450
  {
1970
2451
  "name": "admin",
@@ -1984,7 +2465,7 @@
1984
2465
  ],
1985
2466
  "args": [
1986
2467
  {
1987
- "name": "insuranceWithdrawEscrowPeriod",
2468
+ "name": "insuranceFundUnstakingPeriod",
1988
2469
  "type": "i64"
1989
2470
  }
1990
2471
  ]
@@ -2229,6 +2710,43 @@
2229
2710
  }
2230
2711
  ]
2231
2712
  },
2713
+ {
2714
+ "name": "updateSpotMarketOracle",
2715
+ "accounts": [
2716
+ {
2717
+ "name": "admin",
2718
+ "isMut": false,
2719
+ "isSigner": true
2720
+ },
2721
+ {
2722
+ "name": "state",
2723
+ "isMut": false,
2724
+ "isSigner": false
2725
+ },
2726
+ {
2727
+ "name": "spotMarket",
2728
+ "isMut": true,
2729
+ "isSigner": false
2730
+ },
2731
+ {
2732
+ "name": "oracle",
2733
+ "isMut": false,
2734
+ "isSigner": false
2735
+ }
2736
+ ],
2737
+ "args": [
2738
+ {
2739
+ "name": "oracle",
2740
+ "type": "publicKey"
2741
+ },
2742
+ {
2743
+ "name": "oracleSource",
2744
+ "type": {
2745
+ "defined": "OracleSource"
2746
+ }
2747
+ }
2748
+ ]
2749
+ },
2232
2750
  {
2233
2751
  "name": "updatePerpMarketStatus",
2234
2752
  "accounts": [
@@ -2243,7 +2761,7 @@
2243
2761
  "isSigner": false
2244
2762
  },
2245
2763
  {
2246
- "name": "market",
2764
+ "name": "perpMarket",
2247
2765
  "isMut": true,
2248
2766
  "isSigner": false
2249
2767
  }
@@ -2271,7 +2789,7 @@
2271
2789
  "isSigner": false
2272
2790
  },
2273
2791
  {
2274
- "name": "market",
2792
+ "name": "perpMarket",
2275
2793
  "isMut": true,
2276
2794
  "isSigner": false
2277
2795
  }
@@ -2286,7 +2804,7 @@
2286
2804
  ]
2287
2805
  },
2288
2806
  {
2289
- "name": "updateMarketImfFactor",
2807
+ "name": "updatePerpMarketImfFactor",
2290
2808
  "accounts": [
2291
2809
  {
2292
2810
  "name": "admin",
@@ -2299,7 +2817,7 @@
2299
2817
  "isSigner": false
2300
2818
  },
2301
2819
  {
2302
- "name": "market",
2820
+ "name": "perpMarket",
2303
2821
  "isMut": true,
2304
2822
  "isSigner": false
2305
2823
  }
@@ -2312,7 +2830,7 @@
2312
2830
  ]
2313
2831
  },
2314
2832
  {
2315
- "name": "updateMarketUnrealizedAssetWeight",
2833
+ "name": "updatePerpMarketUnrealizedAssetWeight",
2316
2834
  "accounts": [
2317
2835
  {
2318
2836
  "name": "admin",
@@ -2325,7 +2843,7 @@
2325
2843
  "isSigner": false
2326
2844
  },
2327
2845
  {
2328
- "name": "market",
2846
+ "name": "perpMarket",
2329
2847
  "isMut": true,
2330
2848
  "isSigner": false
2331
2849
  }
@@ -2342,7 +2860,7 @@
2342
2860
  ]
2343
2861
  },
2344
2862
  {
2345
- "name": "updateConcentrationCoef",
2863
+ "name": "updatePerpMarketConcentrationCoef",
2346
2864
  "accounts": [
2347
2865
  {
2348
2866
  "name": "admin",
@@ -2355,7 +2873,7 @@
2355
2873
  "isSigner": false
2356
2874
  },
2357
2875
  {
2358
- "name": "market",
2876
+ "name": "perpMarket",
2359
2877
  "isMut": true,
2360
2878
  "isSigner": false
2361
2879
  }
@@ -2368,7 +2886,7 @@
2368
2886
  ]
2369
2887
  },
2370
2888
  {
2371
- "name": "updateCurveUpdateIntensity",
2889
+ "name": "updatePerpMarketCurveUpdateIntensity",
2372
2890
  "accounts": [
2373
2891
  {
2374
2892
  "name": "admin",
@@ -2381,7 +2899,7 @@
2381
2899
  "isSigner": false
2382
2900
  },
2383
2901
  {
2384
- "name": "market",
2902
+ "name": "perpMarket",
2385
2903
  "isMut": true,
2386
2904
  "isSigner": false
2387
2905
  }
@@ -2403,11 +2921,6 @@
2403
2921
  },
2404
2922
  {
2405
2923
  "name": "state",
2406
- "isMut": false,
2407
- "isSigner": false
2408
- },
2409
- {
2410
- "name": "market",
2411
2924
  "isMut": true,
2412
2925
  "isSigner": false
2413
2926
  }
@@ -2415,7 +2928,7 @@
2415
2928
  "args": [
2416
2929
  {
2417
2930
  "name": "lpCooldownTime",
2418
- "type": "i64"
2931
+ "type": "u64"
2419
2932
  }
2420
2933
  ]
2421
2934
  },
@@ -2489,39 +3002,7 @@
2489
3002
  ]
2490
3003
  },
2491
3004
  {
2492
- "name": "updateMarketOracle",
2493
- "accounts": [
2494
- {
2495
- "name": "admin",
2496
- "isMut": false,
2497
- "isSigner": true
2498
- },
2499
- {
2500
- "name": "state",
2501
- "isMut": false,
2502
- "isSigner": false
2503
- },
2504
- {
2505
- "name": "market",
2506
- "isMut": true,
2507
- "isSigner": false
2508
- }
2509
- ],
2510
- "args": [
2511
- {
2512
- "name": "oracle",
2513
- "type": "publicKey"
2514
- },
2515
- {
2516
- "name": "oracleSource",
2517
- "type": {
2518
- "defined": "OracleSource"
2519
- }
2520
- }
2521
- ]
2522
- },
2523
- {
2524
- "name": "updateMarketMinimumQuoteAssetTradeSize",
3005
+ "name": "updateStateSettlementDuration",
2525
3006
  "accounts": [
2526
3007
  {
2527
3008
  "name": "admin",
@@ -2530,180 +3011,56 @@
2530
3011
  },
2531
3012
  {
2532
3013
  "name": "state",
2533
- "isMut": false,
2534
- "isSigner": false
2535
- },
2536
- {
2537
- "name": "market",
2538
- "isMut": true,
2539
- "isSigner": false
2540
- }
2541
- ],
2542
- "args": [
2543
- {
2544
- "name": "minimumTradeSize",
2545
- "type": "u128"
2546
- }
2547
- ]
2548
- },
2549
- {
2550
- "name": "updateMarketBaseSpread",
2551
- "accounts": [
2552
- {
2553
- "name": "admin",
2554
- "isMut": false,
2555
- "isSigner": true
2556
- },
2557
- {
2558
- "name": "state",
2559
- "isMut": false,
2560
- "isSigner": false
2561
- },
2562
- {
2563
- "name": "market",
2564
3014
  "isMut": true,
2565
3015
  "isSigner": false
2566
3016
  }
2567
3017
  ],
2568
3018
  "args": [
2569
3019
  {
2570
- "name": "baseSpread",
3020
+ "name": "settlementDuration",
2571
3021
  "type": "u16"
2572
3022
  }
2573
3023
  ]
2574
3024
  },
2575
3025
  {
2576
- "name": "updateAmmJitIntensity",
2577
- "accounts": [
2578
- {
2579
- "name": "admin",
2580
- "isMut": false,
2581
- "isSigner": true
2582
- },
2583
- {
2584
- "name": "state",
2585
- "isMut": false,
2586
- "isSigner": false
2587
- },
2588
- {
2589
- "name": "market",
2590
- "isMut": true,
2591
- "isSigner": false
2592
- }
2593
- ],
2594
- "args": [
2595
- {
2596
- "name": "ammJitIntensity",
2597
- "type": "u8"
2598
- }
2599
- ]
2600
- },
2601
- {
2602
- "name": "updateMarketMaxSpread",
3026
+ "name": "updatePerpMarketOracle",
2603
3027
  "accounts": [
2604
- {
2605
- "name": "admin",
2606
- "isMut": false,
2607
- "isSigner": true
2608
- },
2609
3028
  {
2610
3029
  "name": "state",
2611
3030
  "isMut": false,
2612
3031
  "isSigner": false
2613
3032
  },
2614
3033
  {
2615
- "name": "market",
3034
+ "name": "perpMarket",
2616
3035
  "isMut": true,
2617
3036
  "isSigner": false
2618
- }
2619
- ],
2620
- "args": [
2621
- {
2622
- "name": "maxSpread",
2623
- "type": "u32"
2624
- }
2625
- ]
2626
- },
2627
- {
2628
- "name": "updateMarketBaseAssetAmountStepSize",
2629
- "accounts": [
2630
- {
2631
- "name": "admin",
2632
- "isMut": false,
2633
- "isSigner": true
2634
3037
  },
2635
3038
  {
2636
- "name": "state",
3039
+ "name": "oracle",
2637
3040
  "isMut": false,
2638
3041
  "isSigner": false
2639
3042
  },
2640
- {
2641
- "name": "market",
2642
- "isMut": true,
2643
- "isSigner": false
2644
- }
2645
- ],
2646
- "args": [
2647
- {
2648
- "name": "minimumTradeSize",
2649
- "type": "u64"
2650
- }
2651
- ]
2652
- },
2653
- {
2654
- "name": "updateMarketMaxSlippageRatio",
2655
- "accounts": [
2656
3043
  {
2657
3044
  "name": "admin",
2658
3045
  "isMut": false,
2659
3046
  "isSigner": true
2660
- },
2661
- {
2662
- "name": "state",
2663
- "isMut": false,
2664
- "isSigner": false
2665
- },
2666
- {
2667
- "name": "market",
2668
- "isMut": true,
2669
- "isSigner": false
2670
3047
  }
2671
3048
  ],
2672
3049
  "args": [
2673
3050
  {
2674
- "name": "maxSlippageRatio",
2675
- "type": "u16"
2676
- }
2677
- ]
2678
- },
2679
- {
2680
- "name": "updateMaxBaseAssetAmountRatio",
2681
- "accounts": [
2682
- {
2683
- "name": "admin",
2684
- "isMut": false,
2685
- "isSigner": true
2686
- },
2687
- {
2688
- "name": "state",
2689
- "isMut": false,
2690
- "isSigner": false
3051
+ "name": "oracle",
3052
+ "type": "publicKey"
2691
3053
  },
2692
3054
  {
2693
- "name": "market",
2694
- "isMut": true,
2695
- "isSigner": false
2696
- }
2697
- ],
2698
- "args": [
2699
- {
2700
- "name": "maxBaseAssetAmountRatio",
2701
- "type": "u16"
3055
+ "name": "oracleSource",
3056
+ "type": {
3057
+ "defined": "OracleSource"
3058
+ }
2702
3059
  }
2703
3060
  ]
2704
3061
  },
2705
3062
  {
2706
- "name": "updateAdmin",
3063
+ "name": "updatePerpMarketBaseSpread",
2707
3064
  "accounts": [
2708
3065
  {
2709
3066
  "name": "admin",
@@ -2712,19 +3069,24 @@
2712
3069
  },
2713
3070
  {
2714
3071
  "name": "state",
3072
+ "isMut": false,
3073
+ "isSigner": false
3074
+ },
3075
+ {
3076
+ "name": "perpMarket",
2715
3077
  "isMut": true,
2716
3078
  "isSigner": false
2717
3079
  }
2718
3080
  ],
2719
3081
  "args": [
2720
3082
  {
2721
- "name": "admin",
2722
- "type": "publicKey"
3083
+ "name": "baseSpread",
3084
+ "type": "u16"
2723
3085
  }
2724
3086
  ]
2725
3087
  },
2726
3088
  {
2727
- "name": "updateWhitelistMint",
3089
+ "name": "updateAmmJitIntensity",
2728
3090
  "accounts": [
2729
3091
  {
2730
3092
  "name": "admin",
@@ -2733,19 +3095,24 @@
2733
3095
  },
2734
3096
  {
2735
3097
  "name": "state",
3098
+ "isMut": false,
3099
+ "isSigner": false
3100
+ },
3101
+ {
3102
+ "name": "perpMarket",
2736
3103
  "isMut": true,
2737
3104
  "isSigner": false
2738
3105
  }
2739
3106
  ],
2740
3107
  "args": [
2741
3108
  {
2742
- "name": "whitelistMint",
2743
- "type": "publicKey"
3109
+ "name": "ammJitIntensity",
3110
+ "type": "u8"
2744
3111
  }
2745
3112
  ]
2746
3113
  },
2747
3114
  {
2748
- "name": "updateDiscountMint",
3115
+ "name": "updatePerpMarketMaxSpread",
2749
3116
  "accounts": [
2750
3117
  {
2751
3118
  "name": "admin",
@@ -2754,19 +3121,24 @@
2754
3121
  },
2755
3122
  {
2756
3123
  "name": "state",
3124
+ "isMut": false,
3125
+ "isSigner": false
3126
+ },
3127
+ {
3128
+ "name": "perpMarket",
2757
3129
  "isMut": true,
2758
3130
  "isSigner": false
2759
3131
  }
2760
3132
  ],
2761
3133
  "args": [
2762
3134
  {
2763
- "name": "discountMint",
2764
- "type": "publicKey"
3135
+ "name": "maxSpread",
3136
+ "type": "u32"
2765
3137
  }
2766
3138
  ]
2767
3139
  },
2768
3140
  {
2769
- "name": "updateExchangeStatus",
3141
+ "name": "updatePerpMarketStepSizeAndTickSize",
2770
3142
  "accounts": [
2771
3143
  {
2772
3144
  "name": "admin",
@@ -2775,21 +3147,28 @@
2775
3147
  },
2776
3148
  {
2777
3149
  "name": "state",
3150
+ "isMut": false,
3151
+ "isSigner": false
3152
+ },
3153
+ {
3154
+ "name": "perpMarket",
2778
3155
  "isMut": true,
2779
3156
  "isSigner": false
2780
3157
  }
2781
3158
  ],
2782
3159
  "args": [
2783
3160
  {
2784
- "name": "exchangeStatus",
2785
- "type": {
2786
- "defined": "ExchangeStatus"
2787
- }
3161
+ "name": "stepSize",
3162
+ "type": "u64"
3163
+ },
3164
+ {
3165
+ "name": "tickSize",
3166
+ "type": "u64"
2788
3167
  }
2789
3168
  ]
2790
3169
  },
2791
3170
  {
2792
- "name": "updatePerpAuctionDuration",
3171
+ "name": "updatePerpMarketName",
2793
3172
  "accounts": [
2794
3173
  {
2795
3174
  "name": "admin",
@@ -2798,19 +3177,29 @@
2798
3177
  },
2799
3178
  {
2800
3179
  "name": "state",
3180
+ "isMut": false,
3181
+ "isSigner": false
3182
+ },
3183
+ {
3184
+ "name": "perpMarket",
2801
3185
  "isMut": true,
2802
3186
  "isSigner": false
2803
3187
  }
2804
3188
  ],
2805
3189
  "args": [
2806
3190
  {
2807
- "name": "minPerpAuctionDuration",
2808
- "type": "u8"
3191
+ "name": "name",
3192
+ "type": {
3193
+ "array": [
3194
+ "u8",
3195
+ 32
3196
+ ]
3197
+ }
2809
3198
  }
2810
3199
  ]
2811
3200
  },
2812
3201
  {
2813
- "name": "updateSpotAuctionDuration",
3202
+ "name": "updatePerpMarketMinOrderSize",
2814
3203
  "accounts": [
2815
3204
  {
2816
3205
  "name": "admin",
@@ -2819,34 +3208,29 @@
2819
3208
  },
2820
3209
  {
2821
3210
  "name": "state",
3211
+ "isMut": false,
3212
+ "isSigner": false
3213
+ },
3214
+ {
3215
+ "name": "perpMarket",
2822
3216
  "isMut": true,
2823
3217
  "isSigner": false
2824
3218
  }
2825
3219
  ],
2826
3220
  "args": [
2827
3221
  {
2828
- "name": "defaultSpotAuctionDuration",
2829
- "type": "u8"
3222
+ "name": "orderSize",
3223
+ "type": "u64"
2830
3224
  }
2831
3225
  ]
2832
3226
  },
2833
3227
  {
2834
- "name": "initializeInsuranceFundStake",
3228
+ "name": "updatePerpMarketMaxSlippageRatio",
2835
3229
  "accounts": [
2836
3230
  {
2837
- "name": "spotMarket",
3231
+ "name": "admin",
2838
3232
  "isMut": false,
2839
- "isSigner": false
2840
- },
2841
- {
2842
- "name": "insuranceFundStake",
2843
- "isMut": true,
2844
- "isSigner": false
2845
- },
2846
- {
2847
- "name": "userStats",
2848
- "isMut": true,
2849
- "isSigner": false
3233
+ "isSigner": true
2850
3234
  },
2851
3235
  {
2852
3236
  "name": "state",
@@ -2854,268 +3238,169 @@
2854
3238
  "isSigner": false
2855
3239
  },
2856
3240
  {
2857
- "name": "authority",
2858
- "isMut": false,
2859
- "isSigner": true
2860
- },
2861
- {
2862
- "name": "payer",
3241
+ "name": "perpMarket",
2863
3242
  "isMut": true,
2864
- "isSigner": true
2865
- },
2866
- {
2867
- "name": "rent",
2868
- "isMut": false,
2869
- "isSigner": false
2870
- },
2871
- {
2872
- "name": "systemProgram",
2873
- "isMut": false,
2874
3243
  "isSigner": false
2875
3244
  }
2876
3245
  ],
2877
3246
  "args": [
2878
3247
  {
2879
- "name": "marketIndex",
3248
+ "name": "maxSlippageRatio",
2880
3249
  "type": "u16"
2881
3250
  }
2882
3251
  ]
2883
3252
  },
2884
3253
  {
2885
- "name": "settleRevenueToInsuranceFund",
3254
+ "name": "updatePerpMarketMaxFillReserveFraction",
2886
3255
  "accounts": [
2887
3256
  {
2888
- "name": "state",
2889
- "isMut": false,
2890
- "isSigner": false
2891
- },
2892
- {
2893
- "name": "spotMarket",
3257
+ "name": "admin",
2894
3258
  "isMut": false,
2895
- "isSigner": false
2896
- },
2897
- {
2898
- "name": "spotMarketVault",
2899
- "isMut": true,
2900
- "isSigner": false
3259
+ "isSigner": true
2901
3260
  },
2902
3261
  {
2903
- "name": "clearingHouseSigner",
3262
+ "name": "state",
2904
3263
  "isMut": false,
2905
3264
  "isSigner": false
2906
3265
  },
2907
3266
  {
2908
- "name": "insuranceFundVault",
3267
+ "name": "perpMarket",
2909
3268
  "isMut": true,
2910
3269
  "isSigner": false
2911
- },
2912
- {
2913
- "name": "tokenProgram",
2914
- "isMut": false,
2915
- "isSigner": false
2916
3270
  }
2917
3271
  ],
2918
3272
  "args": [
2919
3273
  {
2920
- "name": "marketIndex",
3274
+ "name": "maxFillReserveFraction",
2921
3275
  "type": "u16"
2922
3276
  }
2923
3277
  ]
2924
3278
  },
2925
3279
  {
2926
- "name": "addInsuranceFundStake",
3280
+ "name": "updateAdmin",
2927
3281
  "accounts": [
2928
3282
  {
2929
- "name": "state",
2930
- "isMut": false,
2931
- "isSigner": false
2932
- },
2933
- {
2934
- "name": "spotMarket",
2935
- "isMut": false,
2936
- "isSigner": false
2937
- },
2938
- {
2939
- "name": "insuranceFundStake",
2940
- "isMut": true,
2941
- "isSigner": false
2942
- },
2943
- {
2944
- "name": "userStats",
2945
- "isMut": true,
2946
- "isSigner": false
2947
- },
2948
- {
2949
- "name": "authority",
3283
+ "name": "admin",
2950
3284
  "isMut": false,
2951
3285
  "isSigner": true
2952
3286
  },
2953
3287
  {
2954
- "name": "spotMarketVault",
2955
- "isMut": true,
2956
- "isSigner": false
2957
- },
2958
- {
2959
- "name": "insuranceFundVault",
2960
- "isMut": true,
2961
- "isSigner": false
2962
- },
2963
- {
2964
- "name": "clearingHouseSigner",
2965
- "isMut": false,
2966
- "isSigner": false
2967
- },
2968
- {
2969
- "name": "userTokenAccount",
3288
+ "name": "state",
2970
3289
  "isMut": true,
2971
3290
  "isSigner": false
2972
- },
2973
- {
2974
- "name": "tokenProgram",
2975
- "isMut": false,
2976
- "isSigner": false
2977
3291
  }
2978
3292
  ],
2979
3293
  "args": [
2980
3294
  {
2981
- "name": "marketIndex",
2982
- "type": "u16"
2983
- },
2984
- {
2985
- "name": "amount",
2986
- "type": "u64"
3295
+ "name": "admin",
3296
+ "type": "publicKey"
2987
3297
  }
2988
3298
  ]
2989
3299
  },
2990
3300
  {
2991
- "name": "requestRemoveInsuranceFundStake",
3301
+ "name": "updateWhitelistMint",
2992
3302
  "accounts": [
2993
3303
  {
2994
- "name": "spotMarket",
2995
- "isMut": false,
2996
- "isSigner": false
2997
- },
2998
- {
2999
- "name": "insuranceFundStake",
3000
- "isMut": true,
3001
- "isSigner": false
3002
- },
3003
- {
3004
- "name": "userStats",
3005
- "isMut": true,
3006
- "isSigner": false
3007
- },
3008
- {
3009
- "name": "authority",
3304
+ "name": "admin",
3010
3305
  "isMut": false,
3011
3306
  "isSigner": true
3012
3307
  },
3013
3308
  {
3014
- "name": "insuranceFundVault",
3309
+ "name": "state",
3015
3310
  "isMut": true,
3016
3311
  "isSigner": false
3017
3312
  }
3018
3313
  ],
3019
3314
  "args": [
3020
3315
  {
3021
- "name": "marketIndex",
3022
- "type": "u16"
3023
- },
3024
- {
3025
- "name": "amount",
3026
- "type": "u64"
3316
+ "name": "whitelistMint",
3317
+ "type": "publicKey"
3027
3318
  }
3028
3319
  ]
3029
3320
  },
3030
3321
  {
3031
- "name": "cancelRequestRemoveInsuranceFundStake",
3322
+ "name": "updateDiscountMint",
3032
3323
  "accounts": [
3033
3324
  {
3034
- "name": "spotMarket",
3035
- "isMut": false,
3036
- "isSigner": false
3037
- },
3038
- {
3039
- "name": "insuranceFundStake",
3040
- "isMut": true,
3041
- "isSigner": false
3042
- },
3043
- {
3044
- "name": "userStats",
3045
- "isMut": true,
3046
- "isSigner": false
3047
- },
3048
- {
3049
- "name": "authority",
3325
+ "name": "admin",
3050
3326
  "isMut": false,
3051
3327
  "isSigner": true
3052
3328
  },
3053
3329
  {
3054
- "name": "insuranceFundVault",
3330
+ "name": "state",
3055
3331
  "isMut": true,
3056
3332
  "isSigner": false
3057
3333
  }
3058
3334
  ],
3059
3335
  "args": [
3060
3336
  {
3061
- "name": "marketIndex",
3062
- "type": "u16"
3337
+ "name": "discountMint",
3338
+ "type": "publicKey"
3063
3339
  }
3064
3340
  ]
3065
3341
  },
3066
3342
  {
3067
- "name": "removeInsuranceFundStake",
3343
+ "name": "updateExchangeStatus",
3068
3344
  "accounts": [
3069
3345
  {
3070
- "name": "state",
3071
- "isMut": false,
3072
- "isSigner": false
3073
- },
3074
- {
3075
- "name": "spotMarket",
3346
+ "name": "admin",
3076
3347
  "isMut": false,
3077
- "isSigner": false
3348
+ "isSigner": true
3078
3349
  },
3079
3350
  {
3080
- "name": "insuranceFundStake",
3351
+ "name": "state",
3081
3352
  "isMut": true,
3082
3353
  "isSigner": false
3083
- },
3354
+ }
3355
+ ],
3356
+ "args": [
3084
3357
  {
3085
- "name": "userStats",
3086
- "isMut": true,
3087
- "isSigner": false
3088
- },
3358
+ "name": "exchangeStatus",
3359
+ "type": {
3360
+ "defined": "ExchangeStatus"
3361
+ }
3362
+ }
3363
+ ]
3364
+ },
3365
+ {
3366
+ "name": "updatePerpAuctionDuration",
3367
+ "accounts": [
3089
3368
  {
3090
- "name": "authority",
3369
+ "name": "admin",
3091
3370
  "isMut": false,
3092
3371
  "isSigner": true
3093
3372
  },
3094
3373
  {
3095
- "name": "insuranceFundVault",
3374
+ "name": "state",
3096
3375
  "isMut": true,
3097
3376
  "isSigner": false
3098
- },
3377
+ }
3378
+ ],
3379
+ "args": [
3099
3380
  {
3100
- "name": "clearingHouseSigner",
3381
+ "name": "minPerpAuctionDuration",
3382
+ "type": "u8"
3383
+ }
3384
+ ]
3385
+ },
3386
+ {
3387
+ "name": "updateSpotAuctionDuration",
3388
+ "accounts": [
3389
+ {
3390
+ "name": "admin",
3101
3391
  "isMut": false,
3102
- "isSigner": false
3392
+ "isSigner": true
3103
3393
  },
3104
3394
  {
3105
- "name": "userTokenAccount",
3395
+ "name": "state",
3106
3396
  "isMut": true,
3107
3397
  "isSigner": false
3108
- },
3109
- {
3110
- "name": "tokenProgram",
3111
- "isMut": false,
3112
- "isSigner": false
3113
3398
  }
3114
3399
  ],
3115
3400
  "args": [
3116
3401
  {
3117
- "name": "marketIndex",
3118
- "type": "u16"
3402
+ "name": "defaultSpotAuctionDuration",
3403
+ "type": "u8"
3119
3404
  }
3120
3405
  ]
3121
3406
  },
@@ -3168,42 +3453,6 @@
3168
3453
  "type": "u64"
3169
3454
  }
3170
3455
  ]
3171
- },
3172
- {
3173
- "name": "updateUserQuoteAssetInsuranceStake",
3174
- "accounts": [
3175
- {
3176
- "name": "state",
3177
- "isMut": false,
3178
- "isSigner": false
3179
- },
3180
- {
3181
- "name": "spotMarket",
3182
- "isMut": false,
3183
- "isSigner": false
3184
- },
3185
- {
3186
- "name": "insuranceFundStake",
3187
- "isMut": true,
3188
- "isSigner": false
3189
- },
3190
- {
3191
- "name": "userStats",
3192
- "isMut": true,
3193
- "isSigner": false
3194
- },
3195
- {
3196
- "name": "authority",
3197
- "isMut": false,
3198
- "isSigner": true
3199
- },
3200
- {
3201
- "name": "insuranceFundVault",
3202
- "isMut": true,
3203
- "isSigner": false
3204
- }
3205
- ],
3206
- "args": []
3207
3456
  }
3208
3457
  ],
3209
3458
  "accounts": [
@@ -3282,27 +3531,20 @@
3282
3531
  }
3283
3532
  },
3284
3533
  {
3285
- "name": "settlementPrice",
3286
- "type": "i128"
3287
- },
3288
- {
3289
- "name": "baseAssetAmountLong",
3290
- "type": "i128"
3534
+ "name": "name",
3535
+ "type": {
3536
+ "array": [
3537
+ "u8",
3538
+ 32
3539
+ ]
3540
+ }
3291
3541
  },
3292
3542
  {
3293
- "name": "baseAssetAmountShort",
3543
+ "name": "expiryPrice",
3294
3544
  "type": "i128"
3295
3545
  },
3296
3546
  {
3297
- "name": "openInterest",
3298
- "type": "u128"
3299
- },
3300
- {
3301
- "name": "revenueWithdrawSinceLastSettle",
3302
- "type": "u128"
3303
- },
3304
- {
3305
- "name": "maxRevenueWithdrawPerPeriod",
3547
+ "name": "numberOfUsers",
3306
3548
  "type": "u128"
3307
3549
  },
3308
3550
  {
@@ -3310,11 +3552,11 @@
3310
3552
  "type": "u128"
3311
3553
  },
3312
3554
  {
3313
- "name": "unrealizedImfFactor",
3555
+ "name": "unrealizedPnlImfFactor",
3314
3556
  "type": "u128"
3315
3557
  },
3316
3558
  {
3317
- "name": "unrealizedMaxImbalance",
3559
+ "name": "unrealizedPnlMaxImbalance",
3318
3560
  "type": "u128"
3319
3561
  },
3320
3562
  {
@@ -3326,12 +3568,10 @@
3326
3568
  "type": "u128"
3327
3569
  },
3328
3570
  {
3329
- "name": "quoteMaxInsurance",
3330
- "type": "u128"
3331
- },
3332
- {
3333
- "name": "quoteSettledInsurance",
3334
- "type": "u128"
3571
+ "name": "insuranceClaim",
3572
+ "type": {
3573
+ "defined": "InsuranceClaim"
3574
+ }
3335
3575
  },
3336
3576
  {
3337
3577
  "name": "expiryTs",
@@ -3349,10 +3589,6 @@
3349
3589
  "name": "nextCurveRecordId",
3350
3590
  "type": "u64"
3351
3591
  },
3352
- {
3353
- "name": "lastRevenueWithdrawTs",
3354
- "type": "i64"
3355
- },
3356
3592
  {
3357
3593
  "name": "marginRatioInitial",
3358
3594
  "type": "u32"
@@ -3362,11 +3598,11 @@
3362
3598
  "type": "u32"
3363
3599
  },
3364
3600
  {
3365
- "name": "unrealizedInitialAssetWeight",
3601
+ "name": "unrealizedPnlInitialAssetWeight",
3366
3602
  "type": "u32"
3367
3603
  },
3368
3604
  {
3369
- "name": "unrealizedMaintenanceAssetWeight",
3605
+ "name": "unrealizedPnlMaintenanceAssetWeight",
3370
3606
  "type": "u32"
3371
3607
  },
3372
3608
  {
@@ -3424,10 +3660,6 @@
3424
3660
  "name": "vault",
3425
3661
  "type": "publicKey"
3426
3662
  },
3427
- {
3428
- "name": "insuranceFundVault",
3429
- "type": "publicKey"
3430
- },
3431
3663
  {
3432
3664
  "name": "historicalOracleData",
3433
3665
  "type": {
@@ -3452,6 +3684,12 @@
3452
3684
  "defined": "PoolBalance"
3453
3685
  }
3454
3686
  },
3687
+ {
3688
+ "name": "insuranceFund",
3689
+ "type": {
3690
+ "defined": "InsuranceFund"
3691
+ }
3692
+ },
3455
3693
  {
3456
3694
  "name": "initialAssetWeight",
3457
3695
  "type": "u128"
@@ -3484,18 +3722,6 @@
3484
3722
  "name": "withdrawGuardThreshold",
3485
3723
  "type": "u128"
3486
3724
  },
3487
- {
3488
- "name": "totalIfShares",
3489
- "type": "u128"
3490
- },
3491
- {
3492
- "name": "userIfShares",
3493
- "type": "u128"
3494
- },
3495
- {
3496
- "name": "ifSharesBase",
3497
- "type": "u128"
3498
- },
3499
3725
  {
3500
3726
  "name": "totalSpotFee",
3501
3727
  "type": "u128"
@@ -3532,18 +3758,6 @@
3532
3758
  "name": "cumulativeBorrowInterest",
3533
3759
  "type": "u128"
3534
3760
  },
3535
- {
3536
- "name": "insuranceWithdrawEscrowPeriod",
3537
- "type": "i64"
3538
- },
3539
- {
3540
- "name": "lastRevenueSettleTs",
3541
- "type": "i64"
3542
- },
3543
- {
3544
- "name": "revenueSettlePeriod",
3545
- "type": "i64"
3546
- },
3547
3761
  {
3548
3762
  "name": "lastInterestTs",
3549
3763
  "type": "u64"
@@ -3565,7 +3779,7 @@
3565
3779
  "type": "u64"
3566
3780
  },
3567
3781
  {
3568
- "name": "orderMinimumSize",
3782
+ "name": "minOrderSize",
3569
3783
  "type": "u64"
3570
3784
  },
3571
3785
  {
@@ -3588,14 +3802,6 @@
3588
3802
  "name": "maxBorrowRate",
3589
3803
  "type": "u32"
3590
3804
  },
3591
- {
3592
- "name": "totalIfFactor",
3593
- "type": "u32"
3594
- },
3595
- {
3596
- "name": "userIfFactor",
3597
- "type": "u32"
3598
- },
3599
3805
  {
3600
3806
  "name": "marketIndex",
3601
3807
  "type": "u16"
@@ -3755,11 +3961,11 @@
3755
3961
  }
3756
3962
  },
3757
3963
  {
3758
- "name": "minOrderQuoteAssetAmount",
3759
- "type": "u128"
3964
+ "name": "numberOfAuthorities",
3965
+ "type": "u64"
3760
3966
  },
3761
3967
  {
3762
- "name": "numberOfAuthorities",
3968
+ "name": "lpCooldownTime",
3763
3969
  "type": "u64"
3764
3970
  },
3765
3971
  {
@@ -3868,7 +4074,19 @@
3868
4074
  }
3869
4075
  },
3870
4076
  {
3871
- "name": "lastLpAddTime",
4077
+ "name": "lastAddPerpLpSharesTs",
4078
+ "type": "i64"
4079
+ },
4080
+ {
4081
+ "name": "totalDeposits",
4082
+ "type": "u64"
4083
+ },
4084
+ {
4085
+ "name": "totalWithdraws",
4086
+ "type": "u64"
4087
+ },
4088
+ {
4089
+ "name": "settledPerpPnl",
3872
4090
  "type": "i64"
3873
4091
  },
3874
4092
  {
@@ -3876,7 +4094,7 @@
3876
4094
  "type": "u32"
3877
4095
  },
3878
4096
  {
3879
- "name": "customMarginRatio",
4097
+ "name": "maxMarginRatio",
3880
4098
  "type": "u32"
3881
4099
  },
3882
4100
  {
@@ -3884,15 +4102,15 @@
3884
4102
  "type": "u16"
3885
4103
  },
3886
4104
  {
3887
- "name": "userId",
4105
+ "name": "subAccountId",
3888
4106
  "type": "u8"
3889
4107
  },
3890
4108
  {
3891
- "name": "beingLiquidated",
4109
+ "name": "isBeingLiquidated",
3892
4110
  "type": "bool"
3893
4111
  },
3894
4112
  {
3895
- "name": "bankrupt",
4113
+ "name": "isBankrupt",
3896
4114
  "type": "bool"
3897
4115
  },
3898
4116
  {
@@ -3926,14 +4144,6 @@
3926
4144
  "defined": "UserFees"
3927
4145
  }
3928
4146
  },
3929
- {
3930
- "name": "totalReferrerReward",
3931
- "type": "u64"
3932
- },
3933
- {
3934
- "name": "currentEpochReferrerReward",
3935
- "type": "u64"
3936
- },
3937
4147
  {
3938
4148
  "name": "nextEpochTs",
3939
4149
  "type": "i64"
@@ -3963,11 +4173,11 @@
3963
4173
  "type": "i64"
3964
4174
  },
3965
4175
  {
3966
- "name": "stakedQuoteAssetAmount",
4176
+ "name": "ifStakedQuoteAssetAmount",
3967
4177
  "type": "u64"
3968
4178
  },
3969
4179
  {
3970
- "name": "numberOfUsers",
4180
+ "name": "numberOfSubAccounts",
3971
4181
  "type": "u8"
3972
4182
  },
3973
4183
  {
@@ -4039,6 +4249,12 @@
4039
4249
  "name": "immediateOrCancel",
4040
4250
  "type": "bool"
4041
4251
  },
4252
+ {
4253
+ "name": "maxTs",
4254
+ "type": {
4255
+ "option": "i64"
4256
+ }
4257
+ },
4042
4258
  {
4043
4259
  "name": "triggerPrice",
4044
4260
  "type": {
@@ -4054,7 +4270,7 @@
4054
4270
  {
4055
4271
  "name": "oraclePriceOffset",
4056
4272
  "type": {
4057
- "option": "i64"
4273
+ "option": "i32"
4058
4274
  }
4059
4275
  },
4060
4276
  {
@@ -4064,13 +4280,13 @@
4064
4280
  }
4065
4281
  },
4066
4282
  {
4067
- "name": "timeInForce",
4283
+ "name": "auctionStartPrice",
4068
4284
  "type": {
4069
- "option": "u8"
4285
+ "option": "u64"
4070
4286
  }
4071
4287
  },
4072
4288
  {
4073
- "name": "auctionStartPrice",
4289
+ "name": "auctionEndPrice",
4074
4290
  "type": {
4075
4291
  "option": "u64"
4076
4292
  }
@@ -4180,92 +4396,180 @@
4180
4396
  "type": "u16"
4181
4397
  },
4182
4398
  {
4183
- "name": "liabilityPrice",
4184
- "type": "i128"
4399
+ "name": "liabilityPrice",
4400
+ "type": "i128"
4401
+ },
4402
+ {
4403
+ "name": "liabilityTransfer",
4404
+ "type": "u128"
4405
+ }
4406
+ ]
4407
+ }
4408
+ },
4409
+ {
4410
+ "name": "LiquidatePerpPnlForDepositRecord",
4411
+ "type": {
4412
+ "kind": "struct",
4413
+ "fields": [
4414
+ {
4415
+ "name": "perpMarketIndex",
4416
+ "type": "u16"
4417
+ },
4418
+ {
4419
+ "name": "marketOraclePrice",
4420
+ "type": "i128"
4421
+ },
4422
+ {
4423
+ "name": "pnlTransfer",
4424
+ "type": "u128"
4425
+ },
4426
+ {
4427
+ "name": "assetMarketIndex",
4428
+ "type": "u16"
4429
+ },
4430
+ {
4431
+ "name": "assetPrice",
4432
+ "type": "i128"
4433
+ },
4434
+ {
4435
+ "name": "assetTransfer",
4436
+ "type": "u128"
4437
+ }
4438
+ ]
4439
+ }
4440
+ },
4441
+ {
4442
+ "name": "PerpBankruptcyRecord",
4443
+ "type": {
4444
+ "kind": "struct",
4445
+ "fields": [
4446
+ {
4447
+ "name": "marketIndex",
4448
+ "type": "u16"
4449
+ },
4450
+ {
4451
+ "name": "pnl",
4452
+ "type": "i128"
4453
+ },
4454
+ {
4455
+ "name": "ifPayment",
4456
+ "type": "u128"
4457
+ },
4458
+ {
4459
+ "name": "cumulativeFundingRateDelta",
4460
+ "type": "i128"
4461
+ }
4462
+ ]
4463
+ }
4464
+ },
4465
+ {
4466
+ "name": "SpotBankruptcyRecord",
4467
+ "type": {
4468
+ "kind": "struct",
4469
+ "fields": [
4470
+ {
4471
+ "name": "marketIndex",
4472
+ "type": "u16"
4473
+ },
4474
+ {
4475
+ "name": "borrowAmount",
4476
+ "type": "u128"
4477
+ },
4478
+ {
4479
+ "name": "ifPayment",
4480
+ "type": "u128"
4185
4481
  },
4186
4482
  {
4187
- "name": "liabilityTransfer",
4483
+ "name": "cumulativeDepositInterestDelta",
4188
4484
  "type": "u128"
4189
4485
  }
4190
4486
  ]
4191
4487
  }
4192
4488
  },
4193
4489
  {
4194
- "name": "LiquidatePerpPnlForDepositRecord",
4490
+ "name": "HistoricalOracleData",
4195
4491
  "type": {
4196
4492
  "kind": "struct",
4197
4493
  "fields": [
4198
4494
  {
4199
- "name": "perpMarketIndex",
4200
- "type": "u16"
4201
- },
4202
- {
4203
- "name": "marketOraclePrice",
4495
+ "name": "lastOraclePrice",
4204
4496
  "type": "i128"
4205
4497
  },
4206
4498
  {
4207
- "name": "pnlTransfer",
4499
+ "name": "lastOracleConf",
4208
4500
  "type": "u128"
4209
4501
  },
4210
4502
  {
4211
- "name": "assetMarketIndex",
4212
- "type": "u16"
4503
+ "name": "lastOracleDelay",
4504
+ "type": "i64"
4213
4505
  },
4214
4506
  {
4215
- "name": "assetPrice",
4507
+ "name": "lastOraclePriceTwap",
4216
4508
  "type": "i128"
4217
4509
  },
4218
4510
  {
4219
- "name": "assetTransfer",
4220
- "type": "u128"
4511
+ "name": "lastOraclePriceTwap5min",
4512
+ "type": "i128"
4513
+ },
4514
+ {
4515
+ "name": "lastOraclePriceTwapTs",
4516
+ "type": "i64"
4221
4517
  }
4222
4518
  ]
4223
4519
  }
4224
4520
  },
4225
4521
  {
4226
- "name": "PerpBankruptcyRecord",
4522
+ "name": "HistoricalIndexData",
4227
4523
  "type": {
4228
4524
  "kind": "struct",
4229
4525
  "fields": [
4230
4526
  {
4231
- "name": "marketIndex",
4232
- "type": "u16"
4527
+ "name": "lastIndexBidPrice",
4528
+ "type": "u128"
4233
4529
  },
4234
4530
  {
4235
- "name": "pnl",
4236
- "type": "i128"
4531
+ "name": "lastIndexAskPrice",
4532
+ "type": "u128"
4237
4533
  },
4238
4534
  {
4239
- "name": "ifPayment",
4535
+ "name": "lastIndexPriceTwap",
4240
4536
  "type": "u128"
4241
4537
  },
4242
4538
  {
4243
- "name": "cumulativeFundingRateDelta",
4244
- "type": "i128"
4539
+ "name": "lastIndexPriceTwap5min",
4540
+ "type": "u128"
4541
+ },
4542
+ {
4543
+ "name": "lastIndexPriceTwapTs",
4544
+ "type": "i64"
4245
4545
  }
4246
4546
  ]
4247
4547
  }
4248
4548
  },
4249
4549
  {
4250
- "name": "SpotBankruptcyRecord",
4550
+ "name": "InsuranceClaim",
4251
4551
  "type": {
4252
4552
  "kind": "struct",
4253
4553
  "fields": [
4254
4554
  {
4255
- "name": "marketIndex",
4256
- "type": "u16"
4555
+ "name": "revenueWithdrawSinceLastSettle",
4556
+ "type": "u128"
4257
4557
  },
4258
4558
  {
4259
- "name": "borrowAmount",
4559
+ "name": "maxRevenueWithdrawPerPeriod",
4260
4560
  "type": "u128"
4261
4561
  },
4262
4562
  {
4263
- "name": "ifPayment",
4563
+ "name": "quoteMaxInsurance",
4264
4564
  "type": "u128"
4265
4565
  },
4266
4566
  {
4267
- "name": "cumulativeDepositInterestDelta",
4567
+ "name": "quoteSettledInsurance",
4268
4568
  "type": "u128"
4569
+ },
4570
+ {
4571
+ "name": "lastRevenueWithdrawTs",
4572
+ "type": "i64"
4269
4573
  }
4270
4574
  ]
4271
4575
  }
@@ -4276,7 +4580,7 @@
4276
4580
  "kind": "struct",
4277
4581
  "fields": [
4278
4582
  {
4279
- "name": "balance",
4583
+ "name": "scaledBalance",
4280
4584
  "type": "u128"
4281
4585
  },
4282
4586
  {
@@ -4311,16 +4615,12 @@
4311
4615
  }
4312
4616
  },
4313
4617
  {
4314
- "name": "marketPosition",
4315
- "type": {
4316
- "defined": "PerpPosition"
4317
- }
4618
+ "name": "baseAssetAmountPerLp",
4619
+ "type": "i128"
4318
4620
  },
4319
4621
  {
4320
- "name": "marketPositionPerLp",
4321
- "type": {
4322
- "defined": "PerpPosition"
4323
- }
4622
+ "name": "quoteAssetAmountPerLp",
4623
+ "type": "i128"
4324
4624
  },
4325
4625
  {
4326
4626
  "name": "feePool",
@@ -4369,7 +4669,19 @@
4369
4669
  "type": "u128"
4370
4670
  },
4371
4671
  {
4372
- "name": "netBaseAssetAmount",
4672
+ "name": "baseAssetAmountLong",
4673
+ "type": "i128"
4674
+ },
4675
+ {
4676
+ "name": "baseAssetAmountShort",
4677
+ "type": "i128"
4678
+ },
4679
+ {
4680
+ "name": "baseAssetAmountWithAmm",
4681
+ "type": "i128"
4682
+ },
4683
+ {
4684
+ "name": "baseAssetAmountWithUnsettledLp",
4373
4685
  "type": "i128"
4374
4686
  },
4375
4687
  {
@@ -4392,10 +4704,6 @@
4392
4704
  "name": "userLpShares",
4393
4705
  "type": "u128"
4394
4706
  },
4395
- {
4396
- "name": "netUnsettledLpBaseAssetAmount",
4397
- "type": "i128"
4398
- },
4399
4707
  {
4400
4708
  "name": "lastFundingRate",
4401
4709
  "type": "i128"
@@ -4448,10 +4756,6 @@
4448
4756
  "name": "cumulativeSocialLoss",
4449
4757
  "type": "i128"
4450
4758
  },
4451
- {
4452
- "name": "minimumQuoteAssetTradeSize",
4453
- "type": "u128"
4454
- },
4455
4759
  {
4456
4760
  "name": "longSpread",
4457
4761
  "type": "u128"
@@ -4504,10 +4808,6 @@
4504
4808
  "name": "netRevenueSinceLastFunding",
4505
4809
  "type": "i64"
4506
4810
  },
4507
- {
4508
- "name": "lpCooldownTime",
4509
- "type": "i64"
4510
- },
4511
4811
  {
4512
4812
  "name": "lastFundingRateTs",
4513
4813
  "type": "i64"
@@ -4517,7 +4817,7 @@
4517
4817
  "type": "i64"
4518
4818
  },
4519
4819
  {
4520
- "name": "baseAssetAmountStepSize",
4820
+ "name": "orderStepSize",
4521
4821
  "type": "u64"
4522
4822
  },
4523
4823
  {
@@ -4525,7 +4825,7 @@
4525
4825
  "type": "u64"
4526
4826
  },
4527
4827
  {
4528
- "name": "orderMinimumSize",
4828
+ "name": "minOrderSize",
4529
4829
  "type": "u64"
4530
4830
  },
4531
4831
  {
@@ -4561,7 +4861,7 @@
4561
4861
  "type": "u32"
4562
4862
  },
4563
4863
  {
4564
- "name": "maxBaseAssetAmountRatio",
4864
+ "name": "maxFillReserveFraction",
4565
4865
  "type": "u16"
4566
4866
  },
4567
4867
  {
@@ -4611,61 +4911,45 @@
4611
4911
  }
4612
4912
  },
4613
4913
  {
4614
- "name": "HistoricalOracleData",
4914
+ "name": "InsuranceFund",
4615
4915
  "type": {
4616
4916
  "kind": "struct",
4617
4917
  "fields": [
4618
4918
  {
4619
- "name": "lastOraclePrice",
4620
- "type": "i128"
4919
+ "name": "vault",
4920
+ "type": "publicKey"
4621
4921
  },
4622
4922
  {
4623
- "name": "lastOracleConf",
4923
+ "name": "totalShares",
4624
4924
  "type": "u128"
4625
4925
  },
4626
4926
  {
4627
- "name": "lastOracleDelay",
4628
- "type": "i64"
4629
- },
4630
- {
4631
- "name": "lastOraclePriceTwap",
4632
- "type": "i128"
4927
+ "name": "userShares",
4928
+ "type": "u128"
4633
4929
  },
4634
4930
  {
4635
- "name": "lastOraclePriceTwap5min",
4636
- "type": "i128"
4931
+ "name": "sharesBase",
4932
+ "type": "u128"
4637
4933
  },
4638
4934
  {
4639
- "name": "lastOraclePriceTwapTs",
4935
+ "name": "unstakingPeriod",
4640
4936
  "type": "i64"
4641
- }
4642
- ]
4643
- }
4644
- },
4645
- {
4646
- "name": "HistoricalIndexData",
4647
- "type": {
4648
- "kind": "struct",
4649
- "fields": [
4650
- {
4651
- "name": "lastIndexBidPrice",
4652
- "type": "u128"
4653
4937
  },
4654
4938
  {
4655
- "name": "lastIndexAskPrice",
4656
- "type": "u128"
4939
+ "name": "lastRevenueSettleTs",
4940
+ "type": "i64"
4657
4941
  },
4658
4942
  {
4659
- "name": "lastIndexPriceTwap",
4660
- "type": "u128"
4943
+ "name": "revenueSettlePeriod",
4944
+ "type": "i64"
4661
4945
  },
4662
4946
  {
4663
- "name": "lastIndexPriceTwap5min",
4664
- "type": "u128"
4947
+ "name": "totalFactor",
4948
+ "type": "u32"
4665
4949
  },
4666
4950
  {
4667
- "name": "lastIndexPriceTwapTs",
4668
- "type": "i64"
4951
+ "name": "userFactor",
4952
+ "type": "u32"
4669
4953
  }
4670
4954
  ]
4671
4955
  }
@@ -4847,6 +5131,14 @@
4847
5131
  {
4848
5132
  "name": "totalRefereeDiscount",
4849
5133
  "type": "u64"
5134
+ },
5135
+ {
5136
+ "name": "totalReferrerReward",
5137
+ "type": "u64"
5138
+ },
5139
+ {
5140
+ "name": "currentEpochReferrerReward",
5141
+ "type": "u64"
4850
5142
  }
4851
5143
  ]
4852
5144
  }
@@ -4857,7 +5149,7 @@
4857
5149
  "kind": "struct",
4858
5150
  "fields": [
4859
5151
  {
4860
- "name": "balance",
5152
+ "name": "scaledBalance",
4861
5153
  "type": "u64"
4862
5154
  },
4863
5155
  {
@@ -4905,7 +5197,7 @@
4905
5197
  "fields": [
4906
5198
  {
4907
5199
  "name": "lastCumulativeFundingRate",
4908
- "type": "i128"
5200
+ "type": "i64"
4909
5201
  },
4910
5202
  {
4911
5203
  "name": "baseAssetAmount",
@@ -4972,10 +5264,6 @@
4972
5264
  "type": {
4973
5265
  "kind": "struct",
4974
5266
  "fields": [
4975
- {
4976
- "name": "ts",
4977
- "type": "i64"
4978
- },
4979
5267
  {
4980
5268
  "name": "slot",
4981
5269
  "type": "u64"
@@ -4996,18 +5284,10 @@
4996
5284
  "name": "quoteAssetAmountFilled",
4997
5285
  "type": "u64"
4998
5286
  },
4999
- {
5000
- "name": "fee",
5001
- "type": "i64"
5002
- },
5003
5287
  {
5004
5288
  "name": "triggerPrice",
5005
5289
  "type": "u64"
5006
5290
  },
5007
- {
5008
- "name": "oraclePriceOffset",
5009
- "type": "i64"
5010
- },
5011
5291
  {
5012
5292
  "name": "auctionStartPrice",
5013
5293
  "type": "u64"
@@ -5016,6 +5296,14 @@
5016
5296
  "name": "auctionEndPrice",
5017
5297
  "type": "u64"
5018
5298
  },
5299
+ {
5300
+ "name": "maxTs",
5301
+ "type": "i64"
5302
+ },
5303
+ {
5304
+ "name": "oraclePriceOffset",
5305
+ "type": "i32"
5306
+ },
5019
5307
  {
5020
5308
  "name": "orderId",
5021
5309
  "type": "u32"
@@ -5083,61 +5371,48 @@
5083
5371
  {
5084
5372
  "name": "auctionDuration",
5085
5373
  "type": "u8"
5086
- },
5087
- {
5088
- "name": "timeInForce",
5089
- "type": "u8"
5090
- },
5091
- {
5092
- "name": "padding",
5093
- "type": {
5094
- "array": [
5095
- "u8",
5096
- 5
5097
- ]
5098
- }
5099
5374
  }
5100
5375
  ]
5101
5376
  }
5102
5377
  },
5103
5378
  {
5104
- "name": "SpotFulfillmentType",
5379
+ "name": "SwapDirection",
5105
5380
  "type": {
5106
5381
  "kind": "enum",
5107
5382
  "variants": [
5108
5383
  {
5109
- "name": "SerumV3"
5384
+ "name": "Add"
5110
5385
  },
5111
5386
  {
5112
- "name": "None"
5387
+ "name": "Remove"
5113
5388
  }
5114
5389
  ]
5115
5390
  }
5116
5391
  },
5117
5392
  {
5118
- "name": "SwapDirection",
5393
+ "name": "PositionDirection",
5119
5394
  "type": {
5120
5395
  "kind": "enum",
5121
5396
  "variants": [
5122
5397
  {
5123
- "name": "Add"
5398
+ "name": "Long"
5124
5399
  },
5125
5400
  {
5126
- "name": "Remove"
5401
+ "name": "Short"
5127
5402
  }
5128
5403
  ]
5129
5404
  }
5130
5405
  },
5131
5406
  {
5132
- "name": "PositionDirection",
5407
+ "name": "SpotFulfillmentType",
5133
5408
  "type": {
5134
5409
  "kind": "enum",
5135
5410
  "variants": [
5136
5411
  {
5137
- "name": "Long"
5412
+ "name": "SerumV3"
5138
5413
  },
5139
5414
  {
5140
- "name": "Short"
5415
+ "name": "None"
5141
5416
  }
5142
5417
  ]
5143
5418
  }
@@ -5195,6 +5470,9 @@
5195
5470
  {
5196
5471
  "name": "TooVolatile"
5197
5472
  },
5473
+ {
5474
+ "name": "TooUncertain"
5475
+ },
5198
5476
  {
5199
5477
  "name": "StaleForMargin"
5200
5478
  },
@@ -5333,6 +5611,9 @@
5333
5611
  },
5334
5612
  {
5335
5613
  "name": "OrderFilledWithMatch"
5614
+ },
5615
+ {
5616
+ "name": "MarketExpired"
5336
5617
  }
5337
5618
  ]
5338
5619
  }
@@ -5433,6 +5714,23 @@
5433
5714
  ]
5434
5715
  }
5435
5716
  },
5717
+ {
5718
+ "name": "OracleSource",
5719
+ "type": {
5720
+ "kind": "enum",
5721
+ "variants": [
5722
+ {
5723
+ "name": "Pyth"
5724
+ },
5725
+ {
5726
+ "name": "Switchboard"
5727
+ },
5728
+ {
5729
+ "name": "QuoteAsset"
5730
+ }
5731
+ ]
5732
+ }
5733
+ },
5436
5734
  {
5437
5735
  "name": "MarketStatus",
5438
5736
  "type": {
@@ -5498,23 +5796,9 @@
5498
5796
  },
5499
5797
  {
5500
5798
  "name": "Speculative"
5501
- }
5502
- ]
5503
- }
5504
- },
5505
- {
5506
- "name": "OracleSource",
5507
- "type": {
5508
- "kind": "enum",
5509
- "variants": [
5510
- {
5511
- "name": "Pyth"
5512
- },
5513
- {
5514
- "name": "Switchboard"
5515
5799
  },
5516
5800
  {
5517
- "name": "QuoteAsset"
5801
+ "name": "Isolated"
5518
5802
  }
5519
5803
  ]
5520
5804
  }
@@ -5702,7 +5986,7 @@
5702
5986
  "index": false
5703
5987
  },
5704
5988
  {
5705
- "name": "userId",
5989
+ "name": "subAccountId",
5706
5990
  "type": "u8",
5707
5991
  "index": false
5708
5992
  },
@@ -5783,6 +6067,16 @@
5783
6067
  "type": "u128",
5784
6068
  "index": false
5785
6069
  },
6070
+ {
6071
+ "name": "totalDepositsAfter",
6072
+ "type": "u64",
6073
+ "index": false
6074
+ },
6075
+ {
6076
+ "name": "totalWithdrawsAfter",
6077
+ "type": "u64",
6078
+ "index": false
6079
+ },
5786
6080
  {
5787
6081
  "name": "transferUser",
5788
6082
  "type": {
@@ -5877,7 +6171,7 @@
5877
6171
  },
5878
6172
  {
5879
6173
  "name": "userLastCumulativeFunding",
5880
- "type": "i128",
6174
+ "type": "i64",
5881
6175
  "index": false
5882
6176
  },
5883
6177
  {
@@ -5951,12 +6245,12 @@
5951
6245
  "index": false
5952
6246
  },
5953
6247
  {
5954
- "name": "netBaseAssetAmount",
6248
+ "name": "baseAssetAmountWithAmm",
5955
6249
  "type": "i128",
5956
6250
  "index": false
5957
6251
  },
5958
6252
  {
5959
- "name": "netUnsettledLpBaseAssetAmount",
6253
+ "name": "baseAssetAmountWithUnsettledLp",
5960
6254
  "type": "i128",
5961
6255
  "index": false
5962
6256
  }
@@ -6031,12 +6325,12 @@
6031
6325
  "index": false
6032
6326
  },
6033
6327
  {
6034
- "name": "netBaseAssetAmount",
6328
+ "name": "baseAssetAmountWithAmm",
6035
6329
  "type": "i128",
6036
6330
  "index": false
6037
6331
  },
6038
6332
  {
6039
- "name": "openInterest",
6333
+ "name": "numberOfUsers",
6040
6334
  "type": "u128",
6041
6335
  "index": false
6042
6336
  },
@@ -6237,13 +6531,6 @@
6237
6531
  },
6238
6532
  "index": false
6239
6533
  },
6240
- {
6241
- "name": "takerOrderFee",
6242
- "type": {
6243
- "option": "i64"
6244
- },
6245
- "index": false
6246
- },
6247
6534
  {
6248
6535
  "name": "maker",
6249
6536
  "type": {
@@ -6288,13 +6575,6 @@
6288
6575
  },
6289
6576
  "index": false
6290
6577
  },
6291
- {
6292
- "name": "makerOrderFee",
6293
- "type": {
6294
- "option": "i64"
6295
- },
6296
- "index": false
6297
- },
6298
6578
  {
6299
6579
  "name": "oraclePrice",
6300
6580
  "type": "i128",
@@ -7283,6 +7563,11 @@
7283
7563
  "code": 6133,
7284
7564
  "name": "UserCantBeDeleted",
7285
7565
  "msg": "User Cant Be Deleted"
7566
+ },
7567
+ {
7568
+ "code": 6134,
7569
+ "name": "ReduceOnlyWithdrawIncreasedRisk",
7570
+ "msg": "Reduce Only Withdraw Increased Risk"
7286
7571
  }
7287
7572
  ]
7288
7573
  }