@glamsystems/glam-sdk 1.1.0-alpha.5 → 1.1.0

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 (137) hide show
  1. package/LICENSE +201 -0
  2. package/buffer-layout.d.ts +88 -0
  3. package/index.cjs.d.ts +1 -0
  4. package/index.cjs.js +1 -92594
  5. package/index.esm.d.ts +1 -0
  6. package/index.esm.js +1 -92146
  7. package/package.json +29 -17
  8. package/src/assets.d.ts +39 -0
  9. package/src/client/access.d.ts +57 -0
  10. package/src/client/base.d.ts +234 -0
  11. package/src/client/bridge.d.ts +205 -0
  12. package/src/client/bridgeRegistry.d.ts +32 -0
  13. package/src/client/cctp.d.ts +164 -0
  14. package/src/client/epi.d.ts +228 -0
  15. package/src/client/fees.d.ts +33 -0
  16. package/src/client/invest.d.ts +37 -0
  17. package/src/client/jupiter-lend/borrow.d.ts +92 -0
  18. package/src/client/jupiter-lend/earn.d.ts +64 -0
  19. package/src/client/jupiter-lend/index.d.ts +3 -0
  20. package/src/client/jupiter-lend/shared.d.ts +129 -0
  21. package/src/client/jupiter.d.ts +53 -0
  22. package/src/client/kamino/farm.d.ts +39 -0
  23. package/src/client/kamino/index.d.ts +4 -0
  24. package/src/client/kamino/lending.d.ts +94 -0
  25. package/src/client/kamino/types.d.ts +56 -0
  26. package/src/client/kamino/vaults.d.ts +39 -0
  27. package/src/client/loopscale/borrow.d.ts +118 -0
  28. package/src/client/loopscale/core.d.ts +604 -0
  29. package/src/client/loopscale/index.d.ts +5 -0
  30. package/src/client/loopscale/lend.d.ts +123 -0
  31. package/src/client/loopscale/vault.d.ts +43 -0
  32. package/src/client/marinade.d.ts +42 -0
  33. package/src/client/mint.d.ts +143 -0
  34. package/src/client/orca.d.ts +255 -0
  35. package/src/client/phoenix.d.ts +214 -0
  36. package/src/client/price.d.ts +182 -0
  37. package/src/client/stake-pool.d.ts +39 -0
  38. package/src/client/stake.d.ts +34 -0
  39. package/src/client/state.d.ts +56 -0
  40. package/src/client/timelock.d.ts +31 -0
  41. package/src/client/vault.d.ts +98 -0
  42. package/src/client.d.ts +82 -0
  43. package/src/clientConfig.d.ts +32 -0
  44. package/src/constants.d.ts +111 -0
  45. package/src/deser/base.d.ts +18 -0
  46. package/src/deser/index.d.ts +4 -0
  47. package/src/deser/integrationPolicies.d.ts +195 -0
  48. package/src/deser/kaminoLayouts.d.ts +264 -0
  49. package/src/deser/loopscaleLayouts.d.ts +157 -0
  50. package/src/deser/tokenAclLayouts.d.ts +67 -0
  51. package/src/error.d.ts +29 -0
  52. package/src/glamExports.d.ts +6260 -0
  53. package/src/globalConfig.d.ts +27 -0
  54. package/src/index.d.ts +24 -0
  55. package/src/models/acl.d.ts +43 -0
  56. package/src/models/index.d.ts +8 -0
  57. package/src/models/mint.d.ts +57 -0
  58. package/src/models/state.d.ts +94 -0
  59. package/src/models/types.d.ts +28 -0
  60. package/src/protocols.d.ts +29 -0
  61. package/src/utils/accounts.d.ts +71 -0
  62. package/src/utils/bitmask.d.ts +53 -0
  63. package/src/utils/blockhash.d.ts +11 -0
  64. package/src/utils/common.d.ts +73 -0
  65. package/src/utils/computeBudget.d.ts +15 -0
  66. package/src/utils/evm.d.ts +10 -0
  67. package/src/utils/fraction.d.ts +29 -0
  68. package/src/utils/glamPDAs.d.ts +15 -0
  69. package/src/utils/helius.d.ts +66 -0
  70. package/src/utils/index.d.ts +17 -0
  71. package/src/utils/jupiterApi.d.ts +95 -0
  72. package/src/utils/lookupTables.d.ts +83 -0
  73. package/src/utils/phoenixApi.d.ts +146 -0
  74. package/src/utils/pkmap.d.ts +87 -0
  75. package/src/utils/pkset.d.ts +73 -0
  76. package/src/utils/positionCategorizer.d.ts +38 -0
  77. package/src/utils/rpc.d.ts +18 -0
  78. package/src/utils/timelock.d.ts +52 -0
  79. package/src/utils/transaction.d.ts +13 -0
  80. package/target/idl/ext_bridge-staging.json +2379 -0
  81. package/target/idl/ext_bridge.json +2379 -0
  82. package/target/idl/ext_drift.json +5464 -0
  83. package/target/idl/ext_epi-staging.json +2862 -0
  84. package/target/idl/ext_epi.json +2862 -0
  85. package/target/idl/ext_loopscale-staging.json +4708 -0
  86. package/target/idl/ext_loopscale.json +4708 -0
  87. package/target/idl/ext_marinade-staging.json +1587 -0
  88. package/target/idl/ext_phoenix-staging.json +3525 -0
  89. package/target/idl/ext_phoenix.json +3525 -0
  90. package/target/idl/mock_layerzero_endpoint.json +144 -0
  91. package/target/idl/mock_layerzero_oft.json +155 -0
  92. package/target/idl/mock_wormhole_verify_vaa_shim.json +58 -0
  93. package/target/types/ext_bridge-staging.d.ts +2385 -0
  94. package/target/types/ext_bridge-staging.ts +2385 -0
  95. package/target/types/ext_bridge.d.ts +2385 -0
  96. package/target/types/ext_bridge.ts +2385 -0
  97. package/target/types/ext_cctp-staging.d.ts +1268 -0
  98. package/target/types/ext_cctp.d.ts +1268 -0
  99. package/target/types/ext_drift.d.ts +5470 -0
  100. package/target/types/ext_drift.ts +5470 -0
  101. package/target/types/ext_epi-staging.d.ts +2868 -0
  102. package/target/types/ext_epi-staging.ts +2868 -0
  103. package/target/types/ext_epi.d.ts +2868 -0
  104. package/target/types/ext_epi.ts +2868 -0
  105. package/target/types/ext_jupiter-staging.d.ts +1966 -0
  106. package/target/types/ext_jupiter.d.ts +1966 -0
  107. package/target/types/ext_kamino-staging.d.ts +3433 -0
  108. package/target/types/ext_kamino.d.ts +3433 -0
  109. package/target/types/ext_loopscale-staging.d.ts +4714 -0
  110. package/target/types/ext_loopscale-staging.ts +4714 -0
  111. package/target/types/ext_loopscale.d.ts +4714 -0
  112. package/target/types/ext_loopscale.ts +4714 -0
  113. package/target/types/ext_marinade-staging.d.ts +1593 -0
  114. package/target/types/ext_marinade-staging.ts +1593 -0
  115. package/target/types/ext_marinade.d.ts +1593 -0
  116. package/target/types/ext_orca-staging.d.ts +2829 -0
  117. package/target/types/ext_orca.d.ts +2829 -0
  118. package/target/types/ext_phoenix-staging.d.ts +3531 -0
  119. package/target/types/ext_phoenix-staging.ts +3531 -0
  120. package/target/types/ext_phoenix.d.ts +3531 -0
  121. package/target/types/ext_phoenix.ts +3531 -0
  122. package/target/types/ext_spl-staging.d.ts +1274 -0
  123. package/target/types/ext_spl.d.ts +1274 -0
  124. package/target/types/ext_stake_pool-staging.d.ts +1622 -0
  125. package/target/types/ext_stake_pool.d.ts +1622 -0
  126. package/target/types/glam_config.d.ts +755 -0
  127. package/target/types/glam_mint-staging.d.ts +8802 -0
  128. package/target/types/glam_mint.d.ts +6349 -0
  129. package/target/types/glam_policies.d.ts +477 -0
  130. package/target/types/glam_protocol-staging.d.ts +3362 -0
  131. package/target/types/glam_protocol.d.ts +2783 -0
  132. package/target/types/mock_layerzero_endpoint.d.ts +150 -0
  133. package/target/types/mock_layerzero_endpoint.ts +150 -0
  134. package/target/types/mock_layerzero_oft.d.ts +161 -0
  135. package/target/types/mock_layerzero_oft.ts +161 -0
  136. package/target/types/mock_wormhole_verify_vaa_shim.d.ts +64 -0
  137. package/target/types/mock_wormhole_verify_vaa_shim.ts +64 -0
@@ -0,0 +1,3525 @@
1
+ {
2
+ "address": "G1NTPhharzUz2WsdjBVrczrYjM2USsPMtboHYgdbSpiL",
3
+ "metadata": {
4
+ "name": "ext_phoenix",
5
+ "version": "0.1.1",
6
+ "spec": "0.1.0",
7
+ "description": "Phoenix and Ember integration for GLAM Protocol"
8
+ },
9
+ "instructions": [
10
+ {
11
+ "name": "cancel_all",
12
+ "docs": [
13
+ "Cancels all of the trader's resting orders on the market identified by the orderbook account."
14
+ ],
15
+ "discriminator": [
16
+ 98,
17
+ 191,
18
+ 75,
19
+ 220,
20
+ 115,
21
+ 40,
22
+ 71,
23
+ 237
24
+ ],
25
+ "accounts": [
26
+ {
27
+ "name": "glam_state",
28
+ "writable": true
29
+ },
30
+ {
31
+ "name": "glam_vault",
32
+ "writable": true,
33
+ "pda": {
34
+ "seeds": [
35
+ {
36
+ "kind": "const",
37
+ "value": [
38
+ 118,
39
+ 97,
40
+ 117,
41
+ 108,
42
+ 116
43
+ ]
44
+ },
45
+ {
46
+ "kind": "account",
47
+ "path": "glam_state"
48
+ }
49
+ ],
50
+ "program": {
51
+ "kind": "account",
52
+ "path": "glam_protocol_program"
53
+ }
54
+ }
55
+ },
56
+ {
57
+ "name": "glam_signer",
58
+ "writable": true,
59
+ "signer": true
60
+ },
61
+ {
62
+ "name": "integration_authority",
63
+ "pda": {
64
+ "seeds": [
65
+ {
66
+ "kind": "const",
67
+ "value": [
68
+ 105,
69
+ 110,
70
+ 116,
71
+ 101,
72
+ 103,
73
+ 114,
74
+ 97,
75
+ 116,
76
+ 105,
77
+ 111,
78
+ 110,
79
+ 45,
80
+ 97,
81
+ 117,
82
+ 116,
83
+ 104,
84
+ 111,
85
+ 114,
86
+ 105,
87
+ 116,
88
+ 121
89
+ ]
90
+ }
91
+ ]
92
+ }
93
+ },
94
+ {
95
+ "name": "cpi_program",
96
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
97
+ },
98
+ {
99
+ "name": "glam_protocol_program",
100
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
101
+ },
102
+ {
103
+ "name": "system_program",
104
+ "address": "11111111111111111111111111111111"
105
+ }
106
+ ],
107
+ "args": []
108
+ },
109
+ {
110
+ "name": "cancel_orders_by_id",
111
+ "docs": [
112
+ "Cancels specific resting orders by their order IDs."
113
+ ],
114
+ "discriminator": [
115
+ 234,
116
+ 204,
117
+ 126,
118
+ 94,
119
+ 222,
120
+ 22,
121
+ 141,
122
+ 24
123
+ ],
124
+ "accounts": [
125
+ {
126
+ "name": "glam_state",
127
+ "writable": true
128
+ },
129
+ {
130
+ "name": "glam_vault",
131
+ "writable": true,
132
+ "pda": {
133
+ "seeds": [
134
+ {
135
+ "kind": "const",
136
+ "value": [
137
+ 118,
138
+ 97,
139
+ 117,
140
+ 108,
141
+ 116
142
+ ]
143
+ },
144
+ {
145
+ "kind": "account",
146
+ "path": "glam_state"
147
+ }
148
+ ],
149
+ "program": {
150
+ "kind": "account",
151
+ "path": "glam_protocol_program"
152
+ }
153
+ }
154
+ },
155
+ {
156
+ "name": "glam_signer",
157
+ "writable": true,
158
+ "signer": true
159
+ },
160
+ {
161
+ "name": "integration_authority",
162
+ "pda": {
163
+ "seeds": [
164
+ {
165
+ "kind": "const",
166
+ "value": [
167
+ 105,
168
+ 110,
169
+ 116,
170
+ 101,
171
+ 103,
172
+ 114,
173
+ 97,
174
+ 116,
175
+ 105,
176
+ 111,
177
+ 110,
178
+ 45,
179
+ 97,
180
+ 117,
181
+ 116,
182
+ 104,
183
+ 111,
184
+ 114,
185
+ 105,
186
+ 116,
187
+ 121
188
+ ]
189
+ }
190
+ ]
191
+ }
192
+ },
193
+ {
194
+ "name": "cpi_program",
195
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
196
+ },
197
+ {
198
+ "name": "glam_protocol_program",
199
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
200
+ },
201
+ {
202
+ "name": "system_program",
203
+ "address": "11111111111111111111111111111111"
204
+ }
205
+ ],
206
+ "args": [
207
+ {
208
+ "name": "order_ids",
209
+ "type": {
210
+ "defined": {
211
+ "name": "OrderIds"
212
+ }
213
+ }
214
+ }
215
+ ]
216
+ },
217
+ {
218
+ "name": "cancel_up_to",
219
+ "docs": [
220
+ "Cancels orders on one side of the book up to an optional count and/or tick limit."
221
+ ],
222
+ "discriminator": [
223
+ 26,
224
+ 209,
225
+ 244,
226
+ 253,
227
+ 59,
228
+ 175,
229
+ 227,
230
+ 54
231
+ ],
232
+ "accounts": [
233
+ {
234
+ "name": "glam_state",
235
+ "writable": true
236
+ },
237
+ {
238
+ "name": "glam_vault",
239
+ "writable": true,
240
+ "pda": {
241
+ "seeds": [
242
+ {
243
+ "kind": "const",
244
+ "value": [
245
+ 118,
246
+ 97,
247
+ 117,
248
+ 108,
249
+ 116
250
+ ]
251
+ },
252
+ {
253
+ "kind": "account",
254
+ "path": "glam_state"
255
+ }
256
+ ],
257
+ "program": {
258
+ "kind": "account",
259
+ "path": "glam_protocol_program"
260
+ }
261
+ }
262
+ },
263
+ {
264
+ "name": "glam_signer",
265
+ "writable": true,
266
+ "signer": true
267
+ },
268
+ {
269
+ "name": "integration_authority",
270
+ "pda": {
271
+ "seeds": [
272
+ {
273
+ "kind": "const",
274
+ "value": [
275
+ 105,
276
+ 110,
277
+ 116,
278
+ 101,
279
+ 103,
280
+ 114,
281
+ 97,
282
+ 116,
283
+ 105,
284
+ 111,
285
+ 110,
286
+ 45,
287
+ 97,
288
+ 117,
289
+ 116,
290
+ 104,
291
+ 111,
292
+ 114,
293
+ 105,
294
+ 116,
295
+ 121
296
+ ]
297
+ }
298
+ ]
299
+ }
300
+ },
301
+ {
302
+ "name": "cpi_program",
303
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
304
+ },
305
+ {
306
+ "name": "glam_protocol_program",
307
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
308
+ },
309
+ {
310
+ "name": "system_program",
311
+ "address": "11111111111111111111111111111111"
312
+ }
313
+ ],
314
+ "args": [
315
+ {
316
+ "name": "args",
317
+ "type": {
318
+ "defined": {
319
+ "name": "CancelUpToInstruction"
320
+ }
321
+ }
322
+ }
323
+ ]
324
+ },
325
+ {
326
+ "name": "deposit",
327
+ "docs": [
328
+ "Ember deposit: converts the vault's input mint into the Phoenix-side output mint."
329
+ ],
330
+ "discriminator": [
331
+ 242,
332
+ 35,
333
+ 198,
334
+ 137,
335
+ 82,
336
+ 225,
337
+ 242,
338
+ 182
339
+ ],
340
+ "accounts": [
341
+ {
342
+ "name": "glam_state",
343
+ "writable": true
344
+ },
345
+ {
346
+ "name": "glam_vault",
347
+ "writable": true,
348
+ "pda": {
349
+ "seeds": [
350
+ {
351
+ "kind": "const",
352
+ "value": [
353
+ 118,
354
+ 97,
355
+ 117,
356
+ 108,
357
+ 116
358
+ ]
359
+ },
360
+ {
361
+ "kind": "account",
362
+ "path": "glam_state"
363
+ }
364
+ ],
365
+ "program": {
366
+ "kind": "account",
367
+ "path": "glam_protocol_program"
368
+ }
369
+ }
370
+ },
371
+ {
372
+ "name": "glam_signer",
373
+ "writable": true,
374
+ "signer": true
375
+ },
376
+ {
377
+ "name": "integration_authority",
378
+ "pda": {
379
+ "seeds": [
380
+ {
381
+ "kind": "const",
382
+ "value": [
383
+ 105,
384
+ 110,
385
+ 116,
386
+ 101,
387
+ 103,
388
+ 114,
389
+ 97,
390
+ 116,
391
+ 105,
392
+ 111,
393
+ 110,
394
+ 45,
395
+ 97,
396
+ 117,
397
+ 116,
398
+ 104,
399
+ 111,
400
+ 114,
401
+ 105,
402
+ 116,
403
+ 121
404
+ ]
405
+ }
406
+ ]
407
+ }
408
+ },
409
+ {
410
+ "name": "cpi_program",
411
+ "address": "EMBERpYNE6ehWmXymZZS2skiFmCa9V5dp14e1iduM5qy"
412
+ },
413
+ {
414
+ "name": "glam_protocol_program",
415
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
416
+ },
417
+ {
418
+ "name": "system_program",
419
+ "address": "11111111111111111111111111111111"
420
+ },
421
+ {
422
+ "name": "ember_state"
423
+ },
424
+ {
425
+ "name": "input_mint"
426
+ },
427
+ {
428
+ "name": "output_mint",
429
+ "writable": true
430
+ },
431
+ {
432
+ "name": "input_token_account",
433
+ "writable": true
434
+ },
435
+ {
436
+ "name": "output_token_account",
437
+ "writable": true
438
+ },
439
+ {
440
+ "name": "ember_vault",
441
+ "writable": true
442
+ },
443
+ {
444
+ "name": "token_program"
445
+ }
446
+ ],
447
+ "args": [
448
+ {
449
+ "name": "deposit_params",
450
+ "type": {
451
+ "defined": {
452
+ "name": "DepositParams"
453
+ }
454
+ }
455
+ }
456
+ ]
457
+ },
458
+ {
459
+ "name": "deposit_funds",
460
+ "docs": [
461
+ "Deposits base or quote mint tokens from the vault's token account into the Phoenix trader account."
462
+ ],
463
+ "discriminator": [
464
+ 202,
465
+ 39,
466
+ 52,
467
+ 211,
468
+ 53,
469
+ 20,
470
+ 250,
471
+ 88
472
+ ],
473
+ "accounts": [
474
+ {
475
+ "name": "glam_state",
476
+ "writable": true
477
+ },
478
+ {
479
+ "name": "glam_vault",
480
+ "writable": true,
481
+ "pda": {
482
+ "seeds": [
483
+ {
484
+ "kind": "const",
485
+ "value": [
486
+ 118,
487
+ 97,
488
+ 117,
489
+ 108,
490
+ 116
491
+ ]
492
+ },
493
+ {
494
+ "kind": "account",
495
+ "path": "glam_state"
496
+ }
497
+ ],
498
+ "program": {
499
+ "kind": "account",
500
+ "path": "glam_protocol_program"
501
+ }
502
+ }
503
+ },
504
+ {
505
+ "name": "glam_signer",
506
+ "writable": true,
507
+ "signer": true
508
+ },
509
+ {
510
+ "name": "integration_authority",
511
+ "pda": {
512
+ "seeds": [
513
+ {
514
+ "kind": "const",
515
+ "value": [
516
+ 105,
517
+ 110,
518
+ 116,
519
+ 101,
520
+ 103,
521
+ 114,
522
+ 97,
523
+ 116,
524
+ 105,
525
+ 111,
526
+ 110,
527
+ 45,
528
+ 97,
529
+ 117,
530
+ 116,
531
+ 104,
532
+ 111,
533
+ 114,
534
+ 105,
535
+ 116,
536
+ 121
537
+ ]
538
+ }
539
+ ]
540
+ }
541
+ },
542
+ {
543
+ "name": "cpi_program",
544
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
545
+ },
546
+ {
547
+ "name": "glam_protocol_program",
548
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
549
+ },
550
+ {
551
+ "name": "system_program",
552
+ "address": "11111111111111111111111111111111"
553
+ }
554
+ ],
555
+ "args": [
556
+ {
557
+ "name": "params",
558
+ "type": {
559
+ "defined": {
560
+ "name": "DepositFundsInstruction"
561
+ }
562
+ }
563
+ }
564
+ ]
565
+ },
566
+ {
567
+ "name": "place_limit_order",
568
+ "docs": [
569
+ "Places a limit order; the unfilled portion rests on the orderbook."
570
+ ],
571
+ "discriminator": [
572
+ 108,
573
+ 176,
574
+ 33,
575
+ 186,
576
+ 146,
577
+ 229,
578
+ 1,
579
+ 197
580
+ ],
581
+ "accounts": [
582
+ {
583
+ "name": "glam_state",
584
+ "writable": true
585
+ },
586
+ {
587
+ "name": "glam_vault",
588
+ "writable": true,
589
+ "pda": {
590
+ "seeds": [
591
+ {
592
+ "kind": "const",
593
+ "value": [
594
+ 118,
595
+ 97,
596
+ 117,
597
+ 108,
598
+ 116
599
+ ]
600
+ },
601
+ {
602
+ "kind": "account",
603
+ "path": "glam_state"
604
+ }
605
+ ],
606
+ "program": {
607
+ "kind": "account",
608
+ "path": "glam_protocol_program"
609
+ }
610
+ }
611
+ },
612
+ {
613
+ "name": "glam_signer",
614
+ "writable": true,
615
+ "signer": true
616
+ },
617
+ {
618
+ "name": "integration_authority",
619
+ "pda": {
620
+ "seeds": [
621
+ {
622
+ "kind": "const",
623
+ "value": [
624
+ 105,
625
+ 110,
626
+ 116,
627
+ 101,
628
+ 103,
629
+ 114,
630
+ 97,
631
+ 116,
632
+ 105,
633
+ 111,
634
+ 110,
635
+ 45,
636
+ 97,
637
+ 117,
638
+ 116,
639
+ 104,
640
+ 111,
641
+ 114,
642
+ 105,
643
+ 116,
644
+ 121
645
+ ]
646
+ }
647
+ ]
648
+ }
649
+ },
650
+ {
651
+ "name": "cpi_program",
652
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
653
+ },
654
+ {
655
+ "name": "glam_protocol_program",
656
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
657
+ },
658
+ {
659
+ "name": "system_program",
660
+ "address": "11111111111111111111111111111111"
661
+ }
662
+ ],
663
+ "args": [
664
+ {
665
+ "name": "packet",
666
+ "type": {
667
+ "defined": {
668
+ "name": "OrderPacket"
669
+ }
670
+ }
671
+ }
672
+ ]
673
+ },
674
+ {
675
+ "name": "place_market_order",
676
+ "docs": [
677
+ "Places an immediate-or-cancel market order; unfilled size is dropped rather than rested."
678
+ ],
679
+ "discriminator": [
680
+ 90,
681
+ 118,
682
+ 192,
683
+ 252,
684
+ 192,
685
+ 99,
686
+ 39,
687
+ 145
688
+ ],
689
+ "accounts": [
690
+ {
691
+ "name": "glam_state",
692
+ "writable": true
693
+ },
694
+ {
695
+ "name": "glam_vault",
696
+ "writable": true,
697
+ "pda": {
698
+ "seeds": [
699
+ {
700
+ "kind": "const",
701
+ "value": [
702
+ 118,
703
+ 97,
704
+ 117,
705
+ 108,
706
+ 116
707
+ ]
708
+ },
709
+ {
710
+ "kind": "account",
711
+ "path": "glam_state"
712
+ }
713
+ ],
714
+ "program": {
715
+ "kind": "account",
716
+ "path": "glam_protocol_program"
717
+ }
718
+ }
719
+ },
720
+ {
721
+ "name": "glam_signer",
722
+ "writable": true,
723
+ "signer": true
724
+ },
725
+ {
726
+ "name": "integration_authority",
727
+ "pda": {
728
+ "seeds": [
729
+ {
730
+ "kind": "const",
731
+ "value": [
732
+ 105,
733
+ 110,
734
+ 116,
735
+ 101,
736
+ 103,
737
+ 114,
738
+ 97,
739
+ 116,
740
+ 105,
741
+ 111,
742
+ 110,
743
+ 45,
744
+ 97,
745
+ 117,
746
+ 116,
747
+ 104,
748
+ 111,
749
+ 114,
750
+ 105,
751
+ 116,
752
+ 121
753
+ ]
754
+ }
755
+ ]
756
+ }
757
+ },
758
+ {
759
+ "name": "cpi_program",
760
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
761
+ },
762
+ {
763
+ "name": "glam_protocol_program",
764
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
765
+ },
766
+ {
767
+ "name": "system_program",
768
+ "address": "11111111111111111111111111111111"
769
+ }
770
+ ],
771
+ "args": [
772
+ {
773
+ "name": "packet",
774
+ "type": {
775
+ "defined": {
776
+ "name": "OrderPacket"
777
+ }
778
+ }
779
+ }
780
+ ]
781
+ },
782
+ {
783
+ "name": "place_multi_limit_order",
784
+ "docs": [
785
+ "Places multiple limit orders (bids and/or asks) on a single market in one CPI."
786
+ ],
787
+ "discriminator": [
788
+ 236,
789
+ 208,
790
+ 221,
791
+ 172,
792
+ 141,
793
+ 226,
794
+ 129,
795
+ 84
796
+ ],
797
+ "accounts": [
798
+ {
799
+ "name": "glam_state",
800
+ "writable": true
801
+ },
802
+ {
803
+ "name": "glam_vault",
804
+ "writable": true,
805
+ "pda": {
806
+ "seeds": [
807
+ {
808
+ "kind": "const",
809
+ "value": [
810
+ 118,
811
+ 97,
812
+ 117,
813
+ 108,
814
+ 116
815
+ ]
816
+ },
817
+ {
818
+ "kind": "account",
819
+ "path": "glam_state"
820
+ }
821
+ ],
822
+ "program": {
823
+ "kind": "account",
824
+ "path": "glam_protocol_program"
825
+ }
826
+ }
827
+ },
828
+ {
829
+ "name": "glam_signer",
830
+ "writable": true,
831
+ "signer": true
832
+ },
833
+ {
834
+ "name": "integration_authority",
835
+ "pda": {
836
+ "seeds": [
837
+ {
838
+ "kind": "const",
839
+ "value": [
840
+ 105,
841
+ 110,
842
+ 116,
843
+ 101,
844
+ 103,
845
+ 114,
846
+ 97,
847
+ 116,
848
+ 105,
849
+ 111,
850
+ 110,
851
+ 45,
852
+ 97,
853
+ 117,
854
+ 116,
855
+ 104,
856
+ 111,
857
+ 114,
858
+ 105,
859
+ 116,
860
+ 121
861
+ ]
862
+ }
863
+ ]
864
+ }
865
+ },
866
+ {
867
+ "name": "cpi_program",
868
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
869
+ },
870
+ {
871
+ "name": "glam_protocol_program",
872
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
873
+ },
874
+ {
875
+ "name": "system_program",
876
+ "address": "11111111111111111111111111111111"
877
+ }
878
+ ],
879
+ "args": [
880
+ {
881
+ "name": "packet",
882
+ "type": {
883
+ "defined": {
884
+ "name": "MultipleOrderPacket"
885
+ }
886
+ }
887
+ }
888
+ ]
889
+ },
890
+ {
891
+ "name": "register_trader",
892
+ "docs": [
893
+ "Initializes a Phoenix trader account (parent or child subaccount) owned by the vault."
894
+ ],
895
+ "discriminator": [
896
+ 75,
897
+ 243,
898
+ 224,
899
+ 167,
900
+ 1,
901
+ 5,
902
+ 51,
903
+ 32
904
+ ],
905
+ "accounts": [
906
+ {
907
+ "name": "glam_state",
908
+ "writable": true
909
+ },
910
+ {
911
+ "name": "glam_vault",
912
+ "writable": true,
913
+ "pda": {
914
+ "seeds": [
915
+ {
916
+ "kind": "const",
917
+ "value": [
918
+ 118,
919
+ 97,
920
+ 117,
921
+ 108,
922
+ 116
923
+ ]
924
+ },
925
+ {
926
+ "kind": "account",
927
+ "path": "glam_state"
928
+ }
929
+ ],
930
+ "program": {
931
+ "kind": "account",
932
+ "path": "glam_protocol_program"
933
+ }
934
+ }
935
+ },
936
+ {
937
+ "name": "glam_signer",
938
+ "writable": true,
939
+ "signer": true
940
+ },
941
+ {
942
+ "name": "integration_authority",
943
+ "pda": {
944
+ "seeds": [
945
+ {
946
+ "kind": "const",
947
+ "value": [
948
+ 105,
949
+ 110,
950
+ 116,
951
+ 101,
952
+ 103,
953
+ 114,
954
+ 97,
955
+ 116,
956
+ 105,
957
+ 111,
958
+ 110,
959
+ 45,
960
+ 97,
961
+ 117,
962
+ 116,
963
+ 104,
964
+ 111,
965
+ 114,
966
+ 105,
967
+ 116,
968
+ 121
969
+ ]
970
+ }
971
+ ]
972
+ }
973
+ },
974
+ {
975
+ "name": "cpi_program",
976
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
977
+ },
978
+ {
979
+ "name": "glam_protocol_program",
980
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
981
+ },
982
+ {
983
+ "name": "system_program",
984
+ "address": "11111111111111111111111111111111"
985
+ },
986
+ {
987
+ "name": "log_authority"
988
+ },
989
+ {
990
+ "name": "global_config"
991
+ },
992
+ {
993
+ "name": "trader_account",
994
+ "writable": true
995
+ }
996
+ ],
997
+ "args": [
998
+ {
999
+ "name": "args",
1000
+ "type": {
1001
+ "defined": {
1002
+ "name": "RegisterTraderParams"
1003
+ }
1004
+ }
1005
+ }
1006
+ ]
1007
+ },
1008
+ {
1009
+ "name": "set_phoenix_policy",
1010
+ "docs": [
1011
+ "Sets the GLAM Phoenix policy (market allowlist, order types, and price-deviation limits) on the vault state."
1012
+ ],
1013
+ "discriminator": [
1014
+ 57,
1015
+ 235,
1016
+ 161,
1017
+ 196,
1018
+ 65,
1019
+ 41,
1020
+ 80,
1021
+ 85
1022
+ ],
1023
+ "accounts": [
1024
+ {
1025
+ "name": "glam_state",
1026
+ "writable": true
1027
+ },
1028
+ {
1029
+ "name": "glam_signer",
1030
+ "writable": true,
1031
+ "signer": true
1032
+ },
1033
+ {
1034
+ "name": "glam_protocol_program",
1035
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1036
+ }
1037
+ ],
1038
+ "args": [
1039
+ {
1040
+ "name": "policy",
1041
+ "type": {
1042
+ "defined": {
1043
+ "name": "PhoenixPolicy"
1044
+ }
1045
+ }
1046
+ }
1047
+ ]
1048
+ },
1049
+ {
1050
+ "name": "sync_parent_to_child",
1051
+ "docs": [
1052
+ "Syncs collateral and state from a parent trader account down to a child subaccount."
1053
+ ],
1054
+ "discriminator": [
1055
+ 175,
1056
+ 137,
1057
+ 217,
1058
+ 11,
1059
+ 235,
1060
+ 39,
1061
+ 150,
1062
+ 19
1063
+ ],
1064
+ "accounts": [
1065
+ {
1066
+ "name": "glam_state",
1067
+ "writable": true
1068
+ },
1069
+ {
1070
+ "name": "glam_vault",
1071
+ "writable": true,
1072
+ "pda": {
1073
+ "seeds": [
1074
+ {
1075
+ "kind": "const",
1076
+ "value": [
1077
+ 118,
1078
+ 97,
1079
+ 117,
1080
+ 108,
1081
+ 116
1082
+ ]
1083
+ },
1084
+ {
1085
+ "kind": "account",
1086
+ "path": "glam_state"
1087
+ }
1088
+ ],
1089
+ "program": {
1090
+ "kind": "account",
1091
+ "path": "glam_protocol_program"
1092
+ }
1093
+ }
1094
+ },
1095
+ {
1096
+ "name": "glam_signer",
1097
+ "writable": true,
1098
+ "signer": true
1099
+ },
1100
+ {
1101
+ "name": "integration_authority",
1102
+ "pda": {
1103
+ "seeds": [
1104
+ {
1105
+ "kind": "const",
1106
+ "value": [
1107
+ 105,
1108
+ 110,
1109
+ 116,
1110
+ 101,
1111
+ 103,
1112
+ 114,
1113
+ 97,
1114
+ 116,
1115
+ 105,
1116
+ 111,
1117
+ 110,
1118
+ 45,
1119
+ 97,
1120
+ 117,
1121
+ 116,
1122
+ 104,
1123
+ 111,
1124
+ 114,
1125
+ 105,
1126
+ 116,
1127
+ 121
1128
+ ]
1129
+ }
1130
+ ]
1131
+ }
1132
+ },
1133
+ {
1134
+ "name": "cpi_program",
1135
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
1136
+ },
1137
+ {
1138
+ "name": "glam_protocol_program",
1139
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1140
+ },
1141
+ {
1142
+ "name": "system_program",
1143
+ "address": "11111111111111111111111111111111"
1144
+ }
1145
+ ],
1146
+ "args": []
1147
+ },
1148
+ {
1149
+ "name": "transfer_collateral",
1150
+ "docs": [
1151
+ "Transfers collateral from a source trader subaccount to a destination trader subaccount."
1152
+ ],
1153
+ "discriminator": [
1154
+ 157,
1155
+ 163,
1156
+ 63,
1157
+ 27,
1158
+ 242,
1159
+ 72,
1160
+ 251,
1161
+ 97
1162
+ ],
1163
+ "accounts": [
1164
+ {
1165
+ "name": "glam_state",
1166
+ "writable": true
1167
+ },
1168
+ {
1169
+ "name": "glam_vault",
1170
+ "writable": true,
1171
+ "pda": {
1172
+ "seeds": [
1173
+ {
1174
+ "kind": "const",
1175
+ "value": [
1176
+ 118,
1177
+ 97,
1178
+ 117,
1179
+ 108,
1180
+ 116
1181
+ ]
1182
+ },
1183
+ {
1184
+ "kind": "account",
1185
+ "path": "glam_state"
1186
+ }
1187
+ ],
1188
+ "program": {
1189
+ "kind": "account",
1190
+ "path": "glam_protocol_program"
1191
+ }
1192
+ }
1193
+ },
1194
+ {
1195
+ "name": "glam_signer",
1196
+ "writable": true,
1197
+ "signer": true
1198
+ },
1199
+ {
1200
+ "name": "integration_authority",
1201
+ "pda": {
1202
+ "seeds": [
1203
+ {
1204
+ "kind": "const",
1205
+ "value": [
1206
+ 105,
1207
+ 110,
1208
+ 116,
1209
+ 101,
1210
+ 103,
1211
+ 114,
1212
+ 97,
1213
+ 116,
1214
+ 105,
1215
+ 111,
1216
+ 110,
1217
+ 45,
1218
+ 97,
1219
+ 117,
1220
+ 116,
1221
+ 104,
1222
+ 111,
1223
+ 114,
1224
+ 105,
1225
+ 116,
1226
+ 121
1227
+ ]
1228
+ }
1229
+ ]
1230
+ }
1231
+ },
1232
+ {
1233
+ "name": "cpi_program",
1234
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
1235
+ },
1236
+ {
1237
+ "name": "glam_protocol_program",
1238
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1239
+ },
1240
+ {
1241
+ "name": "system_program",
1242
+ "address": "11111111111111111111111111111111"
1243
+ }
1244
+ ],
1245
+ "args": [
1246
+ {
1247
+ "name": "params",
1248
+ "type": {
1249
+ "defined": {
1250
+ "name": "TransferCollateralInstruction"
1251
+ }
1252
+ }
1253
+ }
1254
+ ]
1255
+ },
1256
+ {
1257
+ "name": "transfer_collateral_child_to_parent",
1258
+ "docs": [
1259
+ "Transfers collateral from a child subaccount back to its parent trader account."
1260
+ ],
1261
+ "discriminator": [
1262
+ 51,
1263
+ 100,
1264
+ 177,
1265
+ 115,
1266
+ 139,
1267
+ 135,
1268
+ 247,
1269
+ 139
1270
+ ],
1271
+ "accounts": [
1272
+ {
1273
+ "name": "glam_state",
1274
+ "writable": true
1275
+ },
1276
+ {
1277
+ "name": "glam_vault",
1278
+ "writable": true,
1279
+ "pda": {
1280
+ "seeds": [
1281
+ {
1282
+ "kind": "const",
1283
+ "value": [
1284
+ 118,
1285
+ 97,
1286
+ 117,
1287
+ 108,
1288
+ 116
1289
+ ]
1290
+ },
1291
+ {
1292
+ "kind": "account",
1293
+ "path": "glam_state"
1294
+ }
1295
+ ],
1296
+ "program": {
1297
+ "kind": "account",
1298
+ "path": "glam_protocol_program"
1299
+ }
1300
+ }
1301
+ },
1302
+ {
1303
+ "name": "glam_signer",
1304
+ "writable": true,
1305
+ "signer": true
1306
+ },
1307
+ {
1308
+ "name": "integration_authority",
1309
+ "pda": {
1310
+ "seeds": [
1311
+ {
1312
+ "kind": "const",
1313
+ "value": [
1314
+ 105,
1315
+ 110,
1316
+ 116,
1317
+ 101,
1318
+ 103,
1319
+ 114,
1320
+ 97,
1321
+ 116,
1322
+ 105,
1323
+ 111,
1324
+ 110,
1325
+ 45,
1326
+ 97,
1327
+ 117,
1328
+ 116,
1329
+ 104,
1330
+ 111,
1331
+ 114,
1332
+ 105,
1333
+ 116,
1334
+ 121
1335
+ ]
1336
+ }
1337
+ ]
1338
+ }
1339
+ },
1340
+ {
1341
+ "name": "cpi_program",
1342
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
1343
+ },
1344
+ {
1345
+ "name": "glam_protocol_program",
1346
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1347
+ },
1348
+ {
1349
+ "name": "system_program",
1350
+ "address": "11111111111111111111111111111111"
1351
+ }
1352
+ ],
1353
+ "args": [
1354
+ {
1355
+ "name": "params",
1356
+ "type": {
1357
+ "defined": {
1358
+ "name": "TransferCollateralChildToParentInstruction"
1359
+ }
1360
+ }
1361
+ }
1362
+ ]
1363
+ },
1364
+ {
1365
+ "name": "update_trader_state",
1366
+ "docs": [
1367
+ "Refreshes the trader account's cached state (PnL, funding, margin) against current market data."
1368
+ ],
1369
+ "discriminator": [
1370
+ 249,
1371
+ 139,
1372
+ 82,
1373
+ 44,
1374
+ 126,
1375
+ 66,
1376
+ 133,
1377
+ 220
1378
+ ],
1379
+ "accounts": [
1380
+ {
1381
+ "name": "glam_state",
1382
+ "writable": true
1383
+ },
1384
+ {
1385
+ "name": "glam_vault",
1386
+ "writable": true,
1387
+ "pda": {
1388
+ "seeds": [
1389
+ {
1390
+ "kind": "const",
1391
+ "value": [
1392
+ 118,
1393
+ 97,
1394
+ 117,
1395
+ 108,
1396
+ 116
1397
+ ]
1398
+ },
1399
+ {
1400
+ "kind": "account",
1401
+ "path": "glam_state"
1402
+ }
1403
+ ],
1404
+ "program": {
1405
+ "kind": "account",
1406
+ "path": "glam_protocol_program"
1407
+ }
1408
+ }
1409
+ },
1410
+ {
1411
+ "name": "glam_signer",
1412
+ "writable": true,
1413
+ "signer": true
1414
+ },
1415
+ {
1416
+ "name": "integration_authority",
1417
+ "pda": {
1418
+ "seeds": [
1419
+ {
1420
+ "kind": "const",
1421
+ "value": [
1422
+ 105,
1423
+ 110,
1424
+ 116,
1425
+ 101,
1426
+ 103,
1427
+ 114,
1428
+ 97,
1429
+ 116,
1430
+ 105,
1431
+ 111,
1432
+ 110,
1433
+ 45,
1434
+ 97,
1435
+ 117,
1436
+ 116,
1437
+ 104,
1438
+ 111,
1439
+ 114,
1440
+ 105,
1441
+ 116,
1442
+ 121
1443
+ ]
1444
+ }
1445
+ ]
1446
+ }
1447
+ },
1448
+ {
1449
+ "name": "cpi_program",
1450
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
1451
+ },
1452
+ {
1453
+ "name": "glam_protocol_program",
1454
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1455
+ },
1456
+ {
1457
+ "name": "system_program",
1458
+ "address": "11111111111111111111111111111111"
1459
+ }
1460
+ ],
1461
+ "args": []
1462
+ },
1463
+ {
1464
+ "name": "withdraw",
1465
+ "docs": [
1466
+ "Ember withdraw: converts the Phoenix-side output mint back to the input mint; `None` = full balance."
1467
+ ],
1468
+ "discriminator": [
1469
+ 183,
1470
+ 18,
1471
+ 70,
1472
+ 156,
1473
+ 148,
1474
+ 109,
1475
+ 161,
1476
+ 34
1477
+ ],
1478
+ "accounts": [
1479
+ {
1480
+ "name": "glam_state",
1481
+ "writable": true
1482
+ },
1483
+ {
1484
+ "name": "glam_vault",
1485
+ "writable": true,
1486
+ "pda": {
1487
+ "seeds": [
1488
+ {
1489
+ "kind": "const",
1490
+ "value": [
1491
+ 118,
1492
+ 97,
1493
+ 117,
1494
+ 108,
1495
+ 116
1496
+ ]
1497
+ },
1498
+ {
1499
+ "kind": "account",
1500
+ "path": "glam_state"
1501
+ }
1502
+ ],
1503
+ "program": {
1504
+ "kind": "account",
1505
+ "path": "glam_protocol_program"
1506
+ }
1507
+ }
1508
+ },
1509
+ {
1510
+ "name": "glam_signer",
1511
+ "writable": true,
1512
+ "signer": true
1513
+ },
1514
+ {
1515
+ "name": "integration_authority",
1516
+ "pda": {
1517
+ "seeds": [
1518
+ {
1519
+ "kind": "const",
1520
+ "value": [
1521
+ 105,
1522
+ 110,
1523
+ 116,
1524
+ 101,
1525
+ 103,
1526
+ 114,
1527
+ 97,
1528
+ 116,
1529
+ 105,
1530
+ 111,
1531
+ 110,
1532
+ 45,
1533
+ 97,
1534
+ 117,
1535
+ 116,
1536
+ 104,
1537
+ 111,
1538
+ 114,
1539
+ 105,
1540
+ 116,
1541
+ 121
1542
+ ]
1543
+ }
1544
+ ]
1545
+ }
1546
+ },
1547
+ {
1548
+ "name": "cpi_program",
1549
+ "address": "EMBERpYNE6ehWmXymZZS2skiFmCa9V5dp14e1iduM5qy"
1550
+ },
1551
+ {
1552
+ "name": "glam_protocol_program",
1553
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1554
+ },
1555
+ {
1556
+ "name": "system_program",
1557
+ "address": "11111111111111111111111111111111"
1558
+ },
1559
+ {
1560
+ "name": "ember_state"
1561
+ },
1562
+ {
1563
+ "name": "input_mint"
1564
+ },
1565
+ {
1566
+ "name": "output_mint",
1567
+ "writable": true
1568
+ },
1569
+ {
1570
+ "name": "input_token_account",
1571
+ "writable": true
1572
+ },
1573
+ {
1574
+ "name": "output_token_account",
1575
+ "writable": true
1576
+ },
1577
+ {
1578
+ "name": "ember_vault",
1579
+ "writable": true
1580
+ },
1581
+ {
1582
+ "name": "token_program"
1583
+ }
1584
+ ],
1585
+ "args": [
1586
+ {
1587
+ "name": "withdraw_params",
1588
+ "type": {
1589
+ "defined": {
1590
+ "name": "WithdrawParams"
1591
+ }
1592
+ }
1593
+ }
1594
+ ]
1595
+ },
1596
+ {
1597
+ "name": "withdraw_funds",
1598
+ "docs": [
1599
+ "Withdraws base or quote mint tokens from the Phoenix trader account back to the vault's token account."
1600
+ ],
1601
+ "discriminator": [
1602
+ 241,
1603
+ 36,
1604
+ 29,
1605
+ 111,
1606
+ 208,
1607
+ 31,
1608
+ 104,
1609
+ 217
1610
+ ],
1611
+ "accounts": [
1612
+ {
1613
+ "name": "glam_state",
1614
+ "writable": true
1615
+ },
1616
+ {
1617
+ "name": "glam_vault",
1618
+ "writable": true,
1619
+ "pda": {
1620
+ "seeds": [
1621
+ {
1622
+ "kind": "const",
1623
+ "value": [
1624
+ 118,
1625
+ 97,
1626
+ 117,
1627
+ 108,
1628
+ 116
1629
+ ]
1630
+ },
1631
+ {
1632
+ "kind": "account",
1633
+ "path": "glam_state"
1634
+ }
1635
+ ],
1636
+ "program": {
1637
+ "kind": "account",
1638
+ "path": "glam_protocol_program"
1639
+ }
1640
+ }
1641
+ },
1642
+ {
1643
+ "name": "glam_signer",
1644
+ "writable": true,
1645
+ "signer": true
1646
+ },
1647
+ {
1648
+ "name": "integration_authority",
1649
+ "pda": {
1650
+ "seeds": [
1651
+ {
1652
+ "kind": "const",
1653
+ "value": [
1654
+ 105,
1655
+ 110,
1656
+ 116,
1657
+ 101,
1658
+ 103,
1659
+ 114,
1660
+ 97,
1661
+ 116,
1662
+ 105,
1663
+ 111,
1664
+ 110,
1665
+ 45,
1666
+ 97,
1667
+ 117,
1668
+ 116,
1669
+ 104,
1670
+ 111,
1671
+ 114,
1672
+ 105,
1673
+ 116,
1674
+ 121
1675
+ ]
1676
+ }
1677
+ ]
1678
+ }
1679
+ },
1680
+ {
1681
+ "name": "cpi_program",
1682
+ "address": "EtrnLzgbS7nMMy5fbD42kXiUzGg8XQzJ972Xtk1cjWih"
1683
+ },
1684
+ {
1685
+ "name": "glam_protocol_program",
1686
+ "address": "GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"
1687
+ },
1688
+ {
1689
+ "name": "system_program",
1690
+ "address": "11111111111111111111111111111111"
1691
+ }
1692
+ ],
1693
+ "args": [
1694
+ {
1695
+ "name": "params",
1696
+ "type": {
1697
+ "defined": {
1698
+ "name": "WithdrawFundsInstruction"
1699
+ }
1700
+ }
1701
+ }
1702
+ ]
1703
+ }
1704
+ ],
1705
+ "accounts": [
1706
+ {
1707
+ "name": "StateAccount",
1708
+ "discriminator": [
1709
+ 142,
1710
+ 247,
1711
+ 54,
1712
+ 95,
1713
+ 85,
1714
+ 133,
1715
+ 249,
1716
+ 103
1717
+ ]
1718
+ }
1719
+ ],
1720
+ "errors": [
1721
+ {
1722
+ "code": 6000,
1723
+ "name": "PayloadTooLarge",
1724
+ "msg": "Phoenix packet payload is too large"
1725
+ },
1726
+ {
1727
+ "code": 6001,
1728
+ "name": "MarketNotAllowed",
1729
+ "msg": "Market is not allowed by Phoenix policy"
1730
+ },
1731
+ {
1732
+ "code": 6002,
1733
+ "name": "OrderSizeExceeded",
1734
+ "msg": "Order size exceeds Phoenix policy"
1735
+ },
1736
+ {
1737
+ "code": 6003,
1738
+ "name": "RiskIncreasingOrderDisabled",
1739
+ "msg": "Risk-increasing orders are disabled by Phoenix policy"
1740
+ },
1741
+ {
1742
+ "code": 6004,
1743
+ "name": "ReduceOnlyRequired",
1744
+ "msg": "Order must be reduce-only by Phoenix policy"
1745
+ },
1746
+ {
1747
+ "code": 6005,
1748
+ "name": "MissingReferencePrice",
1749
+ "msg": "Missing reference price for Phoenix price tolerance check"
1750
+ },
1751
+ {
1752
+ "code": 6006,
1753
+ "name": "PriceDeviationExceeded",
1754
+ "msg": "Order price exceeds Phoenix price tolerance"
1755
+ },
1756
+ {
1757
+ "code": 6007,
1758
+ "name": "InvalidPhoenixAccount",
1759
+ "msg": "Invalid Phoenix account"
1760
+ },
1761
+ {
1762
+ "code": 6008,
1763
+ "name": "InvalidEmberMint",
1764
+ "msg": "Invalid Ember mint"
1765
+ },
1766
+ {
1767
+ "code": 6009,
1768
+ "name": "InvalidEmberTokenAccount",
1769
+ "msg": "Invalid Ember token account"
1770
+ },
1771
+ {
1772
+ "code": 6010,
1773
+ "name": "EmberAmountExceeded",
1774
+ "msg": "Ember conversion amount exceeds policy"
1775
+ },
1776
+ {
1777
+ "code": 6011,
1778
+ "name": "InvalidAmount",
1779
+ "msg": "Amount must be greater than zero"
1780
+ },
1781
+ {
1782
+ "code": 6012,
1783
+ "name": "InvalidPhoenixAccountOrder",
1784
+ "msg": "Invalid Phoenix account order"
1785
+ },
1786
+ {
1787
+ "code": 6013,
1788
+ "name": "DuplicateAccount",
1789
+ "msg": "Duplicate account"
1790
+ },
1791
+ {
1792
+ "code": 6014,
1793
+ "name": "UnexpectedSigner",
1794
+ "msg": "Unexpected signer account"
1795
+ },
1796
+ {
1797
+ "code": 6015,
1798
+ "name": "InvalidPhoenixPda",
1799
+ "msg": "Invalid Phoenix PDA"
1800
+ },
1801
+ {
1802
+ "code": 6016,
1803
+ "name": "InvalidOrderPacket",
1804
+ "msg": "Invalid Phoenix order packet"
1805
+ },
1806
+ {
1807
+ "code": 6017,
1808
+ "name": "InvalidOrderType",
1809
+ "msg": "Invalid Phoenix order type"
1810
+ },
1811
+ {
1812
+ "code": 6018,
1813
+ "name": "InvalidOrderFlags",
1814
+ "msg": "Invalid Phoenix order flags"
1815
+ },
1816
+ {
1817
+ "code": 6019,
1818
+ "name": "InvalidTraderCapability",
1819
+ "msg": "Invalid Phoenix trader capability"
1820
+ },
1821
+ {
1822
+ "code": 6020,
1823
+ "name": "DuplicateTraderCapability",
1824
+ "msg": "Duplicate Phoenix trader capability"
1825
+ },
1826
+ {
1827
+ "code": 6021,
1828
+ "name": "EmptyTraderCapabilityUpdates",
1829
+ "msg": "Trader capability updates must not be empty"
1830
+ },
1831
+ {
1832
+ "code": 6022,
1833
+ "name": "TooManyTraderCapabilityUpdates",
1834
+ "msg": "Too many trader capability updates"
1835
+ },
1836
+ {
1837
+ "code": 6023,
1838
+ "name": "InvalidCancelLimit",
1839
+ "msg": "Invalid cancel-up-to limit"
1840
+ },
1841
+ {
1842
+ "code": 6024,
1843
+ "name": "GlamVaultLamportsDecreased",
1844
+ "msg": "GLAM vault lamports decreased during external CPI"
1845
+ },
1846
+ {
1847
+ "code": 6025,
1848
+ "name": "TooManyPhoenixMarkets",
1849
+ "msg": "Too many Phoenix markets in policy allowlist"
1850
+ },
1851
+ {
1852
+ "code": 6026,
1853
+ "name": "InvalidPhoenixPolicy",
1854
+ "msg": "Invalid Phoenix policy"
1855
+ },
1856
+ {
1857
+ "code": 6027,
1858
+ "name": "InvalidReferencePriceTimestamp",
1859
+ "msg": "Invalid Phoenix reference price timestamp"
1860
+ },
1861
+ {
1862
+ "code": 6028,
1863
+ "name": "ReferencePriceStale",
1864
+ "msg": "Phoenix reference price is stale"
1865
+ },
1866
+ {
1867
+ "code": 6029,
1868
+ "name": "OrderTypeNotAllowed",
1869
+ "msg": "Phoenix order type is not allowed by policy"
1870
+ }
1871
+ ],
1872
+ "types": [
1873
+ {
1874
+ "name": "AccountType",
1875
+ "type": {
1876
+ "kind": "enum",
1877
+ "variants": [
1878
+ {
1879
+ "name": "Vault"
1880
+ },
1881
+ {
1882
+ "name": "TokenizedVault"
1883
+ },
1884
+ {
1885
+ "name": "Mint"
1886
+ },
1887
+ {
1888
+ "name": "SingleAssetVault"
1889
+ }
1890
+ ]
1891
+ }
1892
+ },
1893
+ {
1894
+ "name": "AccruedFees",
1895
+ "type": {
1896
+ "kind": "struct",
1897
+ "fields": [
1898
+ {
1899
+ "name": "vault_subscription_fee",
1900
+ "type": "u128"
1901
+ },
1902
+ {
1903
+ "name": "vault_redemption_fee",
1904
+ "type": "u128"
1905
+ },
1906
+ {
1907
+ "name": "manager_subscription_fee",
1908
+ "type": "u128"
1909
+ },
1910
+ {
1911
+ "name": "manager_redemption_fee",
1912
+ "type": "u128"
1913
+ },
1914
+ {
1915
+ "name": "management_fee",
1916
+ "type": "u128"
1917
+ },
1918
+ {
1919
+ "name": "performance_fee",
1920
+ "type": "u128"
1921
+ },
1922
+ {
1923
+ "name": "protocol_base_fee",
1924
+ "type": "u128"
1925
+ },
1926
+ {
1927
+ "name": "protocol_flow_fee",
1928
+ "type": "u128"
1929
+ }
1930
+ ]
1931
+ }
1932
+ },
1933
+ {
1934
+ "name": "BaseLots",
1935
+ "type": {
1936
+ "kind": "struct",
1937
+ "fields": [
1938
+ {
1939
+ "name": "inner",
1940
+ "type": "u64"
1941
+ }
1942
+ ]
1943
+ }
1944
+ },
1945
+ {
1946
+ "name": "CancelId",
1947
+ "type": {
1948
+ "kind": "struct",
1949
+ "fields": [
1950
+ {
1951
+ "name": "node_pointer",
1952
+ "type": {
1953
+ "defined": {
1954
+ "name": "NodePointer"
1955
+ }
1956
+ }
1957
+ },
1958
+ {
1959
+ "name": "order_id",
1960
+ "type": {
1961
+ "defined": {
1962
+ "name": "FIFOOrderId"
1963
+ }
1964
+ }
1965
+ }
1966
+ ]
1967
+ }
1968
+ },
1969
+ {
1970
+ "name": "CancelUpToInstruction",
1971
+ "type": {
1972
+ "kind": "struct",
1973
+ "fields": [
1974
+ {
1975
+ "name": "side",
1976
+ "type": {
1977
+ "defined": {
1978
+ "name": "Side"
1979
+ }
1980
+ }
1981
+ },
1982
+ {
1983
+ "name": "num_orders_to_cancel",
1984
+ "type": {
1985
+ "option": "u64"
1986
+ }
1987
+ },
1988
+ {
1989
+ "name": "tick_limit",
1990
+ "type": {
1991
+ "option": "u64"
1992
+ }
1993
+ }
1994
+ ]
1995
+ }
1996
+ },
1997
+ {
1998
+ "name": "CondensedOrder",
1999
+ "type": {
2000
+ "kind": "struct",
2001
+ "fields": [
2002
+ {
2003
+ "name": "price_in_ticks",
2004
+ "type": "u64"
2005
+ },
2006
+ {
2007
+ "name": "size_in_base_lots",
2008
+ "type": "u64"
2009
+ },
2010
+ {
2011
+ "name": "last_valid_slot",
2012
+ "type": {
2013
+ "option": "u64"
2014
+ }
2015
+ }
2016
+ ]
2017
+ }
2018
+ },
2019
+ {
2020
+ "name": "CreatedModel",
2021
+ "type": {
2022
+ "kind": "struct",
2023
+ "fields": [
2024
+ {
2025
+ "name": "key",
2026
+ "type": {
2027
+ "array": [
2028
+ "u8",
2029
+ 8
2030
+ ]
2031
+ }
2032
+ },
2033
+ {
2034
+ "name": "created_by",
2035
+ "type": "pubkey"
2036
+ },
2037
+ {
2038
+ "name": "created_at",
2039
+ "type": "i64"
2040
+ }
2041
+ ]
2042
+ }
2043
+ },
2044
+ {
2045
+ "name": "DelegateAcl",
2046
+ "type": {
2047
+ "kind": "struct",
2048
+ "fields": [
2049
+ {
2050
+ "name": "pubkey",
2051
+ "type": "pubkey"
2052
+ },
2053
+ {
2054
+ "name": "integration_permissions",
2055
+ "type": {
2056
+ "vec": {
2057
+ "defined": {
2058
+ "name": "IntegrationPermissions"
2059
+ }
2060
+ }
2061
+ }
2062
+ },
2063
+ {
2064
+ "name": "expires_at",
2065
+ "type": "i64"
2066
+ }
2067
+ ]
2068
+ }
2069
+ },
2070
+ {
2071
+ "name": "DepositFundsInstruction",
2072
+ "type": {
2073
+ "kind": "struct",
2074
+ "fields": [
2075
+ {
2076
+ "name": "amount",
2077
+ "type": "u64"
2078
+ }
2079
+ ]
2080
+ }
2081
+ },
2082
+ {
2083
+ "name": "DepositParams",
2084
+ "type": {
2085
+ "kind": "struct",
2086
+ "fields": [
2087
+ {
2088
+ "name": "amount",
2089
+ "type": "u64"
2090
+ }
2091
+ ]
2092
+ }
2093
+ },
2094
+ {
2095
+ "name": "EngineField",
2096
+ "type": {
2097
+ "kind": "struct",
2098
+ "fields": [
2099
+ {
2100
+ "name": "name",
2101
+ "type": {
2102
+ "defined": {
2103
+ "name": "EngineFieldName"
2104
+ }
2105
+ }
2106
+ },
2107
+ {
2108
+ "name": "value",
2109
+ "type": {
2110
+ "defined": {
2111
+ "name": "EngineFieldValue"
2112
+ }
2113
+ }
2114
+ }
2115
+ ]
2116
+ }
2117
+ },
2118
+ {
2119
+ "name": "EngineFieldName",
2120
+ "type": {
2121
+ "kind": "enum",
2122
+ "variants": [
2123
+ {
2124
+ "name": "Owner"
2125
+ },
2126
+ {
2127
+ "name": "PortfolioManagerName"
2128
+ },
2129
+ {
2130
+ "name": "Name"
2131
+ },
2132
+ {
2133
+ "name": "Uri"
2134
+ },
2135
+ {
2136
+ "name": "Assets"
2137
+ },
2138
+ {
2139
+ "name": "DelegateAcls"
2140
+ },
2141
+ {
2142
+ "name": "IntegrationAcls"
2143
+ },
2144
+ {
2145
+ "name": "TimelockDuration"
2146
+ },
2147
+ {
2148
+ "name": "Borrowable"
2149
+ },
2150
+ {
2151
+ "name": "DefaultAccountStateFrozen"
2152
+ },
2153
+ {
2154
+ "name": "PermanentDelegate"
2155
+ },
2156
+ {
2157
+ "name": "NotifyAndSettle"
2158
+ },
2159
+ {
2160
+ "name": "FeeStructure"
2161
+ },
2162
+ {
2163
+ "name": "FeeParams"
2164
+ },
2165
+ {
2166
+ "name": "ClaimableFees"
2167
+ },
2168
+ {
2169
+ "name": "ClaimedFees"
2170
+ },
2171
+ {
2172
+ "name": "OracleConfigs"
2173
+ }
2174
+ ]
2175
+ }
2176
+ },
2177
+ {
2178
+ "name": "EngineFieldValue",
2179
+ "type": {
2180
+ "kind": "enum",
2181
+ "variants": [
2182
+ {
2183
+ "name": "Boolean",
2184
+ "fields": [
2185
+ {
2186
+ "name": "val",
2187
+ "type": "bool"
2188
+ }
2189
+ ]
2190
+ },
2191
+ {
2192
+ "name": "U8",
2193
+ "fields": [
2194
+ {
2195
+ "name": "val",
2196
+ "type": "u8"
2197
+ }
2198
+ ]
2199
+ },
2200
+ {
2201
+ "name": "U32",
2202
+ "fields": [
2203
+ {
2204
+ "name": "val",
2205
+ "type": "u32"
2206
+ }
2207
+ ]
2208
+ },
2209
+ {
2210
+ "name": "U64",
2211
+ "fields": [
2212
+ {
2213
+ "name": "val",
2214
+ "type": "u64"
2215
+ }
2216
+ ]
2217
+ },
2218
+ {
2219
+ "name": "String",
2220
+ "fields": [
2221
+ {
2222
+ "name": "val",
2223
+ "type": "string"
2224
+ }
2225
+ ]
2226
+ },
2227
+ {
2228
+ "name": "Pubkey",
2229
+ "fields": [
2230
+ {
2231
+ "name": "val",
2232
+ "type": "pubkey"
2233
+ }
2234
+ ]
2235
+ },
2236
+ {
2237
+ "name": "VecPubkey",
2238
+ "fields": [
2239
+ {
2240
+ "name": "val",
2241
+ "type": {
2242
+ "vec": "pubkey"
2243
+ }
2244
+ }
2245
+ ]
2246
+ },
2247
+ {
2248
+ "name": "VecU8",
2249
+ "fields": [
2250
+ {
2251
+ "name": "val",
2252
+ "type": "bytes"
2253
+ }
2254
+ ]
2255
+ },
2256
+ {
2257
+ "name": "VecU32",
2258
+ "fields": [
2259
+ {
2260
+ "name": "val",
2261
+ "type": {
2262
+ "vec": "u32"
2263
+ }
2264
+ }
2265
+ ]
2266
+ },
2267
+ {
2268
+ "name": "VecDelegateAcl",
2269
+ "fields": [
2270
+ {
2271
+ "name": "val",
2272
+ "type": {
2273
+ "vec": {
2274
+ "defined": {
2275
+ "name": "DelegateAcl"
2276
+ }
2277
+ }
2278
+ }
2279
+ }
2280
+ ]
2281
+ },
2282
+ {
2283
+ "name": "VecIntegrationAcl",
2284
+ "fields": [
2285
+ {
2286
+ "name": "val",
2287
+ "type": {
2288
+ "vec": {
2289
+ "defined": {
2290
+ "name": "IntegrationAcl"
2291
+ }
2292
+ }
2293
+ }
2294
+ }
2295
+ ]
2296
+ },
2297
+ {
2298
+ "name": "FeeStructure",
2299
+ "fields": [
2300
+ {
2301
+ "name": "val",
2302
+ "type": {
2303
+ "defined": {
2304
+ "name": "FeeStructure"
2305
+ }
2306
+ }
2307
+ }
2308
+ ]
2309
+ },
2310
+ {
2311
+ "name": "FeeParams",
2312
+ "fields": [
2313
+ {
2314
+ "name": "val",
2315
+ "type": {
2316
+ "defined": {
2317
+ "name": "FeeParams"
2318
+ }
2319
+ }
2320
+ }
2321
+ ]
2322
+ },
2323
+ {
2324
+ "name": "AccruedFees",
2325
+ "fields": [
2326
+ {
2327
+ "name": "val",
2328
+ "type": {
2329
+ "defined": {
2330
+ "name": "AccruedFees"
2331
+ }
2332
+ }
2333
+ }
2334
+ ]
2335
+ },
2336
+ {
2337
+ "name": "NotifyAndSettle",
2338
+ "fields": [
2339
+ {
2340
+ "name": "val",
2341
+ "type": {
2342
+ "defined": {
2343
+ "name": "NotifyAndSettle"
2344
+ }
2345
+ }
2346
+ }
2347
+ ]
2348
+ },
2349
+ {
2350
+ "name": "OracleConfigs",
2351
+ "fields": [
2352
+ {
2353
+ "name": "val",
2354
+ "type": {
2355
+ "defined": {
2356
+ "name": "OracleConfigs"
2357
+ }
2358
+ }
2359
+ }
2360
+ ]
2361
+ }
2362
+ ]
2363
+ }
2364
+ },
2365
+ {
2366
+ "name": "EntryExitFees",
2367
+ "type": {
2368
+ "kind": "struct",
2369
+ "fields": [
2370
+ {
2371
+ "name": "subscription_fee_bps",
2372
+ "type": "u16"
2373
+ },
2374
+ {
2375
+ "name": "redemption_fee_bps",
2376
+ "type": "u16"
2377
+ }
2378
+ ]
2379
+ }
2380
+ },
2381
+ {
2382
+ "name": "FIFOOrderId",
2383
+ "type": {
2384
+ "kind": "struct",
2385
+ "fields": [
2386
+ {
2387
+ "name": "price_in_ticks",
2388
+ "type": {
2389
+ "defined": {
2390
+ "name": "Ticks"
2391
+ }
2392
+ }
2393
+ },
2394
+ {
2395
+ "name": "order_sequence_number",
2396
+ "type": "u64"
2397
+ }
2398
+ ]
2399
+ }
2400
+ },
2401
+ {
2402
+ "name": "FeeParams",
2403
+ "type": {
2404
+ "kind": "struct",
2405
+ "fields": [
2406
+ {
2407
+ "name": "year_in_seconds",
2408
+ "type": "u32"
2409
+ },
2410
+ {
2411
+ "name": "pa_high_water_mark",
2412
+ "type": "i128"
2413
+ },
2414
+ {
2415
+ "name": "pa_last_nav",
2416
+ "type": "i128"
2417
+ },
2418
+ {
2419
+ "name": "last_aum",
2420
+ "type": "i128"
2421
+ },
2422
+ {
2423
+ "name": "last_performance_fee_crystallized",
2424
+ "type": "i64"
2425
+ },
2426
+ {
2427
+ "name": "last_management_fee_crystallized",
2428
+ "type": "i64"
2429
+ },
2430
+ {
2431
+ "name": "last_protocol_fee_crystallized",
2432
+ "type": "i64"
2433
+ }
2434
+ ]
2435
+ }
2436
+ },
2437
+ {
2438
+ "name": "FeeStructure",
2439
+ "type": {
2440
+ "kind": "struct",
2441
+ "fields": [
2442
+ {
2443
+ "name": "vault",
2444
+ "type": {
2445
+ "defined": {
2446
+ "name": "EntryExitFees"
2447
+ }
2448
+ }
2449
+ },
2450
+ {
2451
+ "name": "manager",
2452
+ "type": {
2453
+ "defined": {
2454
+ "name": "EntryExitFees"
2455
+ }
2456
+ }
2457
+ },
2458
+ {
2459
+ "name": "management",
2460
+ "type": {
2461
+ "defined": {
2462
+ "name": "ManagementFee"
2463
+ }
2464
+ }
2465
+ },
2466
+ {
2467
+ "name": "performance",
2468
+ "type": {
2469
+ "defined": {
2470
+ "name": "PerformanceFee"
2471
+ }
2472
+ }
2473
+ },
2474
+ {
2475
+ "name": "protocol",
2476
+ "type": {
2477
+ "defined": {
2478
+ "name": "ProtocolFees"
2479
+ }
2480
+ }
2481
+ }
2482
+ ]
2483
+ }
2484
+ },
2485
+ {
2486
+ "name": "HurdleType",
2487
+ "type": {
2488
+ "kind": "enum",
2489
+ "variants": [
2490
+ {
2491
+ "name": "Hard"
2492
+ },
2493
+ {
2494
+ "name": "Soft"
2495
+ }
2496
+ ]
2497
+ }
2498
+ },
2499
+ {
2500
+ "name": "IntegrationAcl",
2501
+ "docs": [
2502
+ "An integration program can have multiple protocols supported.",
2503
+ "Enabled protocols are stored in a bitmask, and each protocol can have its own policy."
2504
+ ],
2505
+ "type": {
2506
+ "kind": "struct",
2507
+ "fields": [
2508
+ {
2509
+ "name": "integration_program",
2510
+ "type": "pubkey"
2511
+ },
2512
+ {
2513
+ "name": "protocols_bitmask",
2514
+ "type": "u16"
2515
+ },
2516
+ {
2517
+ "name": "protocol_policies",
2518
+ "type": {
2519
+ "vec": {
2520
+ "defined": {
2521
+ "name": "ProtocolPolicy"
2522
+ }
2523
+ }
2524
+ }
2525
+ }
2526
+ ]
2527
+ }
2528
+ },
2529
+ {
2530
+ "name": "IntegrationPermissions",
2531
+ "docs": [
2532
+ "Stores delegate permissions for an integration program."
2533
+ ],
2534
+ "type": {
2535
+ "kind": "struct",
2536
+ "fields": [
2537
+ {
2538
+ "name": "integration_program",
2539
+ "type": "pubkey"
2540
+ },
2541
+ {
2542
+ "name": "protocol_permissions",
2543
+ "type": {
2544
+ "vec": {
2545
+ "defined": {
2546
+ "name": "ProtocolPermissions"
2547
+ }
2548
+ }
2549
+ }
2550
+ }
2551
+ ]
2552
+ }
2553
+ },
2554
+ {
2555
+ "name": "ManagementFee",
2556
+ "type": {
2557
+ "kind": "struct",
2558
+ "fields": [
2559
+ {
2560
+ "name": "fee_bps",
2561
+ "type": "u16"
2562
+ }
2563
+ ]
2564
+ }
2565
+ },
2566
+ {
2567
+ "name": "MultipleOrderPacket",
2568
+ "type": {
2569
+ "kind": "struct",
2570
+ "fields": [
2571
+ {
2572
+ "name": "bids",
2573
+ "type": {
2574
+ "vec": {
2575
+ "defined": {
2576
+ "name": "CondensedOrder"
2577
+ }
2578
+ }
2579
+ }
2580
+ },
2581
+ {
2582
+ "name": "asks",
2583
+ "type": {
2584
+ "vec": {
2585
+ "defined": {
2586
+ "name": "CondensedOrder"
2587
+ }
2588
+ }
2589
+ }
2590
+ },
2591
+ {
2592
+ "name": "client_order_id",
2593
+ "type": {
2594
+ "option": {
2595
+ "array": [
2596
+ "u8",
2597
+ 16
2598
+ ]
2599
+ }
2600
+ }
2601
+ },
2602
+ {
2603
+ "name": "slide",
2604
+ "type": "bool"
2605
+ }
2606
+ ]
2607
+ }
2608
+ },
2609
+ {
2610
+ "name": "NodePointer",
2611
+ "type": {
2612
+ "kind": "struct",
2613
+ "fields": [
2614
+ {
2615
+ "name": "value",
2616
+ "type": "u32"
2617
+ }
2618
+ ]
2619
+ }
2620
+ },
2621
+ {
2622
+ "name": "NoticePeriodType",
2623
+ "type": {
2624
+ "kind": "enum",
2625
+ "variants": [
2626
+ {
2627
+ "name": "Hard"
2628
+ },
2629
+ {
2630
+ "name": "Soft"
2631
+ }
2632
+ ]
2633
+ }
2634
+ },
2635
+ {
2636
+ "name": "NotifyAndSettle",
2637
+ "type": {
2638
+ "kind": "struct",
2639
+ "fields": [
2640
+ {
2641
+ "name": "model",
2642
+ "type": {
2643
+ "defined": {
2644
+ "name": "ValuationModel"
2645
+ }
2646
+ }
2647
+ },
2648
+ {
2649
+ "name": "permissionless_fulfillment",
2650
+ "type": "bool"
2651
+ },
2652
+ {
2653
+ "name": "subscribe_notice_period_type",
2654
+ "type": {
2655
+ "defined": {
2656
+ "name": "NoticePeriodType"
2657
+ }
2658
+ }
2659
+ },
2660
+ {
2661
+ "name": "subscribe_notice_period",
2662
+ "type": "u64"
2663
+ },
2664
+ {
2665
+ "name": "subscribe_settlement_period",
2666
+ "type": "u64"
2667
+ },
2668
+ {
2669
+ "name": "subscribe_cancellation_window",
2670
+ "type": "u64"
2671
+ },
2672
+ {
2673
+ "name": "redeem_notice_period_type",
2674
+ "type": {
2675
+ "defined": {
2676
+ "name": "NoticePeriodType"
2677
+ }
2678
+ }
2679
+ },
2680
+ {
2681
+ "name": "redeem_notice_period",
2682
+ "type": "u64"
2683
+ },
2684
+ {
2685
+ "name": "redeem_settlement_period",
2686
+ "type": "u64"
2687
+ },
2688
+ {
2689
+ "name": "redeem_cancellation_window",
2690
+ "type": "u64"
2691
+ },
2692
+ {
2693
+ "name": "time_unit",
2694
+ "type": {
2695
+ "defined": {
2696
+ "name": "TimeUnit"
2697
+ }
2698
+ }
2699
+ },
2700
+ {
2701
+ "name": "_padding",
2702
+ "type": {
2703
+ "array": [
2704
+ "u8",
2705
+ 3
2706
+ ]
2707
+ }
2708
+ }
2709
+ ]
2710
+ }
2711
+ },
2712
+ {
2713
+ "name": "OracleConfigs",
2714
+ "docs": [
2715
+ "Vault-specific oracle configs. If available, these configs are preferred over the global config."
2716
+ ],
2717
+ "type": {
2718
+ "kind": "struct",
2719
+ "fields": [
2720
+ {
2721
+ "name": "max_ages_seconds",
2722
+ "type": {
2723
+ "vec": {
2724
+ "array": [
2725
+ "u16",
2726
+ 2
2727
+ ]
2728
+ }
2729
+ }
2730
+ },
2731
+ {
2732
+ "name": "padding",
2733
+ "type": {
2734
+ "array": [
2735
+ "u8",
2736
+ 12
2737
+ ]
2738
+ }
2739
+ }
2740
+ ]
2741
+ }
2742
+ },
2743
+ {
2744
+ "name": "OrderFlags",
2745
+ "type": {
2746
+ "kind": "struct",
2747
+ "fields": [
2748
+ {
2749
+ "name": "flags",
2750
+ "type": "u8"
2751
+ }
2752
+ ]
2753
+ }
2754
+ },
2755
+ {
2756
+ "name": "OrderIds",
2757
+ "type": {
2758
+ "kind": "struct",
2759
+ "fields": [
2760
+ {
2761
+ "name": "order_ids",
2762
+ "type": {
2763
+ "vec": {
2764
+ "defined": {
2765
+ "name": "CancelId"
2766
+ }
2767
+ }
2768
+ }
2769
+ }
2770
+ ]
2771
+ }
2772
+ },
2773
+ {
2774
+ "name": "OrderPacket",
2775
+ "type": {
2776
+ "kind": "struct",
2777
+ "fields": [
2778
+ {
2779
+ "name": "kind",
2780
+ "type": {
2781
+ "defined": {
2782
+ "name": "OrderPacketKind"
2783
+ }
2784
+ }
2785
+ }
2786
+ ]
2787
+ }
2788
+ },
2789
+ {
2790
+ "name": "OrderPacketKind",
2791
+ "type": {
2792
+ "kind": "enum",
2793
+ "variants": [
2794
+ {
2795
+ "name": "PostOnly",
2796
+ "fields": [
2797
+ {
2798
+ "name": "side",
2799
+ "type": {
2800
+ "defined": {
2801
+ "name": "Side"
2802
+ }
2803
+ }
2804
+ },
2805
+ {
2806
+ "name": "price_in_ticks",
2807
+ "type": {
2808
+ "defined": {
2809
+ "name": "Ticks"
2810
+ }
2811
+ }
2812
+ },
2813
+ {
2814
+ "name": "num_base_lots",
2815
+ "type": {
2816
+ "defined": {
2817
+ "name": "BaseLots"
2818
+ }
2819
+ }
2820
+ },
2821
+ {
2822
+ "name": "client_order_id",
2823
+ "type": {
2824
+ "array": [
2825
+ "u8",
2826
+ 16
2827
+ ]
2828
+ }
2829
+ },
2830
+ {
2831
+ "name": "slide",
2832
+ "type": "bool"
2833
+ },
2834
+ {
2835
+ "name": "last_valid_slot",
2836
+ "type": {
2837
+ "option": "u64"
2838
+ }
2839
+ },
2840
+ {
2841
+ "name": "order_flags",
2842
+ "type": {
2843
+ "defined": {
2844
+ "name": "OrderFlags"
2845
+ }
2846
+ }
2847
+ },
2848
+ {
2849
+ "name": "cancel_existing",
2850
+ "type": "bool"
2851
+ }
2852
+ ]
2853
+ },
2854
+ {
2855
+ "name": "Limit",
2856
+ "fields": [
2857
+ {
2858
+ "name": "side",
2859
+ "type": {
2860
+ "defined": {
2861
+ "name": "Side"
2862
+ }
2863
+ }
2864
+ },
2865
+ {
2866
+ "name": "price_in_ticks",
2867
+ "type": {
2868
+ "defined": {
2869
+ "name": "Ticks"
2870
+ }
2871
+ }
2872
+ },
2873
+ {
2874
+ "name": "num_base_lots",
2875
+ "type": {
2876
+ "defined": {
2877
+ "name": "BaseLots"
2878
+ }
2879
+ }
2880
+ },
2881
+ {
2882
+ "name": "self_trade_behavior",
2883
+ "type": {
2884
+ "defined": {
2885
+ "name": "SelfTradeBehavior"
2886
+ }
2887
+ }
2888
+ },
2889
+ {
2890
+ "name": "match_limit",
2891
+ "type": {
2892
+ "option": "u64"
2893
+ }
2894
+ },
2895
+ {
2896
+ "name": "client_order_id",
2897
+ "type": {
2898
+ "array": [
2899
+ "u8",
2900
+ 16
2901
+ ]
2902
+ }
2903
+ },
2904
+ {
2905
+ "name": "last_valid_slot",
2906
+ "type": {
2907
+ "option": "u64"
2908
+ }
2909
+ },
2910
+ {
2911
+ "name": "order_flags",
2912
+ "type": {
2913
+ "defined": {
2914
+ "name": "OrderFlags"
2915
+ }
2916
+ }
2917
+ },
2918
+ {
2919
+ "name": "cancel_existing",
2920
+ "type": "bool"
2921
+ }
2922
+ ]
2923
+ },
2924
+ {
2925
+ "name": "ImmediateOrCancel",
2926
+ "fields": [
2927
+ {
2928
+ "name": "side",
2929
+ "type": {
2930
+ "defined": {
2931
+ "name": "Side"
2932
+ }
2933
+ }
2934
+ },
2935
+ {
2936
+ "name": "price_in_ticks",
2937
+ "type": {
2938
+ "option": {
2939
+ "defined": {
2940
+ "name": "Ticks"
2941
+ }
2942
+ }
2943
+ }
2944
+ },
2945
+ {
2946
+ "name": "num_base_lots",
2947
+ "type": {
2948
+ "defined": {
2949
+ "name": "BaseLots"
2950
+ }
2951
+ }
2952
+ },
2953
+ {
2954
+ "name": "num_quote_lots",
2955
+ "type": {
2956
+ "option": {
2957
+ "defined": {
2958
+ "name": "QuoteLots"
2959
+ }
2960
+ }
2961
+ }
2962
+ },
2963
+ {
2964
+ "name": "min_base_lots_to_fill",
2965
+ "type": {
2966
+ "defined": {
2967
+ "name": "BaseLots"
2968
+ }
2969
+ }
2970
+ },
2971
+ {
2972
+ "name": "min_quote_lots_to_fill",
2973
+ "type": {
2974
+ "defined": {
2975
+ "name": "QuoteLots"
2976
+ }
2977
+ }
2978
+ },
2979
+ {
2980
+ "name": "self_trade_behavior",
2981
+ "type": {
2982
+ "defined": {
2983
+ "name": "SelfTradeBehavior"
2984
+ }
2985
+ }
2986
+ },
2987
+ {
2988
+ "name": "match_limit",
2989
+ "type": {
2990
+ "option": "u64"
2991
+ }
2992
+ },
2993
+ {
2994
+ "name": "client_order_id",
2995
+ "type": {
2996
+ "array": [
2997
+ "u8",
2998
+ 16
2999
+ ]
3000
+ }
3001
+ },
3002
+ {
3003
+ "name": "last_valid_slot",
3004
+ "type": {
3005
+ "option": "u64"
3006
+ }
3007
+ },
3008
+ {
3009
+ "name": "order_flags",
3010
+ "type": {
3011
+ "defined": {
3012
+ "name": "OrderFlags"
3013
+ }
3014
+ }
3015
+ },
3016
+ {
3017
+ "name": "cancel_existing",
3018
+ "type": "bool"
3019
+ }
3020
+ ]
3021
+ }
3022
+ ]
3023
+ }
3024
+ },
3025
+ {
3026
+ "name": "PerformanceFee",
3027
+ "type": {
3028
+ "kind": "struct",
3029
+ "fields": [
3030
+ {
3031
+ "name": "fee_bps",
3032
+ "type": "u16"
3033
+ },
3034
+ {
3035
+ "name": "hurdle_rate_bps",
3036
+ "type": "u16"
3037
+ },
3038
+ {
3039
+ "name": "hurdle_type",
3040
+ "type": {
3041
+ "defined": {
3042
+ "name": "HurdleType"
3043
+ }
3044
+ }
3045
+ }
3046
+ ]
3047
+ }
3048
+ },
3049
+ {
3050
+ "name": "PhoenixPolicy",
3051
+ "type": {
3052
+ "kind": "struct",
3053
+ "fields": [
3054
+ {
3055
+ "name": "markets_allowlist",
3056
+ "docs": [
3057
+ "Phoenix markets the vault is allowed to trade on. Any order routed to a",
3058
+ "market outside this list is rejected with `MarketNotAllowed`. Capped at",
3059
+ "`MAX_PHOENIX_MARKETS_ALLOWLIST` entries; duplicates and the default",
3060
+ "pubkey are rejected by `validate_for_set`. An empty list disables all",
3061
+ "trading."
3062
+ ],
3063
+ "type": {
3064
+ "vec": "pubkey"
3065
+ }
3066
+ },
3067
+ {
3068
+ "name": "allowed_order_types",
3069
+ "docs": [
3070
+ "Allowed Phoenix `OrderPacketKind` discriminants. Current values are:",
3071
+ "`0 = PostOnly`, `1 = Limit`, and `2 = ImmediateOrCancel`. An empty list",
3072
+ "disables all order placement."
3073
+ ],
3074
+ "type": "bytes"
3075
+ },
3076
+ {
3077
+ "name": "require_reduce_only_orders",
3078
+ "docs": [
3079
+ "When `true`, every order must have the reduce-only flag set; orders",
3080
+ "without it are rejected with `ReduceOnlyRequired`. Use this to lock the",
3081
+ "vault into pure position-unwinding mode."
3082
+ ],
3083
+ "type": "bool"
3084
+ },
3085
+ {
3086
+ "name": "max_price_deviation_bps",
3087
+ "docs": [
3088
+ "Maximum allowed deviation in basis points. Retained in policy state for",
3089
+ "future enforcement; currently not checked by order placement."
3090
+ ],
3091
+ "type": "u16"
3092
+ },
3093
+ {
3094
+ "name": "max_reference_price_age_secs",
3095
+ "docs": [
3096
+ "Maximum reference price age in seconds. Retained in policy state for",
3097
+ "future enforcement; currently not checked by order placement."
3098
+ ],
3099
+ "type": "u32"
3100
+ }
3101
+ ]
3102
+ }
3103
+ },
3104
+ {
3105
+ "name": "PricedProtocol",
3106
+ "type": {
3107
+ "kind": "struct",
3108
+ "fields": [
3109
+ {
3110
+ "name": "rent",
3111
+ "type": "u64"
3112
+ },
3113
+ {
3114
+ "name": "amount",
3115
+ "type": "i128"
3116
+ },
3117
+ {
3118
+ "name": "decimals",
3119
+ "type": "u8"
3120
+ },
3121
+ {
3122
+ "name": "last_updated_slot",
3123
+ "type": "u64"
3124
+ },
3125
+ {
3126
+ "name": "integration_program",
3127
+ "type": "pubkey"
3128
+ },
3129
+ {
3130
+ "name": "protocol_bitflag",
3131
+ "type": "u16"
3132
+ },
3133
+ {
3134
+ "name": "positions",
3135
+ "type": {
3136
+ "vec": "pubkey"
3137
+ }
3138
+ }
3139
+ ]
3140
+ }
3141
+ },
3142
+ {
3143
+ "name": "ProtocolFees",
3144
+ "type": {
3145
+ "kind": "struct",
3146
+ "fields": [
3147
+ {
3148
+ "name": "base_fee_bps",
3149
+ "type": "u16"
3150
+ },
3151
+ {
3152
+ "name": "flow_fee_bps",
3153
+ "type": "u16"
3154
+ }
3155
+ ]
3156
+ }
3157
+ },
3158
+ {
3159
+ "name": "ProtocolPermissions",
3160
+ "docs": [
3161
+ "Represents a delegate's permissions for a specific protocol"
3162
+ ],
3163
+ "type": {
3164
+ "kind": "struct",
3165
+ "fields": [
3166
+ {
3167
+ "name": "protocol_bitflag",
3168
+ "type": "u16"
3169
+ },
3170
+ {
3171
+ "name": "permissions_bitmask",
3172
+ "type": "u64"
3173
+ }
3174
+ ]
3175
+ }
3176
+ },
3177
+ {
3178
+ "name": "ProtocolPolicy",
3179
+ "docs": [
3180
+ "Stores policy data for an integrated protocol.",
3181
+ "Integration programs serialize/deserialize this data."
3182
+ ],
3183
+ "type": {
3184
+ "kind": "struct",
3185
+ "fields": [
3186
+ {
3187
+ "name": "protocol_bitflag",
3188
+ "type": "u16"
3189
+ },
3190
+ {
3191
+ "name": "data",
3192
+ "type": "bytes"
3193
+ }
3194
+ ]
3195
+ }
3196
+ },
3197
+ {
3198
+ "name": "QuoteLots",
3199
+ "type": {
3200
+ "kind": "struct",
3201
+ "fields": [
3202
+ {
3203
+ "name": "inner",
3204
+ "type": "u64"
3205
+ }
3206
+ ]
3207
+ }
3208
+ },
3209
+ {
3210
+ "name": "RegisterTraderParams",
3211
+ "type": {
3212
+ "kind": "struct",
3213
+ "fields": [
3214
+ {
3215
+ "name": "max_positions",
3216
+ "type": "u64"
3217
+ },
3218
+ {
3219
+ "name": "trader_pda_index",
3220
+ "type": "u8"
3221
+ },
3222
+ {
3223
+ "name": "trader_subaccount_index",
3224
+ "type": "u8"
3225
+ }
3226
+ ]
3227
+ }
3228
+ },
3229
+ {
3230
+ "name": "SelfTradeBehavior",
3231
+ "type": {
3232
+ "kind": "enum",
3233
+ "variants": [
3234
+ {
3235
+ "name": "Abort"
3236
+ },
3237
+ {
3238
+ "name": "CancelProvide"
3239
+ },
3240
+ {
3241
+ "name": "DecrementTake"
3242
+ }
3243
+ ]
3244
+ }
3245
+ },
3246
+ {
3247
+ "name": "Side",
3248
+ "type": {
3249
+ "kind": "enum",
3250
+ "variants": [
3251
+ {
3252
+ "name": "Bid"
3253
+ },
3254
+ {
3255
+ "name": "Ask"
3256
+ }
3257
+ ]
3258
+ }
3259
+ },
3260
+ {
3261
+ "name": "StateAccount",
3262
+ "type": {
3263
+ "kind": "struct",
3264
+ "fields": [
3265
+ {
3266
+ "name": "account_type",
3267
+ "type": {
3268
+ "defined": {
3269
+ "name": "AccountType"
3270
+ }
3271
+ }
3272
+ },
3273
+ {
3274
+ "name": "enabled",
3275
+ "type": "bool"
3276
+ },
3277
+ {
3278
+ "name": "vault",
3279
+ "type": "pubkey"
3280
+ },
3281
+ {
3282
+ "name": "owner",
3283
+ "type": "pubkey"
3284
+ },
3285
+ {
3286
+ "name": "portfolio_manager_name",
3287
+ "type": {
3288
+ "array": [
3289
+ "u8",
3290
+ 32
3291
+ ]
3292
+ }
3293
+ },
3294
+ {
3295
+ "name": "created",
3296
+ "type": {
3297
+ "defined": {
3298
+ "name": "CreatedModel"
3299
+ }
3300
+ }
3301
+ },
3302
+ {
3303
+ "name": "base_asset_mint",
3304
+ "type": "pubkey"
3305
+ },
3306
+ {
3307
+ "name": "base_asset_decimals",
3308
+ "type": "u8"
3309
+ },
3310
+ {
3311
+ "name": "base_asset_token_program",
3312
+ "type": "u8"
3313
+ },
3314
+ {
3315
+ "name": "name",
3316
+ "type": {
3317
+ "array": [
3318
+ "u8",
3319
+ 32
3320
+ ]
3321
+ }
3322
+ },
3323
+ {
3324
+ "name": "timelock_duration",
3325
+ "type": "u32"
3326
+ },
3327
+ {
3328
+ "name": "timelock_expires_at",
3329
+ "type": "u64"
3330
+ },
3331
+ {
3332
+ "name": "mint",
3333
+ "type": "pubkey"
3334
+ },
3335
+ {
3336
+ "name": "assets",
3337
+ "type": {
3338
+ "vec": "pubkey"
3339
+ }
3340
+ },
3341
+ {
3342
+ "name": "integration_acls",
3343
+ "type": {
3344
+ "vec": {
3345
+ "defined": {
3346
+ "name": "IntegrationAcl"
3347
+ }
3348
+ }
3349
+ }
3350
+ },
3351
+ {
3352
+ "name": "delegate_acls",
3353
+ "type": {
3354
+ "vec": {
3355
+ "defined": {
3356
+ "name": "DelegateAcl"
3357
+ }
3358
+ }
3359
+ }
3360
+ },
3361
+ {
3362
+ "name": "external_positions",
3363
+ "type": {
3364
+ "vec": "pubkey"
3365
+ }
3366
+ },
3367
+ {
3368
+ "name": "priced_protocols",
3369
+ "type": {
3370
+ "vec": {
3371
+ "defined": {
3372
+ "name": "PricedProtocol"
3373
+ }
3374
+ }
3375
+ }
3376
+ },
3377
+ {
3378
+ "name": "params",
3379
+ "type": {
3380
+ "vec": {
3381
+ "vec": {
3382
+ "defined": {
3383
+ "name": "EngineField"
3384
+ }
3385
+ }
3386
+ }
3387
+ }
3388
+ }
3389
+ ]
3390
+ }
3391
+ },
3392
+ {
3393
+ "name": "Ticks",
3394
+ "type": {
3395
+ "kind": "struct",
3396
+ "fields": [
3397
+ {
3398
+ "name": "inner",
3399
+ "type": "u64"
3400
+ }
3401
+ ]
3402
+ }
3403
+ },
3404
+ {
3405
+ "name": "TimeUnit",
3406
+ "type": {
3407
+ "kind": "enum",
3408
+ "variants": [
3409
+ {
3410
+ "name": "Second"
3411
+ },
3412
+ {
3413
+ "name": "Slot"
3414
+ }
3415
+ ]
3416
+ }
3417
+ },
3418
+ {
3419
+ "name": "TransferCollateralChildToParentInstruction",
3420
+ "type": {
3421
+ "kind": "struct",
3422
+ "fields": [
3423
+ {
3424
+ "name": "amount",
3425
+ "type": "u64"
3426
+ }
3427
+ ]
3428
+ }
3429
+ },
3430
+ {
3431
+ "name": "TransferCollateralInstruction",
3432
+ "type": {
3433
+ "kind": "struct",
3434
+ "fields": [
3435
+ {
3436
+ "name": "amount",
3437
+ "type": "u64"
3438
+ }
3439
+ ]
3440
+ }
3441
+ },
3442
+ {
3443
+ "name": "ValuationModel",
3444
+ "type": {
3445
+ "kind": "enum",
3446
+ "variants": [
3447
+ {
3448
+ "name": "Continuous"
3449
+ },
3450
+ {
3451
+ "name": "Periodic"
3452
+ }
3453
+ ]
3454
+ }
3455
+ },
3456
+ {
3457
+ "name": "WithdrawFundsInstruction",
3458
+ "type": {
3459
+ "kind": "struct",
3460
+ "fields": [
3461
+ {
3462
+ "name": "amount",
3463
+ "type": "u64"
3464
+ }
3465
+ ]
3466
+ }
3467
+ },
3468
+ {
3469
+ "name": "WithdrawParams",
3470
+ "type": {
3471
+ "kind": "struct",
3472
+ "fields": [
3473
+ {
3474
+ "name": "amount",
3475
+ "type": {
3476
+ "option": "u64"
3477
+ }
3478
+ }
3479
+ ]
3480
+ }
3481
+ }
3482
+ ],
3483
+ "constants": [
3484
+ {
3485
+ "name": "PHOENIX_PERM_CANCEL_ORDERS",
3486
+ "type": "u64",
3487
+ "value": "16"
3488
+ },
3489
+ {
3490
+ "name": "PHOENIX_PERM_CREATE_MODIFY_ORDERS",
3491
+ "type": "u64",
3492
+ "value": "8"
3493
+ },
3494
+ {
3495
+ "name": "PHOENIX_PERM_DEPOSIT",
3496
+ "type": "u64",
3497
+ "value": "2"
3498
+ },
3499
+ {
3500
+ "name": "PHOENIX_PERM_INIT_TRADER",
3501
+ "type": "u64",
3502
+ "value": "1"
3503
+ },
3504
+ {
3505
+ "name": "PHOENIX_PERM_TRANSFER_COLLATERAL",
3506
+ "type": "u64",
3507
+ "value": "32"
3508
+ },
3509
+ {
3510
+ "name": "PHOENIX_PERM_UPDATE_TRADER_STATE",
3511
+ "type": "u64",
3512
+ "value": "64"
3513
+ },
3514
+ {
3515
+ "name": "PHOENIX_PERM_WITHDRAW",
3516
+ "type": "u64",
3517
+ "value": "4"
3518
+ },
3519
+ {
3520
+ "name": "PROTO_PHOENIX",
3521
+ "type": "u16",
3522
+ "value": "1"
3523
+ }
3524
+ ]
3525
+ }