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

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 +1540 -1246
  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 +1540 -1246
  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",
1788
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,
1789
1747
  "isSigner": false
1790
1748
  },
1791
1749
  {
1792
1750
  "name": "authority",
1793
1751
  "isMut": false,
1794
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
1795
1819
  }
1796
1820
  ],
1797
1821
  "args": []
1798
1822
  },
1799
1823
  {
1800
- "name": "settleFundingPayment",
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",
2244
+ "isMut": false,
2245
+ "isSigner": false
2246
+ },
2247
+ {
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",
2259
+ "isMut": false,
2260
+ "isSigner": true
2261
+ }
2262
+ ],
2263
+ "args": [
2264
+ {
2265
+ "name": "newPegCandidate",
2266
+ "type": "u128"
2267
+ }
2268
+ ]
2269
+ },
2270
+ {
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,65 +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",
2525
- "accounts": [
2526
- {
2527
- "name": "admin",
2528
- "isMut": false,
2529
- "isSigner": true
2530
- },
2531
- {
2532
- "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",
3005
+ "name": "updateStateSettlementDuration",
2551
3006
  "accounts": [
2552
3007
  {
2553
3008
  "name": "admin",
@@ -2556,175 +3011,56 @@
2556
3011
  },
2557
3012
  {
2558
3013
  "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",
2603
- "accounts": [
2604
- {
2605
- "name": "admin",
2606
- "isMut": false,
2607
- "isSigner": true
2608
- },
2609
- {
2610
- "name": "state",
2611
- "isMut": false,
2612
- "isSigner": false
2613
- },
2614
- {
2615
- "name": "market",
2616
- "isMut": true,
2617
- "isSigner": false
2618
- }
2619
- ],
2620
- "args": [
2621
- {
2622
- "name": "maxSpread",
2623
- "type": "u32"
2624
- }
2625
- ]
2626
- },
2627
- {
2628
- "name": "updateMarketBaseAssetAmountStepSize",
3026
+ "name": "updatePerpMarketOracle",
2629
3027
  "accounts": [
2630
- {
2631
- "name": "admin",
2632
- "isMut": false,
2633
- "isSigner": true
2634
- },
2635
3028
  {
2636
3029
  "name": "state",
2637
3030
  "isMut": false,
2638
3031
  "isSigner": false
2639
3032
  },
2640
3033
  {
2641
- "name": "market",
3034
+ "name": "perpMarket",
2642
3035
  "isMut": true,
2643
3036
  "isSigner": false
2644
- }
2645
- ],
2646
- "args": [
2647
- {
2648
- "name": "minimumTradeSize",
2649
- "type": "u64"
2650
- }
2651
- ]
2652
- },
2653
- {
2654
- "name": "updateMarketMaxSlippageRatio",
2655
- "accounts": [
2656
- {
2657
- "name": "admin",
2658
- "isMut": false,
2659
- "isSigner": true
2660
3037
  },
2661
3038
  {
2662
- "name": "state",
3039
+ "name": "oracle",
2663
3040
  "isMut": false,
2664
3041
  "isSigner": false
2665
3042
  },
2666
- {
2667
- "name": "market",
2668
- "isMut": true,
2669
- "isSigner": false
2670
- }
2671
- ],
2672
- "args": [
2673
- {
2674
- "name": "maxSlippageRatio",
2675
- "type": "u16"
2676
- }
2677
- ]
2678
- },
2679
- {
2680
- "name": "updateMaxBaseAssetAmountRatio",
2681
- "accounts": [
2682
3043
  {
2683
3044
  "name": "admin",
2684
3045
  "isMut": false,
2685
3046
  "isSigner": true
2686
- },
2687
- {
2688
- "name": "state",
2689
- "isMut": false,
2690
- "isSigner": false
2691
- },
2692
- {
2693
- "name": "market",
2694
- "isMut": true,
2695
- "isSigner": false
2696
3047
  }
2697
3048
  ],
2698
3049
  "args": [
2699
3050
  {
2700
- "name": "maxBaseAssetAmountRatio",
2701
- "type": "u16"
2702
- }
2703
- ]
2704
- },
2705
- {
2706
- "name": "updateAdmin",
2707
- "accounts": [
2708
- {
2709
- "name": "admin",
2710
- "isMut": false,
2711
- "isSigner": true
3051
+ "name": "oracle",
3052
+ "type": "publicKey"
2712
3053
  },
2713
3054
  {
2714
- "name": "state",
2715
- "isMut": true,
2716
- "isSigner": false
2717
- }
2718
- ],
2719
- "args": [
2720
- {
2721
- "name": "admin",
2722
- "type": "publicKey"
3055
+ "name": "oracleSource",
3056
+ "type": {
3057
+ "defined": "OracleSource"
3058
+ }
2723
3059
  }
2724
3060
  ]
2725
3061
  },
2726
3062
  {
2727
- "name": "updateWhitelistMint",
3063
+ "name": "updatePerpMarketBaseSpread",
2728
3064
  "accounts": [
2729
3065
  {
2730
3066
  "name": "admin",
@@ -2733,19 +3069,24 @@
2733
3069
  },
2734
3070
  {
2735
3071
  "name": "state",
3072
+ "isMut": false,
3073
+ "isSigner": false
3074
+ },
3075
+ {
3076
+ "name": "perpMarket",
2736
3077
  "isMut": true,
2737
3078
  "isSigner": false
2738
3079
  }
2739
3080
  ],
2740
3081
  "args": [
2741
3082
  {
2742
- "name": "whitelistMint",
2743
- "type": "publicKey"
3083
+ "name": "baseSpread",
3084
+ "type": "u16"
2744
3085
  }
2745
3086
  ]
2746
3087
  },
2747
3088
  {
2748
- "name": "updateDiscountMint",
3089
+ "name": "updateAmmJitIntensity",
2749
3090
  "accounts": [
2750
3091
  {
2751
3092
  "name": "admin",
@@ -2754,19 +3095,24 @@
2754
3095
  },
2755
3096
  {
2756
3097
  "name": "state",
3098
+ "isMut": false,
3099
+ "isSigner": false
3100
+ },
3101
+ {
3102
+ "name": "perpMarket",
2757
3103
  "isMut": true,
2758
3104
  "isSigner": false
2759
3105
  }
2760
3106
  ],
2761
3107
  "args": [
2762
3108
  {
2763
- "name": "discountMint",
2764
- "type": "publicKey"
3109
+ "name": "ammJitIntensity",
3110
+ "type": "u8"
2765
3111
  }
2766
3112
  ]
2767
3113
  },
2768
3114
  {
2769
- "name": "updateExchangeStatus",
3115
+ "name": "updatePerpMarketMaxSpread",
2770
3116
  "accounts": [
2771
3117
  {
2772
3118
  "name": "admin",
@@ -2775,21 +3121,24 @@
2775
3121
  },
2776
3122
  {
2777
3123
  "name": "state",
3124
+ "isMut": false,
3125
+ "isSigner": false
3126
+ },
3127
+ {
3128
+ "name": "perpMarket",
2778
3129
  "isMut": true,
2779
3130
  "isSigner": false
2780
3131
  }
2781
3132
  ],
2782
3133
  "args": [
2783
3134
  {
2784
- "name": "exchangeStatus",
2785
- "type": {
2786
- "defined": "ExchangeStatus"
2787
- }
3135
+ "name": "maxSpread",
3136
+ "type": "u32"
2788
3137
  }
2789
3138
  ]
2790
3139
  },
2791
3140
  {
2792
- "name": "updatePerpAuctionDuration",
3141
+ "name": "updatePerpMarketStepSizeAndTickSize",
2793
3142
  "accounts": [
2794
3143
  {
2795
3144
  "name": "admin",
@@ -2798,19 +3147,28 @@
2798
3147
  },
2799
3148
  {
2800
3149
  "name": "state",
3150
+ "isMut": false,
3151
+ "isSigner": false
3152
+ },
3153
+ {
3154
+ "name": "perpMarket",
2801
3155
  "isMut": true,
2802
3156
  "isSigner": false
2803
3157
  }
2804
3158
  ],
2805
3159
  "args": [
2806
3160
  {
2807
- "name": "minPerpAuctionDuration",
2808
- "type": "u8"
3161
+ "name": "stepSize",
3162
+ "type": "u64"
3163
+ },
3164
+ {
3165
+ "name": "tickSize",
3166
+ "type": "u64"
2809
3167
  }
2810
3168
  ]
2811
3169
  },
2812
3170
  {
2813
- "name": "updateSpotAuctionDuration",
3171
+ "name": "updatePerpMarketName",
2814
3172
  "accounts": [
2815
3173
  {
2816
3174
  "name": "admin",
@@ -2819,34 +3177,34 @@
2819
3177
  },
2820
3178
  {
2821
3179
  "name": "state",
3180
+ "isMut": false,
3181
+ "isSigner": false
3182
+ },
3183
+ {
3184
+ "name": "perpMarket",
2822
3185
  "isMut": true,
2823
3186
  "isSigner": false
2824
3187
  }
2825
3188
  ],
2826
3189
  "args": [
2827
3190
  {
2828
- "name": "defaultSpotAuctionDuration",
2829
- "type": "u8"
3191
+ "name": "name",
3192
+ "type": {
3193
+ "array": [
3194
+ "u8",
3195
+ 32
3196
+ ]
3197
+ }
2830
3198
  }
2831
3199
  ]
2832
3200
  },
2833
3201
  {
2834
- "name": "initializeInsuranceFundStake",
3202
+ "name": "updatePerpMarketMinOrderSize",
2835
3203
  "accounts": [
2836
3204
  {
2837
- "name": "spotMarket",
3205
+ "name": "admin",
2838
3206
  "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
3207
+ "isSigner": true
2850
3208
  },
2851
3209
  {
2852
3210
  "name": "state",
@@ -2854,268 +3212,195 @@
2854
3212
  "isSigner": false
2855
3213
  },
2856
3214
  {
2857
- "name": "authority",
2858
- "isMut": false,
2859
- "isSigner": true
2860
- },
2861
- {
2862
- "name": "payer",
3215
+ "name": "perpMarket",
2863
3216
  "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
3217
  "isSigner": false
2875
3218
  }
2876
3219
  ],
2877
3220
  "args": [
2878
3221
  {
2879
- "name": "marketIndex",
2880
- "type": "u16"
3222
+ "name": "orderSize",
3223
+ "type": "u64"
2881
3224
  }
2882
3225
  ]
2883
3226
  },
2884
3227
  {
2885
- "name": "settleRevenueToInsuranceFund",
3228
+ "name": "updatePerpMarketMaxSlippageRatio",
2886
3229
  "accounts": [
2887
3230
  {
2888
- "name": "state",
2889
- "isMut": false,
2890
- "isSigner": false
2891
- },
2892
- {
2893
- "name": "spotMarket",
3231
+ "name": "admin",
2894
3232
  "isMut": false,
2895
- "isSigner": false
2896
- },
2897
- {
2898
- "name": "spotMarketVault",
2899
- "isMut": true,
2900
- "isSigner": false
3233
+ "isSigner": true
2901
3234
  },
2902
3235
  {
2903
- "name": "clearingHouseSigner",
3236
+ "name": "state",
2904
3237
  "isMut": false,
2905
3238
  "isSigner": false
2906
3239
  },
2907
3240
  {
2908
- "name": "insuranceFundVault",
3241
+ "name": "perpMarket",
2909
3242
  "isMut": true,
2910
3243
  "isSigner": false
2911
- },
2912
- {
2913
- "name": "tokenProgram",
2914
- "isMut": false,
2915
- "isSigner": false
2916
3244
  }
2917
3245
  ],
2918
3246
  "args": [
2919
3247
  {
2920
- "name": "marketIndex",
3248
+ "name": "maxSlippageRatio",
2921
3249
  "type": "u16"
2922
3250
  }
2923
3251
  ]
2924
3252
  },
2925
3253
  {
2926
- "name": "addInsuranceFundStake",
3254
+ "name": "updatePerpMarketMaxFillReserveFraction",
2927
3255
  "accounts": [
2928
3256
  {
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",
3257
+ "name": "admin",
2950
3258
  "isMut": false,
2951
3259
  "isSigner": true
2952
3260
  },
2953
3261
  {
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",
3262
+ "name": "state",
2965
3263
  "isMut": false,
2966
3264
  "isSigner": false
2967
3265
  },
2968
3266
  {
2969
- "name": "userTokenAccount",
3267
+ "name": "perpMarket",
2970
3268
  "isMut": true,
2971
3269
  "isSigner": false
2972
- },
2973
- {
2974
- "name": "tokenProgram",
2975
- "isMut": false,
2976
- "isSigner": false
2977
3270
  }
2978
3271
  ],
2979
3272
  "args": [
2980
3273
  {
2981
- "name": "marketIndex",
3274
+ "name": "maxFillReserveFraction",
2982
3275
  "type": "u16"
2983
- },
2984
- {
2985
- "name": "amount",
2986
- "type": "u64"
2987
3276
  }
2988
3277
  ]
2989
3278
  },
2990
3279
  {
2991
- "name": "requestRemoveInsuranceFundStake",
3280
+ "name": "updateAdmin",
2992
3281
  "accounts": [
2993
3282
  {
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",
3283
+ "name": "admin",
3010
3284
  "isMut": false,
3011
3285
  "isSigner": true
3012
3286
  },
3013
3287
  {
3014
- "name": "insuranceFundVault",
3288
+ "name": "state",
3015
3289
  "isMut": true,
3016
3290
  "isSigner": false
3017
3291
  }
3018
3292
  ],
3019
3293
  "args": [
3020
3294
  {
3021
- "name": "marketIndex",
3022
- "type": "u16"
3023
- },
3024
- {
3025
- "name": "amount",
3026
- "type": "u64"
3295
+ "name": "admin",
3296
+ "type": "publicKey"
3027
3297
  }
3028
3298
  ]
3029
3299
  },
3030
3300
  {
3031
- "name": "cancelRequestRemoveInsuranceFundStake",
3301
+ "name": "updateWhitelistMint",
3032
3302
  "accounts": [
3033
3303
  {
3034
- "name": "spotMarket",
3304
+ "name": "admin",
3035
3305
  "isMut": false,
3036
- "isSigner": false
3306
+ "isSigner": true
3037
3307
  },
3038
3308
  {
3039
- "name": "insuranceFundStake",
3309
+ "name": "state",
3040
3310
  "isMut": true,
3041
3311
  "isSigner": false
3042
- },
3312
+ }
3313
+ ],
3314
+ "args": [
3043
3315
  {
3044
- "name": "userStats",
3045
- "isMut": true,
3046
- "isSigner": false
3047
- },
3316
+ "name": "whitelistMint",
3317
+ "type": "publicKey"
3318
+ }
3319
+ ]
3320
+ },
3321
+ {
3322
+ "name": "updateDiscountMint",
3323
+ "accounts": [
3048
3324
  {
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
  }
@@ -4168,104 +4384,192 @@
4168
4384
  "type": "u16"
4169
4385
  },
4170
4386
  {
4171
- "name": "marketOraclePrice",
4172
- "type": "i128"
4387
+ "name": "marketOraclePrice",
4388
+ "type": "i128"
4389
+ },
4390
+ {
4391
+ "name": "pnlTransfer",
4392
+ "type": "u128"
4393
+ },
4394
+ {
4395
+ "name": "liabilityMarketIndex",
4396
+ "type": "u16"
4397
+ },
4398
+ {
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"
4173
4473
  },
4174
4474
  {
4175
- "name": "pnlTransfer",
4475
+ "name": "borrowAmount",
4176
4476
  "type": "u128"
4177
4477
  },
4178
4478
  {
4179
- "name": "liabilityMarketIndex",
4180
- "type": "u16"
4181
- },
4182
- {
4183
- "name": "liabilityPrice",
4184
- "type": "i128"
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"
@@ -5084,16 +5372,12 @@
5084
5372
  "name": "auctionDuration",
5085
5373
  "type": "u8"
5086
5374
  },
5087
- {
5088
- "name": "timeInForce",
5089
- "type": "u8"
5090
- },
5091
5375
  {
5092
5376
  "name": "padding",
5093
5377
  "type": {
5094
5378
  "array": [
5095
5379
  "u8",
5096
- 5
5380
+ 2
5097
5381
  ]
5098
5382
  }
5099
5383
  }
@@ -5101,43 +5385,43 @@
5101
5385
  }
5102
5386
  },
5103
5387
  {
5104
- "name": "SpotFulfillmentType",
5388
+ "name": "SwapDirection",
5105
5389
  "type": {
5106
5390
  "kind": "enum",
5107
5391
  "variants": [
5108
5392
  {
5109
- "name": "SerumV3"
5393
+ "name": "Add"
5110
5394
  },
5111
5395
  {
5112
- "name": "None"
5396
+ "name": "Remove"
5113
5397
  }
5114
5398
  ]
5115
5399
  }
5116
5400
  },
5117
5401
  {
5118
- "name": "SwapDirection",
5402
+ "name": "PositionDirection",
5119
5403
  "type": {
5120
5404
  "kind": "enum",
5121
5405
  "variants": [
5122
5406
  {
5123
- "name": "Add"
5407
+ "name": "Long"
5124
5408
  },
5125
5409
  {
5126
- "name": "Remove"
5410
+ "name": "Short"
5127
5411
  }
5128
5412
  ]
5129
5413
  }
5130
5414
  },
5131
5415
  {
5132
- "name": "PositionDirection",
5416
+ "name": "SpotFulfillmentType",
5133
5417
  "type": {
5134
5418
  "kind": "enum",
5135
5419
  "variants": [
5136
5420
  {
5137
- "name": "Long"
5421
+ "name": "SerumV3"
5138
5422
  },
5139
5423
  {
5140
- "name": "Short"
5424
+ "name": "None"
5141
5425
  }
5142
5426
  ]
5143
5427
  }
@@ -5195,6 +5479,9 @@
5195
5479
  {
5196
5480
  "name": "TooVolatile"
5197
5481
  },
5482
+ {
5483
+ "name": "TooUncertain"
5484
+ },
5198
5485
  {
5199
5486
  "name": "StaleForMargin"
5200
5487
  },
@@ -5333,6 +5620,9 @@
5333
5620
  },
5334
5621
  {
5335
5622
  "name": "OrderFilledWithMatch"
5623
+ },
5624
+ {
5625
+ "name": "MarketExpired"
5336
5626
  }
5337
5627
  ]
5338
5628
  }
@@ -5433,6 +5723,23 @@
5433
5723
  ]
5434
5724
  }
5435
5725
  },
5726
+ {
5727
+ "name": "OracleSource",
5728
+ "type": {
5729
+ "kind": "enum",
5730
+ "variants": [
5731
+ {
5732
+ "name": "Pyth"
5733
+ },
5734
+ {
5735
+ "name": "Switchboard"
5736
+ },
5737
+ {
5738
+ "name": "QuoteAsset"
5739
+ }
5740
+ ]
5741
+ }
5742
+ },
5436
5743
  {
5437
5744
  "name": "MarketStatus",
5438
5745
  "type": {
@@ -5498,23 +5805,9 @@
5498
5805
  },
5499
5806
  {
5500
5807
  "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
5808
  },
5516
5809
  {
5517
- "name": "QuoteAsset"
5810
+ "name": "Isolated"
5518
5811
  }
5519
5812
  ]
5520
5813
  }
@@ -5702,7 +5995,7 @@
5702
5995
  "index": false
5703
5996
  },
5704
5997
  {
5705
- "name": "userId",
5998
+ "name": "subAccountId",
5706
5999
  "type": "u8",
5707
6000
  "index": false
5708
6001
  },
@@ -5783,6 +6076,16 @@
5783
6076
  "type": "u128",
5784
6077
  "index": false
5785
6078
  },
6079
+ {
6080
+ "name": "totalDepositsAfter",
6081
+ "type": "u64",
6082
+ "index": false
6083
+ },
6084
+ {
6085
+ "name": "totalWithdrawsAfter",
6086
+ "type": "u64",
6087
+ "index": false
6088
+ },
5786
6089
  {
5787
6090
  "name": "transferUser",
5788
6091
  "type": {
@@ -5877,7 +6180,7 @@
5877
6180
  },
5878
6181
  {
5879
6182
  "name": "userLastCumulativeFunding",
5880
- "type": "i128",
6183
+ "type": "i64",
5881
6184
  "index": false
5882
6185
  },
5883
6186
  {
@@ -5951,12 +6254,12 @@
5951
6254
  "index": false
5952
6255
  },
5953
6256
  {
5954
- "name": "netBaseAssetAmount",
6257
+ "name": "baseAssetAmountWithAmm",
5955
6258
  "type": "i128",
5956
6259
  "index": false
5957
6260
  },
5958
6261
  {
5959
- "name": "netUnsettledLpBaseAssetAmount",
6262
+ "name": "baseAssetAmountWithUnsettledLp",
5960
6263
  "type": "i128",
5961
6264
  "index": false
5962
6265
  }
@@ -6031,12 +6334,12 @@
6031
6334
  "index": false
6032
6335
  },
6033
6336
  {
6034
- "name": "netBaseAssetAmount",
6337
+ "name": "baseAssetAmountWithAmm",
6035
6338
  "type": "i128",
6036
6339
  "index": false
6037
6340
  },
6038
6341
  {
6039
- "name": "openInterest",
6342
+ "name": "numberOfUsers",
6040
6343
  "type": "u128",
6041
6344
  "index": false
6042
6345
  },
@@ -6237,13 +6540,6 @@
6237
6540
  },
6238
6541
  "index": false
6239
6542
  },
6240
- {
6241
- "name": "takerOrderFee",
6242
- "type": {
6243
- "option": "i64"
6244
- },
6245
- "index": false
6246
- },
6247
6543
  {
6248
6544
  "name": "maker",
6249
6545
  "type": {
@@ -6288,13 +6584,6 @@
6288
6584
  },
6289
6585
  "index": false
6290
6586
  },
6291
- {
6292
- "name": "makerOrderFee",
6293
- "type": {
6294
- "option": "i64"
6295
- },
6296
- "index": false
6297
- },
6298
6587
  {
6299
6588
  "name": "oraclePrice",
6300
6589
  "type": "i128",
@@ -7283,6 +7572,11 @@
7283
7572
  "code": 6133,
7284
7573
  "name": "UserCantBeDeleted",
7285
7574
  "msg": "User Cant Be Deleted"
7575
+ },
7576
+ {
7577
+ "code": 6134,
7578
+ "name": "ReduceOnlyWithdrawIncreasedRisk",
7579
+ "msg": "Reduce Only Withdraw Increased Risk"
7286
7580
  }
7287
7581
  ]
7288
7582
  }