@glamsystems/glam-cli 0.1.20 → 0.1.21
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.
- package/main.js +1416 -246
- package/package.json +2 -2
package/main.js
CHANGED
|
@@ -25,11 +25,14 @@ tslib_1.__exportStar(__webpack_require__(4), exports);
|
|
|
25
25
|
tslib_1.__exportStar(__webpack_require__(7), exports);
|
|
26
26
|
tslib_1.__exportStar(__webpack_require__(11), exports);
|
|
27
27
|
tslib_1.__exportStar(__webpack_require__(12), exports);
|
|
28
|
-
tslib_1.__exportStar(__webpack_require__(
|
|
28
|
+
tslib_1.__exportStar(__webpack_require__(23), exports);
|
|
29
29
|
tslib_1.__exportStar(__webpack_require__(20), exports);
|
|
30
30
|
tslib_1.__exportStar(__webpack_require__(13), exports);
|
|
31
31
|
tslib_1.__exportStar(__webpack_require__(14), exports);
|
|
32
|
-
tslib_1.__exportStar(__webpack_require__(
|
|
32
|
+
tslib_1.__exportStar(__webpack_require__(36), exports);
|
|
33
|
+
tslib_1.__exportStar(__webpack_require__(37), exports);
|
|
34
|
+
tslib_1.__exportStar(__webpack_require__(21), exports);
|
|
35
|
+
tslib_1.__exportStar(__webpack_require__(22), exports);
|
|
33
36
|
tslib_1.__exportStar(__webpack_require__(10), exports);
|
|
34
37
|
tslib_1.__exportStar(__webpack_require__(17), exports);
|
|
35
38
|
tslib_1.__exportStar(__webpack_require__(16), exports);
|
|
@@ -81,7 +84,7 @@ module.exports = require("@solana/web3.js");
|
|
|
81
84
|
/* 6 */
|
|
82
85
|
/***/ ((module) => {
|
|
83
86
|
|
|
84
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"GLAMbTqav9N9witRjswJ8enwp9vv5G8bsSJ2kPJ4rcyc","metadata":{"name":"glam_protocol","version":"0.4.16","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"add_mint","discriminator":[171,222,111,37,60,166,208,108],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"extra_metas_account","writable":true,"optional":true},{"name":"openfunds_metadata","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"burn_tokens","discriminator":[76,15,51,254,229,215,121,66],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"from_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"from"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"signer","writable":true,"signer":true},{"name":"token_mint"},{"name":"signer_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_program"},{"kind":"account","path":"token_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_program"},{"kind":"account","path":"token_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"extra_metas_account","writable":true,"optional":true},{"name":"metadata","writable":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"close_state","discriminator":[25,1,184,101,200,245,210,246],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"metadata","writable":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"crystallize_fees","discriminator":[78,0,111,26,7,12,41,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer","writable":true,"signer":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"drift_cancel_orders","discriminator":[98,107,48,79,97,60,99,58],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"market_type","type":{"option":{"defined":{"name":"MarketType"}}}},{"name":"market_index","type":{"option":"u16"}},{"name":"direction","type":{"option":{"defined":{"name":"PositionDirection"}}}}]},{"name":"drift_cancel_orders_by_ids","discriminator":[172,99,108,14,81,89,228,183],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"drift_delete_user","discriminator":[179,118,20,212,145,146,49,130],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"drift_deposit","discriminator":[252,63,250,201,98,55,130,12],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"token_program"}],"args":[{"name":"market_index","type":"u16"},{"name":"amount","type":"u64"},{"name":"reduce_only","type":"bool"}]},{"name":"drift_initialize_user","discriminator":[107,244,158,15,225,239,98,245],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"drift_initialize_user_stats","discriminator":[133,185,103,162,90,161,78,143],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"drift_modify_order","discriminator":[235,245,222,58,245,128,19,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"drift_place_orders","discriminator":[117,18,210,6,238,174,135,167],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"drift_settle_multiple_pnls","discriminator":[100,72,3,45,69,37,10,144],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"drift_settle_pnl","discriminator":[161,254,255,100,140,113,169,175],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"drift_update_user_custom_margin_ratio","discriminator":[4,47,193,177,128,62,228,14],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"drift_update_user_delegate","discriminator":[36,181,34,31,22,77,36,154],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"drift_update_user_margin_trading_enabled","discriminator":[157,175,12,19,202,114,17,36],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"drift_withdraw","discriminator":[86,59,186,123,183,181,234,137],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"token_program"}],"args":[{"name":"market_index","type":"u16"},{"name":"amount","type":"u64"},{"name":"reduce_only","type":"bool"}]},{"name":"force_transfer_tokens","discriminator":[185,34,78,211,192,13,160,37],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"from_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"from"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"to_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"to"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"from"},{"name":"to"},{"name":"to_policy_account","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"asset"},{"name":"vault_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"initialize_state","discriminator":[190,171,224,219,217,72,199,176],"accounts":[{"name":"glam_state","writable":true,"pda":{"seeds":[{"kind":"const","value":[115,116,97,116,101]},{"kind":"account","path":"glam_signer"},{"kind":"arg","path":"state_model.created"}]}},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"openfunds_metadata","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"name":"jupiter_gov_new_vote","discriminator":[235,179,170,64,64,57,17,69],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"GovaE4iu227srtG2s3tZzB4RmWBzw8sTwrCLZz7kN7rY"},{"name":"proposal"},{"name":"vote","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"voter","type":"pubkey"}]},{"name":"jupiter_set_max_swap_slippage","discriminator":[110,79,13,71,208,111,56,66],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"slippage","type":"u64"}]},{"name":"jupiter_swap","discriminator":[116,207,0,196,252,120,243,18],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4"},{"name":"input_vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"input_token_program"},{"kind":"account","path":"input_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"output_vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"output_token_program"},{"kind":"account","path":"output_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"input_mint"},{"name":"output_mint"},{"name":"input_stake_pool","optional":true},{"name":"output_stake_pool","optional":true},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"input_token_program"},{"name":"output_token_program"}],"args":[{"name":"data","type":"bytes"}]},{"name":"jupiter_vote_cast_vote","discriminator":[11,197,234,57,164,74,181,239],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow"},{"name":"proposal","writable":true},{"name":"vote","writable":true},{"name":"governor"},{"name":"govern_program"}],"args":[{"name":"side","type":"u8"}]},{"name":"jupiter_vote_cast_vote_checked","discriminator":[247,3,146,233,35,189,192,187],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow"},{"name":"proposal","writable":true},{"name":"vote","writable":true},{"name":"governor"},{"name":"govern_program"}],"args":[{"name":"side","type":"u8"},{"name":"expected_side","type":"u8"}]},{"name":"jupiter_vote_increase_locked_amount","discriminator":[225,38,201,123,148,23,47,128],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true},{"name":"source_tokens","writable":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"jupiter_vote_merge_partial_unstaking","discriminator":[93,226,122,120,130,35,189,208],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true}],"args":[]},{"name":"jupiter_vote_new_escrow","discriminator":[255,87,157,219,61,178,144,159],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"jupiter_vote_open_partial_unstaking","discriminator":[84,7,113,220,212,63,237,218],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"amount","type":"u64"},{"name":"memo","type":"string"}]},{"name":"jupiter_vote_toggle_max_lock","discriminator":[204,158,192,21,219,25,154,87],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow","writable":true}],"args":[{"name":"is_max_lock","type":"bool"}]},{"name":"jupiter_vote_withdraw","discriminator":[195,172,184,195,23,178,145,191],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true},{"name":"destination_tokens","writable":true},{"name":"token_program"}],"args":[]},{"name":"jupiter_vote_withdraw_partial_unstaking","discriminator":[109,98,65,252,184,0,216,240],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true},{"name":"escrow_tokens","writable":true},{"name":"destination_tokens","writable":true},{"name":"token_program"}],"args":[]},{"name":"kamino_farm_harvest_reward","discriminator":[64,132,133,175,224,147,145,119],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"global_config"},{"name":"reward_mint"},{"name":"user_reward_ata","writable":true},{"name":"rewards_vault","writable":true},{"name":"rewards_treasury_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"reward_index","type":"u64"}]},{"name":"kamino_lending_borrow_obligation_liquidity_v2","discriminator":[175,198,39,162,103,76,51,121],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"borrow_reserve","writable":true},{"name":"borrow_reserve_liquidity_mint"},{"name":"reserve_source_liquidity","writable":true},{"name":"borrow_reserve_liquidity_fee_receiver","writable":true},{"name":"user_destination_liquidity","writable":true},{"name":"referrer_token_state","writable":true,"optional":true},{"name":"token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[93,120,106,112,40,45,84,32],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_liquidity_supply","writable":true},{"name":"reserve_collateral_mint","writable":true},{"name":"reserve_destination_deposit_collateral","writable":true},{"name":"user_source_liquidity","writable":true},{"name":"placeholder_user_destination_collateral","optional":true},{"name":"collateral_token_program"},{"name":"liquidity_token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_init_obligation","discriminator":[219,210,134,64,155,49,137,174],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"fee_payer","writable":true,"signer":true},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"seed1_account"},{"name":"seed2_account"},{"name":"owner_user_metadata"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"args","type":{"defined":{"name":"InitObligationArgs"}}}]},{"name":"kamino_lending_init_obligation_farms_for_reserve","discriminator":[227,61,130,2,117,226,78,1],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"payer","writable":true,"signer":true},{"name":"obligation","writable":true},{"name":"lending_market_authority"},{"name":"reserve","writable":true},{"name":"reserve_farm_state","writable":true},{"name":"obligation_farm","writable":true},{"name":"lending_market"},{"name":"farms_program"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"mode","type":"u8"}]},{"name":"kamino_lending_init_user_metadata","discriminator":[200,95,140,132,190,65,17,161],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"fee_payer","writable":true,"signer":true},{"name":"user_metadata","writable":true},{"name":"referrer_user_metadata","optional":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"user_lookup_table","type":"pubkey"}]},{"name":"kamino_lending_repay_obligation_liquidity_v2","discriminator":[135,57,236,69,153,77,15,88],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"repay_reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_destination_liquidity","writable":true},{"name":"user_source_liquidity","writable":true},{"name":"token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"lending_market_authority"},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[249,60,252,239,136,53,181,3],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"withdraw_reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_source_collateral","writable":true},{"name":"reserve_collateral_mint","writable":true},{"name":"reserve_liquidity_supply","writable":true},{"name":"user_destination_liquidity","writable":true},{"name":"placeholder_user_destination_collateral","optional":true},{"name":"collateral_token_program"},{"name":"liquidity_token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"collateral_amount","type":"u64"}]},{"name":"marinade_claim","discriminator":[54,44,48,204,218,141,36,5],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"reserve_pda","writable":true},{"name":"ticket_account","writable":true},{"name":"clock"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"marinade_deposit","discriminator":[62,236,248,28,222,232,182,73],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"liq_pool_sol_leg_pda","writable":true},{"name":"liq_pool_msol_leg","writable":true},{"name":"liq_pool_msol_leg_authority"},{"name":"reserve_pda","writable":true},{"name":"mint_to","writable":true},{"name":"msol_mint_authority"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"marinade_deposit_stake_account","discriminator":[141,230,58,103,56,205,159,138],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"validator_list","writable":true},{"name":"stake_list","writable":true},{"name":"stake_account","writable":true},{"name":"duplication_flag","writable":true},{"name":"msol_mint","writable":true},{"name":"mint_to","writable":true},{"name":"msol_mint_authority"},{"name":"clock"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program"}],"args":[{"name":"validator_idx","type":"u32"}]},{"name":"marinade_order_unstake","discriminator":[202,3,33,27,183,156,57,231],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"burn_msol_from","writable":true},{"name":"new_ticket_account","writable":true},{"name":"clock"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"msol_amount","type":"u64"}]},{"name":"merkle_distributor_new_claim_and_stake","discriminator":[203,167,65,87,208,161,91,207],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"DiS3nNjFVMieMgmiQFm6wgJL7nevk4NrhXKLbtEH1Z2R"},{"name":"distributor","writable":true},{"name":"claim_status","writable":true},{"name":"from","writable":true},{"name":"token_program"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"voter_program"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true}],"args":[{"name":"amount_unlocked","type":"u64"},{"name":"amount_locked","type":"u64"},{"name":"proof","type":{"vec":{"array":["u8",32]}}}]},{"name":"meteora_dlmm_add_liquidity2","discriminator":[248,123,81,94,137,10,79,81],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"liquidity_parameter","type":{"defined":{"name":"LiquidityParameter"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_add_liquidity_by_strategy2","discriminator":[219,171,159,202,167,192,209,25],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"liquidity_parameter","type":{"defined":{"name":"LiquidityParameterByStrategy"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_add_liquidity_one_side_precise2","discriminator":[60,137,107,235,107,209,19,106],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token","writable":true},{"name":"reserve","writable":true},{"name":"token_mint"},{"name":"token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"parameter","type":{"defined":{"name":"AddLiquiditySingleSidePreciseParameter2"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_claim_fee2","discriminator":[152,214,221,166,191,34,17,189],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"position","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_program_x"},{"name":"token_program_y"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_claim_reward2","discriminator":[73,232,244,62,123,103,114,39],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"position","writable":true},{"name":"reward_vault","writable":true},{"name":"reward_mint"},{"name":"user_token_account","writable":true},{"name":"token_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"reward_index","type":"u64"},{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_close_position","discriminator":[186,117,42,24,221,194,34,143],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_lower","writable":true},{"name":"bin_array_upper","writable":true},{"name":"rent_receiver","writable":true},{"name":"event_authority"},{"name":"program"}],"args":[]},{"name":"meteora_dlmm_initialize_position","discriminator":[223,94,215,96,175,181,195,204],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"payer","writable":true,"signer":true},{"name":"position","writable":true,"signer":true},{"name":"lb_pair"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"lower_bin_id","type":"i32"},{"name":"width","type":"i32"}]},{"name":"meteora_dlmm_initialize_position_pda","discriminator":[206,130,13,156,170,45,96,115],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"payer","writable":true,"signer":true},{"name":"position","writable":true},{"name":"lb_pair"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"lower_bin_id","type":"i32"},{"name":"width","type":"i32"}]},{"name":"meteora_dlmm_remove_liquidity2","discriminator":[118,111,170,14,224,187,21,119],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"bin_liquidity_removal","type":{"vec":{"defined":{"name":"BinLiquidityReduction"}}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_remove_liquidity_by_range2","discriminator":[157,54,138,77,16,239,100,16],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"from_bin_id","type":"i32"},{"name":"to_bin_id","type":"i32"},{"name":"bps_to_remove","type":"u16"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_swap2","discriminator":[95,183,135,4,4,165,65,133],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","optional":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_in","writable":true},{"name":"user_token_out","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"oracle","writable":true},{"name":"host_fee_in","writable":true,"optional":true},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"amount_in","type":"u64"},{"name":"min_amount_out","type":"u64"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_swap_with_price_impact2","discriminator":[219,33,50,237,37,101,146,101],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","optional":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_in","writable":true},{"name":"user_token_out","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"oracle","writable":true},{"name":"host_fee_in","writable":true,"optional":true},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"amount_in","type":"u64"},{"name":"active_id","type":{"option":"i32"}},{"name":"max_price_impact_bps","type":"u16"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"mint_tokens","discriminator":[59,132,24,246,122,39,8,243],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"mint_to","writable":true,"pda":{"seeds":[{"kind":"account","path":"recipient"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"recipient","writable":true},{"name":"policy_account","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"price_drift","discriminator":[240,91,209,89,155,0,97,133],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault"},{"name":"signer","writable":true,"signer":true},{"name":"sol_oracle"},{"name":"state"},{"name":"user"},{"name":"user_stats"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_kamino_obligations","discriminator":[166,110,234,179,240,179,69,246],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_meteora_positions","discriminator":[186,22,157,249,185,176,253,133],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_stakes","discriminator":[0,60,60,103,201,94,72,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_tickets","discriminator":[253,18,224,98,226,43,65,76],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_vault","discriminator":[47,213,36,17,183,5,141,45],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"signer_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"},{"name":"shares_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount_in","type":"u64"}]},{"name":"set_redemption_paused","discriminator":[226,152,104,42,1,53,196,240],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"mint_id","type":"u8"},{"name":"paused","type":"bool"}]},{"name":"set_subscription_paused","discriminator":[220,144,129,4,136,251,85,234],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"mint_id","type":"u8"},{"name":"paused","type":"bool"}]},{"name":"set_token_accounts_states","discriminator":[50,133,45,86,117,66,115,195],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"frozen","type":"bool"}]},{"name":"stake_authorize","discriminator":[127,247,88,164,201,0,79,7],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"}],"args":[{"name":"new_authority","type":"pubkey"},{"name":"staker_with_withdrawer","type":"u32"}]},{"name":"stake_deactivate","discriminator":[224,10,93,175,175,145,237,169],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"}],"args":[]},{"name":"stake_delegate_stake","discriminator":[202,40,152,239,175,251,66,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"vote"},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_config"}],"args":[]},{"name":"stake_initialize","discriminator":[68,66,118,79,15,144,190,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"stake_merge","discriminator":[46,181,125,12,51,179,134,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"destination_stake","writable":true},{"name":"source_stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"}],"args":[]},{"name":"stake_move_lamports","discriminator":[21,85,218,122,182,189,82,200],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"source_stake","writable":true},{"name":"destination_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_move_stake","discriminator":[9,190,67,62,46,251,144,186],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"source_stake","writable":true},{"name":"destination_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_pool_deposit_sol","discriminator":[147,187,91,151,158,187,247,79],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"reserve_stake","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"}]},{"name":"stake_pool_deposit_sol_with_slippage","discriminator":[57,21,43,19,86,36,25,172],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"reserve_stake","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":"u64"}]},{"name":"stake_pool_deposit_stake","discriminator":[212,158,195,174,179,105,9,97],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"deposit_stake","writable":true},{"name":"validator_stake_account","writable":true},{"name":"reserve_stake_account","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[]},{"name":"stake_pool_deposit_stake_with_slippage","discriminator":[185,104,64,97,108,243,239,165],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"deposit_stake","writable":true},{"name":"validator_stake_account","writable":true},{"name":"reserve_stake_account","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"minimum_pool_tokens_out","type":"u64"}]},{"name":"stake_pool_withdraw_sol","discriminator":[179,100,204,0,192,46,233,181],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"pool_tokens_from","writable":true},{"name":"reserve_stake","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"pool_tokens_in","type":"u64"}]},{"name":"stake_pool_withdraw_sol_with_slippage","discriminator":[210,92,86,93,123,17,117,89],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"pool_tokens_from","writable":true},{"name":"reserve_stake","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"pool_tokens_in","type":"u64"},{"name":"minimum_lamports_out","type":"u64"}]},{"name":"stake_pool_withdraw_stake","discriminator":[7,70,250,22,49,1,143,1],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"validator_stake_account","writable":true},{"name":"stake","writable":true},{"name":"pool_tokens_from","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"pool_tokens_in","type":"u64"}]},{"name":"stake_pool_withdraw_stake_with_slippage","discriminator":[74,83,151,22,32,149,154,141],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"validator_stake_account","writable":true},{"name":"stake","writable":true},{"name":"pool_tokens_from","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"pool_tokens_in","type":"u64"},{"name":"minimum_lamports_out","type":"u64"}]},{"name":"stake_redelegate","discriminator":[134,227,164,247,120,0,225,174],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"new_stake","writable":true},{"name":"vote"},{"name":"stake_config"}],"args":[]},{"name":"stake_split","discriminator":[63,128,169,206,158,60,135,48],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"split_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_withdraw","discriminator":[199,13,168,20,92,151,29,56],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"signer_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"deposit_asset"},{"name":"vault_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount_in","type":"u64"}]},{"name":"system_transfer","discriminator":[167,164,195,155,219,152,191,230],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"11111111111111111111111111111111"},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,79],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer","discriminator":[210,16,52,5,247,164,59,18],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"from","writable":true},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint","discriminator":[212,203,57,78,75,245,222,5],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_state","discriminator":[135,112,215,75,247,185,53,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"name":"withdraw","discriminator":[183,18,70,156,148,109,161,34],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"asset"},{"name":"vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"token_program"},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_signer"},{"kind":"account","path":"token_program"},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]}],"accounts":[{"name":"OpenfundsMetadataAccount","discriminator":[5,89,20,76,255,158,209,219]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"NotAuthorized","msg":"Signer is not authorized"},{"code":48001,"name":"IntegrationDisabled","msg":"Integration is disabled"},{"code":48002,"name":"StateAccountDisabled","msg":"State account is disabled"},{"code":48003,"name":"InvalidSignerAccount","msg":"Invalid signer token account"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Name too long: max 64 chars"},{"code":49002,"name":"InvalidSymbol","msg":"Symbol too long: max 32 chars"},{"code":49003,"name":"InvalidUri","msg":"Uri too long: max 128 chars"},{"code":49004,"name":"InvalidAssetsLen","msg":"Too many assets: max 100"},{"code":49005,"name":"GlamMintNotFound","msg":"Glam mint not found"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed, all mints must be closed first"},{"code":49007,"name":"InvalidMintId","msg":"Invalid mint id"},{"code":49008,"name":"InvalidRemainingAccounts","msg":"Invalid accounts: the transaction is malformed"},{"code":49009,"name":"InvalidVaultTokenAccount","msg":"Invalid vault ata"},{"code":49010,"name":"NonZeroSupply","msg":"Glam mint supply not zero"},{"code":49011,"name":"MissingAccount","msg":"An account required by the instruction is missing"},{"code":49012,"name":"InvalidTimestamp","msg":"Invalid timestamp"},{"code":49013,"name":"EngineFieldNotFound","msg":"Engine field not found"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50005,"name":"InvalidVoteSide","msg":"Invalid vote side"},{"code":50006,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":51002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":51003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":51004,"name":"LedgerNotFound","msg":"Ledger not found"},{"code":51005,"name":"InvalidLedgerEntry","msg":"Invalid ledger entry"},{"code":51006,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":51100,"name":"InvalidPricingOracle","msg":"Invalid oracle for asset price"},{"code":51101,"name":"PricingError","msg":"Pricing error"},{"code":51102,"name":"PriceTooOld","msg":"Price is too old"},{"code":51103,"name":"ExternalAccountsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultAssetsNotPriced","msg":"Not all vault assets are priced"},{"code":51105,"name":"VaultNotPriced","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":52000,"name":"TransfersDisabled","msg":"Policy violation: transfers disabled"},{"code":52001,"name":"InvalidPolicyAccount","msg":"Policy account is mandatory"},{"code":52002,"name":"AmountTooBig","msg":"Policy violation: amount too big"},{"code":52003,"name":"LockUp","msg":"Policy violation: lock-up has not expired"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"Mint"},{"name":"Fund"}]}},{"name":"AccountsType","type":{"kind":"enum","variants":[{"name":"TransferHookX"},{"name":"TransferHookY"},{"name":"TransferHookReward"}]}},{"name":"AccruedFees","type":{"kind":"struct","fields":[{"name":"vault_subscription_fee","type":"u128"},{"name":"vault_redemption_fee","type":"u128"},{"name":"manager_subscription_fee","type":"u128"},{"name":"manager_redemption_fee","type":"u128"},{"name":"management_fee","type":"u128"},{"name":"performance_fee","type":"u128"},{"name":"protocol_base_fee","type":"u128"},{"name":"protocol_flow_fee","type":"u128"}]}},{"name":"AddLiquiditySingleSidePreciseParameter2","type":{"kind":"struct","fields":[{"name":"bins","type":{"vec":{"defined":{"name":"CompressedBinDepositAmount"}}}},{"name":"decompress_multiplier","type":"u64"},{"name":"max_amount","type":"u64"}]}},{"name":"BinLiquidityDistribution","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"distribution_x","type":"u16"},{"name":"distribution_y","type":"u16"}]}},{"name":"BinLiquidityReduction","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"bps_to_remove","type":"u16"}]}},{"name":"CompanyField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"CompanyFieldName"}}},{"name":"value","type":"string"}]}},{"name":"CompanyFieldName","type":{"kind":"enum","variants":[{"name":"FundGroupName"},{"name":"ManCo"},{"name":"DomicileOfManCo"},{"name":"BICOfCustodian"},{"name":"CollateralManagerName"},{"name":"CustodianBankName"},{"name":"DomicileOfCustodianBank"},{"name":"FundAdministratorName"},{"name":"FundAdvisorName"},{"name":"FundPromoterName"},{"name":"IsSelfManagedInvestmentCompany"},{"name":"LEIOfCustodianBank"},{"name":"LEIOfManCo"},{"name":"PortfolioManagingCompanyName"},{"name":"SecuritiesLendingCounterpartyName"},{"name":"SwapCounterpartyName"},{"name":"AddressofManCo"},{"name":"AuditorName"},{"name":"CityofManCo"},{"name":"EmailAddressOfManCo"},{"name":"FundWebsiteOfManCo"},{"name":"IsUNPRISignatory"},{"name":"PhoneCountryCodeofManCo"},{"name":"PhoneNumberofManCo"},{"name":"SubInvestmentAdvisorName"},{"name":"ZIPCodeofManCo"},{"name":"DomicileOfUmbrella"},{"name":"HasUmbrella"},{"name":"LEIOfUmbrella"},{"name":"Umbrella"},{"name":"GlobalIntermediaryIdentificationNumberOfUmbrella"}]}},{"name":"CompanyModel","type":{"kind":"struct","fields":[{"name":"fund_group_name","type":{"option":"string"}},{"name":"man_co","type":{"option":"string"}},{"name":"domicile_of_man_co","type":{"option":"string"}},{"name":"email_address_of_man_co","type":{"option":"string"}},{"name":"fund_website_of_man_co","type":{"option":"string"}}]}},{"name":"CompressedBinDepositAmount","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"amount","type":"u32"}]}},{"name":"CreatedModel","type":{"kind":"struct","fields":[{"name":"key","type":{"array":["u8",8]}},{"name":"created_by","type":"pubkey"},{"name":"created_at","type":"i64"}]}},{"name":"DelegateAcl","type":{"kind":"struct","fields":[{"name":"pubkey","type":"pubkey"},{"name":"permissions","type":{"vec":{"defined":{"name":"Permission"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EngineField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"EngineFieldName"}}},{"name":"value","type":{"defined":{"name":"EngineFieldValue"}}}]}},{"name":"EngineFieldName","type":{"kind":"enum","variants":[{"name":"Allowlist"},{"name":"Blocklist"},{"name":"ExternalVaultAccounts"},{"name":"LockUp"},{"name":"DriftMarketIndexesPerp"},{"name":"DriftMarketIndexesSpot"},{"name":"DriftOrderTypes"},{"name":"MaxSwapSlippageBps"},{"name":"TransferToAllowlist"},{"name":"PricedAssets"},{"name":"BaseAsset"},{"name":"MaxCap"},{"name":"MinSubscription"},{"name":"MinRedemption"},{"name":"Valuation"},{"name":"Ledger"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"SubscriptionPaused"},{"name":"RedemptionPaused"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"Date","fields":[{"name":"val","type":"string"}]},{"name":"Double","fields":[{"name":"val","type":"i64"}]},{"name":"Integer","fields":[{"name":"val","type":"i32"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Time","fields":[{"name":"val","type":"string"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"Percentage","fields":[{"name":"val","type":"u32"}]},{"name":"URI","fields":[{"name":"val","type":"string"}]},{"name":"Timestamp","fields":[{"name":"val","type":"i64"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecPricedAssets","fields":[{"name":"val","type":{"vec":{"defined":{"name":"PricedAssets"}}}}]},{"name":"Ledger","fields":[{"name":"val","type":{"vec":{"defined":{"name":"LedgerEntry"}}}}]},{"name":"FeeStructure","fields":[{"name":"val","type":{"defined":{"name":"FeeStructure"}}}]},{"name":"FeeParams","fields":[{"name":"val","type":{"defined":{"name":"FeeParams"}}}]},{"name":"AccruedFees","fields":[{"name":"val","type":{"defined":{"name":"AccruedFees"}}}]},{"name":"Valuation","fields":[{"name":"val","type":{"defined":{"name":"Valuation"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"FeeParams","type":{"kind":"struct","fields":[{"name":"year_in_seconds","type":"u32"},{"name":"pa_high_water_mark","type":"i128"},{"name":"pa_last_nav","type":"i128"},{"name":"last_aum","type":"i128"},{"name":"last_performance_fee_crystallized","type":"i64"},{"name":"last_management_fee_crystallized","type":"i64"},{"name":"last_protocol_fee_crystallized","type":"i64"}]}},{"name":"FeeStructure","type":{"kind":"struct","fields":[{"name":"vault","type":{"defined":{"name":"EntryExitFees"}}},{"name":"manager","type":{"defined":{"name":"EntryExitFees"}}},{"name":"management","type":{"defined":{"name":"ManagementFee"}}},{"name":"performance","type":{"defined":{"name":"PerformanceFee"}}},{"name":"protocol","type":{"defined":{"name":"ProtocolFees"}}}]}},{"name":"FundField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"FundFieldName"}}},{"name":"value","type":"string"}]}},{"name":"FundFieldName","type":{"kind":"enum","variants":[{"name":"FundDomicileAlpha2"},{"name":"FundDomicileAlpha3"},{"name":"LegalFundNameIncludingUmbrella"},{"name":"FiscalYearEnd"},{"name":"FundCurrency"},{"name":"FundLaunchDate"},{"name":"InvestmentObjective"},{"name":"IsETC"},{"name":"IsEUDirectiveRelevant"},{"name":"IsFundOfFunds"},{"name":"IsPassiveFund"},{"name":"IsREIT"},{"name":"LegalForm"},{"name":"LegalFundNameOnly"},{"name":"OpenEndedOrClosedEndedFundStructure"},{"name":"TypeOfEUDirective"},{"name":"UCITSVersion"},{"name":"CurrencyHedgePortfolio"},{"name":"DepositoryName"},{"name":"FundValuationPoint"},{"name":"FundValuationPointTimeZone"},{"name":"FundValuationPointTimeZoneUsingTZDatabase"},{"name":"HasCollateralManager"},{"name":"HasEmbeddedDerivatives"},{"name":"HasSecuritiesLending"},{"name":"HasSwap"},{"name":"IsLeveraged"},{"name":"IsShariaCompliant"},{"name":"IsShort"},{"name":"LEIofDepositoryBank"},{"name":"LEIOfFund"},{"name":"LocationOfBearerShare"},{"name":"LocationOfShareRegister"},{"name":"MaximumLeverageInFund"},{"name":"MiFIDSecuritiesClassification"},{"name":"MoneyMarketTypeOfFund"},{"name":"TrusteeName"},{"name":"AuMFund"},{"name":"AuMFundDate"},{"name":"NoSFund"},{"name":"NoSFundDate"}]}},{"name":"FundManagerField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"FundManagerFieldName"}}},{"name":"value","type":"string"}]}},{"name":"FundManagerFieldName","type":{"kind":"enum","variants":[{"name":"PortfolioManagerForename"},{"name":"PortfolioManagerName"},{"name":"PortfolioManagerYearOfBirth"},{"name":"PortfolioManagerYearOfExperienceStart"},{"name":"PortfolioManagerBriefBiography"},{"name":"PortfolioManagerType"},{"name":"PortfolioManagerRoleStartingDate"},{"name":"PortfolioManagerRoleEndDate"}]}},{"name":"FundOpenfundsModel","type":{"kind":"struct","fields":[{"name":"fund_domicile_alpha_2","type":{"option":"string"}},{"name":"legal_fund_name_including_umbrella","type":{"option":"string"}},{"name":"fiscal_year_end","type":{"option":"string"}},{"name":"fund_currency","type":{"option":"string"}},{"name":"fund_launch_date","type":{"option":"string"}},{"name":"investment_objective","type":{"option":"string"}},{"name":"is_etc","type":{"option":"bool"}},{"name":"is_eu_directive_relevant","type":{"option":"bool"}},{"name":"is_fund_of_funds","type":{"option":"bool"}},{"name":"is_passive_fund","type":{"option":"bool"}},{"name":"is_reit","type":{"option":"bool"}},{"name":"legal_form","type":{"option":"string"}},{"name":"legal_fund_name_only","type":{"option":"string"}},{"name":"open_ended_or_closed_ended_fund_structure","type":{"option":"string"}},{"name":"type_of_eu_directive","type":{"option":"string"}},{"name":"ucits_version","type":{"option":"string"}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"Integration","type":{"kind":"enum","variants":[{"name":"Drift"},{"name":"SplStakePool"},{"name":"SanctumStakePool"},{"name":"NativeStaking"},{"name":"Marinade"},{"name":"JupiterSwap"},{"name":"JupiterVote"},{"name":"KaminoLending"},{"name":"MeteoraDlmm"}]}},{"name":"LedgerEntry","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"kind","type":{"defined":{"name":"LedgerEntryKind"}}},{"name":"incoming","type":{"defined":{"name":"PubkeyAmount"}}},{"name":"value","type":"u64"},{"name":"outgoing","type":{"option":{"defined":{"name":"PubkeyAmount"}}}}]}},{"name":"LedgerEntryKind","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"LiquidityParameter","type":{"kind":"struct","fields":[{"name":"amount_x","type":"u64"},{"name":"amount_y","type":"u64"},{"name":"bin_liquidity_dist","type":{"vec":{"defined":{"name":"BinLiquidityDistribution"}}}}]}},{"name":"LiquidityParameterByStrategy","type":{"kind":"struct","fields":[{"name":"amount_x","type":"u64"},{"name":"amount_y","type":"u64"},{"name":"active_id","type":"i32"},{"name":"max_active_bin_slippage","type":"i32"},{"name":"strategy_parameters","type":{"defined":{"name":"StrategyParameters"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"ManagerKind","type":{"kind":"enum","variants":[{"name":"Wallet"},{"name":"Squads"}]}},{"name":"ManagerModel","type":{"kind":"struct","fields":[{"name":"portfolio_manager_name","type":{"option":"string"}},{"name":"pubkey","type":{"option":"pubkey"}},{"name":"kind","type":{"option":{"defined":{"name":"ManagerKind"}}}}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"name":"Metadata","type":{"kind":"struct","fields":[{"name":"template","type":{"defined":{"name":"MetadataTemplate"}}},{"name":"pubkey","type":"pubkey"},{"name":"uri","type":"string"}]}},{"name":"MetadataTemplate","type":{"kind":"enum","variants":[{"name":"Openfunds"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":"string"}},{"name":"uri","type":{"option":"string"}},{"name":"state_pubkey","type":{"option":"pubkey"}},{"name":"asset","type":{"option":"pubkey"}},{"name":"image_uri","type":{"option":"string"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}},{"name":"lock_up_period_in_seconds","type":{"option":"i32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"fee_params","type":{"option":{"defined":{"name":"FeeParams"}}}},{"name":"valuation","type":{"option":{"defined":{"name":"Valuation"}}}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"is_raw_openfunds","type":{"option":"bool"}},{"name":"raw_openfunds","type":{"option":{"defined":{"name":"MintOpenfundsModel"}}}}]}},{"name":"MintOpenfundsModel","type":{"kind":"struct","fields":[{"name":"isin","type":{"option":"string"}},{"name":"share_class_currency","type":{"option":"string"}},{"name":"full_share_class_name","type":{"option":"string"}},{"name":"has_performance_fee","type":{"option":"bool"}},{"name":"investment_status","type":{"option":"string"}},{"name":"minimal_initial_subscription_in_amount","type":{"option":"string"}},{"name":"minimal_initial_subscription_in_shares","type":{"option":"string"}},{"name":"minimal_subsequent_subscription_in_amount","type":{"option":"string"}},{"name":"minimal_subsequent_subscription_in_shares","type":{"option":"string"}},{"name":"share_class_launch_date","type":{"option":"string"}},{"name":"share_class_lifecycle","type":{"option":"string"}},{"name":"launch_price","type":{"option":"string"}},{"name":"launch_price_currency","type":{"option":"string"}},{"name":"launch_price_date","type":{"option":"string"}},{"name":"has_lock_up_for_redemption","type":{"option":"bool"}},{"name":"lock_up_comment","type":{"option":"string"}},{"name":"lock_up_period_in_days","type":{"option":"string"}},{"name":"minimal_initial_redemption_in_amount","type":{"option":"string"}},{"name":"minimal_initial_redemption_in_shares","type":{"option":"string"}},{"name":"minimal_subsequent_redemption_in_amount","type":{"option":"string"}},{"name":"minimal_subsequent_redemption_in_shares","type":{"option":"string"}},{"name":"rounding_method_for_prices","type":{"option":"string"}},{"name":"cusip","type":{"option":"string"}},{"name":"valor","type":{"option":"string"}}]}},{"name":"ModifyOrderParams","type":{"kind":"struct","fields":[{"name":"direction","type":{"option":{"defined":{"name":"PositionDirection"}}}},{"name":"base_asset_amount","type":{"option":"u64"}},{"name":"price","type":{"option":"u64"}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"post_only","type":{"option":{"defined":{"name":"PostOnlyParam"}}}},{"name":"immediate_or_cancel","type":{"option":"bool"}},{"name":"max_ts","type":{"option":"i64"}},{"name":"trigger_price","type":{"option":"u64"}},{"name":"trigger_condition","type":{"option":{"defined":{"name":"OrderTriggerCondition"}}}},{"name":"oracle_price_offset","type":{"option":"i32"}},{"name":"auction_duration","type":{"option":"u8"}},{"name":"auction_start_price","type":{"option":"i64"}},{"name":"auction_end_price","type":{"option":"i64"}},{"name":"policy","type":{"option":"u8"}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"OpenfundsMetadataAccount","type":{"kind":"struct","fields":[{"name":"fund_id","type":"pubkey"},{"name":"company","type":{"vec":{"defined":{"name":"CompanyField"}}}},{"name":"fund","type":{"vec":{"defined":{"name":"FundField"}}}},{"name":"share_classes","type":{"vec":{"vec":{"defined":{"name":"ShareClassField"}}}}},{"name":"fund_managers","type":{"vec":{"vec":{"defined":{"name":"FundManagerField"}}}}}]}},{"name":"OrderParams","type":{"kind":"struct","fields":[{"name":"order_type","type":{"defined":{"name":"OrderType"}}},{"name":"market_type","type":{"defined":{"name":"MarketType"}}},{"name":"direction","type":{"defined":{"name":"PositionDirection"}}},{"name":"user_order_id","type":"u8"},{"name":"base_asset_amount","type":"u64"},{"name":"price","type":"u64"},{"name":"market_index","type":"u16"},{"name":"reduce_only","type":"bool"},{"name":"post_only","type":{"defined":{"name":"PostOnlyParam"}}},{"name":"immediate_or_cancel","type":"bool"},{"name":"max_ts","type":{"option":"i64"}},{"name":"trigger_price","type":{"option":"u64"}},{"name":"trigger_condition","type":{"defined":{"name":"OrderTriggerCondition"}}},{"name":"oracle_price_offset","type":{"option":"i32"}},{"name":"auction_duration","type":{"option":"u8"}},{"name":"auction_start_price","type":{"option":"i64"}},{"name":"auction_end_price","type":{"option":"i64"}}]}},{"name":"OrderTriggerCondition","type":{"kind":"enum","variants":[{"name":"Above"},{"name":"Below"},{"name":"TriggeredAbove"},{"name":"TriggeredBelow"}]}},{"name":"OrderType","type":{"kind":"enum","variants":[{"name":"Market"},{"name":"Limit"},{"name":"TriggerMarket"},{"name":"TriggerLimit"},{"name":"Oracle"}]}},{"name":"PerformanceFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"},{"name":"hurdle_rate_bps","type":"u16"},{"name":"hurdle_type","type":{"defined":{"name":"HurdleType"}}}]}},{"name":"Permission","docs":["* Delegate ACL"],"type":{"kind":"enum","variants":[{"name":"DriftInit"},{"name":"DriftUpdateUser"},{"name":"DriftDeleteUser"},{"name":"DriftDeposit"},{"name":"DriftWithdraw"},{"name":"DriftOrders"},{"name":"DriftBorrow"},{"name":"DriftPerpMarket"},{"name":"DriftSpotMarket"},{"name":"Stake"},{"name":"Unstake"},{"name":"__DeprecatedLiquidUnstake"},{"name":"JupiterSwapAllowlisted"},{"name":"JupiterSwapAny"},{"name":"WSol"},{"name":"__DeprecatedWSolUnwrap"},{"name":"MintMintTokens"},{"name":"MintBurnTokens"},{"name":"MintForceTransferTokens"},{"name":"MintSetTokenAccountState"},{"name":"JupiterGovStake"},{"name":"JupiterGovVoteOnProposal"},{"name":"JupiterGovUnstake"},{"name":"JupiterSwapLst"},{"name":"JupiterSwapPriceable"},{"name":"KaminoInit"},{"name":"KaminoDeposit"},{"name":"KaminoBorrow"},{"name":"KaminoWithdraw"},{"name":"KaminoClaim"},{"name":"MeteoraDlmmPosition"},{"name":"MeteoraDlmmLiquidity"},{"name":"MeteoraDlmmClaim"},{"name":"MeteoraDlmmSwap"},{"name":"TransferToAllowlisted"},{"name":"JupiterGovWithdraw"},{"name":"JupiterGovClaim"}]}},{"name":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PriceDenom","type":{"kind":"enum","variants":[{"name":"SOL"},{"name":"USD"},{"name":"ASSET6"}]}},{"name":"PricedAssets","type":{"kind":"struct","fields":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}},{"name":"accounts","type":{"vec":"pubkey"}},{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration","type":{"option":{"defined":{"name":"Integration"}}}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"PubkeyAmount","type":{"kind":"struct","fields":[{"name":"pubkey","type":"pubkey"},{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}},{"name":"RemainingAccountsInfo","type":{"kind":"struct","fields":[{"name":"slices","type":{"vec":{"defined":{"name":"RemainingAccountsSlice"}}}}]}},{"name":"RemainingAccountsSlice","type":{"kind":"struct","fields":[{"name":"accounts_type","type":{"defined":{"name":"AccountsType"}}},{"name":"length","type":"u8"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"ShareClassField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"ShareClassFieldName"}}},{"name":"value","type":"string"}]}},{"name":"ShareClassFieldName","type":{"kind":"enum","variants":[{"name":"ISIN"},{"name":"ShareClassCurrency"},{"name":"AppliedSubscriptionFeeInFavourOfDistributor"},{"name":"AppliedSubscriptionFeeInFavourOfDistributorReferenceDate"},{"name":"CurrencyOfMinimalSubscription"},{"name":"FullShareClassName"},{"name":"HasPerformanceFee"},{"name":"HasSubscriptionFeeInFavourOfDistributor"},{"name":"InvestmentStatus"},{"name":"ManagementFeeApplied"},{"name":"ManagementFeeAppliedReferenceDate"},{"name":"ManagementFeeMaximum"},{"name":"MaximumSubscriptionFeeInFavourOfDistributor"},{"name":"MinimalInitialSubscriptionCategory"},{"name":"MinimalInitialSubscriptionInAmount"},{"name":"MinimalInitialSubscriptionInShares"},{"name":"MinimalSubsequentSubscriptionCategory"},{"name":"MinimalSubsequentSubscriptionInAmount"},{"name":"MinimalSubsequentSubscriptionInShares"},{"name":"MinimumSubscriptionFeeInFavourOfDistributor"},{"name":"ShareClassDistributionPolicy"},{"name":"ShareClassExtension"},{"name":"ShareClassLaunchDate"},{"name":"ShareClassLifecycle"},{"name":"SRRI"},{"name":"LaunchPrice"},{"name":"LaunchPriceCurrency"},{"name":"LaunchPriceDate"},{"name":"HasAppliedSubscriptionFeeInFavourOfFund"},{"name":"AppliedSubscriptionFeeInFavourOfFund"},{"name":"AppliedSubscriptionFeeInFavourOfFundReferenceDate"},{"name":"MaximumSubscriptionFeeInFavourOfFund"},{"name":"HasAppliedRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfFundReferenceDate"},{"name":"MaximumRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfDistributor"},{"name":"AppliedRedemptionFeeInFavourOfDistributorReferenceDate"},{"name":"CurrencyOfMinimalOrMaximumRedemption"},{"name":"CutOffDateOffsetForRedemption"},{"name":"CutOffDateOffsetForSubscription"},{"name":"CutOffTimeForRedemption"},{"name":"CutOffTimeForSubscription"},{"name":"HasLockUpForRedemption"},{"name":"HasRedemptionFeeInFavourOfDistributor"},{"name":"IsValidISIN"},{"name":"LockUpComment"},{"name":"LockUpPeriodInDays"},{"name":"ManagementFeeMinimum"},{"name":"MaximalNumberOfPossibleDecimalsAmount"},{"name":"MaximalNumberOfPossibleDecimalsNAV"},{"name":"MaximalNumberOfPossibleDecimalsShares"},{"name":"MaximumInitialRedemptionInAmount"},{"name":"MaximumInitialRedemptionInShares"},{"name":"MaximumRedemptionFeeInFavourOfDistributor"},{"name":"MaximumSubsequentRedemptionInAmount"},{"name":"MaximumSubsequentRedemptionInShares"},{"name":"MinimalInitialRedemptionInAmount"},{"name":"MinimalInitialRedemptionInShares"},{"name":"MinimalRedemptionCategory"},{"name":"MinimalSubsequentRedemptionInAmount"},{"name":"MinimalSubsequentRedemptionInShares"},{"name":"MinimumRedemptionFeeInFavourOfDistributor"},{"name":"MinimumRedemptionFeeInFavourOfFund"},{"name":"MinimumSubscriptionFeeInFavourOfFund"},{"name":"PerformanceFeeMinimum"},{"name":"RoundingMethodForPrices"},{"name":"RoundingMethodForRedemptionInAmount"},{"name":"RoundingMethodForRedemptionInShares"},{"name":"RoundingMethodForSubscriptionInAmount"},{"name":"RoundingMethodForSubscriptionInShares"},{"name":"ShareClassDividendType"},{"name":"CUSIP"},{"name":"Valor"},{"name":"FundId"},{"name":"ImageUri"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"owner","type":"pubkey"},{"name":"vault","type":"pubkey"},{"name":"enabled","type":"bool"},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"engine","type":"pubkey"},{"name":"mints","type":{"vec":"pubkey"}},{"name":"metadata","type":{"option":{"defined":{"name":"Metadata"}}}},{"name":"name","type":"string"},{"name":"uri","type":"string"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"integrations","type":{"vec":{"defined":{"name":"Integration"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"id","type":{"option":"pubkey"}},{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":"string"}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"external_vault_accounts","type":{"option":{"vec":"pubkey"}}},{"name":"mints","type":{"option":{"vec":{"defined":{"name":"MintModel"}}}}},{"name":"company","type":{"option":{"defined":{"name":"CompanyModel"}}}},{"name":"owner","type":{"option":{"defined":{"name":"ManagerModel"}}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}},{"name":"integrations","type":{"option":{"vec":{"defined":{"name":"Integration"}}}}},{"name":"drift_market_indexes_perp","type":{"option":{"vec":"u32"}}},{"name":"drift_market_indexes_spot","type":{"option":{"vec":"u32"}}},{"name":"drift_order_types","type":{"option":{"vec":"u32"}}},{"name":"base_asset","type":{"option":"pubkey"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"metadata","type":{"option":{"defined":{"name":"Metadata"}}}},{"name":"raw_openfunds","type":{"option":{"defined":{"name":"FundOpenfundsModel"}}}}]}},{"name":"StrategyParameters","type":{"kind":"struct","fields":[{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"strategy_type","type":{"defined":{"name":"StrategyType"}}},{"name":"parameteres","type":{"array":["u8",64]}}]}},{"name":"StrategyType","type":{"kind":"enum","variants":[{"name":"SpotOneSide"},{"name":"CurveOneSide"},{"name":"BidAskOneSide"},{"name":"SpotBalanced"},{"name":"CurveBalanced"},{"name":"BidAskBalanced"},{"name":"SpotImBalanced"},{"name":"CurveImBalanced"},{"name":"BidAskImBalanced"}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Slot"},{"name":"Second"}]}},{"name":"Valuation","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"notice_period","type":"u64"},{"name":"notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"settlement_period","type":"u64"},{"name":"cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"SEED_ACCOUNT_POLICY","type":"string","value":"\\"account-policy\\""},{"name":"SEED_ESCROW","type":"string","value":"\\"escrow\\""},{"name":"SEED_METADATA","type":"string","value":"\\"metadata\\""},{"name":"SEED_MINT","type":"string","value":"\\"mint\\""},{"name":"SEED_STATE","type":"string","value":"\\"state\\""},{"name":"SEED_VAULT","type":"string","value":"\\"vault\\""}]}');
|
|
87
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"GLAMbTqav9N9witRjswJ8enwp9vv5G8bsSJ2kPJ4rcyc","metadata":{"name":"glam_protocol","version":"0.4.16","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"add_mint","discriminator":[171,222,111,37,60,166,208,108],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"extra_metas_account","writable":true,"optional":true},{"name":"openfunds_metadata","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"burn_tokens","discriminator":[76,15,51,254,229,215,121,66],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"from_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"from"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"signer","writable":true,"signer":true},{"name":"token_mint"},{"name":"signer_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_program"},{"kind":"account","path":"token_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_program"},{"kind":"account","path":"token_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"extra_metas_account","writable":true,"optional":true},{"name":"metadata","writable":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"close_state","discriminator":[25,1,184,101,200,245,210,246],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"metadata","writable":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"crystallize_fees","discriminator":[78,0,111,26,7,12,41,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer","writable":true,"signer":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"drift_cancel_orders","discriminator":[98,107,48,79,97,60,99,58],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"market_type","type":{"option":{"defined":{"name":"MarketType"}}}},{"name":"market_index","type":{"option":"u16"}},{"name":"direction","type":{"option":{"defined":{"name":"PositionDirection"}}}}]},{"name":"drift_cancel_orders_by_ids","discriminator":[172,99,108,14,81,89,228,183],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"drift_delete_user","discriminator":[179,118,20,212,145,146,49,130],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"drift_deposit","discriminator":[252,63,250,201,98,55,130,12],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"token_program"}],"args":[{"name":"market_index","type":"u16"},{"name":"amount","type":"u64"},{"name":"reduce_only","type":"bool"}]},{"name":"drift_initialize_user","discriminator":[107,244,158,15,225,239,98,245],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"drift_initialize_user_stats","discriminator":[133,185,103,162,90,161,78,143],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"drift_modify_order","discriminator":[235,245,222,58,245,128,19,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"drift_place_orders","discriminator":[117,18,210,6,238,174,135,167],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"drift_settle_multiple_pnls","discriminator":[100,72,3,45,69,37,10,144],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"drift_settle_pnl","discriminator":[161,254,255,100,140,113,169,175],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"drift_update_user_custom_margin_ratio","discriminator":[4,47,193,177,128,62,228,14],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"drift_update_user_delegate","discriminator":[36,181,34,31,22,77,36,154],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"drift_update_user_margin_trading_enabled","discriminator":[157,175,12,19,202,114,17,36],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"drift_withdraw","discriminator":[86,59,186,123,183,181,234,137],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"state"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"token_program"}],"args":[{"name":"market_index","type":"u16"},{"name":"amount","type":"u64"},{"name":"reduce_only","type":"bool"}]},{"name":"force_transfer_tokens","discriminator":[185,34,78,211,192,13,160,37],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"from_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"from"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"to_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"to"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"from"},{"name":"to"},{"name":"to_policy_account","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"asset"},{"name":"vault_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"}]},{"name":"initialize_state","discriminator":[190,171,224,219,217,72,199,176],"accounts":[{"name":"glam_state","writable":true,"pda":{"seeds":[{"kind":"const","value":[115,116,97,116,101]},{"kind":"account","path":"glam_signer"},{"kind":"arg","path":"state_model.created"}]}},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"openfunds_metadata","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[109,101,116,97,100,97,116,97]},{"kind":"account","path":"glam_state"}]}},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"name":"jupiter_gov_new_vote","discriminator":[235,179,170,64,64,57,17,69],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"GovaE4iu227srtG2s3tZzB4RmWBzw8sTwrCLZz7kN7rY"},{"name":"proposal"},{"name":"vote","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"voter","type":"pubkey"}]},{"name":"jupiter_set_max_swap_slippage","discriminator":[110,79,13,71,208,111,56,66],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"slippage","type":"u64"}]},{"name":"jupiter_swap","discriminator":[116,207,0,196,252,120,243,18],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4"},{"name":"input_vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"input_token_program"},{"kind":"account","path":"input_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"output_vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"output_token_program"},{"kind":"account","path":"output_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"input_mint"},{"name":"output_mint"},{"name":"input_stake_pool","optional":true},{"name":"output_stake_pool","optional":true},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"input_token_program"},{"name":"output_token_program"}],"args":[{"name":"data","type":"bytes"}]},{"name":"jupiter_vote_cast_vote","discriminator":[11,197,234,57,164,74,181,239],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow"},{"name":"proposal","writable":true},{"name":"vote","writable":true},{"name":"governor"},{"name":"govern_program"}],"args":[{"name":"side","type":"u8"}]},{"name":"jupiter_vote_cast_vote_checked","discriminator":[247,3,146,233,35,189,192,187],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow"},{"name":"proposal","writable":true},{"name":"vote","writable":true},{"name":"governor"},{"name":"govern_program"}],"args":[{"name":"side","type":"u8"},{"name":"expected_side","type":"u8"}]},{"name":"jupiter_vote_increase_locked_amount","discriminator":[225,38,201,123,148,23,47,128],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true},{"name":"source_tokens","writable":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"jupiter_vote_merge_partial_unstaking","discriminator":[93,226,122,120,130,35,189,208],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true}],"args":[]},{"name":"jupiter_vote_new_escrow","discriminator":[255,87,157,219,61,178,144,159],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"jupiter_vote_open_partial_unstaking","discriminator":[84,7,113,220,212,63,237,218],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"amount","type":"u64"},{"name":"memo","type":"string"}]},{"name":"jupiter_vote_toggle_max_lock","discriminator":[204,158,192,21,219,25,154,87],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker"},{"name":"escrow","writable":true}],"args":[{"name":"is_max_lock","type":"bool"}]},{"name":"jupiter_vote_withdraw","discriminator":[195,172,184,195,23,178,145,191],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true},{"name":"destination_tokens","writable":true},{"name":"token_program"}],"args":[]},{"name":"jupiter_vote_withdraw_partial_unstaking","discriminator":[109,98,65,252,184,0,216,240],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"voTpe3tHQ7AjQHMapgSue2HJFAh2cGsdokqN3XqmVSj"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"partial_unstake","writable":true},{"name":"escrow_tokens","writable":true},{"name":"destination_tokens","writable":true},{"name":"token_program"}],"args":[]},{"name":"kamino_farm_harvest_reward","discriminator":[64,132,133,175,224,147,145,119],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"global_config"},{"name":"reward_mint"},{"name":"user_reward_ata","writable":true},{"name":"rewards_vault","writable":true},{"name":"rewards_treasury_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"reward_index","type":"u64"}]},{"name":"kamino_lending_borrow_obligation_liquidity_v2","discriminator":[175,198,39,162,103,76,51,121],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"borrow_reserve","writable":true},{"name":"borrow_reserve_liquidity_mint"},{"name":"reserve_source_liquidity","writable":true},{"name":"borrow_reserve_liquidity_fee_receiver","writable":true},{"name":"user_destination_liquidity","writable":true},{"name":"referrer_token_state","writable":true,"optional":true},{"name":"token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[93,120,106,112,40,45,84,32],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_liquidity_supply","writable":true},{"name":"reserve_collateral_mint","writable":true},{"name":"reserve_destination_deposit_collateral","writable":true},{"name":"user_source_liquidity","writable":true},{"name":"placeholder_user_destination_collateral","optional":true},{"name":"collateral_token_program"},{"name":"liquidity_token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_init_obligation","discriminator":[219,210,134,64,155,49,137,174],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"fee_payer","writable":true,"signer":true},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"seed1_account"},{"name":"seed2_account"},{"name":"owner_user_metadata"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"args","type":{"defined":{"name":"InitObligationArgs"}}}]},{"name":"kamino_lending_init_obligation_farms_for_reserve","discriminator":[227,61,130,2,117,226,78,1],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"payer","writable":true,"signer":true},{"name":"obligation","writable":true},{"name":"lending_market_authority"},{"name":"reserve","writable":true},{"name":"reserve_farm_state","writable":true},{"name":"obligation_farm","writable":true},{"name":"lending_market"},{"name":"farms_program"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"mode","type":"u8"}]},{"name":"kamino_lending_init_user_metadata","discriminator":[200,95,140,132,190,65,17,161],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"fee_payer","writable":true,"signer":true},{"name":"user_metadata","writable":true},{"name":"referrer_user_metadata","optional":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"user_lookup_table","type":"pubkey"}]},{"name":"kamino_lending_repay_obligation_liquidity_v2","discriminator":[135,57,236,69,153,77,15,88],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"repay_reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_destination_liquidity","writable":true},{"name":"user_source_liquidity","writable":true},{"name":"token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"lending_market_authority"},{"name":"farms_program"}],"args":[{"name":"liquidity_amount","type":"u64"}]},{"name":"kamino_lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[249,60,252,239,136,53,181,3],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"obligation","writable":true},{"name":"lending_market"},{"name":"lending_market_authority"},{"name":"withdraw_reserve","writable":true},{"name":"reserve_liquidity_mint"},{"name":"reserve_source_collateral","writable":true},{"name":"reserve_collateral_mint","writable":true},{"name":"reserve_liquidity_supply","writable":true},{"name":"user_destination_liquidity","writable":true},{"name":"placeholder_user_destination_collateral","optional":true},{"name":"collateral_token_program"},{"name":"liquidity_token_program"},{"name":"instruction_sysvar_account"},{"name":"obligation_farm_user_state","writable":true,"optional":true},{"name":"reserve_farm_state","writable":true,"optional":true},{"name":"farms_program"}],"args":[{"name":"collateral_amount","type":"u64"}]},{"name":"marinade_claim","discriminator":[54,44,48,204,218,141,36,5],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"reserve_pda","writable":true},{"name":"ticket_account","writable":true},{"name":"clock"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"marinade_deposit","discriminator":[62,236,248,28,222,232,182,73],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"liq_pool_sol_leg_pda","writable":true},{"name":"liq_pool_msol_leg","writable":true},{"name":"liq_pool_msol_leg_authority"},{"name":"reserve_pda","writable":true},{"name":"mint_to","writable":true},{"name":"msol_mint_authority"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"marinade_deposit_stake_account","discriminator":[141,230,58,103,56,205,159,138],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"validator_list","writable":true},{"name":"stake_list","writable":true},{"name":"stake_account","writable":true},{"name":"duplication_flag","writable":true},{"name":"msol_mint","writable":true},{"name":"mint_to","writable":true},{"name":"msol_mint_authority"},{"name":"clock"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program"}],"args":[{"name":"validator_idx","type":"u32"}]},{"name":"marinade_order_unstake","discriminator":[202,3,33,27,183,156,57,231],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"burn_msol_from","writable":true},{"name":"new_ticket_account","writable":true},{"name":"clock"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"msol_amount","type":"u64"}]},{"name":"merkle_distributor_new_claim_and_stake","discriminator":[203,167,65,87,208,161,91,207],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"DiS3nNjFVMieMgmiQFm6wgJL7nevk4NrhXKLbtEH1Z2R"},{"name":"distributor","writable":true},{"name":"claim_status","writable":true},{"name":"from","writable":true},{"name":"token_program"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"voter_program"},{"name":"locker","writable":true},{"name":"escrow","writable":true},{"name":"escrow_tokens","writable":true}],"args":[{"name":"amount_unlocked","type":"u64"},{"name":"amount_locked","type":"u64"},{"name":"proof","type":{"vec":{"array":["u8",32]}}}]},{"name":"meteora_dlmm_add_liquidity2","discriminator":[248,123,81,94,137,10,79,81],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"liquidity_parameter","type":{"defined":{"name":"LiquidityParameter"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_add_liquidity_by_strategy2","discriminator":[219,171,159,202,167,192,209,25],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"liquidity_parameter","type":{"defined":{"name":"LiquidityParameterByStrategy"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_add_liquidity_one_side_precise2","discriminator":[60,137,107,235,107,209,19,106],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token","writable":true},{"name":"reserve","writable":true},{"name":"token_mint"},{"name":"token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"parameter","type":{"defined":{"name":"AddLiquiditySingleSidePreciseParameter2"}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_claim_fee2","discriminator":[152,214,221,166,191,34,17,189],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"position","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_program_x"},{"name":"token_program_y"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_claim_reward2","discriminator":[73,232,244,62,123,103,114,39],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"position","writable":true},{"name":"reward_vault","writable":true},{"name":"reward_mint"},{"name":"user_token_account","writable":true},{"name":"token_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"reward_index","type":"u64"},{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_close_position","discriminator":[186,117,42,24,221,194,34,143],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_lower","writable":true},{"name":"bin_array_upper","writable":true},{"name":"rent_receiver","writable":true},{"name":"event_authority"},{"name":"program"}],"args":[]},{"name":"meteora_dlmm_initialize_position","discriminator":[223,94,215,96,175,181,195,204],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"payer","writable":true,"signer":true},{"name":"position","writable":true,"signer":true},{"name":"lb_pair"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"lower_bin_id","type":"i32"},{"name":"width","type":"i32"}]},{"name":"meteora_dlmm_initialize_position_pda","discriminator":[206,130,13,156,170,45,96,115],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"payer","writable":true,"signer":true},{"name":"position","writable":true},{"name":"lb_pair"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"lower_bin_id","type":"i32"},{"name":"width","type":"i32"}]},{"name":"meteora_dlmm_remove_liquidity2","discriminator":[118,111,170,14,224,187,21,119],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"bin_liquidity_removal","type":{"vec":{"defined":{"name":"BinLiquidityReduction"}}}},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_remove_liquidity_by_range2","discriminator":[157,54,138,77,16,239,100,16],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"position","writable":true},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","writable":true,"optional":true},{"name":"user_token_x","writable":true},{"name":"user_token_y","writable":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"from_bin_id","type":"i32"},{"name":"to_bin_id","type":"i32"},{"name":"bps_to_remove","type":"u16"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_swap2","discriminator":[95,183,135,4,4,165,65,133],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","optional":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_in","writable":true},{"name":"user_token_out","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"oracle","writable":true},{"name":"host_fee_in","writable":true,"optional":true},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"amount_in","type":"u64"},{"name":"min_amount_out","type":"u64"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"meteora_dlmm_swap_with_price_impact2","discriminator":[219,33,50,237,37,101,146,101],"accounts":[{"name":"glam_state"},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo"},{"name":"lb_pair","writable":true},{"name":"bin_array_bitmap_extension","optional":true},{"name":"reserve_x","writable":true},{"name":"reserve_y","writable":true},{"name":"user_token_in","writable":true},{"name":"user_token_out","writable":true},{"name":"token_x_mint"},{"name":"token_y_mint"},{"name":"oracle","writable":true},{"name":"host_fee_in","writable":true,"optional":true},{"name":"token_x_program"},{"name":"token_y_program"},{"name":"memo_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"amount_in","type":"u64"},{"name":"active_id","type":{"option":"i32"}},{"name":"max_price_impact_bps","type":"u16"},{"name":"remaining_accounts_info","type":{"defined":{"name":"RemainingAccountsInfo"}}}]},{"name":"mint_tokens","discriminator":[59,132,24,246,122,39,8,243],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"mint_to","writable":true,"pda":{"seeds":[{"kind":"account","path":"recipient"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"recipient","writable":true},{"name":"policy_account","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount","type":"u64"}]},{"name":"price_drift","discriminator":[240,91,209,89,155,0,97,133],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault"},{"name":"signer","writable":true,"signer":true},{"name":"sol_oracle"},{"name":"state"},{"name":"user"},{"name":"user_stats"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_kamino_obligations","discriminator":[166,110,234,179,240,179,69,246],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_meteora_positions","discriminator":[186,22,157,249,185,176,253,133],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_stakes","discriminator":[0,60,60,103,201,94,72,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_tickets","discriminator":[253,18,224,98,226,43,65,76],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"price_vault","discriminator":[47,213,36,17,183,5,141,45],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"sol_oracle"}],"args":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"signer_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"},{"name":"shares_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount_in","type":"u64"}]},{"name":"set_redemption_paused","discriminator":[226,152,104,42,1,53,196,240],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"mint_id","type":"u8"},{"name":"paused","type":"bool"}]},{"name":"set_subscription_paused","discriminator":[220,144,129,4,136,251,85,234],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"mint_id","type":"u8"},{"name":"paused","type":"bool"}]},{"name":"set_token_accounts_states","discriminator":[50,133,45,86,117,66,115,195],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"frozen","type":"bool"}]},{"name":"stake_authorize","discriminator":[127,247,88,164,201,0,79,7],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"}],"args":[{"name":"new_authority","type":"pubkey"},{"name":"staker_with_withdrawer","type":"u32"}]},{"name":"stake_deactivate","discriminator":[224,10,93,175,175,145,237,169],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"}],"args":[]},{"name":"stake_delegate_stake","discriminator":[202,40,152,239,175,251,66,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"vote"},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_config"}],"args":[]},{"name":"stake_initialize","discriminator":[68,66,118,79,15,144,190,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"stake_merge","discriminator":[46,181,125,12,51,179,134,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"destination_stake","writable":true},{"name":"source_stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"}],"args":[]},{"name":"stake_move_lamports","discriminator":[21,85,218,122,182,189,82,200],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"source_stake","writable":true},{"name":"destination_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_move_stake","discriminator":[9,190,67,62,46,251,144,186],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"source_stake","writable":true},{"name":"destination_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_pool_deposit_sol","discriminator":[147,187,91,151,158,187,247,79],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"reserve_stake","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"}]},{"name":"stake_pool_deposit_sol_with_slippage","discriminator":[57,21,43,19,86,36,25,172],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"reserve_stake","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":"u64"}]},{"name":"stake_pool_deposit_stake","discriminator":[212,158,195,174,179,105,9,97],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"deposit_stake","writable":true},{"name":"validator_stake_account","writable":true},{"name":"reserve_stake_account","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[]},{"name":"stake_pool_deposit_stake_with_slippage","discriminator":[185,104,64,97,108,243,239,165],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"deposit_stake","writable":true},{"name":"validator_stake_account","writable":true},{"name":"reserve_stake_account","writable":true},{"name":"pool_tokens_to","writable":true},{"name":"fee_account","writable":true},{"name":"referrer_pool_tokens_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"minimum_pool_tokens_out","type":"u64"}]},{"name":"stake_pool_withdraw_sol","discriminator":[179,100,204,0,192,46,233,181],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"pool_tokens_from","writable":true},{"name":"reserve_stake","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"pool_tokens_in","type":"u64"}]},{"name":"stake_pool_withdraw_sol_with_slippage","discriminator":[210,92,86,93,123,17,117,89],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"pool_tokens_from","writable":true},{"name":"reserve_stake","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"},{"name":"token_program"}],"args":[{"name":"pool_tokens_in","type":"u64"},{"name":"minimum_lamports_out","type":"u64"}]},{"name":"stake_pool_withdraw_stake","discriminator":[7,70,250,22,49,1,143,1],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"validator_stake_account","writable":true},{"name":"stake","writable":true},{"name":"pool_tokens_from","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"pool_tokens_in","type":"u64"}]},{"name":"stake_pool_withdraw_stake_with_slippage","discriminator":[74,83,151,22,32,149,154,141],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_withdraw_authority"},{"name":"validator_stake_account","writable":true},{"name":"stake","writable":true},{"name":"pool_tokens_from","writable":true},{"name":"fee_account","writable":true},{"name":"pool_mint","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"token_program"},{"name":"stake_program","address":"Stake11111111111111111111111111111111111111"}],"args":[{"name":"pool_tokens_in","type":"u64"},{"name":"minimum_lamports_out","type":"u64"}]},{"name":"stake_redelegate","discriminator":[134,227,164,247,120,0,225,174],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"new_stake","writable":true},{"name":"vote"},{"name":"stake_config"}],"args":[]},{"name":"stake_split","discriminator":[63,128,169,206,158,60,135,48],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"split_stake","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"stake_withdraw","discriminator":[199,13,168,20,92,151,29,56],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"Stake11111111111111111111111111111111111111"},{"name":"stake","writable":true},{"name":"clock","address":"SysvarC1ock11111111111111111111111111111111"},{"name":"stake_history","address":"SysvarStakeHistory1111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_mint","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"signer_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"escrow_mint_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"token_2022_program"},{"kind":"account","path":"glam_mint"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"deposit_asset"},{"name":"vault_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"signer"},{"kind":"const","value":[6,221,246,225,215,101,161,147,217,203,225,70,206,235,121,172,28,180,133,237,95,91,55,145,58,140,245,133,126,255,0,169]},{"kind":"account","path":"deposit_asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"}],"args":[{"name":"mint_id","type":"u8"},{"name":"amount_in","type":"u64"}]},{"name":"system_transfer","discriminator":[167,164,195,155,219,152,191,230],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program","address":"11111111111111111111111111111111"},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,79],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer","discriminator":[210,16,52,5,247,164,59,18],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"from","writable":true},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"}]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"cpi_program"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"lamports","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint","discriminator":[212,203,57,78,75,245,222,5],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"mint_id","type":"u8"},{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_state","discriminator":[135,112,215,75,247,185,53,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"name":"withdraw","discriminator":[183,18,70,156,148,109,161,34],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}]}},{"name":"glam_signer","writable":true,"signer":true},{"name":"asset"},{"name":"vault_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"token_program"},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"signer_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_signer"},{"kind":"account","path":"token_program"},{"kind":"account","path":"asset"}],"program":{"kind":"const","value":[140,151,37,143,78,36,137,241,187,61,16,41,20,142,13,131,11,90,19,153,218,255,16,132,4,142,123,216,219,233,248,89]}}},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]}],"accounts":[{"name":"OpenfundsMetadataAccount","discriminator":[5,89,20,76,255,158,209,219]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"NotAuthorized","msg":"Signer is not authorized"},{"code":48001,"name":"IntegrationDisabled","msg":"Integration is disabled"},{"code":48002,"name":"StateAccountDisabled","msg":"State account is disabled"},{"code":48003,"name":"InvalidSignerAccount","msg":"Invalid signer token account"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Name too long: max 64 chars"},{"code":49002,"name":"InvalidSymbol","msg":"Symbol too long: max 32 chars"},{"code":49003,"name":"InvalidUri","msg":"Uri too long: max 128 chars"},{"code":49004,"name":"InvalidAssetsLen","msg":"Too many assets: max 100"},{"code":49005,"name":"GlamMintNotFound","msg":"Glam mint not found"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed, all mints must be closed first"},{"code":49007,"name":"InvalidMintId","msg":"Invalid mint id"},{"code":49008,"name":"InvalidRemainingAccounts","msg":"Invalid accounts: the transaction is malformed"},{"code":49009,"name":"InvalidVaultTokenAccount","msg":"Invalid vault ata"},{"code":49010,"name":"NonZeroSupply","msg":"Glam mint supply not zero"},{"code":49011,"name":"MissingAccount","msg":"An account required by the instruction is missing"},{"code":49012,"name":"InvalidTimestamp","msg":"Invalid timestamp"},{"code":49013,"name":"EngineFieldNotFound","msg":"Engine field not found"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidPlatformFeeForSwap","msg":"Invalid platform fee"},{"code":50005,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50006,"name":"InvalidVoteSide","msg":"Invalid vote side"},{"code":50007,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":51002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":51003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":51004,"name":"LedgerNotFound","msg":"Ledger not found"},{"code":51005,"name":"InvalidLedgerEntry","msg":"Invalid ledger entry"},{"code":51006,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":51100,"name":"InvalidPricingOracle","msg":"Invalid oracle for asset price"},{"code":51101,"name":"PricingError","msg":"Pricing error"},{"code":51102,"name":"PriceTooOld","msg":"Price is too old"},{"code":51103,"name":"ExternalAccountsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultAssetsNotPriced","msg":"Not all vault assets are priced"},{"code":51105,"name":"VaultNotPriced","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":52000,"name":"TransfersDisabled","msg":"Policy violation: transfers disabled"},{"code":52001,"name":"InvalidPolicyAccount","msg":"Policy account is mandatory"},{"code":52002,"name":"AmountTooBig","msg":"Policy violation: amount too big"},{"code":52003,"name":"LockUp","msg":"Policy violation: lock-up has not expired"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"Mint"},{"name":"Fund"}]}},{"name":"AccountsType","type":{"kind":"enum","variants":[{"name":"TransferHookX"},{"name":"TransferHookY"},{"name":"TransferHookReward"}]}},{"name":"AccruedFees","type":{"kind":"struct","fields":[{"name":"vault_subscription_fee","type":"u128"},{"name":"vault_redemption_fee","type":"u128"},{"name":"manager_subscription_fee","type":"u128"},{"name":"manager_redemption_fee","type":"u128"},{"name":"management_fee","type":"u128"},{"name":"performance_fee","type":"u128"},{"name":"protocol_base_fee","type":"u128"},{"name":"protocol_flow_fee","type":"u128"}]}},{"name":"AddLiquiditySingleSidePreciseParameter2","type":{"kind":"struct","fields":[{"name":"bins","type":{"vec":{"defined":{"name":"CompressedBinDepositAmount"}}}},{"name":"decompress_multiplier","type":"u64"},{"name":"max_amount","type":"u64"}]}},{"name":"BinLiquidityDistribution","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"distribution_x","type":"u16"},{"name":"distribution_y","type":"u16"}]}},{"name":"BinLiquidityReduction","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"bps_to_remove","type":"u16"}]}},{"name":"CompanyField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"CompanyFieldName"}}},{"name":"value","type":"string"}]}},{"name":"CompanyFieldName","type":{"kind":"enum","variants":[{"name":"FundGroupName"},{"name":"ManCo"},{"name":"DomicileOfManCo"},{"name":"BICOfCustodian"},{"name":"CollateralManagerName"},{"name":"CustodianBankName"},{"name":"DomicileOfCustodianBank"},{"name":"FundAdministratorName"},{"name":"FundAdvisorName"},{"name":"FundPromoterName"},{"name":"IsSelfManagedInvestmentCompany"},{"name":"LEIOfCustodianBank"},{"name":"LEIOfManCo"},{"name":"PortfolioManagingCompanyName"},{"name":"SecuritiesLendingCounterpartyName"},{"name":"SwapCounterpartyName"},{"name":"AddressofManCo"},{"name":"AuditorName"},{"name":"CityofManCo"},{"name":"EmailAddressOfManCo"},{"name":"FundWebsiteOfManCo"},{"name":"IsUNPRISignatory"},{"name":"PhoneCountryCodeofManCo"},{"name":"PhoneNumberofManCo"},{"name":"SubInvestmentAdvisorName"},{"name":"ZIPCodeofManCo"},{"name":"DomicileOfUmbrella"},{"name":"HasUmbrella"},{"name":"LEIOfUmbrella"},{"name":"Umbrella"},{"name":"GlobalIntermediaryIdentificationNumberOfUmbrella"}]}},{"name":"CompanyModel","type":{"kind":"struct","fields":[{"name":"fund_group_name","type":{"option":"string"}},{"name":"man_co","type":{"option":"string"}},{"name":"domicile_of_man_co","type":{"option":"string"}},{"name":"email_address_of_man_co","type":{"option":"string"}},{"name":"fund_website_of_man_co","type":{"option":"string"}}]}},{"name":"CompressedBinDepositAmount","type":{"kind":"struct","fields":[{"name":"bin_id","type":"i32"},{"name":"amount","type":"u32"}]}},{"name":"CreatedModel","type":{"kind":"struct","fields":[{"name":"key","type":{"array":["u8",8]}},{"name":"created_by","type":"pubkey"},{"name":"created_at","type":"i64"}]}},{"name":"DelegateAcl","type":{"kind":"struct","fields":[{"name":"pubkey","type":"pubkey"},{"name":"permissions","type":{"vec":{"defined":{"name":"Permission"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EngineField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"EngineFieldName"}}},{"name":"value","type":{"defined":{"name":"EngineFieldValue"}}}]}},{"name":"EngineFieldName","type":{"kind":"enum","variants":[{"name":"Allowlist"},{"name":"Blocklist"},{"name":"ExternalVaultAccounts"},{"name":"LockUp"},{"name":"DriftMarketIndexesPerp"},{"name":"DriftMarketIndexesSpot"},{"name":"DriftOrderTypes"},{"name":"MaxSwapSlippageBps"},{"name":"TransferToAllowlist"},{"name":"PricedAssets"},{"name":"BaseAsset"},{"name":"MaxCap"},{"name":"MinSubscription"},{"name":"MinRedemption"},{"name":"Valuation"},{"name":"Ledger"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"SubscriptionPaused"},{"name":"RedemptionPaused"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"Date","fields":[{"name":"val","type":"string"}]},{"name":"Double","fields":[{"name":"val","type":"i64"}]},{"name":"Integer","fields":[{"name":"val","type":"i32"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Time","fields":[{"name":"val","type":"string"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"Percentage","fields":[{"name":"val","type":"u32"}]},{"name":"URI","fields":[{"name":"val","type":"string"}]},{"name":"Timestamp","fields":[{"name":"val","type":"i64"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecPricedAssets","fields":[{"name":"val","type":{"vec":{"defined":{"name":"PricedAssets"}}}}]},{"name":"Ledger","fields":[{"name":"val","type":{"vec":{"defined":{"name":"LedgerEntry"}}}}]},{"name":"FeeStructure","fields":[{"name":"val","type":{"defined":{"name":"FeeStructure"}}}]},{"name":"FeeParams","fields":[{"name":"val","type":{"defined":{"name":"FeeParams"}}}]},{"name":"AccruedFees","fields":[{"name":"val","type":{"defined":{"name":"AccruedFees"}}}]},{"name":"Valuation","fields":[{"name":"val","type":{"defined":{"name":"Valuation"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"FeeParams","type":{"kind":"struct","fields":[{"name":"year_in_seconds","type":"u32"},{"name":"pa_high_water_mark","type":"i128"},{"name":"pa_last_nav","type":"i128"},{"name":"last_aum","type":"i128"},{"name":"last_performance_fee_crystallized","type":"i64"},{"name":"last_management_fee_crystallized","type":"i64"},{"name":"last_protocol_fee_crystallized","type":"i64"}]}},{"name":"FeeStructure","type":{"kind":"struct","fields":[{"name":"vault","type":{"defined":{"name":"EntryExitFees"}}},{"name":"manager","type":{"defined":{"name":"EntryExitFees"}}},{"name":"management","type":{"defined":{"name":"ManagementFee"}}},{"name":"performance","type":{"defined":{"name":"PerformanceFee"}}},{"name":"protocol","type":{"defined":{"name":"ProtocolFees"}}}]}},{"name":"FundField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"FundFieldName"}}},{"name":"value","type":"string"}]}},{"name":"FundFieldName","type":{"kind":"enum","variants":[{"name":"FundDomicileAlpha2"},{"name":"FundDomicileAlpha3"},{"name":"LegalFundNameIncludingUmbrella"},{"name":"FiscalYearEnd"},{"name":"FundCurrency"},{"name":"FundLaunchDate"},{"name":"InvestmentObjective"},{"name":"IsETC"},{"name":"IsEUDirectiveRelevant"},{"name":"IsFundOfFunds"},{"name":"IsPassiveFund"},{"name":"IsREIT"},{"name":"LegalForm"},{"name":"LegalFundNameOnly"},{"name":"OpenEndedOrClosedEndedFundStructure"},{"name":"TypeOfEUDirective"},{"name":"UCITSVersion"},{"name":"CurrencyHedgePortfolio"},{"name":"DepositoryName"},{"name":"FundValuationPoint"},{"name":"FundValuationPointTimeZone"},{"name":"FundValuationPointTimeZoneUsingTZDatabase"},{"name":"HasCollateralManager"},{"name":"HasEmbeddedDerivatives"},{"name":"HasSecuritiesLending"},{"name":"HasSwap"},{"name":"IsLeveraged"},{"name":"IsShariaCompliant"},{"name":"IsShort"},{"name":"LEIofDepositoryBank"},{"name":"LEIOfFund"},{"name":"LocationOfBearerShare"},{"name":"LocationOfShareRegister"},{"name":"MaximumLeverageInFund"},{"name":"MiFIDSecuritiesClassification"},{"name":"MoneyMarketTypeOfFund"},{"name":"TrusteeName"},{"name":"AuMFund"},{"name":"AuMFundDate"},{"name":"NoSFund"},{"name":"NoSFundDate"}]}},{"name":"FundManagerField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"FundManagerFieldName"}}},{"name":"value","type":"string"}]}},{"name":"FundManagerFieldName","type":{"kind":"enum","variants":[{"name":"PortfolioManagerForename"},{"name":"PortfolioManagerName"},{"name":"PortfolioManagerYearOfBirth"},{"name":"PortfolioManagerYearOfExperienceStart"},{"name":"PortfolioManagerBriefBiography"},{"name":"PortfolioManagerType"},{"name":"PortfolioManagerRoleStartingDate"},{"name":"PortfolioManagerRoleEndDate"}]}},{"name":"FundOpenfundsModel","type":{"kind":"struct","fields":[{"name":"fund_domicile_alpha_2","type":{"option":"string"}},{"name":"legal_fund_name_including_umbrella","type":{"option":"string"}},{"name":"fiscal_year_end","type":{"option":"string"}},{"name":"fund_currency","type":{"option":"string"}},{"name":"fund_launch_date","type":{"option":"string"}},{"name":"investment_objective","type":{"option":"string"}},{"name":"is_etc","type":{"option":"bool"}},{"name":"is_eu_directive_relevant","type":{"option":"bool"}},{"name":"is_fund_of_funds","type":{"option":"bool"}},{"name":"is_passive_fund","type":{"option":"bool"}},{"name":"is_reit","type":{"option":"bool"}},{"name":"legal_form","type":{"option":"string"}},{"name":"legal_fund_name_only","type":{"option":"string"}},{"name":"open_ended_or_closed_ended_fund_structure","type":{"option":"string"}},{"name":"type_of_eu_directive","type":{"option":"string"}},{"name":"ucits_version","type":{"option":"string"}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"Integration","type":{"kind":"enum","variants":[{"name":"Drift"},{"name":"SplStakePool"},{"name":"SanctumStakePool"},{"name":"NativeStaking"},{"name":"Marinade"},{"name":"JupiterSwap"},{"name":"JupiterVote"},{"name":"KaminoLending"},{"name":"MeteoraDlmm"}]}},{"name":"LedgerEntry","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"kind","type":{"defined":{"name":"LedgerEntryKind"}}},{"name":"incoming","type":{"defined":{"name":"PubkeyAmount"}}},{"name":"value","type":"u64"},{"name":"outgoing","type":{"option":{"defined":{"name":"PubkeyAmount"}}}}]}},{"name":"LedgerEntryKind","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"LiquidityParameter","type":{"kind":"struct","fields":[{"name":"amount_x","type":"u64"},{"name":"amount_y","type":"u64"},{"name":"bin_liquidity_dist","type":{"vec":{"defined":{"name":"BinLiquidityDistribution"}}}}]}},{"name":"LiquidityParameterByStrategy","type":{"kind":"struct","fields":[{"name":"amount_x","type":"u64"},{"name":"amount_y","type":"u64"},{"name":"active_id","type":"i32"},{"name":"max_active_bin_slippage","type":"i32"},{"name":"strategy_parameters","type":{"defined":{"name":"StrategyParameters"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"ManagerKind","type":{"kind":"enum","variants":[{"name":"Wallet"},{"name":"Squads"}]}},{"name":"ManagerModel","type":{"kind":"struct","fields":[{"name":"portfolio_manager_name","type":{"option":"string"}},{"name":"pubkey","type":{"option":"pubkey"}},{"name":"kind","type":{"option":{"defined":{"name":"ManagerKind"}}}}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"name":"Metadata","type":{"kind":"struct","fields":[{"name":"template","type":{"defined":{"name":"MetadataTemplate"}}},{"name":"pubkey","type":"pubkey"},{"name":"uri","type":"string"}]}},{"name":"MetadataTemplate","type":{"kind":"enum","variants":[{"name":"Openfunds"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":"string"}},{"name":"uri","type":{"option":"string"}},{"name":"state_pubkey","type":{"option":"pubkey"}},{"name":"asset","type":{"option":"pubkey"}},{"name":"image_uri","type":{"option":"string"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}},{"name":"lock_up_period_in_seconds","type":{"option":"i32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"fee_params","type":{"option":{"defined":{"name":"FeeParams"}}}},{"name":"valuation","type":{"option":{"defined":{"name":"Valuation"}}}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"is_raw_openfunds","type":{"option":"bool"}},{"name":"raw_openfunds","type":{"option":{"defined":{"name":"MintOpenfundsModel"}}}}]}},{"name":"MintOpenfundsModel","type":{"kind":"struct","fields":[{"name":"isin","type":{"option":"string"}},{"name":"share_class_currency","type":{"option":"string"}},{"name":"full_share_class_name","type":{"option":"string"}},{"name":"has_performance_fee","type":{"option":"bool"}},{"name":"investment_status","type":{"option":"string"}},{"name":"minimal_initial_subscription_in_amount","type":{"option":"string"}},{"name":"minimal_initial_subscription_in_shares","type":{"option":"string"}},{"name":"minimal_subsequent_subscription_in_amount","type":{"option":"string"}},{"name":"minimal_subsequent_subscription_in_shares","type":{"option":"string"}},{"name":"share_class_launch_date","type":{"option":"string"}},{"name":"share_class_lifecycle","type":{"option":"string"}},{"name":"launch_price","type":{"option":"string"}},{"name":"launch_price_currency","type":{"option":"string"}},{"name":"launch_price_date","type":{"option":"string"}},{"name":"has_lock_up_for_redemption","type":{"option":"bool"}},{"name":"lock_up_comment","type":{"option":"string"}},{"name":"lock_up_period_in_days","type":{"option":"string"}},{"name":"minimal_initial_redemption_in_amount","type":{"option":"string"}},{"name":"minimal_initial_redemption_in_shares","type":{"option":"string"}},{"name":"minimal_subsequent_redemption_in_amount","type":{"option":"string"}},{"name":"minimal_subsequent_redemption_in_shares","type":{"option":"string"}},{"name":"rounding_method_for_prices","type":{"option":"string"}},{"name":"cusip","type":{"option":"string"}},{"name":"valor","type":{"option":"string"}}]}},{"name":"ModifyOrderParams","type":{"kind":"struct","fields":[{"name":"direction","type":{"option":{"defined":{"name":"PositionDirection"}}}},{"name":"base_asset_amount","type":{"option":"u64"}},{"name":"price","type":{"option":"u64"}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"post_only","type":{"option":{"defined":{"name":"PostOnlyParam"}}}},{"name":"immediate_or_cancel","type":{"option":"bool"}},{"name":"max_ts","type":{"option":"i64"}},{"name":"trigger_price","type":{"option":"u64"}},{"name":"trigger_condition","type":{"option":{"defined":{"name":"OrderTriggerCondition"}}}},{"name":"oracle_price_offset","type":{"option":"i32"}},{"name":"auction_duration","type":{"option":"u8"}},{"name":"auction_start_price","type":{"option":"i64"}},{"name":"auction_end_price","type":{"option":"i64"}},{"name":"policy","type":{"option":"u8"}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"OpenfundsMetadataAccount","type":{"kind":"struct","fields":[{"name":"fund_id","type":"pubkey"},{"name":"company","type":{"vec":{"defined":{"name":"CompanyField"}}}},{"name":"fund","type":{"vec":{"defined":{"name":"FundField"}}}},{"name":"share_classes","type":{"vec":{"vec":{"defined":{"name":"ShareClassField"}}}}},{"name":"fund_managers","type":{"vec":{"vec":{"defined":{"name":"FundManagerField"}}}}}]}},{"name":"OrderParams","type":{"kind":"struct","fields":[{"name":"order_type","type":{"defined":{"name":"OrderType"}}},{"name":"market_type","type":{"defined":{"name":"MarketType"}}},{"name":"direction","type":{"defined":{"name":"PositionDirection"}}},{"name":"user_order_id","type":"u8"},{"name":"base_asset_amount","type":"u64"},{"name":"price","type":"u64"},{"name":"market_index","type":"u16"},{"name":"reduce_only","type":"bool"},{"name":"post_only","type":{"defined":{"name":"PostOnlyParam"}}},{"name":"immediate_or_cancel","type":"bool"},{"name":"max_ts","type":{"option":"i64"}},{"name":"trigger_price","type":{"option":"u64"}},{"name":"trigger_condition","type":{"defined":{"name":"OrderTriggerCondition"}}},{"name":"oracle_price_offset","type":{"option":"i32"}},{"name":"auction_duration","type":{"option":"u8"}},{"name":"auction_start_price","type":{"option":"i64"}},{"name":"auction_end_price","type":{"option":"i64"}}]}},{"name":"OrderTriggerCondition","type":{"kind":"enum","variants":[{"name":"Above"},{"name":"Below"},{"name":"TriggeredAbove"},{"name":"TriggeredBelow"}]}},{"name":"OrderType","type":{"kind":"enum","variants":[{"name":"Market"},{"name":"Limit"},{"name":"TriggerMarket"},{"name":"TriggerLimit"},{"name":"Oracle"}]}},{"name":"PerformanceFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"},{"name":"hurdle_rate_bps","type":"u16"},{"name":"hurdle_type","type":{"defined":{"name":"HurdleType"}}}]}},{"name":"Permission","docs":["* Delegate ACL"],"type":{"kind":"enum","variants":[{"name":"DriftInit"},{"name":"DriftUpdateUser"},{"name":"DriftDeleteUser"},{"name":"DriftDeposit"},{"name":"DriftWithdraw"},{"name":"DriftOrders"},{"name":"DriftBorrow"},{"name":"DriftPerpMarket"},{"name":"DriftSpotMarket"},{"name":"Stake"},{"name":"Unstake"},{"name":"__DeprecatedLiquidUnstake"},{"name":"JupiterSwapAllowlisted"},{"name":"JupiterSwapAny"},{"name":"WSol"},{"name":"__DeprecatedWSolUnwrap"},{"name":"MintMintTokens"},{"name":"MintBurnTokens"},{"name":"MintForceTransferTokens"},{"name":"MintSetTokenAccountState"},{"name":"JupiterGovStake"},{"name":"JupiterGovVoteOnProposal"},{"name":"JupiterGovUnstake"},{"name":"JupiterSwapLst"},{"name":"JupiterSwapPriceable"},{"name":"KaminoInit"},{"name":"KaminoDeposit"},{"name":"KaminoBorrow"},{"name":"KaminoWithdraw"},{"name":"KaminoClaim"},{"name":"MeteoraDlmmPosition"},{"name":"MeteoraDlmmLiquidity"},{"name":"MeteoraDlmmClaim"},{"name":"MeteoraDlmmSwap"},{"name":"TransferToAllowlisted"},{"name":"JupiterGovWithdraw"},{"name":"JupiterGovClaim"}]}},{"name":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PriceDenom","type":{"kind":"enum","variants":[{"name":"SOL"},{"name":"USD"},{"name":"ASSET6"}]}},{"name":"PricedAssets","type":{"kind":"struct","fields":[{"name":"denom","type":{"defined":{"name":"PriceDenom"}}},{"name":"accounts","type":{"vec":"pubkey"}},{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration","type":{"option":{"defined":{"name":"Integration"}}}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"PubkeyAmount","type":{"kind":"struct","fields":[{"name":"pubkey","type":"pubkey"},{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}},{"name":"RemainingAccountsInfo","type":{"kind":"struct","fields":[{"name":"slices","type":{"vec":{"defined":{"name":"RemainingAccountsSlice"}}}}]}},{"name":"RemainingAccountsSlice","type":{"kind":"struct","fields":[{"name":"accounts_type","type":{"defined":{"name":"AccountsType"}}},{"name":"length","type":"u8"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"ShareClassField","type":{"kind":"struct","fields":[{"name":"name","type":{"defined":{"name":"ShareClassFieldName"}}},{"name":"value","type":"string"}]}},{"name":"ShareClassFieldName","type":{"kind":"enum","variants":[{"name":"ISIN"},{"name":"ShareClassCurrency"},{"name":"AppliedSubscriptionFeeInFavourOfDistributor"},{"name":"AppliedSubscriptionFeeInFavourOfDistributorReferenceDate"},{"name":"CurrencyOfMinimalSubscription"},{"name":"FullShareClassName"},{"name":"HasPerformanceFee"},{"name":"HasSubscriptionFeeInFavourOfDistributor"},{"name":"InvestmentStatus"},{"name":"ManagementFeeApplied"},{"name":"ManagementFeeAppliedReferenceDate"},{"name":"ManagementFeeMaximum"},{"name":"MaximumSubscriptionFeeInFavourOfDistributor"},{"name":"MinimalInitialSubscriptionCategory"},{"name":"MinimalInitialSubscriptionInAmount"},{"name":"MinimalInitialSubscriptionInShares"},{"name":"MinimalSubsequentSubscriptionCategory"},{"name":"MinimalSubsequentSubscriptionInAmount"},{"name":"MinimalSubsequentSubscriptionInShares"},{"name":"MinimumSubscriptionFeeInFavourOfDistributor"},{"name":"ShareClassDistributionPolicy"},{"name":"ShareClassExtension"},{"name":"ShareClassLaunchDate"},{"name":"ShareClassLifecycle"},{"name":"SRRI"},{"name":"LaunchPrice"},{"name":"LaunchPriceCurrency"},{"name":"LaunchPriceDate"},{"name":"HasAppliedSubscriptionFeeInFavourOfFund"},{"name":"AppliedSubscriptionFeeInFavourOfFund"},{"name":"AppliedSubscriptionFeeInFavourOfFundReferenceDate"},{"name":"MaximumSubscriptionFeeInFavourOfFund"},{"name":"HasAppliedRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfFundReferenceDate"},{"name":"MaximumRedemptionFeeInFavourOfFund"},{"name":"AppliedRedemptionFeeInFavourOfDistributor"},{"name":"AppliedRedemptionFeeInFavourOfDistributorReferenceDate"},{"name":"CurrencyOfMinimalOrMaximumRedemption"},{"name":"CutOffDateOffsetForRedemption"},{"name":"CutOffDateOffsetForSubscription"},{"name":"CutOffTimeForRedemption"},{"name":"CutOffTimeForSubscription"},{"name":"HasLockUpForRedemption"},{"name":"HasRedemptionFeeInFavourOfDistributor"},{"name":"IsValidISIN"},{"name":"LockUpComment"},{"name":"LockUpPeriodInDays"},{"name":"ManagementFeeMinimum"},{"name":"MaximalNumberOfPossibleDecimalsAmount"},{"name":"MaximalNumberOfPossibleDecimalsNAV"},{"name":"MaximalNumberOfPossibleDecimalsShares"},{"name":"MaximumInitialRedemptionInAmount"},{"name":"MaximumInitialRedemptionInShares"},{"name":"MaximumRedemptionFeeInFavourOfDistributor"},{"name":"MaximumSubsequentRedemptionInAmount"},{"name":"MaximumSubsequentRedemptionInShares"},{"name":"MinimalInitialRedemptionInAmount"},{"name":"MinimalInitialRedemptionInShares"},{"name":"MinimalRedemptionCategory"},{"name":"MinimalSubsequentRedemptionInAmount"},{"name":"MinimalSubsequentRedemptionInShares"},{"name":"MinimumRedemptionFeeInFavourOfDistributor"},{"name":"MinimumRedemptionFeeInFavourOfFund"},{"name":"MinimumSubscriptionFeeInFavourOfFund"},{"name":"PerformanceFeeMinimum"},{"name":"RoundingMethodForPrices"},{"name":"RoundingMethodForRedemptionInAmount"},{"name":"RoundingMethodForRedemptionInShares"},{"name":"RoundingMethodForSubscriptionInAmount"},{"name":"RoundingMethodForSubscriptionInShares"},{"name":"ShareClassDividendType"},{"name":"CUSIP"},{"name":"Valor"},{"name":"FundId"},{"name":"ImageUri"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"owner","type":"pubkey"},{"name":"vault","type":"pubkey"},{"name":"enabled","type":"bool"},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"engine","type":"pubkey"},{"name":"mints","type":{"vec":"pubkey"}},{"name":"metadata","type":{"option":{"defined":{"name":"Metadata"}}}},{"name":"name","type":"string"},{"name":"uri","type":"string"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"integrations","type":{"vec":{"defined":{"name":"Integration"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"id","type":{"option":"pubkey"}},{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":"string"}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"external_vault_accounts","type":{"option":{"vec":"pubkey"}}},{"name":"mints","type":{"option":{"vec":{"defined":{"name":"MintModel"}}}}},{"name":"company","type":{"option":{"defined":{"name":"CompanyModel"}}}},{"name":"owner","type":{"option":{"defined":{"name":"ManagerModel"}}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}},{"name":"integrations","type":{"option":{"vec":{"defined":{"name":"Integration"}}}}},{"name":"drift_market_indexes_perp","type":{"option":{"vec":"u32"}}},{"name":"drift_market_indexes_spot","type":{"option":{"vec":"u32"}}},{"name":"drift_order_types","type":{"option":{"vec":"u32"}}},{"name":"base_asset","type":{"option":"pubkey"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"metadata","type":{"option":{"defined":{"name":"Metadata"}}}},{"name":"raw_openfunds","type":{"option":{"defined":{"name":"FundOpenfundsModel"}}}}]}},{"name":"StrategyParameters","type":{"kind":"struct","fields":[{"name":"min_bin_id","type":"i32"},{"name":"max_bin_id","type":"i32"},{"name":"strategy_type","type":{"defined":{"name":"StrategyType"}}},{"name":"parameteres","type":{"array":["u8",64]}}]}},{"name":"StrategyType","type":{"kind":"enum","variants":[{"name":"SpotOneSide"},{"name":"CurveOneSide"},{"name":"BidAskOneSide"},{"name":"SpotBalanced"},{"name":"CurveBalanced"},{"name":"BidAskBalanced"},{"name":"SpotImBalanced"},{"name":"CurveImBalanced"},{"name":"BidAskImBalanced"}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Slot"},{"name":"Second"}]}},{"name":"Valuation","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"notice_period","type":"u64"},{"name":"notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"settlement_period","type":"u64"},{"name":"cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"SEED_ACCOUNT_POLICY","type":"string","value":"\\"account-policy\\""},{"name":"SEED_ESCROW","type":"string","value":"\\"escrow\\""},{"name":"SEED_METADATA","type":"string","value":"\\"metadata\\""},{"name":"SEED_MINT","type":"string","value":"\\"mint\\""},{"name":"SEED_STATE","type":"string","value":"\\"state\\""},{"name":"SEED_VAULT","type":"string","value":"\\"vault\\""}]}');
|
|
85
88
|
|
|
86
89
|
/***/ }),
|
|
87
90
|
/* 7 */
|
|
@@ -536,17 +539,17 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
536
539
|
exports.GlamClient = exports.JUPITER_API_DEFAULT = void 0;
|
|
537
540
|
const base_1 = __webpack_require__(13);
|
|
538
541
|
const drift_1 = __webpack_require__(20);
|
|
539
|
-
const jupiter_1 = __webpack_require__(
|
|
540
|
-
const jupiter_2 = __webpack_require__(
|
|
541
|
-
const marinade_1 = __webpack_require__(
|
|
542
|
-
const wsol_1 = __webpack_require__(
|
|
543
|
-
const staking_1 = __webpack_require__(
|
|
544
|
-
const state_1 = __webpack_require__(
|
|
545
|
-
const mint_1 = __webpack_require__(
|
|
546
|
-
const kamino_1 = __webpack_require__(
|
|
547
|
-
const meteora_1 = __webpack_require__(
|
|
548
|
-
const investor_1 = __webpack_require__(
|
|
549
|
-
const price_1 = __webpack_require__(
|
|
542
|
+
const jupiter_1 = __webpack_require__(23);
|
|
543
|
+
const jupiter_2 = __webpack_require__(23);
|
|
544
|
+
const marinade_1 = __webpack_require__(24);
|
|
545
|
+
const wsol_1 = __webpack_require__(26);
|
|
546
|
+
const staking_1 = __webpack_require__(27);
|
|
547
|
+
const state_1 = __webpack_require__(29);
|
|
548
|
+
const mint_1 = __webpack_require__(30);
|
|
549
|
+
const kamino_1 = __webpack_require__(31);
|
|
550
|
+
const meteora_1 = __webpack_require__(33);
|
|
551
|
+
const investor_1 = __webpack_require__(34);
|
|
552
|
+
const price_1 = __webpack_require__(35);
|
|
550
553
|
var base_2 = __webpack_require__(13);
|
|
551
554
|
Object.defineProperty(exports, "JUPITER_API_DEFAULT", ({ enumerable: true, get: function () { return base_2.JUPITER_API_DEFAULT; } }));
|
|
552
555
|
/**
|
|
@@ -1151,7 +1154,7 @@ exports.BaseClient = BaseClient;
|
|
|
1151
1154
|
|
|
1152
1155
|
|
|
1153
1156
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1154
|
-
exports.getSimulationComputeUnits = exports.parseMeteoraPosition = exports.fetchMeteoraPositions = exports.fetchKaminoObligations = exports.fetchMarinadeTicketAccounts = exports.fetchStakeAccounts = void 0;
|
|
1157
|
+
exports.setsAreEqual = exports.getSimulationComputeUnits = exports.parseMeteoraPosition = exports.fetchMeteoraPositions = exports.fetchKaminoObligations = exports.fetchMarinadeTicketAccounts = exports.fetchStakeAccounts = void 0;
|
|
1155
1158
|
const web3_js_1 = __webpack_require__(5);
|
|
1156
1159
|
const constants_1 = __webpack_require__(10);
|
|
1157
1160
|
const dlmm_1 = __webpack_require__(15);
|
|
@@ -1303,6 +1306,16 @@ const getErrorFromRPCResponse = (rpcResponse) => {
|
|
|
1303
1306
|
throw Error(error.toString());
|
|
1304
1307
|
}
|
|
1305
1308
|
};
|
|
1309
|
+
const setsAreEqual = (a, b) => {
|
|
1310
|
+
if (a.size !== b.size)
|
|
1311
|
+
return false;
|
|
1312
|
+
for (let item of a) {
|
|
1313
|
+
if (!b.has(item))
|
|
1314
|
+
return false;
|
|
1315
|
+
}
|
|
1316
|
+
return true;
|
|
1317
|
+
};
|
|
1318
|
+
exports.setsAreEqual = setsAreEqual;
|
|
1306
1319
|
|
|
1307
1320
|
|
|
1308
1321
|
/***/ }),
|
|
@@ -1531,16 +1544,36 @@ exports.BlockhashWithCache = BlockhashWithCache;
|
|
|
1531
1544
|
|
|
1532
1545
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1533
1546
|
exports.DriftClient = void 0;
|
|
1547
|
+
const tslib_1 = __webpack_require__(1);
|
|
1548
|
+
const anchor = tslib_1.__importStar(__webpack_require__(2));
|
|
1534
1549
|
const web3_js_1 = __webpack_require__(5);
|
|
1535
|
-
const
|
|
1550
|
+
const driftTypes_1 = __webpack_require__(21);
|
|
1551
|
+
const driftUser_1 = __webpack_require__(22);
|
|
1536
1552
|
const constants_1 = __webpack_require__(10);
|
|
1537
1553
|
const spl_token_1 = __webpack_require__(8);
|
|
1538
1554
|
const assets_1 = __webpack_require__(16);
|
|
1539
|
-
const
|
|
1555
|
+
const anchor_1 = __webpack_require__(2);
|
|
1556
|
+
const DRIFT_SIGNER = new web3_js_1.PublicKey("JCNCMFXo5M5qwUPg2Utu1u6YWp3MbygxqBsBeXXJfrw");
|
|
1540
1557
|
const DRIFT_MARGIN_PRECISION = 10000;
|
|
1541
1558
|
class DriftClient {
|
|
1542
1559
|
constructor(base) {
|
|
1543
1560
|
this.base = base;
|
|
1561
|
+
this.spotMarkets = new Map();
|
|
1562
|
+
this.perpMarkets = new Map();
|
|
1563
|
+
this.marketConfigs = null;
|
|
1564
|
+
/*
|
|
1565
|
+
* Utils
|
|
1566
|
+
*/
|
|
1567
|
+
this.getMarketPda = (marketType, marketIndex) => web3_js_1.PublicKey.findProgramAddressSync([
|
|
1568
|
+
Buffer.from(`${marketType === driftTypes_1.MarketType.PERP ? "perp" : "spot"}_market`),
|
|
1569
|
+
new anchor.BN(marketIndex).toArrayLike(Buffer, "le", 2),
|
|
1570
|
+
], constants_1.DRIFT_PROGRAM_ID)[0];
|
|
1571
|
+
this.getUserPda = (authority, subAccountId = 0) => web3_js_1.PublicKey.findProgramAddressSync([
|
|
1572
|
+
Buffer.from("user"),
|
|
1573
|
+
authority.toBuffer(),
|
|
1574
|
+
new anchor.BN(subAccountId).toArrayLike(Buffer, "le", 2),
|
|
1575
|
+
], constants_1.DRIFT_PROGRAM_ID)[0];
|
|
1576
|
+
this.getUserStatsPda = (authority) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("user_stats"), authority.toBuffer()], constants_1.DRIFT_PROGRAM_ID)[0];
|
|
1544
1577
|
this.marketTypeEquals = (a, b) => a && Object.keys(a)[0] === Object.keys(b)[0];
|
|
1545
1578
|
}
|
|
1546
1579
|
/*
|
|
@@ -1567,87 +1600,267 @@ class DriftClient {
|
|
|
1567
1600
|
const tx = await this.deleteUserTx(new web3_js_1.PublicKey(statePda), subAccountId, txOptions);
|
|
1568
1601
|
return await this.base.sendAndConfirm(tx);
|
|
1569
1602
|
}
|
|
1570
|
-
async deposit(statePda, amount, marketIndex = 1, subAccountId = 0,
|
|
1571
|
-
const tx = await this.depositTx(new web3_js_1.PublicKey(statePda), amount, marketIndex, subAccountId,
|
|
1603
|
+
async deposit(statePda, amount, marketIndex = 1, subAccountId = 0, txOptions = {}) {
|
|
1604
|
+
const tx = await this.depositTx(new web3_js_1.PublicKey(statePda), amount, marketIndex, subAccountId, txOptions);
|
|
1572
1605
|
return await this.base.sendAndConfirm(tx);
|
|
1573
1606
|
}
|
|
1574
|
-
async withdraw(statePda, amount, marketIndex = 1, subAccountId = 0,
|
|
1575
|
-
const tx = await this.withdrawTx(new web3_js_1.PublicKey(statePda), amount, marketIndex, subAccountId,
|
|
1607
|
+
async withdraw(statePda, amount, marketIndex = 1, subAccountId = 0, txOptions = {}) {
|
|
1608
|
+
const tx = await this.withdrawTx(new web3_js_1.PublicKey(statePda), amount, marketIndex, subAccountId, txOptions);
|
|
1576
1609
|
return await this.base.sendAndConfirm(tx);
|
|
1577
1610
|
}
|
|
1578
|
-
async placeOrder(statePda, orderParams, subAccountId = 0,
|
|
1579
|
-
const tx = await this.placeOrderTx(new web3_js_1.PublicKey(statePda), orderParams, subAccountId,
|
|
1611
|
+
async placeOrder(statePda, orderParams, subAccountId = 0, txOptions = {}) {
|
|
1612
|
+
const tx = await this.placeOrderTx(new web3_js_1.PublicKey(statePda), orderParams, subAccountId, txOptions);
|
|
1580
1613
|
return await this.base.sendAndConfirm(tx);
|
|
1581
1614
|
}
|
|
1582
|
-
async modifyOrder(statePda, modifyOrderParams, subAccountId = 0,
|
|
1583
|
-
const tx = await this.modifyOrderTx(new web3_js_1.PublicKey(statePda), modifyOrderParams, subAccountId,
|
|
1615
|
+
async modifyOrder(statePda, modifyOrderParams, subAccountId = 0, txOptions = {}) {
|
|
1616
|
+
const tx = await this.modifyOrderTx(new web3_js_1.PublicKey(statePda), modifyOrderParams, subAccountId, txOptions);
|
|
1584
1617
|
return await this.base.sendAndConfirm(tx);
|
|
1585
1618
|
}
|
|
1586
|
-
async cancelOrders(statePda, marketType, marketIndex, direction, subAccountId = 0,
|
|
1587
|
-
const tx = await this.cancelOrdersTx(new web3_js_1.PublicKey(statePda), marketType, marketIndex, direction, subAccountId,
|
|
1619
|
+
async cancelOrders(statePda, marketType, marketIndex, direction, subAccountId = 0, txOptions = {}) {
|
|
1620
|
+
const tx = await this.cancelOrdersTx(new web3_js_1.PublicKey(statePda), marketType, marketIndex, direction, subAccountId, txOptions);
|
|
1588
1621
|
return await this.base.sendAndConfirm(tx);
|
|
1589
1622
|
}
|
|
1590
|
-
async cancelOrdersByIds(statePda, orderIds, subAccountId = 0,
|
|
1591
|
-
const tx = await this.cancelOrdersByIdsTx(new web3_js_1.PublicKey(statePda), orderIds, subAccountId,
|
|
1623
|
+
async cancelOrdersByIds(statePda, orderIds, subAccountId = 0, txOptions = {}) {
|
|
1624
|
+
const tx = await this.cancelOrdersByIdsTx(new web3_js_1.PublicKey(statePda), orderIds, subAccountId, txOptions);
|
|
1592
1625
|
return await this.base.sendAndConfirm(tx);
|
|
1593
1626
|
}
|
|
1594
|
-
async settlePnl(statePda, marketIndex, subAccountId = 0,
|
|
1595
|
-
const tx = await this.settlePnlTx(new web3_js_1.PublicKey(statePda), marketIndex, subAccountId,
|
|
1627
|
+
async settlePnl(statePda, marketIndex, subAccountId = 0, txOptions = {}) {
|
|
1628
|
+
const tx = await this.settlePnlTx(new web3_js_1.PublicKey(statePda), marketIndex, subAccountId, txOptions);
|
|
1596
1629
|
return await this.base.sendAndConfirm(tx);
|
|
1597
1630
|
}
|
|
1598
|
-
async priceDrift(statePda,
|
|
1599
|
-
const tx = await this.priceDriftTx(new web3_js_1.PublicKey(statePda),
|
|
1631
|
+
async priceDrift(statePda, priceDenom, txOptions = {}) {
|
|
1632
|
+
const tx = await this.priceDriftTx(new web3_js_1.PublicKey(statePda), priceDenom, txOptions);
|
|
1600
1633
|
return await this.base.sendAndConfirm(tx);
|
|
1601
1634
|
}
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1635
|
+
getGlamReferrerPdas() {
|
|
1636
|
+
return {
|
|
1637
|
+
user: this.getUserPda(constants_1.GLAM_REFERRER, 0),
|
|
1638
|
+
userStats: this.getUserStatsPda(constants_1.GLAM_REFERRER),
|
|
1639
|
+
};
|
|
1640
|
+
}
|
|
1641
|
+
parsePerpMarket(data) {
|
|
1642
|
+
const marketPda = new web3_js_1.PublicKey(data.subarray(8, 40));
|
|
1643
|
+
const oracle = new web3_js_1.PublicKey(data.subarray(40, 72));
|
|
1644
|
+
const name = this.charsToName(data.subarray(1000, 1032));
|
|
1645
|
+
const oralceEnum = data.subarray(926, 927).readUint8();
|
|
1646
|
+
const oracleSource = driftTypes_1.OracleSource.get(oralceEnum);
|
|
1647
|
+
const marketIndex = data.subarray(1160, 1162).readUint16LE();
|
|
1648
|
+
return {
|
|
1649
|
+
name,
|
|
1650
|
+
marketPda,
|
|
1651
|
+
marketIndex,
|
|
1652
|
+
oracle,
|
|
1653
|
+
oracleSource,
|
|
1654
|
+
};
|
|
1655
|
+
}
|
|
1656
|
+
parseSpotMarket(data) {
|
|
1657
|
+
const marketPda = new web3_js_1.PublicKey(data.subarray(8, 40));
|
|
1658
|
+
const oracle = new web3_js_1.PublicKey(data.subarray(40, 72));
|
|
1659
|
+
const mint = new web3_js_1.PublicKey(data.subarray(72, 104));
|
|
1660
|
+
const vault = new web3_js_1.PublicKey(data.subarray(104, 136));
|
|
1661
|
+
const name = this.charsToName(data.subarray(136, 168));
|
|
1662
|
+
const cumulativeDepositInterest = new anchor_1.BN(data.subarray(464, 480), "le");
|
|
1663
|
+
const cumulativeBorrowInterest = new anchor_1.BN(data.subarray(480, 496), "le");
|
|
1664
|
+
const decimals = data.subarray(680, 684).readUint32LE();
|
|
1665
|
+
const marketIndex = data.subarray(684, 686).readUint16LE();
|
|
1666
|
+
const oralceEnum = data.subarray(687, 688).readUint8();
|
|
1667
|
+
const oracleSource = driftTypes_1.OracleSource.get(oralceEnum);
|
|
1668
|
+
const tokenProgram = data.subarray(734, 735).readUint8() == 0
|
|
1669
|
+
? spl_token_1.TOKEN_PROGRAM_ID
|
|
1670
|
+
: spl_token_1.TOKEN_2022_PROGRAM_ID;
|
|
1671
|
+
return {
|
|
1672
|
+
name,
|
|
1673
|
+
marketIndex,
|
|
1674
|
+
marketPda,
|
|
1675
|
+
oracle,
|
|
1676
|
+
oracleSource,
|
|
1677
|
+
vault,
|
|
1678
|
+
mint,
|
|
1679
|
+
decimals,
|
|
1680
|
+
tokenProgram,
|
|
1681
|
+
cumulativeDepositInterest,
|
|
1682
|
+
cumulativeBorrowInterest,
|
|
1683
|
+
};
|
|
1684
|
+
}
|
|
1685
|
+
async calcSpotBalance(marketIndex, scaledBalance, scaledBalanceType) {
|
|
1686
|
+
const { decimals, cumulativeDepositInterest, cumulativeBorrowInterest } = await this.fetchAndParseSpotMarket(marketIndex);
|
|
1687
|
+
const precisionAdjustment = new anchor_1.BN(10 ** (19 - decimals));
|
|
1688
|
+
let interest = cumulativeDepositInterest;
|
|
1689
|
+
if (scaledBalanceType === driftTypes_1.SpotBalanceType.BORROW) {
|
|
1690
|
+
interest = cumulativeBorrowInterest;
|
|
1691
|
+
}
|
|
1692
|
+
const balance = scaledBalance.mul(interest).div(precisionAdjustment);
|
|
1693
|
+
const amount = scaledBalanceType === driftTypes_1.SpotBalanceType.BORROW
|
|
1694
|
+
? balance.neg().toNumber()
|
|
1695
|
+
: balance.toNumber();
|
|
1696
|
+
const uiAmount = amount / 10 ** decimals;
|
|
1697
|
+
return { amount, uiAmount };
|
|
1698
|
+
}
|
|
1699
|
+
getDriftUserPdas(statePda, subAccountId = 0) {
|
|
1606
1700
|
const vault = this.base.getVaultPda(new web3_js_1.PublicKey(statePda));
|
|
1607
|
-
return
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1701
|
+
return {
|
|
1702
|
+
user: this.getUserPda(vault, subAccountId),
|
|
1703
|
+
userStats: this.getUserStatsPda(vault),
|
|
1704
|
+
};
|
|
1611
1705
|
}
|
|
1612
|
-
|
|
1613
|
-
return [
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
];
|
|
1706
|
+
get driftStatePda() {
|
|
1707
|
+
return web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("drift_state")], constants_1.DRIFT_PROGRAM_ID)[0];
|
|
1708
|
+
}
|
|
1709
|
+
async fetchAndParseSpotMarket(marketIndex) {
|
|
1710
|
+
const markets = await this.fetchAndParseSpotMarkets([marketIndex]);
|
|
1711
|
+
if (!markets || markets.length === 0) {
|
|
1712
|
+
throw new Error(`Spot market not found at index ${marketIndex}`);
|
|
1713
|
+
}
|
|
1714
|
+
return markets[0];
|
|
1715
|
+
}
|
|
1716
|
+
async fetchAndParseSpotMarkets(marketIndexes) {
|
|
1717
|
+
const indexesToFetch = marketIndexes.filter((marketIndex) => !this.spotMarkets.has(marketIndex));
|
|
1718
|
+
if (indexesToFetch.length > 0) {
|
|
1719
|
+
console.log("Fetching spot markets:", indexesToFetch);
|
|
1720
|
+
const marketPdas = indexesToFetch.map((marketIndex) => this.getMarketPda(driftTypes_1.MarketType.SPOT, marketIndex));
|
|
1721
|
+
const accounts = await this.base.provider.connection.getMultipleAccountsInfo(marketPdas);
|
|
1722
|
+
accounts.forEach((account) => {
|
|
1723
|
+
if (account) {
|
|
1724
|
+
const spotMarket = this.parseSpotMarket(account.data);
|
|
1725
|
+
this.spotMarkets.set(spotMarket.marketIndex, spotMarket);
|
|
1726
|
+
}
|
|
1727
|
+
});
|
|
1728
|
+
}
|
|
1729
|
+
// At this point this.spotMarkets has all the requested markets
|
|
1730
|
+
return marketIndexes
|
|
1731
|
+
.map((marketIndex) => this.spotMarkets.get(marketIndex))
|
|
1732
|
+
.filter((m) => m);
|
|
1733
|
+
}
|
|
1734
|
+
async fetchAndParsePerpMarket(marketIndex) {
|
|
1735
|
+
const markets = await this.fetchAndParsePerpMarkets([marketIndex]);
|
|
1736
|
+
if (!markets || markets.length === 0) {
|
|
1737
|
+
throw new Error(`Perp market not found at index ${marketIndex}`);
|
|
1738
|
+
}
|
|
1739
|
+
return markets[0];
|
|
1740
|
+
}
|
|
1741
|
+
async fetchAndParsePerpMarkets(marketIndexes) {
|
|
1742
|
+
const indexesToFetch = marketIndexes.filter((marketIndex) => !this.perpMarkets.has(marketIndex));
|
|
1743
|
+
if (indexesToFetch.length > 0) {
|
|
1744
|
+
console.log("Fetching perp markets:", indexesToFetch);
|
|
1745
|
+
const marketPdas = marketIndexes.map((marketIndex) => this.getMarketPda(driftTypes_1.MarketType.PERP, marketIndex));
|
|
1746
|
+
const accounts = await this.base.provider.connection.getMultipleAccountsInfo(marketPdas);
|
|
1747
|
+
accounts.forEach((account) => {
|
|
1748
|
+
if (account) {
|
|
1749
|
+
const perpMarket = this.parsePerpMarket(account.data);
|
|
1750
|
+
this.perpMarkets.set(perpMarket.marketIndex, perpMarket);
|
|
1751
|
+
}
|
|
1752
|
+
});
|
|
1753
|
+
}
|
|
1754
|
+
else {
|
|
1755
|
+
console.log("Requested perp markets already cached:", marketIndexes);
|
|
1756
|
+
}
|
|
1757
|
+
return marketIndexes
|
|
1758
|
+
.map((marketIndex) => this.perpMarkets.get(marketIndex))
|
|
1759
|
+
.filter((m) => m);
|
|
1617
1760
|
}
|
|
1618
1761
|
async fetchMarketConfigs() {
|
|
1619
|
-
const response = await fetch(
|
|
1620
|
-
|
|
1621
|
-
|
|
1762
|
+
// const response = await fetch(
|
|
1763
|
+
// "https://api.glam.systems/v0/drift/market_configs/",
|
|
1764
|
+
// );
|
|
1765
|
+
// if (!response.ok) {
|
|
1766
|
+
// throw new Error(`Failed to fetch market configs: ${response.status}`);
|
|
1767
|
+
// }
|
|
1768
|
+
// const data = await response.json();
|
|
1769
|
+
// const { orderConstants, perp, spot } = data;
|
|
1770
|
+
// // Transform perp market from API to `PerpMarket` type
|
|
1771
|
+
// const perpMarkets = perp.map((m: any) => ({
|
|
1772
|
+
// marketIndex: m.marketIndex,
|
|
1773
|
+
// marketPda: m.marketPDA,
|
|
1774
|
+
// oracle: new PublicKey(m.oracle),
|
|
1775
|
+
// }));
|
|
1776
|
+
// // Transform spot market from API to `SpotMarket` type
|
|
1777
|
+
// const spotMarkets = spot.map((m: any) => ({
|
|
1778
|
+
// marketIndex: m.marketIndex,
|
|
1779
|
+
// marketPda: m.marketPDA,
|
|
1780
|
+
// oracle: new PublicKey(m.oracle),
|
|
1781
|
+
// mint: new PublicKey(m.mint),
|
|
1782
|
+
// vault: new PublicKey(m.vaultPDA),
|
|
1783
|
+
// decimals: m.decimals,
|
|
1784
|
+
// }));
|
|
1785
|
+
if (!this.marketConfigs) {
|
|
1786
|
+
const perpMarkets = await this.fetchAndParsePerpMarkets(Array.from(Array(100).keys()));
|
|
1787
|
+
const spotMarkets = await this.fetchAndParseSpotMarkets(Array.from(Array(100).keys()));
|
|
1788
|
+
this.marketConfigs = {
|
|
1789
|
+
orderConstants: { perpBaseScale: 9, quoteScale: 6 },
|
|
1790
|
+
perpMarkets,
|
|
1791
|
+
spotMarkets,
|
|
1792
|
+
};
|
|
1622
1793
|
}
|
|
1623
|
-
|
|
1624
|
-
|
|
1625
|
-
|
|
1626
|
-
|
|
1627
|
-
|
|
1628
|
-
|
|
1629
|
-
|
|
1630
|
-
|
|
1631
|
-
|
|
1794
|
+
return this.marketConfigs;
|
|
1795
|
+
}
|
|
1796
|
+
// public async fetchGlamDriftUser(
|
|
1797
|
+
// glamState: PublicKey | string,
|
|
1798
|
+
// subAccountId: number = 0,
|
|
1799
|
+
// ): Promise<GlamDriftUser> {
|
|
1800
|
+
// const vault = this.base.getVaultPda(new PublicKey(glamState));
|
|
1801
|
+
// const response = await fetch(
|
|
1802
|
+
// `https://api.glam.systems/v0/drift/user?authority=${vault.toBase58()}&accountId=${subAccountId}`,
|
|
1803
|
+
// );
|
|
1804
|
+
// const data = await response.json();
|
|
1805
|
+
// if (!data) {
|
|
1806
|
+
// throw new Error("Failed to fetch drift user.");
|
|
1807
|
+
// }
|
|
1808
|
+
// return data as GlamDriftUser;
|
|
1809
|
+
// }
|
|
1810
|
+
charsToName(chars) {
|
|
1811
|
+
return String.fromCharCode(...chars)
|
|
1812
|
+
.replace(/\0/g, "")
|
|
1813
|
+
.trim();
|
|
1814
|
+
}
|
|
1815
|
+
async fetchDriftUser(statePda, subAccountId = 0) {
|
|
1816
|
+
const { user } = this.getDriftUserPdas(new web3_js_1.PublicKey(statePda), subAccountId);
|
|
1817
|
+
const accountInfo = await this.base.provider.connection.getAccountInfo(user);
|
|
1818
|
+
if (!accountInfo) {
|
|
1819
|
+
return null;
|
|
1632
1820
|
}
|
|
1633
|
-
|
|
1634
|
-
|
|
1635
|
-
|
|
1636
|
-
const
|
|
1637
|
-
|
|
1821
|
+
const { delegate, name, spotPositions, marginMode, perpPositions, isMarginTradingEnabled, maxMarginRatio, orders, } = (0, driftUser_1.decodeUser)(accountInfo.data);
|
|
1822
|
+
// Prefetch market configs
|
|
1823
|
+
const marketConfigs = await this.fetchMarketConfigs();
|
|
1824
|
+
const spotPositionsExt = await Promise.all(spotPositions.map(async (p) => {
|
|
1825
|
+
const { amount, uiAmount } = await this.calcSpotBalance(p.marketIndex, p.scaledBalance, p.balanceType);
|
|
1826
|
+
const spotMarket = marketConfigs.spotMarkets.find((m) => m.marketIndex === p.marketIndex);
|
|
1827
|
+
return {
|
|
1828
|
+
...p,
|
|
1829
|
+
amount,
|
|
1830
|
+
uiAmount,
|
|
1831
|
+
mint: spotMarket.mint,
|
|
1832
|
+
decimals: spotMarket.decimals,
|
|
1833
|
+
marketName: spotMarket.name,
|
|
1834
|
+
};
|
|
1835
|
+
}));
|
|
1836
|
+
return {
|
|
1837
|
+
delegate,
|
|
1838
|
+
name: this.charsToName(name),
|
|
1839
|
+
spotPositions: spotPositionsExt,
|
|
1840
|
+
perpPositions,
|
|
1841
|
+
orders,
|
|
1842
|
+
marginMode,
|
|
1843
|
+
subAccountId,
|
|
1844
|
+
isMarginTradingEnabled,
|
|
1845
|
+
maxMarginRatio,
|
|
1846
|
+
};
|
|
1638
1847
|
}
|
|
1848
|
+
// async getPositions(statePda: PublicKey | string, subAccountId: number = 0) {
|
|
1849
|
+
// const driftUser = await this.fetchDriftUser(
|
|
1850
|
+
// new PublicKey(statePda),
|
|
1851
|
+
// subAccountId,
|
|
1852
|
+
// );
|
|
1853
|
+
// if (!driftUser) {
|
|
1854
|
+
// return { spotPositions: [], perpPositions: [] };
|
|
1855
|
+
// }
|
|
1856
|
+
// const marketConfigs = await this.fetchMarketConfigs();
|
|
1857
|
+
// const { spotPositions, perpPositions } = driftUser;
|
|
1858
|
+
// return { spotPositions, perpPositions };
|
|
1859
|
+
// }
|
|
1639
1860
|
async fetchPolicyConfig(glamState) {
|
|
1640
|
-
|
|
1641
|
-
if (glamState && glamState.id) {
|
|
1642
|
-
const [driftUserAddress] = this.getUser(glamState.id);
|
|
1643
|
-
const connection = this.base.provider.connection;
|
|
1644
|
-
const info = await connection.getAccountInfo(driftUserAddress, connection.commitment);
|
|
1645
|
-
if (info) {
|
|
1646
|
-
driftUserAccount = (0, sdk_1.decodeUser)(info.data);
|
|
1647
|
-
}
|
|
1648
|
-
}
|
|
1861
|
+
const driftUserAccount = glamState && glamState.id && (await this.fetchDriftUser(glamState.id));
|
|
1649
1862
|
let delegate = driftUserAccount?.delegate;
|
|
1650
|
-
if (delegate && delegate.equals(
|
|
1863
|
+
if (delegate && delegate.equals(web3_js_1.PublicKey.default)) {
|
|
1651
1864
|
delegate = undefined;
|
|
1652
1865
|
}
|
|
1653
1866
|
return {
|
|
@@ -1662,36 +1875,43 @@ class DriftClient {
|
|
|
1662
1875
|
driftMarketIndexesSpot: glamState?.driftMarketIndexesSpot || [],
|
|
1663
1876
|
};
|
|
1664
1877
|
}
|
|
1665
|
-
async composeRemainingAccounts(glamState, subAccountId,
|
|
1666
|
-
const
|
|
1878
|
+
async composeRemainingAccounts(glamState, subAccountId, marketType, marketIndex) {
|
|
1879
|
+
const driftUser = await this.fetchDriftUser(glamState, subAccountId);
|
|
1880
|
+
if (!driftUser) {
|
|
1881
|
+
throw new Error("Drift user not found");
|
|
1882
|
+
}
|
|
1883
|
+
const { spotPositions, perpPositions } = driftUser;
|
|
1667
1884
|
const spotMarketIndexes = spotPositions.map((p) => p.marketIndex);
|
|
1668
1885
|
const perpMarketIndexes = perpPositions.map((p) => p.marketIndex);
|
|
1669
1886
|
// Note that marketIndex is could be 0, need to explicitly check undefined
|
|
1670
|
-
if (this.marketTypeEquals(marketType,
|
|
1887
|
+
if (this.marketTypeEquals(marketType, driftTypes_1.MarketType.SPOT) &&
|
|
1671
1888
|
marketIndex !== undefined &&
|
|
1672
1889
|
!spotMarketIndexes.includes(marketIndex)) {
|
|
1673
1890
|
spotMarketIndexes.push(marketIndex);
|
|
1674
1891
|
}
|
|
1675
|
-
else if (this.marketTypeEquals(marketType,
|
|
1892
|
+
else if (this.marketTypeEquals(marketType, driftTypes_1.MarketType.PERP) &&
|
|
1676
1893
|
marketIndex !== undefined &&
|
|
1677
1894
|
!perpMarketIndexes.includes(marketIndex)) {
|
|
1678
1895
|
perpMarketIndexes.push(marketIndex);
|
|
1679
1896
|
}
|
|
1680
1897
|
// Also include USDC spot market if we're composing remaining accounts for spot or perp orders
|
|
1681
|
-
if (this.marketTypeEquals(marketType,
|
|
1682
|
-
this.marketTypeEquals(marketType,
|
|
1898
|
+
if (this.marketTypeEquals(marketType, driftTypes_1.MarketType.PERP) ||
|
|
1899
|
+
this.marketTypeEquals(marketType, driftTypes_1.MarketType.SPOT)) {
|
|
1683
1900
|
if (!spotMarketIndexes.includes(0)) {
|
|
1684
1901
|
spotMarketIndexes.push(0);
|
|
1685
1902
|
}
|
|
1686
1903
|
}
|
|
1687
|
-
const
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
const
|
|
1691
|
-
.map((
|
|
1692
|
-
.concat(
|
|
1693
|
-
|
|
1694
|
-
|
|
1904
|
+
const spotMarkets = await this.fetchAndParseSpotMarkets(spotMarketIndexes);
|
|
1905
|
+
const perpMarkets = await this.fetchAndParsePerpMarkets(perpMarketIndexes);
|
|
1906
|
+
console.log("[composeRemainingAccounts] perpMarkets:", perpMarkets);
|
|
1907
|
+
const oracles = spotMarkets
|
|
1908
|
+
.map((m) => m.oracle)
|
|
1909
|
+
.concat(perpMarkets.map((m) => m.oracle));
|
|
1910
|
+
const markets = spotMarkets
|
|
1911
|
+
.map((m) => m.marketPda)
|
|
1912
|
+
.concat(perpMarkets.map((m) => m.marketPda));
|
|
1913
|
+
console.log("[composeRemainingAccounts] markets:", markets.map((m) => m.toBase58()));
|
|
1914
|
+
console.log("[composeRemainingAccounts] oracles:", oracles.map((o) => o.toBase58()));
|
|
1695
1915
|
return oracles
|
|
1696
1916
|
.map((o) => ({
|
|
1697
1917
|
pubkey: new web3_js_1.PublicKey(o),
|
|
@@ -1705,15 +1925,14 @@ class DriftClient {
|
|
|
1705
1925
|
})));
|
|
1706
1926
|
}
|
|
1707
1927
|
async initializeUserStatsIx(glamState, glamSigner) {
|
|
1708
|
-
const
|
|
1709
|
-
const state = await (0, sdk_1.getDriftStateAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID);
|
|
1928
|
+
const { userStats } = this.getDriftUserPdas(glamState);
|
|
1710
1929
|
// @ts-ignore
|
|
1711
1930
|
return await this.base.program.methods
|
|
1712
1931
|
.driftInitializeUserStats()
|
|
1713
1932
|
.accounts({
|
|
1714
1933
|
glamState,
|
|
1715
1934
|
glamSigner,
|
|
1716
|
-
state,
|
|
1935
|
+
state: this.driftStatePda,
|
|
1717
1936
|
userStats,
|
|
1718
1937
|
})
|
|
1719
1938
|
.instruction();
|
|
@@ -1723,20 +1942,19 @@ class DriftClient {
|
|
|
1723
1942
|
.split("")
|
|
1724
1943
|
.map((char) => char.charCodeAt(0))
|
|
1725
1944
|
.concat(Array(24).fill(0));
|
|
1726
|
-
const
|
|
1727
|
-
const
|
|
1728
|
-
const remainingAccounts =
|
|
1729
|
-
pubkey:
|
|
1730
|
-
isWritable: true,
|
|
1731
|
-
|
|
1732
|
-
}));
|
|
1945
|
+
const { user, userStats } = this.getDriftUserPdas(glamState, subAccountId);
|
|
1946
|
+
const { user: referrer, userStats: referrerStats } = this.getGlamReferrerPdas();
|
|
1947
|
+
const remainingAccounts = [
|
|
1948
|
+
{ pubkey: referrer, isWritable: true, isSigner: false },
|
|
1949
|
+
{ pubkey: referrerStats, isWritable: true, isSigner: false },
|
|
1950
|
+
];
|
|
1733
1951
|
return await this.base.program.methods
|
|
1734
1952
|
.driftInitializeUser(subAccountId, name)
|
|
1735
1953
|
.accounts({
|
|
1736
1954
|
glamState,
|
|
1737
1955
|
user,
|
|
1738
1956
|
userStats,
|
|
1739
|
-
state,
|
|
1957
|
+
state: this.driftStatePda,
|
|
1740
1958
|
glamSigner,
|
|
1741
1959
|
})
|
|
1742
1960
|
.remainingAccounts(remainingAccounts)
|
|
@@ -1746,7 +1964,7 @@ class DriftClient {
|
|
|
1746
1964
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1747
1965
|
const tx = new web3_js_1.Transaction();
|
|
1748
1966
|
// Create userStats account if it doesn't exist
|
|
1749
|
-
const
|
|
1967
|
+
const { userStats } = this.getDriftUserPdas(glamState);
|
|
1750
1968
|
const userStatsInfo = await this.base.provider.connection.getAccountInfo(userStats);
|
|
1751
1969
|
if (!userStatsInfo) {
|
|
1752
1970
|
tx.add(await this.initializeUserStatsIx(glamState, glamSigner));
|
|
@@ -1758,7 +1976,7 @@ class DriftClient {
|
|
|
1758
1976
|
async updateUserCustomMarginRatioIx(glamState, maxLeverage, // 1=1x, 2=2x ... 50=50x leverage
|
|
1759
1977
|
subAccountId = 0, txOptions = {}) {
|
|
1760
1978
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1761
|
-
const
|
|
1979
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
1762
1980
|
// https://github.com/drift-labs/protocol-v2/blob/babed162b08b1fe34e49a81c5aa3e4ec0a88ecdf/programs/drift/src/math/constants.rs#L183-L184
|
|
1763
1981
|
const marginRatio = DRIFT_MARGIN_PRECISION / maxLeverage;
|
|
1764
1982
|
return await this.base.program.methods
|
|
@@ -1777,7 +1995,7 @@ class DriftClient {
|
|
|
1777
1995
|
}
|
|
1778
1996
|
async updateUserMarginTradingEnabledIx(glamState, marginTradingEnabled, subAccountId = 0, txOptions = {}) {
|
|
1779
1997
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1780
|
-
const
|
|
1998
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
1781
1999
|
return await this.base.program.methods
|
|
1782
2000
|
.driftUpdateUserMarginTradingEnabled(subAccountId, marginTradingEnabled)
|
|
1783
2001
|
.accounts({
|
|
@@ -1793,7 +2011,7 @@ class DriftClient {
|
|
|
1793
2011
|
}
|
|
1794
2012
|
async updateUserDelegateIx(glamState, delegate, subAccountId = 0, txOptions = {}) {
|
|
1795
2013
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1796
|
-
const
|
|
2014
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
1797
2015
|
return await this.base.program.methods
|
|
1798
2016
|
.driftUpdateUserDelegate(subAccountId, new web3_js_1.PublicKey(delegate))
|
|
1799
2017
|
.accounts({
|
|
@@ -1809,13 +2027,12 @@ class DriftClient {
|
|
|
1809
2027
|
}
|
|
1810
2028
|
async deleteUserTx(glamState, subAccountId = 0, txOptions = {}) {
|
|
1811
2029
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1812
|
-
const
|
|
1813
|
-
const state = await (0, sdk_1.getDriftStateAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID);
|
|
2030
|
+
const { user, userStats } = this.getDriftUserPdas(glamState, subAccountId);
|
|
1814
2031
|
const tx = await this.base.program.methods
|
|
1815
2032
|
.driftDeleteUser()
|
|
1816
2033
|
.accounts({
|
|
1817
2034
|
glamState,
|
|
1818
|
-
state,
|
|
2035
|
+
state: this.driftStatePda,
|
|
1819
2036
|
user,
|
|
1820
2037
|
userStats,
|
|
1821
2038
|
glamSigner,
|
|
@@ -1823,22 +2040,18 @@ class DriftClient {
|
|
|
1823
2040
|
.transaction();
|
|
1824
2041
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1825
2042
|
}
|
|
1826
|
-
async depositTx(glamState, amount, marketIndex = 1, subAccountId = 0,
|
|
2043
|
+
async depositTx(glamState, amount, marketIndex = 1, subAccountId = 0, txOptions = {}) {
|
|
1827
2044
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1828
|
-
const
|
|
1829
|
-
const
|
|
1830
|
-
|
|
1831
|
-
console.log("mint, oracle, marketPDA, vaultPDA", mint, oracle, marketPDA, vaultPDA);
|
|
2045
|
+
const { user, userStats } = this.getDriftUserPdas(glamState, subAccountId);
|
|
2046
|
+
const { mint, oracle, tokenProgram, marketPda, vault: driftVault, } = await this.fetchAndParseSpotMarket(marketIndex);
|
|
2047
|
+
console.log(`Spot market ${marketIndex} mint ${mint}, oracle: ${oracle}, marketPda: ${marketPda}, vault: ${driftVault}`);
|
|
1832
2048
|
const preInstructions = [];
|
|
1833
2049
|
const postInstructions = [];
|
|
1834
2050
|
// If drift user doesn't exist, prepend initializeUserStats and initializeUser instructions
|
|
1835
|
-
|
|
1836
|
-
await this.fetchGlamDriftUser(glamState, subAccountId);
|
|
1837
|
-
}
|
|
1838
|
-
catch (_) {
|
|
2051
|
+
if (!(await this.fetchDriftUser(glamState, subAccountId))) {
|
|
1839
2052
|
preInstructions.push(await this.initializeUserStatsIx(glamState, glamSigner), await this.initializeUserIx(glamState, glamSigner, subAccountId));
|
|
1840
2053
|
}
|
|
1841
|
-
if (mint
|
|
2054
|
+
if (mint.equals(constants_1.WSOL)) {
|
|
1842
2055
|
const wrapSolIxs = await this.base.maybeWrapSol(glamState, amount, glamSigner);
|
|
1843
2056
|
preInstructions.push(...wrapSolIxs);
|
|
1844
2057
|
// If we need to wrap SOL, it means the wSOL balance will be drained,
|
|
@@ -1855,84 +2068,94 @@ class DriftClient {
|
|
|
1855
2068
|
.instruction();
|
|
1856
2069
|
postInstructions.push(closeTokenAccountIx);
|
|
1857
2070
|
}
|
|
2071
|
+
const remainingAccounts = [
|
|
2072
|
+
{ pubkey: new web3_js_1.PublicKey(oracle), isSigner: false, isWritable: false },
|
|
2073
|
+
{ pubkey: new web3_js_1.PublicKey(marketPda), isSigner: false, isWritable: true },
|
|
2074
|
+
];
|
|
2075
|
+
if (tokenProgram.equals(spl_token_1.TOKEN_2022_PROGRAM_ID)) {
|
|
2076
|
+
remainingAccounts.push({
|
|
2077
|
+
pubkey: mint,
|
|
2078
|
+
isSigner: false,
|
|
2079
|
+
isWritable: false,
|
|
2080
|
+
});
|
|
2081
|
+
}
|
|
1858
2082
|
const tx = await this.base.program.methods
|
|
1859
2083
|
.driftDeposit(marketIndex, amount, false)
|
|
1860
2084
|
.accounts({
|
|
1861
2085
|
glamState,
|
|
1862
|
-
state,
|
|
2086
|
+
state: this.driftStatePda,
|
|
1863
2087
|
user,
|
|
1864
2088
|
userStats,
|
|
1865
|
-
spotMarketVault:
|
|
1866
|
-
userTokenAccount: this.base.getVaultAta(glamState,
|
|
2089
|
+
spotMarketVault: driftVault,
|
|
2090
|
+
userTokenAccount: this.base.getVaultAta(glamState, mint, tokenProgram),
|
|
1867
2091
|
glamSigner,
|
|
1868
|
-
tokenProgram
|
|
2092
|
+
tokenProgram,
|
|
1869
2093
|
})
|
|
1870
|
-
.remainingAccounts(
|
|
1871
|
-
{ pubkey: new web3_js_1.PublicKey(oracle), isSigner: false, isWritable: false },
|
|
1872
|
-
{ pubkey: new web3_js_1.PublicKey(marketPDA), isSigner: false, isWritable: true },
|
|
1873
|
-
])
|
|
2094
|
+
.remainingAccounts(remainingAccounts)
|
|
1874
2095
|
.preInstructions(preInstructions)
|
|
1875
2096
|
.postInstructions(postInstructions)
|
|
1876
2097
|
.transaction();
|
|
1877
2098
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1878
2099
|
}
|
|
1879
|
-
async withdrawTx(statePda, amount, marketIndex = 1, subAccountId = 0,
|
|
2100
|
+
async withdrawTx(statePda, amount, marketIndex = 1, subAccountId = 0, txOptions = {}) {
|
|
1880
2101
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1881
|
-
const
|
|
1882
|
-
const
|
|
1883
|
-
const
|
|
1884
|
-
const
|
|
1885
|
-
const
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
2102
|
+
const { user, userStats } = this.getDriftUserPdas(statePda, subAccountId);
|
|
2103
|
+
const { mint, tokenProgram, vault: driftVault, } = await this.fetchAndParseSpotMarket(marketIndex);
|
|
2104
|
+
const glamVault = this.base.getVaultPda(statePda);
|
|
2105
|
+
const glamVaultAta = this.base.getVaultAta(statePda, mint, tokenProgram);
|
|
2106
|
+
const remainingAccounts = await this.composeRemainingAccounts(statePda, subAccountId, driftTypes_1.MarketType.SPOT, marketIndex);
|
|
2107
|
+
if (tokenProgram.equals(spl_token_1.TOKEN_2022_PROGRAM_ID)) {
|
|
2108
|
+
remainingAccounts.push({
|
|
2109
|
+
pubkey: mint,
|
|
2110
|
+
isSigner: false,
|
|
2111
|
+
isWritable: false,
|
|
2112
|
+
});
|
|
2113
|
+
}
|
|
1890
2114
|
// Create vault ata in case it doesn't exist
|
|
1891
2115
|
const preInstructions = [
|
|
1892
|
-
(0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(glamSigner,
|
|
2116
|
+
(0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(glamSigner, glamVaultAta, glamVault, mint, tokenProgram),
|
|
1893
2117
|
];
|
|
1894
2118
|
const tx = await this.base.program.methods
|
|
1895
2119
|
.driftWithdraw(marketIndex, amount, false)
|
|
1896
2120
|
.accounts({
|
|
1897
2121
|
glamState: statePda,
|
|
1898
|
-
state,
|
|
2122
|
+
state: this.driftStatePda,
|
|
1899
2123
|
user,
|
|
1900
2124
|
userStats,
|
|
1901
2125
|
glamSigner,
|
|
1902
|
-
spotMarketVault:
|
|
1903
|
-
userTokenAccount:
|
|
1904
|
-
driftSigner:
|
|
1905
|
-
tokenProgram
|
|
2126
|
+
spotMarketVault: driftVault,
|
|
2127
|
+
userTokenAccount: glamVaultAta,
|
|
2128
|
+
driftSigner: DRIFT_SIGNER,
|
|
2129
|
+
tokenProgram,
|
|
1906
2130
|
})
|
|
1907
2131
|
.remainingAccounts(remainingAccounts)
|
|
1908
2132
|
.preInstructions(preInstructions)
|
|
1909
2133
|
.transaction();
|
|
1910
2134
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1911
2135
|
}
|
|
1912
|
-
async placeOrderTx(glamState, orderParams, subAccountId = 0,
|
|
2136
|
+
async placeOrderTx(glamState, orderParams, subAccountId = 0, txOptions = {}) {
|
|
1913
2137
|
const { marketIndex, marketType } = orderParams;
|
|
1914
|
-
const
|
|
1915
|
-
|
|
1916
|
-
isWritable: true,
|
|
1917
|
-
isSigner: false,
|
|
1918
|
-
|
|
2138
|
+
const { user: referrer, userStats: referrerStats } = this.getGlamReferrerPdas();
|
|
2139
|
+
const remainingAccounts = (await this.composeRemainingAccounts(glamState, subAccountId, marketType, marketIndex)).concat([
|
|
2140
|
+
{ pubkey: referrer, isWritable: true, isSigner: false },
|
|
2141
|
+
{ pubkey: referrerStats, isWritable: true, isSigner: false },
|
|
2142
|
+
]);
|
|
1919
2143
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1920
|
-
const
|
|
1921
|
-
|
|
2144
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
2145
|
+
// @ts-ignore
|
|
1922
2146
|
const tx = await this.base.program.methods
|
|
1923
|
-
// @ts-ignore
|
|
1924
2147
|
.driftPlaceOrders([orderParams])
|
|
1925
2148
|
.accounts({
|
|
1926
2149
|
glamState,
|
|
1927
2150
|
user,
|
|
1928
|
-
state,
|
|
2151
|
+
state: this.driftStatePda,
|
|
1929
2152
|
glamSigner,
|
|
1930
2153
|
})
|
|
1931
2154
|
.remainingAccounts(remainingAccounts)
|
|
1932
2155
|
.transaction();
|
|
1933
2156
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1934
2157
|
}
|
|
1935
|
-
async modifyOrderTx(statePda, modifyOrderParams, subAccountId = 0,
|
|
2158
|
+
async modifyOrderTx(statePda, modifyOrderParams, subAccountId = 0, txOptions = {}) {
|
|
1936
2159
|
// const { marketIndex, marketType } = orderParams;
|
|
1937
2160
|
// const remainingAccounts = await this.composeRemainingAccounts(
|
|
1938
2161
|
// statePda,
|
|
@@ -1942,8 +2165,7 @@ class DriftClient {
|
|
|
1942
2165
|
// marketIndex,
|
|
1943
2166
|
// );
|
|
1944
2167
|
const signer = txOptions.signer || this.base.getSigner();
|
|
1945
|
-
const
|
|
1946
|
-
const driftState = await (0, sdk_1.getDriftStateAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID);
|
|
2168
|
+
const { user } = this.getDriftUserPdas(statePda, subAccountId);
|
|
1947
2169
|
const tx = await this.base.program.methods
|
|
1948
2170
|
// @ts-ignore
|
|
1949
2171
|
.driftModifyOrder(1, modifyOrderParams)
|
|
@@ -1951,17 +2173,16 @@ class DriftClient {
|
|
|
1951
2173
|
glamState: statePda,
|
|
1952
2174
|
glamSigner: signer,
|
|
1953
2175
|
user,
|
|
1954
|
-
state:
|
|
2176
|
+
state: this.driftStatePda,
|
|
1955
2177
|
})
|
|
1956
2178
|
// .remainingAccounts(remainingAccounts)
|
|
1957
2179
|
.transaction();
|
|
1958
2180
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1959
2181
|
}
|
|
1960
|
-
async cancelOrdersTx(glamState, marketType, marketIndex, direction, subAccountId = 0,
|
|
2182
|
+
async cancelOrdersTx(glamState, marketType, marketIndex, direction, subAccountId = 0, txOptions = {}) {
|
|
1961
2183
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1962
|
-
const
|
|
1963
|
-
const
|
|
1964
|
-
const remainingAccounts = await this.composeRemainingAccounts(glamState, subAccountId, marketConfigs, marketType, marketIndex);
|
|
2184
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
2185
|
+
const remainingAccounts = await this.composeRemainingAccounts(glamState, subAccountId, marketType, marketIndex);
|
|
1965
2186
|
// @ts-ignore
|
|
1966
2187
|
const tx = await this.base.program.methods
|
|
1967
2188
|
.driftCancelOrders(marketType, marketIndex, direction)
|
|
@@ -1969,52 +2190,51 @@ class DriftClient {
|
|
|
1969
2190
|
glamState,
|
|
1970
2191
|
glamSigner,
|
|
1971
2192
|
user,
|
|
1972
|
-
state:
|
|
2193
|
+
state: this.driftStatePda,
|
|
1973
2194
|
})
|
|
1974
2195
|
.remainingAccounts(remainingAccounts)
|
|
1975
2196
|
.transaction();
|
|
1976
2197
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1977
2198
|
}
|
|
1978
|
-
async cancelOrdersByIdsTx(glamState, orderIds, subAccountId = 0,
|
|
2199
|
+
async cancelOrdersByIdsTx(glamState, orderIds, subAccountId = 0, txOptions = {}) {
|
|
1979
2200
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1980
|
-
const
|
|
1981
|
-
const
|
|
1982
|
-
|
|
2201
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
2202
|
+
const remainingAccounts = await this.composeRemainingAccounts(glamState, subAccountId);
|
|
2203
|
+
// @ts-ignore
|
|
1983
2204
|
const tx = await this.base.program.methods
|
|
1984
2205
|
.driftCancelOrdersByIds(orderIds)
|
|
1985
2206
|
.accounts({
|
|
1986
2207
|
glamState,
|
|
1987
2208
|
glamSigner,
|
|
1988
2209
|
user,
|
|
1989
|
-
state:
|
|
2210
|
+
state: this.driftStatePda,
|
|
1990
2211
|
})
|
|
1991
2212
|
.remainingAccounts(remainingAccounts)
|
|
1992
2213
|
.transaction();
|
|
1993
2214
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
1994
2215
|
}
|
|
1995
|
-
async settlePnlTx(glamState, marketIndex, subAccountId = 0,
|
|
2216
|
+
async settlePnlTx(glamState, marketIndex, subAccountId = 0, txOptions = {}) {
|
|
1996
2217
|
const glamSigner = txOptions.signer || this.base.getSigner();
|
|
1997
|
-
const
|
|
1998
|
-
const
|
|
1999
|
-
|
|
2218
|
+
const { user } = this.getDriftUserPdas(glamState, subAccountId);
|
|
2219
|
+
const { vault: driftVault } = await this.fetchAndParseSpotMarket(marketIndex);
|
|
2220
|
+
// @ts-ignore
|
|
2000
2221
|
const tx = await this.base.program.methods
|
|
2001
2222
|
.driftSettlePnl(marketIndex)
|
|
2002
2223
|
.accounts({
|
|
2003
2224
|
glamState,
|
|
2004
2225
|
glamSigner,
|
|
2005
2226
|
user,
|
|
2006
|
-
state:
|
|
2007
|
-
spotMarketVault:
|
|
2227
|
+
state: this.driftStatePda,
|
|
2228
|
+
spotMarketVault: driftVault,
|
|
2008
2229
|
})
|
|
2009
2230
|
.transaction();
|
|
2010
2231
|
return await this.base.intoVersionedTransaction(tx, txOptions);
|
|
2011
2232
|
}
|
|
2012
|
-
async priceDriftTx(glamState,
|
|
2233
|
+
async priceDriftTx(glamState, priceDenom, txOptions = {}) {
|
|
2013
2234
|
const signer = txOptions.signer || this.base.getSigner();
|
|
2014
2235
|
const glamVault = this.base.getVaultPda(glamState);
|
|
2015
|
-
const
|
|
2016
|
-
const
|
|
2017
|
-
const remainingAccounts = await this.composeRemainingAccounts(glamState, 0, marketConfigs);
|
|
2236
|
+
const { user, userStats } = this.getDriftUserPdas(glamState);
|
|
2237
|
+
const remainingAccounts = await this.composeRemainingAccounts(glamState, 0);
|
|
2018
2238
|
const tx = await this.base.program.methods
|
|
2019
2239
|
.priceDrift(priceDenom)
|
|
2020
2240
|
.accounts({
|
|
@@ -2024,7 +2244,7 @@ class DriftClient {
|
|
|
2024
2244
|
user,
|
|
2025
2245
|
userStats,
|
|
2026
2246
|
solOracle: assets_1.SOL_ORACLE,
|
|
2027
|
-
state:
|
|
2247
|
+
state: this.driftStatePda,
|
|
2028
2248
|
})
|
|
2029
2249
|
.remainingAccounts(remainingAccounts)
|
|
2030
2250
|
.transaction();
|
|
@@ -2036,15 +2256,767 @@ exports.DriftClient = DriftClient;
|
|
|
2036
2256
|
|
|
2037
2257
|
/***/ }),
|
|
2038
2258
|
/* 21 */
|
|
2039
|
-
/***/ ((
|
|
2259
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2260
|
+
|
|
2261
|
+
|
|
2262
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2263
|
+
exports.SwapReduceOnly = exports.PlaceAndTakeOrderSuccessCondition = exports.FuelOverflowStatus = exports.ReferrerStatus = exports.DefaultOrderParams = exports.ModifyOrderPolicy = exports.PostOnlyParams = exports.LiquidationType = exports.LPAction = exports.TradeSide = exports.SettlePnlMode = exports.StakeAction = exports.SpotFulfillmentConfigStatus = exports.SettlePnlExplanation = exports.DepositExplanation = exports.SpotFulfillmentStatus = exports.SpotFulfillmentType = exports.OrderTriggerCondition = exports.OrderActionExplanation = exports.OrderAction = exports.OrderStatus = exports.MarketType = exports.OrderType = exports.OracleSourceNum = exports.OracleSource = exports.DepositDirection = exports.PositionDirection = exports.SpotBalanceType = exports.SwapDirection = exports.AssetTier = exports.ContractTier = exports.ContractType = exports.MarginMode = exports.UserStatus = exports.InsuranceFundOperation = exports.SpotOperation = exports.PerpOperation = exports.MarketStatus = exports.ExchangeStatus = exports.ZERO = void 0;
|
|
2264
|
+
exports.isVariant = isVariant;
|
|
2265
|
+
exports.isOneOfVariant = isOneOfVariant;
|
|
2266
|
+
exports.getVariant = getVariant;
|
|
2267
|
+
const anchor_1 = __webpack_require__(2);
|
|
2268
|
+
exports.ZERO = new anchor_1.BN(0);
|
|
2269
|
+
// # Utility Types / Enums / Constants
|
|
2270
|
+
var ExchangeStatus;
|
|
2271
|
+
(function (ExchangeStatus) {
|
|
2272
|
+
ExchangeStatus[ExchangeStatus["ACTIVE"] = 0] = "ACTIVE";
|
|
2273
|
+
ExchangeStatus[ExchangeStatus["DEPOSIT_PAUSED"] = 1] = "DEPOSIT_PAUSED";
|
|
2274
|
+
ExchangeStatus[ExchangeStatus["WITHDRAW_PAUSED"] = 2] = "WITHDRAW_PAUSED";
|
|
2275
|
+
ExchangeStatus[ExchangeStatus["AMM_PAUSED"] = 4] = "AMM_PAUSED";
|
|
2276
|
+
ExchangeStatus[ExchangeStatus["FILL_PAUSED"] = 8] = "FILL_PAUSED";
|
|
2277
|
+
ExchangeStatus[ExchangeStatus["LIQ_PAUSED"] = 16] = "LIQ_PAUSED";
|
|
2278
|
+
ExchangeStatus[ExchangeStatus["FUNDING_PAUSED"] = 32] = "FUNDING_PAUSED";
|
|
2279
|
+
ExchangeStatus[ExchangeStatus["SETTLE_PNL_PAUSED"] = 64] = "SETTLE_PNL_PAUSED";
|
|
2280
|
+
ExchangeStatus[ExchangeStatus["AMM_IMMEDIATE_FILL_PAUSED"] = 128] = "AMM_IMMEDIATE_FILL_PAUSED";
|
|
2281
|
+
ExchangeStatus[ExchangeStatus["PAUSED"] = 255] = "PAUSED";
|
|
2282
|
+
})(ExchangeStatus || (exports.ExchangeStatus = ExchangeStatus = {}));
|
|
2283
|
+
class MarketStatus {
|
|
2284
|
+
}
|
|
2285
|
+
exports.MarketStatus = MarketStatus;
|
|
2286
|
+
MarketStatus.INITIALIZED = { initialized: {} };
|
|
2287
|
+
MarketStatus.ACTIVE = { active: {} };
|
|
2288
|
+
MarketStatus.FUNDING_PAUSED = { fundingPaused: {} };
|
|
2289
|
+
MarketStatus.AMM_PAUSED = { ammPaused: {} };
|
|
2290
|
+
MarketStatus.FILL_PAUSED = { fillPaused: {} };
|
|
2291
|
+
MarketStatus.WITHDRAW_PAUSED = { withdrawPaused: {} };
|
|
2292
|
+
MarketStatus.REDUCE_ONLY = { reduceOnly: {} };
|
|
2293
|
+
MarketStatus.SETTLEMENT = { settlement: {} };
|
|
2294
|
+
MarketStatus.DELISTED = { delisted: {} };
|
|
2295
|
+
var PerpOperation;
|
|
2296
|
+
(function (PerpOperation) {
|
|
2297
|
+
PerpOperation[PerpOperation["UPDATE_FUNDING"] = 1] = "UPDATE_FUNDING";
|
|
2298
|
+
PerpOperation[PerpOperation["AMM_FILL"] = 2] = "AMM_FILL";
|
|
2299
|
+
PerpOperation[PerpOperation["FILL"] = 4] = "FILL";
|
|
2300
|
+
PerpOperation[PerpOperation["SETTLE_PNL"] = 8] = "SETTLE_PNL";
|
|
2301
|
+
PerpOperation[PerpOperation["SETTLE_PNL_WITH_POSITION"] = 16] = "SETTLE_PNL_WITH_POSITION";
|
|
2302
|
+
PerpOperation[PerpOperation["LIQUIDATION"] = 32] = "LIQUIDATION";
|
|
2303
|
+
})(PerpOperation || (exports.PerpOperation = PerpOperation = {}));
|
|
2304
|
+
var SpotOperation;
|
|
2305
|
+
(function (SpotOperation) {
|
|
2306
|
+
SpotOperation[SpotOperation["UPDATE_CUMULATIVE_INTEREST"] = 1] = "UPDATE_CUMULATIVE_INTEREST";
|
|
2307
|
+
SpotOperation[SpotOperation["FILL"] = 2] = "FILL";
|
|
2308
|
+
SpotOperation[SpotOperation["DEPOSIT"] = 4] = "DEPOSIT";
|
|
2309
|
+
SpotOperation[SpotOperation["WITHDRAW"] = 8] = "WITHDRAW";
|
|
2310
|
+
SpotOperation[SpotOperation["LIQUIDATION"] = 16] = "LIQUIDATION";
|
|
2311
|
+
})(SpotOperation || (exports.SpotOperation = SpotOperation = {}));
|
|
2312
|
+
var InsuranceFundOperation;
|
|
2313
|
+
(function (InsuranceFundOperation) {
|
|
2314
|
+
InsuranceFundOperation[InsuranceFundOperation["INIT"] = 1] = "INIT";
|
|
2315
|
+
InsuranceFundOperation[InsuranceFundOperation["ADD"] = 2] = "ADD";
|
|
2316
|
+
InsuranceFundOperation[InsuranceFundOperation["REQUEST_REMOVE"] = 4] = "REQUEST_REMOVE";
|
|
2317
|
+
InsuranceFundOperation[InsuranceFundOperation["REMOVE"] = 8] = "REMOVE";
|
|
2318
|
+
})(InsuranceFundOperation || (exports.InsuranceFundOperation = InsuranceFundOperation = {}));
|
|
2319
|
+
var UserStatus;
|
|
2320
|
+
(function (UserStatus) {
|
|
2321
|
+
UserStatus[UserStatus["BEING_LIQUIDATED"] = 1] = "BEING_LIQUIDATED";
|
|
2322
|
+
UserStatus[UserStatus["BANKRUPT"] = 2] = "BANKRUPT";
|
|
2323
|
+
UserStatus[UserStatus["REDUCE_ONLY"] = 4] = "REDUCE_ONLY";
|
|
2324
|
+
UserStatus[UserStatus["ADVANCED_LP"] = 8] = "ADVANCED_LP";
|
|
2325
|
+
UserStatus[UserStatus["PROTECTED_MAKER"] = 16] = "PROTECTED_MAKER";
|
|
2326
|
+
})(UserStatus || (exports.UserStatus = UserStatus = {}));
|
|
2327
|
+
class MarginMode {
|
|
2328
|
+
}
|
|
2329
|
+
exports.MarginMode = MarginMode;
|
|
2330
|
+
MarginMode.DEFAULT = { default: {} };
|
|
2331
|
+
MarginMode.HIGH_LEVERAGE = { highLeverage: {} };
|
|
2332
|
+
class ContractType {
|
|
2333
|
+
}
|
|
2334
|
+
exports.ContractType = ContractType;
|
|
2335
|
+
ContractType.PERPETUAL = { perpetual: {} };
|
|
2336
|
+
ContractType.FUTURE = { future: {} };
|
|
2337
|
+
ContractType.PREDICTION = { prediction: {} };
|
|
2338
|
+
class ContractTier {
|
|
2339
|
+
}
|
|
2340
|
+
exports.ContractTier = ContractTier;
|
|
2341
|
+
ContractTier.A = { a: {} };
|
|
2342
|
+
ContractTier.B = { b: {} };
|
|
2343
|
+
ContractTier.C = { c: {} };
|
|
2344
|
+
ContractTier.SPECULATIVE = { speculative: {} };
|
|
2345
|
+
ContractTier.HIGHLY_SPECULATIVE = { highlySpeculative: {} };
|
|
2346
|
+
ContractTier.ISOLATED = { isolated: {} };
|
|
2347
|
+
class AssetTier {
|
|
2348
|
+
}
|
|
2349
|
+
exports.AssetTier = AssetTier;
|
|
2350
|
+
AssetTier.COLLATERAL = { collateral: {} };
|
|
2351
|
+
AssetTier.PROTECTED = { protected: {} };
|
|
2352
|
+
AssetTier.CROSS = { cross: {} };
|
|
2353
|
+
AssetTier.ISOLATED = { isolated: {} };
|
|
2354
|
+
AssetTier.UNLISTED = { unlisted: {} };
|
|
2355
|
+
class SwapDirection {
|
|
2356
|
+
}
|
|
2357
|
+
exports.SwapDirection = SwapDirection;
|
|
2358
|
+
SwapDirection.ADD = { add: {} };
|
|
2359
|
+
SwapDirection.REMOVE = { remove: {} };
|
|
2360
|
+
class SpotBalanceType {
|
|
2361
|
+
}
|
|
2362
|
+
exports.SpotBalanceType = SpotBalanceType;
|
|
2363
|
+
SpotBalanceType.DEPOSIT = { deposit: {} };
|
|
2364
|
+
SpotBalanceType.BORROW = { borrow: {} };
|
|
2365
|
+
class PositionDirection {
|
|
2366
|
+
}
|
|
2367
|
+
exports.PositionDirection = PositionDirection;
|
|
2368
|
+
PositionDirection.LONG = { long: {} };
|
|
2369
|
+
PositionDirection.SHORT = { short: {} };
|
|
2370
|
+
class DepositDirection {
|
|
2371
|
+
}
|
|
2372
|
+
exports.DepositDirection = DepositDirection;
|
|
2373
|
+
DepositDirection.DEPOSIT = { deposit: {} };
|
|
2374
|
+
DepositDirection.WITHDRAW = { withdraw: {} };
|
|
2375
|
+
class OracleSource {
|
|
2376
|
+
static get(n) {
|
|
2377
|
+
const name = Object.entries(OracleSourceNum).find(([, v]) => v === n)?.[0];
|
|
2378
|
+
const source = Object.entries(OracleSource).find(([key, _]) => key.toLocaleLowerCase() === name?.toLocaleLowerCase())?.[1];
|
|
2379
|
+
if (!source) {
|
|
2380
|
+
throw new Error(`Invalid oracle source enum value: ${n}`);
|
|
2381
|
+
}
|
|
2382
|
+
return source;
|
|
2383
|
+
}
|
|
2384
|
+
}
|
|
2385
|
+
exports.OracleSource = OracleSource;
|
|
2386
|
+
OracleSource.PYTH = { pyth: {} };
|
|
2387
|
+
OracleSource.PYTH_1K = { pyth1K: {} };
|
|
2388
|
+
OracleSource.PYTH_1M = { pyth1M: {} };
|
|
2389
|
+
OracleSource.PYTH_PULL = { pythPull: {} };
|
|
2390
|
+
OracleSource.PYTH_1K_PULL = { pyth1KPull: {} };
|
|
2391
|
+
OracleSource.PYTH_1M_PULL = { pyth1MPull: {} };
|
|
2392
|
+
OracleSource.SWITCHBOARD = { switchboard: {} };
|
|
2393
|
+
OracleSource.QUOTE_ASSET = { quoteAsset: {} };
|
|
2394
|
+
OracleSource.PYTH_STABLE_COIN = { pythStableCoin: {} };
|
|
2395
|
+
OracleSource.PYTH_STABLE_COIN_PULL = { pythStableCoinPull: {} };
|
|
2396
|
+
OracleSource.Prelaunch = { prelaunch: {} };
|
|
2397
|
+
OracleSource.SWITCHBOARD_ON_DEMAND = { switchboardOnDemand: {} };
|
|
2398
|
+
OracleSource.PYTH_LAZER = { pythLazer: {} };
|
|
2399
|
+
OracleSource.PYTH_LAZER_1K = { pythLazer1K: {} };
|
|
2400
|
+
OracleSource.PYTH_LAZER_1M = { pythLazer1M: {} };
|
|
2401
|
+
OracleSource.PYTH_LAZER_STABLE_COIN = { pythLazerStableCoin: {} };
|
|
2402
|
+
class OracleSourceNum {
|
|
2403
|
+
}
|
|
2404
|
+
exports.OracleSourceNum = OracleSourceNum;
|
|
2405
|
+
OracleSourceNum.PYTH = 0;
|
|
2406
|
+
OracleSourceNum.PYTH_1K = 1;
|
|
2407
|
+
OracleSourceNum.PYTH_1M = 2;
|
|
2408
|
+
OracleSourceNum.PYTH_PULL = 3;
|
|
2409
|
+
OracleSourceNum.PYTH_1K_PULL = 4;
|
|
2410
|
+
OracleSourceNum.PYTH_1M_PULL = 5;
|
|
2411
|
+
OracleSourceNum.SWITCHBOARD = 6;
|
|
2412
|
+
OracleSourceNum.QUOTE_ASSET = 7;
|
|
2413
|
+
OracleSourceNum.PYTH_STABLE_COIN = 8;
|
|
2414
|
+
OracleSourceNum.PYTH_STABLE_COIN_PULL = 9;
|
|
2415
|
+
OracleSourceNum.PRELAUNCH = 10;
|
|
2416
|
+
OracleSourceNum.SWITCHBOARD_ON_DEMAND = 11;
|
|
2417
|
+
OracleSourceNum.PYTH_LAZER = 12;
|
|
2418
|
+
OracleSourceNum.PYTH_LAZER_1K = 13;
|
|
2419
|
+
OracleSourceNum.PYTH_LAZER_1M = 14;
|
|
2420
|
+
OracleSourceNum.PYTH_LAZER_STABLE_COIN = 15;
|
|
2421
|
+
class OrderType {
|
|
2422
|
+
}
|
|
2423
|
+
exports.OrderType = OrderType;
|
|
2424
|
+
OrderType.LIMIT = { limit: {} };
|
|
2425
|
+
OrderType.TRIGGER_MARKET = { triggerMarket: {} };
|
|
2426
|
+
OrderType.TRIGGER_LIMIT = { triggerLimit: {} };
|
|
2427
|
+
OrderType.MARKET = { market: {} };
|
|
2428
|
+
OrderType.ORACLE = { oracle: {} };
|
|
2429
|
+
class MarketType {
|
|
2430
|
+
}
|
|
2431
|
+
exports.MarketType = MarketType;
|
|
2432
|
+
MarketType.SPOT = { spot: {} };
|
|
2433
|
+
MarketType.PERP = { perp: {} };
|
|
2434
|
+
class OrderStatus {
|
|
2435
|
+
}
|
|
2436
|
+
exports.OrderStatus = OrderStatus;
|
|
2437
|
+
OrderStatus.INIT = { init: {} };
|
|
2438
|
+
OrderStatus.OPEN = { open: {} };
|
|
2439
|
+
OrderStatus.FILLED = { filled: {} };
|
|
2440
|
+
OrderStatus.CANCELED = { canceled: {} };
|
|
2441
|
+
class OrderAction {
|
|
2442
|
+
}
|
|
2443
|
+
exports.OrderAction = OrderAction;
|
|
2444
|
+
OrderAction.PLACE = { place: {} };
|
|
2445
|
+
OrderAction.CANCEL = { cancel: {} };
|
|
2446
|
+
OrderAction.EXPIRE = { expire: {} };
|
|
2447
|
+
OrderAction.FILL = { fill: {} };
|
|
2448
|
+
OrderAction.TRIGGER = { trigger: {} };
|
|
2449
|
+
class OrderActionExplanation {
|
|
2450
|
+
}
|
|
2451
|
+
exports.OrderActionExplanation = OrderActionExplanation;
|
|
2452
|
+
OrderActionExplanation.NONE = { none: {} };
|
|
2453
|
+
OrderActionExplanation.INSUFFICIENT_FREE_COLLATERAL = {
|
|
2454
|
+
insufficientFreeCollateral: {},
|
|
2455
|
+
};
|
|
2456
|
+
OrderActionExplanation.ORACLE_PRICE_BREACHED_LIMIT_PRICE = {
|
|
2457
|
+
oraclePriceBreachedLimitPrice: {},
|
|
2458
|
+
};
|
|
2459
|
+
OrderActionExplanation.MARKET_ORDER_FILLED_TO_LIMIT_PRICE = {
|
|
2460
|
+
marketOrderFilledToLimitPrice: {},
|
|
2461
|
+
};
|
|
2462
|
+
OrderActionExplanation.ORDER_EXPIRED = {
|
|
2463
|
+
orderExpired: {},
|
|
2464
|
+
};
|
|
2465
|
+
OrderActionExplanation.LIQUIDATION = {
|
|
2466
|
+
liquidation: {},
|
|
2467
|
+
};
|
|
2468
|
+
OrderActionExplanation.ORDER_FILLED_WITH_AMM = {
|
|
2469
|
+
orderFilledWithAmm: {},
|
|
2470
|
+
};
|
|
2471
|
+
OrderActionExplanation.ORDER_FILLED_WITH_AMM_JIT = {
|
|
2472
|
+
orderFilledWithAmmJit: {},
|
|
2473
|
+
};
|
|
2474
|
+
OrderActionExplanation.ORDER_FILLED_WITH_AMM_JIT_LP_SPLIT = {
|
|
2475
|
+
orderFilledWithAmmJitLpSplit: {},
|
|
2476
|
+
};
|
|
2477
|
+
OrderActionExplanation.ORDER_FILLED_WITH_LP_JIT = {
|
|
2478
|
+
orderFilledWithLpJit: {},
|
|
2479
|
+
};
|
|
2480
|
+
OrderActionExplanation.ORDER_FILLED_WITH_MATCH = {
|
|
2481
|
+
orderFilledWithMatch: {},
|
|
2482
|
+
};
|
|
2483
|
+
OrderActionExplanation.ORDER_FILLED_WITH_MATCH_JIT = {
|
|
2484
|
+
orderFilledWithMatchJit: {},
|
|
2485
|
+
};
|
|
2486
|
+
OrderActionExplanation.MARKET_EXPIRED = {
|
|
2487
|
+
marketExpired: {},
|
|
2488
|
+
};
|
|
2489
|
+
OrderActionExplanation.RISK_INCREASING_ORDER = {
|
|
2490
|
+
riskingIncreasingOrder: {},
|
|
2491
|
+
};
|
|
2492
|
+
OrderActionExplanation.ORDER_FILLED_WITH_SERUM = {
|
|
2493
|
+
orderFillWithSerum: {},
|
|
2494
|
+
};
|
|
2495
|
+
OrderActionExplanation.ORDER_FILLED_WITH_OPENBOOK_V2 = {
|
|
2496
|
+
orderFilledWithOpenbookV2: {},
|
|
2497
|
+
};
|
|
2498
|
+
OrderActionExplanation.ORDER_FILLED_WITH_PHOENIX = {
|
|
2499
|
+
orderFillWithPhoenix: {},
|
|
2500
|
+
};
|
|
2501
|
+
OrderActionExplanation.REDUCE_ONLY_ORDER_INCREASED_POSITION = {
|
|
2502
|
+
reduceOnlyOrderIncreasedPosition: {},
|
|
2503
|
+
};
|
|
2504
|
+
OrderActionExplanation.DERISK_LP = {
|
|
2505
|
+
deriskLp: {},
|
|
2506
|
+
};
|
|
2507
|
+
OrderActionExplanation.TRANSFER_PERP_POSITION = {
|
|
2508
|
+
transferPerpPosition: {},
|
|
2509
|
+
};
|
|
2510
|
+
class OrderTriggerCondition {
|
|
2511
|
+
}
|
|
2512
|
+
exports.OrderTriggerCondition = OrderTriggerCondition;
|
|
2513
|
+
OrderTriggerCondition.ABOVE = { above: {} };
|
|
2514
|
+
OrderTriggerCondition.BELOW = { below: {} };
|
|
2515
|
+
OrderTriggerCondition.TRIGGERED_ABOVE = { triggeredAbove: {} }; // above condition has been triggered
|
|
2516
|
+
OrderTriggerCondition.TRIGGERED_BELOW = { triggeredBelow: {} }; // below condition has been triggered
|
|
2517
|
+
class SpotFulfillmentType {
|
|
2518
|
+
}
|
|
2519
|
+
exports.SpotFulfillmentType = SpotFulfillmentType;
|
|
2520
|
+
SpotFulfillmentType.EXTERNAL = { external: {} };
|
|
2521
|
+
SpotFulfillmentType.MATCH = { match: {} };
|
|
2522
|
+
class SpotFulfillmentStatus {
|
|
2523
|
+
}
|
|
2524
|
+
exports.SpotFulfillmentStatus = SpotFulfillmentStatus;
|
|
2525
|
+
SpotFulfillmentStatus.ENABLED = { enabled: {} };
|
|
2526
|
+
SpotFulfillmentStatus.DISABLED = { disabled: {} };
|
|
2527
|
+
class DepositExplanation {
|
|
2528
|
+
}
|
|
2529
|
+
exports.DepositExplanation = DepositExplanation;
|
|
2530
|
+
DepositExplanation.NONE = { none: {} };
|
|
2531
|
+
DepositExplanation.TRANSFER = { transfer: {} };
|
|
2532
|
+
DepositExplanation.BORROW = { borrow: {} };
|
|
2533
|
+
DepositExplanation.REPAY_BORROW = { repayBorrow: {} };
|
|
2534
|
+
class SettlePnlExplanation {
|
|
2535
|
+
}
|
|
2536
|
+
exports.SettlePnlExplanation = SettlePnlExplanation;
|
|
2537
|
+
SettlePnlExplanation.NONE = { none: {} };
|
|
2538
|
+
SettlePnlExplanation.EXPIRED_POSITION = { expiredPosition: {} };
|
|
2539
|
+
class SpotFulfillmentConfigStatus {
|
|
2540
|
+
}
|
|
2541
|
+
exports.SpotFulfillmentConfigStatus = SpotFulfillmentConfigStatus;
|
|
2542
|
+
SpotFulfillmentConfigStatus.ENABLED = { enabled: {} };
|
|
2543
|
+
SpotFulfillmentConfigStatus.DISABLED = { disabled: {} };
|
|
2544
|
+
class StakeAction {
|
|
2545
|
+
}
|
|
2546
|
+
exports.StakeAction = StakeAction;
|
|
2547
|
+
StakeAction.STAKE = { stake: {} };
|
|
2548
|
+
StakeAction.UNSTAKE_REQUEST = { unstakeRequest: {} };
|
|
2549
|
+
StakeAction.UNSTAKE_CANCEL_REQUEST = { unstakeCancelRequest: {} };
|
|
2550
|
+
StakeAction.UNSTAKE = { unstake: {} };
|
|
2551
|
+
StakeAction.UNSTAKE_TRANSFER = { unstakeTransfer: {} };
|
|
2552
|
+
StakeAction.STAKE_TRANSFER = { stakeTransfer: {} };
|
|
2553
|
+
class SettlePnlMode {
|
|
2554
|
+
}
|
|
2555
|
+
exports.SettlePnlMode = SettlePnlMode;
|
|
2556
|
+
SettlePnlMode.TRY_SETTLE = { trySettle: {} };
|
|
2557
|
+
SettlePnlMode.MUST_SETTLE = { mustSettle: {} };
|
|
2558
|
+
function isVariant(object, type) {
|
|
2559
|
+
return object.hasOwnProperty(type);
|
|
2560
|
+
}
|
|
2561
|
+
function isOneOfVariant(object, types) {
|
|
2562
|
+
return types.reduce((result, type) => {
|
|
2563
|
+
return result || object.hasOwnProperty(type);
|
|
2564
|
+
}, false);
|
|
2565
|
+
}
|
|
2566
|
+
function getVariant(object) {
|
|
2567
|
+
return Object.keys(object)[0];
|
|
2568
|
+
}
|
|
2569
|
+
var TradeSide;
|
|
2570
|
+
(function (TradeSide) {
|
|
2571
|
+
TradeSide[TradeSide["None"] = 0] = "None";
|
|
2572
|
+
TradeSide[TradeSide["Buy"] = 1] = "Buy";
|
|
2573
|
+
TradeSide[TradeSide["Sell"] = 2] = "Sell";
|
|
2574
|
+
})(TradeSide || (exports.TradeSide = TradeSide = {}));
|
|
2575
|
+
class LPAction {
|
|
2576
|
+
}
|
|
2577
|
+
exports.LPAction = LPAction;
|
|
2578
|
+
LPAction.ADD_LIQUIDITY = { addLiquidity: {} };
|
|
2579
|
+
LPAction.REMOVE_LIQUIDITY = { removeLiquidity: {} };
|
|
2580
|
+
LPAction.SETTLE_LIQUIDITY = { settleLiquidity: {} };
|
|
2581
|
+
LPAction.REMOVE_LIQUIDITY_DERISK = { removeLiquidityDerisk: {} };
|
|
2582
|
+
class LiquidationType {
|
|
2583
|
+
}
|
|
2584
|
+
exports.LiquidationType = LiquidationType;
|
|
2585
|
+
LiquidationType.LIQUIDATE_PERP = { liquidatePerp: {} };
|
|
2586
|
+
LiquidationType.LIQUIDATE_BORROW_FOR_PERP_PNL = {
|
|
2587
|
+
liquidateBorrowForPerpPnl: {},
|
|
2588
|
+
};
|
|
2589
|
+
LiquidationType.LIQUIDATE_PERP_PNL_FOR_DEPOSIT = {
|
|
2590
|
+
liquidatePerpPnlForDeposit: {},
|
|
2591
|
+
};
|
|
2592
|
+
LiquidationType.PERP_BANKRUPTCY = {
|
|
2593
|
+
perpBankruptcy: {},
|
|
2594
|
+
};
|
|
2595
|
+
LiquidationType.SPOT_BANKRUPTCY = {
|
|
2596
|
+
spotBankruptcy: {},
|
|
2597
|
+
};
|
|
2598
|
+
LiquidationType.LIQUIDATE_SPOT = {
|
|
2599
|
+
liquidateSpot: {},
|
|
2600
|
+
};
|
|
2601
|
+
class PostOnlyParams {
|
|
2602
|
+
}
|
|
2603
|
+
exports.PostOnlyParams = PostOnlyParams;
|
|
2604
|
+
PostOnlyParams.NONE = { none: {} };
|
|
2605
|
+
PostOnlyParams.MUST_POST_ONLY = { mustPostOnly: {} }; // Tx fails if order can't be post only
|
|
2606
|
+
PostOnlyParams.TRY_POST_ONLY = { tryPostOnly: {} }; // Tx succeeds and order not placed if can't be post only
|
|
2607
|
+
PostOnlyParams.SLIDE = { slide: {} }; // Modify price to be post only if can't be post only
|
|
2608
|
+
var ModifyOrderPolicy;
|
|
2609
|
+
(function (ModifyOrderPolicy) {
|
|
2610
|
+
ModifyOrderPolicy[ModifyOrderPolicy["MustModify"] = 1] = "MustModify";
|
|
2611
|
+
ModifyOrderPolicy[ModifyOrderPolicy["ExcludePreviousFill"] = 2] = "ExcludePreviousFill";
|
|
2612
|
+
})(ModifyOrderPolicy || (exports.ModifyOrderPolicy = ModifyOrderPolicy = {}));
|
|
2613
|
+
exports.DefaultOrderParams = {
|
|
2614
|
+
orderType: OrderType.MARKET,
|
|
2615
|
+
marketType: MarketType.PERP,
|
|
2616
|
+
userOrderId: 0,
|
|
2617
|
+
direction: PositionDirection.LONG,
|
|
2618
|
+
baseAssetAmount: exports.ZERO,
|
|
2619
|
+
price: exports.ZERO,
|
|
2620
|
+
marketIndex: 0,
|
|
2621
|
+
reduceOnly: false,
|
|
2622
|
+
postOnly: PostOnlyParams.NONE,
|
|
2623
|
+
immediateOrCancel: false,
|
|
2624
|
+
triggerPrice: null,
|
|
2625
|
+
triggerCondition: OrderTriggerCondition.ABOVE,
|
|
2626
|
+
oraclePriceOffset: null,
|
|
2627
|
+
auctionDuration: null,
|
|
2628
|
+
maxTs: null,
|
|
2629
|
+
auctionStartPrice: null,
|
|
2630
|
+
auctionEndPrice: null,
|
|
2631
|
+
};
|
|
2632
|
+
var ReferrerStatus;
|
|
2633
|
+
(function (ReferrerStatus) {
|
|
2634
|
+
ReferrerStatus[ReferrerStatus["IsReferrer"] = 1] = "IsReferrer";
|
|
2635
|
+
ReferrerStatus[ReferrerStatus["IsReferred"] = 2] = "IsReferred";
|
|
2636
|
+
})(ReferrerStatus || (exports.ReferrerStatus = ReferrerStatus = {}));
|
|
2637
|
+
var FuelOverflowStatus;
|
|
2638
|
+
(function (FuelOverflowStatus) {
|
|
2639
|
+
FuelOverflowStatus[FuelOverflowStatus["Exists"] = 1] = "Exists";
|
|
2640
|
+
})(FuelOverflowStatus || (exports.FuelOverflowStatus = FuelOverflowStatus = {}));
|
|
2641
|
+
var PlaceAndTakeOrderSuccessCondition;
|
|
2642
|
+
(function (PlaceAndTakeOrderSuccessCondition) {
|
|
2643
|
+
PlaceAndTakeOrderSuccessCondition[PlaceAndTakeOrderSuccessCondition["PartialFill"] = 1] = "PartialFill";
|
|
2644
|
+
PlaceAndTakeOrderSuccessCondition[PlaceAndTakeOrderSuccessCondition["FullFill"] = 2] = "FullFill";
|
|
2645
|
+
})(PlaceAndTakeOrderSuccessCondition || (exports.PlaceAndTakeOrderSuccessCondition = PlaceAndTakeOrderSuccessCondition = {}));
|
|
2646
|
+
class SwapReduceOnly {
|
|
2647
|
+
}
|
|
2648
|
+
exports.SwapReduceOnly = SwapReduceOnly;
|
|
2649
|
+
SwapReduceOnly.In = { in: {} };
|
|
2650
|
+
SwapReduceOnly.Out = { out: {} };
|
|
2040
2651
|
|
|
2041
|
-
module.exports = require("@drift-labs/sdk");
|
|
2042
2652
|
|
|
2043
2653
|
/***/ }),
|
|
2044
2654
|
/* 22 */
|
|
2045
2655
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2046
2656
|
|
|
2047
2657
|
|
|
2658
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2659
|
+
exports.decodeUser = decodeUser;
|
|
2660
|
+
const driftTypes_1 = __webpack_require__(21);
|
|
2661
|
+
const web3_js_1 = __webpack_require__(5);
|
|
2662
|
+
const anchor_1 = __webpack_require__(2);
|
|
2663
|
+
const driftTypes_2 = __webpack_require__(21);
|
|
2664
|
+
function readUnsignedBigInt64LE(buffer, offset) {
|
|
2665
|
+
return new anchor_1.BN(buffer.subarray(offset, offset + 8), 10, "le");
|
|
2666
|
+
}
|
|
2667
|
+
function readSignedBigInt64LE(buffer, offset) {
|
|
2668
|
+
const unsignedValue = new anchor_1.BN(buffer.subarray(offset, offset + 8), 10, "le");
|
|
2669
|
+
if (unsignedValue.testn(63)) {
|
|
2670
|
+
const inverted = unsignedValue.notn(64).addn(1);
|
|
2671
|
+
return inverted.neg();
|
|
2672
|
+
}
|
|
2673
|
+
else {
|
|
2674
|
+
return unsignedValue;
|
|
2675
|
+
}
|
|
2676
|
+
}
|
|
2677
|
+
function decodeUser(buffer) {
|
|
2678
|
+
let offset = 8;
|
|
2679
|
+
const authority = new web3_js_1.PublicKey(buffer.slice(offset, offset + 32));
|
|
2680
|
+
offset += 32;
|
|
2681
|
+
const delegate = new web3_js_1.PublicKey(buffer.slice(offset, offset + 32));
|
|
2682
|
+
offset += 32;
|
|
2683
|
+
const name = [];
|
|
2684
|
+
for (let i = 0; i < 32; i++) {
|
|
2685
|
+
name.push(buffer.readUint8(offset + i));
|
|
2686
|
+
}
|
|
2687
|
+
offset += 32;
|
|
2688
|
+
const spotPositions = [];
|
|
2689
|
+
for (let i = 0; i < 8; i++) {
|
|
2690
|
+
const scaledBalance = readUnsignedBigInt64LE(buffer, offset);
|
|
2691
|
+
const openOrders = buffer.readUInt8(offset + 35);
|
|
2692
|
+
if (scaledBalance.eq(driftTypes_2.ZERO) && openOrders === 0) {
|
|
2693
|
+
offset += 40;
|
|
2694
|
+
continue;
|
|
2695
|
+
}
|
|
2696
|
+
offset += 8;
|
|
2697
|
+
const openBids = readSignedBigInt64LE(buffer, offset);
|
|
2698
|
+
offset += 8;
|
|
2699
|
+
const openAsks = readSignedBigInt64LE(buffer, offset);
|
|
2700
|
+
offset += 8;
|
|
2701
|
+
const cumulativeDeposits = readSignedBigInt64LE(buffer, offset);
|
|
2702
|
+
offset += 8;
|
|
2703
|
+
const marketIndex = buffer.readUInt16LE(offset);
|
|
2704
|
+
offset += 2;
|
|
2705
|
+
const balanceTypeNum = buffer.readUInt8(offset);
|
|
2706
|
+
let balanceType;
|
|
2707
|
+
if (balanceTypeNum === 0) {
|
|
2708
|
+
balanceType = driftTypes_1.SpotBalanceType.DEPOSIT;
|
|
2709
|
+
}
|
|
2710
|
+
else {
|
|
2711
|
+
balanceType = driftTypes_1.SpotBalanceType.BORROW;
|
|
2712
|
+
}
|
|
2713
|
+
offset += 6;
|
|
2714
|
+
spotPositions.push({
|
|
2715
|
+
scaledBalance,
|
|
2716
|
+
openBids,
|
|
2717
|
+
openAsks,
|
|
2718
|
+
cumulativeDeposits,
|
|
2719
|
+
marketIndex,
|
|
2720
|
+
balanceType,
|
|
2721
|
+
openOrders,
|
|
2722
|
+
});
|
|
2723
|
+
}
|
|
2724
|
+
const perpPositions = [];
|
|
2725
|
+
for (let i = 0; i < 8; i++) {
|
|
2726
|
+
const baseAssetAmount = readSignedBigInt64LE(buffer, offset + 8);
|
|
2727
|
+
const quoteAssetAmount = readSignedBigInt64LE(buffer, offset + 16);
|
|
2728
|
+
const lpShares = readUnsignedBigInt64LE(buffer, offset + 64);
|
|
2729
|
+
const openOrders = buffer.readUInt8(offset + 94);
|
|
2730
|
+
if (baseAssetAmount.eq(driftTypes_2.ZERO) &&
|
|
2731
|
+
openOrders === 0 &&
|
|
2732
|
+
quoteAssetAmount.eq(driftTypes_2.ZERO) &&
|
|
2733
|
+
lpShares.eq(driftTypes_2.ZERO)) {
|
|
2734
|
+
offset += 96;
|
|
2735
|
+
continue;
|
|
2736
|
+
}
|
|
2737
|
+
const lastCumulativeFundingRate = readSignedBigInt64LE(buffer, offset);
|
|
2738
|
+
offset += 24;
|
|
2739
|
+
const quoteBreakEvenAmount = readSignedBigInt64LE(buffer, offset);
|
|
2740
|
+
offset += 8;
|
|
2741
|
+
const quoteEntryAmount = readSignedBigInt64LE(buffer, offset);
|
|
2742
|
+
offset += 8;
|
|
2743
|
+
const openBids = readSignedBigInt64LE(buffer, offset);
|
|
2744
|
+
offset += 8;
|
|
2745
|
+
const openAsks = readSignedBigInt64LE(buffer, offset);
|
|
2746
|
+
offset += 8;
|
|
2747
|
+
const settledPnl = readSignedBigInt64LE(buffer, offset);
|
|
2748
|
+
offset += 16;
|
|
2749
|
+
const lastBaseAssetAmountPerLp = readSignedBigInt64LE(buffer, offset);
|
|
2750
|
+
offset += 8;
|
|
2751
|
+
const lastQuoteAssetAmountPerLp = readSignedBigInt64LE(buffer, offset);
|
|
2752
|
+
offset += 8;
|
|
2753
|
+
const remainderBaseAssetAmount = buffer.readInt32LE(offset);
|
|
2754
|
+
offset += 4;
|
|
2755
|
+
const marketIndex = buffer.readUInt16LE(offset);
|
|
2756
|
+
offset += 3;
|
|
2757
|
+
const perLpBase = buffer.readUInt8(offset);
|
|
2758
|
+
offset += 1;
|
|
2759
|
+
perpPositions.push({
|
|
2760
|
+
lastCumulativeFundingRate,
|
|
2761
|
+
baseAssetAmount,
|
|
2762
|
+
quoteAssetAmount,
|
|
2763
|
+
quoteBreakEvenAmount,
|
|
2764
|
+
quoteEntryAmount,
|
|
2765
|
+
openBids,
|
|
2766
|
+
openAsks,
|
|
2767
|
+
settledPnl,
|
|
2768
|
+
lpShares,
|
|
2769
|
+
lastBaseAssetAmountPerLp,
|
|
2770
|
+
lastQuoteAssetAmountPerLp,
|
|
2771
|
+
remainderBaseAssetAmount,
|
|
2772
|
+
marketIndex,
|
|
2773
|
+
openOrders,
|
|
2774
|
+
perLpBase,
|
|
2775
|
+
});
|
|
2776
|
+
}
|
|
2777
|
+
const orders = [];
|
|
2778
|
+
for (let i = 0; i < 32; i++) {
|
|
2779
|
+
// skip order if it's not open
|
|
2780
|
+
if (buffer.readUint8(offset + 82) !== 1) {
|
|
2781
|
+
offset += 96;
|
|
2782
|
+
continue;
|
|
2783
|
+
}
|
|
2784
|
+
const slot = readUnsignedBigInt64LE(buffer, offset);
|
|
2785
|
+
offset += 8;
|
|
2786
|
+
const price = readUnsignedBigInt64LE(buffer, offset);
|
|
2787
|
+
offset += 8;
|
|
2788
|
+
const baseAssetAmount = readUnsignedBigInt64LE(buffer, offset);
|
|
2789
|
+
offset += 8;
|
|
2790
|
+
const baseAssetAmountFilled = readUnsignedBigInt64LE(buffer, offset);
|
|
2791
|
+
offset += 8;
|
|
2792
|
+
const quoteAssetAmountFilled = readUnsignedBigInt64LE(buffer, offset);
|
|
2793
|
+
offset += 8;
|
|
2794
|
+
const triggerPrice = readUnsignedBigInt64LE(buffer, offset);
|
|
2795
|
+
offset += 8;
|
|
2796
|
+
const auctionStartPrice = readSignedBigInt64LE(buffer, offset);
|
|
2797
|
+
offset += 8;
|
|
2798
|
+
const auctionEndPrice = readSignedBigInt64LE(buffer, offset);
|
|
2799
|
+
offset += 8;
|
|
2800
|
+
const maxTs = readSignedBigInt64LE(buffer, offset);
|
|
2801
|
+
offset += 8;
|
|
2802
|
+
const oraclePriceOffset = buffer.readInt32LE(offset);
|
|
2803
|
+
offset += 4;
|
|
2804
|
+
const orderId = buffer.readUInt32LE(offset);
|
|
2805
|
+
offset += 4;
|
|
2806
|
+
const marketIndex = buffer.readUInt16LE(offset);
|
|
2807
|
+
offset += 2;
|
|
2808
|
+
const orderStatusNum = buffer.readUInt8(offset);
|
|
2809
|
+
let status = driftTypes_1.OrderStatus.INIT;
|
|
2810
|
+
if (orderStatusNum === 0) {
|
|
2811
|
+
status = driftTypes_1.OrderStatus.INIT;
|
|
2812
|
+
}
|
|
2813
|
+
else if (orderStatusNum === 1) {
|
|
2814
|
+
status = driftTypes_1.OrderStatus.OPEN;
|
|
2815
|
+
}
|
|
2816
|
+
else if (orderStatusNum === 2) {
|
|
2817
|
+
status = driftTypes_1.OrderStatus.FILLED;
|
|
2818
|
+
}
|
|
2819
|
+
else if (orderStatusNum === 3) {
|
|
2820
|
+
status = driftTypes_1.OrderStatus.CANCELED;
|
|
2821
|
+
}
|
|
2822
|
+
offset += 1;
|
|
2823
|
+
const orderTypeNum = buffer.readUInt8(offset);
|
|
2824
|
+
let orderType = driftTypes_1.OrderType.MARKET;
|
|
2825
|
+
if (orderTypeNum === 0) {
|
|
2826
|
+
orderType = driftTypes_1.OrderType.MARKET;
|
|
2827
|
+
}
|
|
2828
|
+
else if (orderTypeNum === 1) {
|
|
2829
|
+
orderType = driftTypes_1.OrderType.LIMIT;
|
|
2830
|
+
}
|
|
2831
|
+
else if (orderTypeNum === 2) {
|
|
2832
|
+
orderType = driftTypes_1.OrderType.TRIGGER_MARKET;
|
|
2833
|
+
}
|
|
2834
|
+
else if (orderTypeNum === 3) {
|
|
2835
|
+
orderType = driftTypes_1.OrderType.TRIGGER_LIMIT;
|
|
2836
|
+
}
|
|
2837
|
+
else if (orderTypeNum === 4) {
|
|
2838
|
+
orderType = driftTypes_1.OrderType.ORACLE;
|
|
2839
|
+
}
|
|
2840
|
+
offset += 1;
|
|
2841
|
+
const marketTypeNum = buffer.readUInt8(offset);
|
|
2842
|
+
let marketType;
|
|
2843
|
+
if (marketTypeNum === 0) {
|
|
2844
|
+
marketType = driftTypes_1.MarketType.SPOT;
|
|
2845
|
+
}
|
|
2846
|
+
else {
|
|
2847
|
+
marketType = driftTypes_1.MarketType.PERP;
|
|
2848
|
+
}
|
|
2849
|
+
offset += 1;
|
|
2850
|
+
const userOrderId = buffer.readUint8(offset);
|
|
2851
|
+
offset += 1;
|
|
2852
|
+
const existingPositionDirectionNum = buffer.readUInt8(offset);
|
|
2853
|
+
let existingPositionDirection;
|
|
2854
|
+
if (existingPositionDirectionNum === 0) {
|
|
2855
|
+
existingPositionDirection = driftTypes_1.PositionDirection.LONG;
|
|
2856
|
+
}
|
|
2857
|
+
else {
|
|
2858
|
+
existingPositionDirection = driftTypes_1.PositionDirection.SHORT;
|
|
2859
|
+
}
|
|
2860
|
+
offset += 1;
|
|
2861
|
+
const positionDirectionNum = buffer.readUInt8(offset);
|
|
2862
|
+
let direction;
|
|
2863
|
+
if (positionDirectionNum === 0) {
|
|
2864
|
+
direction = driftTypes_1.PositionDirection.LONG;
|
|
2865
|
+
}
|
|
2866
|
+
else {
|
|
2867
|
+
direction = driftTypes_1.PositionDirection.SHORT;
|
|
2868
|
+
}
|
|
2869
|
+
offset += 1;
|
|
2870
|
+
const reduceOnly = buffer.readUInt8(offset) === 1;
|
|
2871
|
+
offset += 1;
|
|
2872
|
+
const postOnly = buffer.readUInt8(offset) === 1;
|
|
2873
|
+
offset += 1;
|
|
2874
|
+
const immediateOrCancel = buffer.readUInt8(offset) === 1;
|
|
2875
|
+
offset += 1;
|
|
2876
|
+
const triggerConditionNum = buffer.readUInt8(offset);
|
|
2877
|
+
let triggerCondition = driftTypes_1.OrderTriggerCondition.ABOVE;
|
|
2878
|
+
if (triggerConditionNum === 0) {
|
|
2879
|
+
triggerCondition = driftTypes_1.OrderTriggerCondition.ABOVE;
|
|
2880
|
+
}
|
|
2881
|
+
else if (triggerConditionNum === 1) {
|
|
2882
|
+
triggerCondition = driftTypes_1.OrderTriggerCondition.BELOW;
|
|
2883
|
+
}
|
|
2884
|
+
else if (triggerConditionNum === 2) {
|
|
2885
|
+
triggerCondition = driftTypes_1.OrderTriggerCondition.TRIGGERED_ABOVE;
|
|
2886
|
+
}
|
|
2887
|
+
else if (triggerConditionNum === 3) {
|
|
2888
|
+
triggerCondition = driftTypes_1.OrderTriggerCondition.TRIGGERED_BELOW;
|
|
2889
|
+
}
|
|
2890
|
+
offset += 1;
|
|
2891
|
+
const auctionDuration = buffer.readUInt8(offset);
|
|
2892
|
+
offset += 1;
|
|
2893
|
+
const postedSlotTail = buffer.readUint8(offset);
|
|
2894
|
+
offset += 1;
|
|
2895
|
+
const bitFlags = buffer.readUint8(offset);
|
|
2896
|
+
offset += 1;
|
|
2897
|
+
offset += 1; // padding
|
|
2898
|
+
orders.push({
|
|
2899
|
+
slot,
|
|
2900
|
+
price,
|
|
2901
|
+
baseAssetAmount,
|
|
2902
|
+
quoteAssetAmount: undefined,
|
|
2903
|
+
baseAssetAmountFilled,
|
|
2904
|
+
quoteAssetAmountFilled,
|
|
2905
|
+
triggerPrice,
|
|
2906
|
+
auctionStartPrice,
|
|
2907
|
+
auctionEndPrice,
|
|
2908
|
+
maxTs,
|
|
2909
|
+
oraclePriceOffset,
|
|
2910
|
+
orderId,
|
|
2911
|
+
marketIndex,
|
|
2912
|
+
status,
|
|
2913
|
+
orderType,
|
|
2914
|
+
marketType,
|
|
2915
|
+
userOrderId,
|
|
2916
|
+
existingPositionDirection,
|
|
2917
|
+
direction,
|
|
2918
|
+
reduceOnly,
|
|
2919
|
+
postOnly,
|
|
2920
|
+
immediateOrCancel,
|
|
2921
|
+
triggerCondition,
|
|
2922
|
+
auctionDuration,
|
|
2923
|
+
bitFlags,
|
|
2924
|
+
postedSlotTail,
|
|
2925
|
+
});
|
|
2926
|
+
}
|
|
2927
|
+
const lastAddPerpLpSharesTs = readSignedBigInt64LE(buffer, offset);
|
|
2928
|
+
offset += 8;
|
|
2929
|
+
const totalDeposits = readUnsignedBigInt64LE(buffer, offset);
|
|
2930
|
+
offset += 8;
|
|
2931
|
+
const totalWithdraws = readUnsignedBigInt64LE(buffer, offset);
|
|
2932
|
+
offset += 8;
|
|
2933
|
+
const totalSocialLoss = readUnsignedBigInt64LE(buffer, offset);
|
|
2934
|
+
offset += 8;
|
|
2935
|
+
const settledPerpPnl = readSignedBigInt64LE(buffer, offset);
|
|
2936
|
+
offset += 8;
|
|
2937
|
+
const cumulativeSpotFees = readSignedBigInt64LE(buffer, offset);
|
|
2938
|
+
offset += 8;
|
|
2939
|
+
const cumulativePerpFunding = readSignedBigInt64LE(buffer, offset);
|
|
2940
|
+
offset += 8;
|
|
2941
|
+
const liquidationMarginFreed = readUnsignedBigInt64LE(buffer, offset);
|
|
2942
|
+
offset += 8;
|
|
2943
|
+
const lastActiveSlot = readUnsignedBigInt64LE(buffer, offset);
|
|
2944
|
+
offset += 8;
|
|
2945
|
+
const nextOrderId = buffer.readUInt32LE(offset);
|
|
2946
|
+
offset += 4;
|
|
2947
|
+
const maxMarginRatio = buffer.readUInt32LE(offset);
|
|
2948
|
+
offset += 4;
|
|
2949
|
+
const nextLiquidationId = buffer.readUInt16LE(offset);
|
|
2950
|
+
offset += 2;
|
|
2951
|
+
const subAccountId = buffer.readUInt16LE(offset);
|
|
2952
|
+
offset += 2;
|
|
2953
|
+
const status = buffer.readUInt8(offset);
|
|
2954
|
+
offset += 1;
|
|
2955
|
+
const isMarginTradingEnabled = buffer.readUInt8(offset) === 1;
|
|
2956
|
+
offset += 1;
|
|
2957
|
+
const idle = buffer.readUInt8(offset) === 1;
|
|
2958
|
+
offset += 1;
|
|
2959
|
+
const openOrders = buffer.readUInt8(offset);
|
|
2960
|
+
offset += 1;
|
|
2961
|
+
const hasOpenOrder = buffer.readUInt8(offset) === 1;
|
|
2962
|
+
offset += 1;
|
|
2963
|
+
const openAuctions = buffer.readUInt8(offset);
|
|
2964
|
+
offset += 1;
|
|
2965
|
+
const hasOpenAuction = buffer.readUInt8(offset) === 1;
|
|
2966
|
+
offset += 1;
|
|
2967
|
+
let marginMode;
|
|
2968
|
+
const marginModeNum = buffer.readUInt8(offset);
|
|
2969
|
+
if (marginModeNum === 0) {
|
|
2970
|
+
marginMode = driftTypes_1.MarginMode.DEFAULT;
|
|
2971
|
+
}
|
|
2972
|
+
else {
|
|
2973
|
+
marginMode = driftTypes_1.MarginMode.HIGH_LEVERAGE;
|
|
2974
|
+
}
|
|
2975
|
+
offset += 1;
|
|
2976
|
+
const poolId = buffer.readUint8(offset);
|
|
2977
|
+
offset += 1;
|
|
2978
|
+
offset += 3; // padding
|
|
2979
|
+
const lastFuelBonusUpdateTs = buffer.readUint32LE(offset);
|
|
2980
|
+
offset += 4;
|
|
2981
|
+
return {
|
|
2982
|
+
authority,
|
|
2983
|
+
delegate,
|
|
2984
|
+
name,
|
|
2985
|
+
spotPositions,
|
|
2986
|
+
perpPositions,
|
|
2987
|
+
orders,
|
|
2988
|
+
lastAddPerpLpSharesTs,
|
|
2989
|
+
totalDeposits,
|
|
2990
|
+
totalWithdraws,
|
|
2991
|
+
totalSocialLoss,
|
|
2992
|
+
settledPerpPnl,
|
|
2993
|
+
cumulativeSpotFees,
|
|
2994
|
+
cumulativePerpFunding,
|
|
2995
|
+
liquidationMarginFreed,
|
|
2996
|
+
lastActiveSlot,
|
|
2997
|
+
nextOrderId,
|
|
2998
|
+
maxMarginRatio,
|
|
2999
|
+
nextLiquidationId,
|
|
3000
|
+
subAccountId,
|
|
3001
|
+
status,
|
|
3002
|
+
isMarginTradingEnabled,
|
|
3003
|
+
idle,
|
|
3004
|
+
openOrders,
|
|
3005
|
+
hasOpenOrder,
|
|
3006
|
+
openAuctions,
|
|
3007
|
+
hasOpenAuction,
|
|
3008
|
+
marginMode,
|
|
3009
|
+
poolId,
|
|
3010
|
+
lastFuelBonusUpdateTs,
|
|
3011
|
+
};
|
|
3012
|
+
}
|
|
3013
|
+
|
|
3014
|
+
|
|
3015
|
+
/***/ }),
|
|
3016
|
+
/* 23 */
|
|
3017
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
3018
|
+
|
|
3019
|
+
|
|
2048
3020
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2049
3021
|
exports.JupiterVoteClient = exports.JupiterSwapClient = void 0;
|
|
2050
3022
|
const anchor_1 = __webpack_require__(2);
|
|
@@ -2472,7 +3444,7 @@ exports.JupiterVoteClient = JupiterVoteClient;
|
|
|
2472
3444
|
|
|
2473
3445
|
|
|
2474
3446
|
/***/ }),
|
|
2475
|
-
/*
|
|
3447
|
+
/* 24 */
|
|
2476
3448
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2477
3449
|
|
|
2478
3450
|
|
|
@@ -2480,7 +3452,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2480
3452
|
exports.MarinadeClient = void 0;
|
|
2481
3453
|
const web3_js_1 = __webpack_require__(5);
|
|
2482
3454
|
const spl_token_1 = __webpack_require__(8);
|
|
2483
|
-
const marinade_ts_sdk_1 = __webpack_require__(
|
|
3455
|
+
const marinade_ts_sdk_1 = __webpack_require__(25);
|
|
2484
3456
|
const constants_1 = __webpack_require__(10);
|
|
2485
3457
|
const helpers_1 = __webpack_require__(14);
|
|
2486
3458
|
class MarinadeClient {
|
|
@@ -2684,13 +3656,13 @@ exports.MarinadeClient = MarinadeClient;
|
|
|
2684
3656
|
|
|
2685
3657
|
|
|
2686
3658
|
/***/ }),
|
|
2687
|
-
/*
|
|
3659
|
+
/* 25 */
|
|
2688
3660
|
/***/ ((module) => {
|
|
2689
3661
|
|
|
2690
3662
|
module.exports = require("@marinade.finance/marinade-ts-sdk");
|
|
2691
3663
|
|
|
2692
3664
|
/***/ }),
|
|
2693
|
-
/*
|
|
3665
|
+
/* 26 */
|
|
2694
3666
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2695
3667
|
|
|
2696
3668
|
|
|
@@ -2754,7 +3726,7 @@ exports.WSolClient = WSolClient;
|
|
|
2754
3726
|
|
|
2755
3727
|
|
|
2756
3728
|
/***/ }),
|
|
2757
|
-
/*
|
|
3729
|
+
/* 27 */
|
|
2758
3730
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2759
3731
|
|
|
2760
3732
|
|
|
@@ -2763,7 +3735,7 @@ exports.StakingClient = void 0;
|
|
|
2763
3735
|
const anchor_1 = __webpack_require__(2);
|
|
2764
3736
|
const web3_js_1 = __webpack_require__(5);
|
|
2765
3737
|
const constants_1 = __webpack_require__(10);
|
|
2766
|
-
const spl_stake_pool_1 = __webpack_require__(
|
|
3738
|
+
const spl_stake_pool_1 = __webpack_require__(28);
|
|
2767
3739
|
const spl_token_1 = __webpack_require__(8);
|
|
2768
3740
|
class StakingClient {
|
|
2769
3741
|
constructor(base, marinade) {
|
|
@@ -3185,13 +4157,13 @@ exports.StakingClient = StakingClient;
|
|
|
3185
4157
|
|
|
3186
4158
|
|
|
3187
4159
|
/***/ }),
|
|
3188
|
-
/*
|
|
4160
|
+
/* 28 */
|
|
3189
4161
|
/***/ ((module) => {
|
|
3190
4162
|
|
|
3191
4163
|
module.exports = require("@solana/spl-stake-pool");
|
|
3192
4164
|
|
|
3193
4165
|
/***/ }),
|
|
3194
|
-
/*
|
|
4166
|
+
/* 29 */
|
|
3195
4167
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
3196
4168
|
|
|
3197
4169
|
|
|
@@ -3555,7 +4527,7 @@ exports.StateClient = StateClient;
|
|
|
3555
4527
|
|
|
3556
4528
|
|
|
3557
4529
|
/***/ }),
|
|
3558
|
-
/*
|
|
4530
|
+
/* 30 */
|
|
3559
4531
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
3560
4532
|
|
|
3561
4533
|
|
|
@@ -3893,7 +4865,7 @@ exports.MintClient = MintClient;
|
|
|
3893
4865
|
|
|
3894
4866
|
|
|
3895
4867
|
/***/ }),
|
|
3896
|
-
/*
|
|
4868
|
+
/* 31 */
|
|
3897
4869
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
3898
4870
|
|
|
3899
4871
|
|
|
@@ -3902,7 +4874,7 @@ exports.KaminoFarmClient = exports.KaminoLendingClient = void 0;
|
|
|
3902
4874
|
const tslib_1 = __webpack_require__(1);
|
|
3903
4875
|
const anchor_1 = __webpack_require__(2);
|
|
3904
4876
|
const web3_js_1 = __webpack_require__(5);
|
|
3905
|
-
const borsh = tslib_1.__importStar(__webpack_require__(
|
|
4877
|
+
const borsh = tslib_1.__importStar(__webpack_require__(32));
|
|
3906
4878
|
const spl_token_1 = __webpack_require__(8);
|
|
3907
4879
|
const constants_1 = __webpack_require__(10);
|
|
3908
4880
|
const LOOKUP_TABLE = new web3_js_1.PublicKey("284iwGtA9X9aLy3KsyV8uT2pXLARhYbiSi5SiM2g47M2");
|
|
@@ -4796,13 +5768,13 @@ exports.KaminoFarmClient = KaminoFarmClient;
|
|
|
4796
5768
|
|
|
4797
5769
|
|
|
4798
5770
|
/***/ }),
|
|
4799
|
-
/*
|
|
5771
|
+
/* 32 */
|
|
4800
5772
|
/***/ ((module) => {
|
|
4801
5773
|
|
|
4802
5774
|
module.exports = require("@coral-xyz/borsh");
|
|
4803
5775
|
|
|
4804
5776
|
/***/ }),
|
|
4805
|
-
/*
|
|
5777
|
+
/* 33 */
|
|
4806
5778
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
4807
5779
|
|
|
4808
5780
|
|
|
@@ -5058,7 +6030,7 @@ exports.MeteoraDlmmClient = MeteoraDlmmClient;
|
|
|
5058
6030
|
|
|
5059
6031
|
|
|
5060
6032
|
/***/ }),
|
|
5061
|
-
/*
|
|
6033
|
+
/* 34 */
|
|
5062
6034
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5063
6035
|
|
|
5064
6036
|
|
|
@@ -5330,7 +6302,7 @@ exports.InvestorClient = InvestorClient;
|
|
|
5330
6302
|
|
|
5331
6303
|
|
|
5332
6304
|
/***/ }),
|
|
5333
|
-
/*
|
|
6305
|
+
/* 35 */
|
|
5334
6306
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5335
6307
|
|
|
5336
6308
|
|
|
@@ -5481,7 +6453,7 @@ exports.PriceClient = PriceClient;
|
|
|
5481
6453
|
|
|
5482
6454
|
|
|
5483
6455
|
/***/ }),
|
|
5484
|
-
/*
|
|
6456
|
+
/* 36 */
|
|
5485
6457
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5486
6458
|
|
|
5487
6459
|
|
|
@@ -5521,19 +6493,68 @@ exports.getPriorityFeeEstimate = getPriorityFeeEstimate;
|
|
|
5521
6493
|
|
|
5522
6494
|
|
|
5523
6495
|
/***/ }),
|
|
5524
|
-
/*
|
|
6496
|
+
/* 37 */
|
|
6497
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6498
|
+
|
|
6499
|
+
|
|
6500
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6501
|
+
exports.getLimitOrderParams = getLimitOrderParams;
|
|
6502
|
+
exports.getTriggerMarketOrderParams = getTriggerMarketOrderParams;
|
|
6503
|
+
exports.getTriggerLimitOrderParams = getTriggerLimitOrderParams;
|
|
6504
|
+
exports.getMarketOrderParams = getMarketOrderParams;
|
|
6505
|
+
exports.getOrderParams = getOrderParams;
|
|
6506
|
+
const driftTypes_1 = __webpack_require__(21);
|
|
6507
|
+
function getLimitOrderParams(params) {
|
|
6508
|
+
return getOrderParams(Object.assign({}, params, {
|
|
6509
|
+
orderType: driftTypes_1.OrderType.LIMIT,
|
|
6510
|
+
}));
|
|
6511
|
+
}
|
|
6512
|
+
function getTriggerMarketOrderParams(params) {
|
|
6513
|
+
return getOrderParams(Object.assign({}, params, {
|
|
6514
|
+
orderType: driftTypes_1.OrderType.TRIGGER_MARKET,
|
|
6515
|
+
}));
|
|
6516
|
+
}
|
|
6517
|
+
function getTriggerLimitOrderParams(params) {
|
|
6518
|
+
return getOrderParams(Object.assign({}, params, {
|
|
6519
|
+
orderType: driftTypes_1.OrderType.TRIGGER_LIMIT,
|
|
6520
|
+
}));
|
|
6521
|
+
}
|
|
6522
|
+
function getMarketOrderParams(params) {
|
|
6523
|
+
return getOrderParams(Object.assign({}, params, {
|
|
6524
|
+
orderType: driftTypes_1.OrderType.MARKET,
|
|
6525
|
+
}));
|
|
6526
|
+
}
|
|
6527
|
+
/**
|
|
6528
|
+
* Creates an OrderParams object with the given OptionalOrderParams and any params to override.
|
|
6529
|
+
*
|
|
6530
|
+
* example:
|
|
6531
|
+
* ```
|
|
6532
|
+
* const orderParams = getOrderParams(optionalOrderParams, { marketType: MarketType.PERP });
|
|
6533
|
+
* ```
|
|
6534
|
+
*
|
|
6535
|
+
* @param optionalOrderParams
|
|
6536
|
+
* @param overridingParams
|
|
6537
|
+
* @returns
|
|
6538
|
+
*/
|
|
6539
|
+
function getOrderParams(optionalOrderParams, overridingParams = {}) {
|
|
6540
|
+
return Object.assign({}, driftTypes_1.DefaultOrderParams, optionalOrderParams, overridingParams);
|
|
6541
|
+
}
|
|
6542
|
+
|
|
6543
|
+
|
|
6544
|
+
/***/ }),
|
|
6545
|
+
/* 38 */
|
|
5525
6546
|
/***/ ((module) => {
|
|
5526
6547
|
|
|
5527
6548
|
module.exports = require("commander");
|
|
5528
6549
|
|
|
5529
6550
|
/***/ }),
|
|
5530
|
-
/*
|
|
6551
|
+
/* 39 */
|
|
5531
6552
|
/***/ ((module) => {
|
|
5532
6553
|
|
|
5533
6554
|
module.exports = require("fs");
|
|
5534
6555
|
|
|
5535
6556
|
/***/ }),
|
|
5536
|
-
/*
|
|
6557
|
+
/* 40 */
|
|
5537
6558
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5538
6559
|
|
|
5539
6560
|
|
|
@@ -5543,10 +6564,10 @@ exports.confirmOperation = confirmOperation;
|
|
|
5543
6564
|
const tslib_1 = __webpack_require__(1);
|
|
5544
6565
|
const anchor_1 = __webpack_require__(2);
|
|
5545
6566
|
const web3_js_1 = __webpack_require__(5);
|
|
5546
|
-
const fs_1 = tslib_1.__importDefault(__webpack_require__(
|
|
5547
|
-
const inquirer_1 = tslib_1.__importDefault(__webpack_require__(
|
|
5548
|
-
const os_1 = tslib_1.__importDefault(__webpack_require__(
|
|
5549
|
-
const path_1 = tslib_1.__importDefault(__webpack_require__(
|
|
6567
|
+
const fs_1 = tslib_1.__importDefault(__webpack_require__(39));
|
|
6568
|
+
const inquirer_1 = tslib_1.__importDefault(__webpack_require__(41));
|
|
6569
|
+
const os_1 = tslib_1.__importDefault(__webpack_require__(42));
|
|
6570
|
+
const path_1 = tslib_1.__importDefault(__webpack_require__(43));
|
|
5550
6571
|
class CliConfig {
|
|
5551
6572
|
constructor(config = {}) {
|
|
5552
6573
|
this.cluster = config.cluster || "";
|
|
@@ -5643,25 +6664,25 @@ async function confirmOperation(message) {
|
|
|
5643
6664
|
|
|
5644
6665
|
|
|
5645
6666
|
/***/ }),
|
|
5646
|
-
/*
|
|
6667
|
+
/* 41 */
|
|
5647
6668
|
/***/ ((module) => {
|
|
5648
6669
|
|
|
5649
6670
|
module.exports = require("inquirer");
|
|
5650
6671
|
|
|
5651
6672
|
/***/ }),
|
|
5652
|
-
/*
|
|
6673
|
+
/* 42 */
|
|
5653
6674
|
/***/ ((module) => {
|
|
5654
6675
|
|
|
5655
6676
|
module.exports = require("os");
|
|
5656
6677
|
|
|
5657
6678
|
/***/ }),
|
|
5658
|
-
/*
|
|
6679
|
+
/* 43 */
|
|
5659
6680
|
/***/ ((module) => {
|
|
5660
6681
|
|
|
5661
6682
|
module.exports = require("path");
|
|
5662
6683
|
|
|
5663
6684
|
/***/ }),
|
|
5664
|
-
/*
|
|
6685
|
+
/* 44 */
|
|
5665
6686
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5666
6687
|
|
|
5667
6688
|
|
|
@@ -5669,15 +6690,14 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
5669
6690
|
exports.installDriftCommands = installDriftCommands;
|
|
5670
6691
|
const anchor_1 = __webpack_require__(2);
|
|
5671
6692
|
const glam_sdk_1 = __webpack_require__(3);
|
|
5672
|
-
const utils_1 = __webpack_require__(
|
|
6693
|
+
const utils_1 = __webpack_require__(40);
|
|
5673
6694
|
function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
5674
6695
|
drift
|
|
5675
6696
|
.command("price")
|
|
5676
6697
|
.description("Price drift")
|
|
5677
6698
|
.action(async () => {
|
|
5678
6699
|
try {
|
|
5679
|
-
const
|
|
5680
|
-
const txSig = await glamClient.drift.priceDrift(cliConfig.glamState, marketConfigs, glam_sdk_1.PriceDenom.USD, txOptions);
|
|
6700
|
+
const txSig = await glamClient.drift.priceDrift(cliConfig.glamState, glam_sdk_1.PriceDenom.USD, txOptions);
|
|
5681
6701
|
console.log(`Pricing tx: ${txSig}`);
|
|
5682
6702
|
}
|
|
5683
6703
|
catch (e) {
|
|
@@ -5704,13 +6724,15 @@ function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
|
5704
6724
|
}
|
|
5705
6725
|
});
|
|
5706
6726
|
drift
|
|
5707
|
-
.command("
|
|
6727
|
+
.command("positions")
|
|
5708
6728
|
.description("List drift positions")
|
|
5709
6729
|
.action(async () => {
|
|
5710
6730
|
try {
|
|
5711
|
-
const { spotPositions
|
|
5712
|
-
|
|
5713
|
-
|
|
6731
|
+
const { spotPositions } = await glamClient.drift.fetchDriftUser(cliConfig.glamState);
|
|
6732
|
+
for (const { marketIndex, uiAmount, marketName } of spotPositions) {
|
|
6733
|
+
console.log(`${uiAmount} ${marketName} (market index: ${marketIndex})`);
|
|
6734
|
+
}
|
|
6735
|
+
// TODO: print perp positions
|
|
5714
6736
|
}
|
|
5715
6737
|
catch (e) {
|
|
5716
6738
|
console.error(e);
|
|
@@ -5723,9 +6745,9 @@ function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
|
5723
6745
|
.action(async (market_index, amount) => {
|
|
5724
6746
|
try {
|
|
5725
6747
|
const marketConfigs = await glamClient.drift.fetchMarketConfigs();
|
|
5726
|
-
const marketConfig = marketConfigs.
|
|
6748
|
+
const marketConfig = marketConfigs.spotMarkets.find((m) => m.marketIndex === parseInt(market_index));
|
|
5727
6749
|
const amountBn = new anchor_1.BN(Number(amount) * 10 ** marketConfig.decimals);
|
|
5728
|
-
const txSig = await glamClient.drift.withdraw(cliConfig.glamState, amountBn, marketConfig.marketIndex, 0,
|
|
6750
|
+
const txSig = await glamClient.drift.withdraw(cliConfig.glamState, amountBn, marketConfig.marketIndex, 0, txOptions);
|
|
5729
6751
|
console.log(`Withdraw from drift: ${txSig}`);
|
|
5730
6752
|
}
|
|
5731
6753
|
catch (e) {
|
|
@@ -5739,9 +6761,9 @@ function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
|
5739
6761
|
.action(async (market_index, amount) => {
|
|
5740
6762
|
try {
|
|
5741
6763
|
const marketConfigs = await glamClient.drift.fetchMarketConfigs();
|
|
5742
|
-
const marketConfig = marketConfigs.
|
|
6764
|
+
const marketConfig = marketConfigs.spotMarkets.find((m) => m.marketIndex === parseInt(market_index));
|
|
5743
6765
|
const amountBn = new anchor_1.BN(Number(amount) * 10 ** marketConfig.decimals);
|
|
5744
|
-
const txSig = await glamClient.drift.deposit(cliConfig.glamState, amountBn, marketConfig.marketIndex, 0,
|
|
6766
|
+
const txSig = await glamClient.drift.deposit(cliConfig.glamState, amountBn, marketConfig.marketIndex, 0, txOptions);
|
|
5745
6767
|
console.log(`Deposited to drift: ${txSig}`);
|
|
5746
6768
|
}
|
|
5747
6769
|
catch (e) {
|
|
@@ -5749,6 +6771,154 @@ function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
|
5749
6771
|
process.exit(1);
|
|
5750
6772
|
}
|
|
5751
6773
|
});
|
|
6774
|
+
drift
|
|
6775
|
+
.command("spot <direction> <market_index> <amount> <price_limit>")
|
|
6776
|
+
.description("Place a limit spot order. Price limit is in USD.")
|
|
6777
|
+
.option("-y, --yes", "Skip confirmation prompt")
|
|
6778
|
+
.action(async (direction, market_index, amount, price_limit, options) => {
|
|
6779
|
+
if (!["long", "short"].includes(direction)) {
|
|
6780
|
+
console.error("Invalid direction. Must be 'long' or 'short'");
|
|
6781
|
+
process.exit(1);
|
|
6782
|
+
}
|
|
6783
|
+
const marketConfigs = await glamClient.drift.fetchMarketConfigs();
|
|
6784
|
+
const spotMarket = marketConfigs?.spotMarkets?.find((m) => m.marketIndex === parseInt(market_index));
|
|
6785
|
+
if (!spotMarket) {
|
|
6786
|
+
console.error(`Invalid market index: ${market_index}`);
|
|
6787
|
+
process.exit(1);
|
|
6788
|
+
}
|
|
6789
|
+
const baseAssetAmount = new anchor_1.BN(Number(amount) * 10 ** spotMarket.decimals);
|
|
6790
|
+
const price = new anchor_1.BN(Number(price_limit) * 10 ** marketConfigs.orderConstants.quoteScale);
|
|
6791
|
+
const orderParams = (0, glam_sdk_1.getOrderParams)({
|
|
6792
|
+
orderType: glam_sdk_1.OrderType.LIMIT,
|
|
6793
|
+
marketType: glam_sdk_1.MarketType.SPOT,
|
|
6794
|
+
direction: direction === "long"
|
|
6795
|
+
? glam_sdk_1.PositionDirection.LONG
|
|
6796
|
+
: glam_sdk_1.PositionDirection.SHORT,
|
|
6797
|
+
marketIndex: spotMarket.marketIndex,
|
|
6798
|
+
baseAssetAmount,
|
|
6799
|
+
price,
|
|
6800
|
+
});
|
|
6801
|
+
options?.yes ||
|
|
6802
|
+
(await (0, utils_1.confirmOperation)(`Confirm placing ${direction} order for ${amount} ${spotMarket.name} at ${price_limit} USD?`));
|
|
6803
|
+
try {
|
|
6804
|
+
const txSig = await glamClient.drift.placeOrder(cliConfig.glamState, orderParams, 0, txOptions);
|
|
6805
|
+
console.log(`Spot order placed: ${txSig}`);
|
|
6806
|
+
}
|
|
6807
|
+
catch (e) {
|
|
6808
|
+
console.error((0, utils_1.parseTxError)(e));
|
|
6809
|
+
process.exit(1);
|
|
6810
|
+
}
|
|
6811
|
+
});
|
|
6812
|
+
drift
|
|
6813
|
+
.command("perp <direction> <market_index> <amount> <price_limit>")
|
|
6814
|
+
.description("Place a limit perp order. Price limit is in USD.")
|
|
6815
|
+
.option("-y, --yes", "Skip confirmation prompt")
|
|
6816
|
+
.action(async (direction, market_index, amount, price_limit, options) => {
|
|
6817
|
+
if (!["long", "short"].includes(direction)) {
|
|
6818
|
+
console.error("Invalid direction. Must be 'long' or 'short'");
|
|
6819
|
+
process.exit(1);
|
|
6820
|
+
}
|
|
6821
|
+
const marketConfigs = await glamClient.drift.fetchMarketConfigs();
|
|
6822
|
+
const perpMarket = marketConfigs?.perpMarkets?.find((m) => m.marketIndex === parseInt(market_index));
|
|
6823
|
+
if (!perpMarket) {
|
|
6824
|
+
console.error(`Invalid market index: ${market_index}`);
|
|
6825
|
+
process.exit(1);
|
|
6826
|
+
}
|
|
6827
|
+
const baseAssetAmount = new anchor_1.BN(Number(amount) * 10 ** marketConfigs.orderConstants.perpBaseScale);
|
|
6828
|
+
const price = new anchor_1.BN(Number(price_limit) * 10 ** marketConfigs.orderConstants.quoteScale);
|
|
6829
|
+
const orderParams = (0, glam_sdk_1.getOrderParams)({
|
|
6830
|
+
orderType: glam_sdk_1.OrderType.LIMIT,
|
|
6831
|
+
marketType: glam_sdk_1.MarketType.PERP,
|
|
6832
|
+
direction: direction === "long"
|
|
6833
|
+
? glam_sdk_1.PositionDirection.LONG
|
|
6834
|
+
: glam_sdk_1.PositionDirection.SHORT,
|
|
6835
|
+
marketIndex: perpMarket.marketIndex,
|
|
6836
|
+
baseAssetAmount,
|
|
6837
|
+
price,
|
|
6838
|
+
});
|
|
6839
|
+
options?.yes ||
|
|
6840
|
+
(await (0, utils_1.confirmOperation)(`Confirm placing ${direction} order for ${amount} ${perpMarket.name} at ${price_limit} USD?`));
|
|
6841
|
+
try {
|
|
6842
|
+
const txSig = await glamClient.drift.placeOrder(cliConfig.glamState, orderParams, 0, txOptions);
|
|
6843
|
+
console.log(`Perp order placed: ${txSig}`);
|
|
6844
|
+
}
|
|
6845
|
+
catch (e) {
|
|
6846
|
+
console.error((0, utils_1.parseTxError)(e));
|
|
6847
|
+
process.exit(1);
|
|
6848
|
+
}
|
|
6849
|
+
});
|
|
6850
|
+
drift
|
|
6851
|
+
.command("orders")
|
|
6852
|
+
.description("List open orders")
|
|
6853
|
+
.action(async () => {
|
|
6854
|
+
const driftUser = await glamClient.drift.fetchDriftUser(cliConfig.glamState);
|
|
6855
|
+
if (!driftUser) {
|
|
6856
|
+
console.error("Drift user not found");
|
|
6857
|
+
process.exit(1);
|
|
6858
|
+
}
|
|
6859
|
+
const marketConfigs = await glamClient.drift.fetchMarketConfigs();
|
|
6860
|
+
const { orders } = driftUser;
|
|
6861
|
+
for (const { orderId, marketIndex, direction, baseAssetAmount, price, orderType, marketType, } of orders) {
|
|
6862
|
+
const orderTypeStr = Object.entries(orderType)[0][0];
|
|
6863
|
+
const directionStr = Object.entries(direction)[0][0];
|
|
6864
|
+
if (marketType === glam_sdk_1.MarketType.SPOT) {
|
|
6865
|
+
const marketConfig = marketConfigs.spotMarkets.find((m) => m.marketIndex === marketIndex);
|
|
6866
|
+
const amount = baseAssetAmount.toNumber() / 10 ** marketConfig.decimals;
|
|
6867
|
+
const priceStr = price.toNumber() / 10 ** marketConfigs.orderConstants.quoteScale;
|
|
6868
|
+
const marketName = marketConfig.name;
|
|
6869
|
+
console.log(`Order ID ${orderId}: ${orderTypeStr} ${directionStr} order for ${amount} ${marketName} at $${priceStr}`);
|
|
6870
|
+
}
|
|
6871
|
+
else {
|
|
6872
|
+
const marketConfig = marketConfigs.perpMarkets.find((m) => m.marketIndex === marketIndex);
|
|
6873
|
+
const amount = baseAssetAmount.toNumber() /
|
|
6874
|
+
10 ** marketConfigs.orderConstants.perpBaseScale;
|
|
6875
|
+
const priceStr = price.toNumber() / 10 ** marketConfigs.orderConstants.quoteScale;
|
|
6876
|
+
const marketName = marketConfig.name;
|
|
6877
|
+
console.log(`Order ID ${orderId}: ${orderTypeStr} ${directionStr} order for ${amount} ${marketName} at $${priceStr}`);
|
|
6878
|
+
}
|
|
6879
|
+
}
|
|
6880
|
+
});
|
|
6881
|
+
drift
|
|
6882
|
+
.command("cancel")
|
|
6883
|
+
.argument("<order_ids...>", "A space-separated list of order IDs. Use `drift orders` to list open orders.")
|
|
6884
|
+
.description("Cancel order")
|
|
6885
|
+
.action(async (order_ids) => {
|
|
6886
|
+
try {
|
|
6887
|
+
const txSig = await glamClient.drift.cancelOrdersByIds(cliConfig.glamState, order_ids.map((id) => Number(id)), 0, txOptions);
|
|
6888
|
+
console.log(`Order cancelled: ${txSig}`);
|
|
6889
|
+
}
|
|
6890
|
+
catch (e) {
|
|
6891
|
+
console.error((0, utils_1.parseTxError)(e));
|
|
6892
|
+
process.exit(1);
|
|
6893
|
+
}
|
|
6894
|
+
});
|
|
6895
|
+
drift
|
|
6896
|
+
.command("margin <enabled>")
|
|
6897
|
+
.description("Enable margin trading")
|
|
6898
|
+
.action(async (enabled) => {
|
|
6899
|
+
let shouldEnable = false;
|
|
6900
|
+
if (["true", "1", "yes", "y", "enabled"].includes(enabled)) {
|
|
6901
|
+
shouldEnable = true;
|
|
6902
|
+
}
|
|
6903
|
+
const driftUser = await glamClient.drift.fetchDriftUser(cliConfig.glamState);
|
|
6904
|
+
if (!driftUser) {
|
|
6905
|
+
console.error("Drift user not found");
|
|
6906
|
+
process.exit(1);
|
|
6907
|
+
}
|
|
6908
|
+
const { isMarginTradingEnabled } = driftUser;
|
|
6909
|
+
if (isMarginTradingEnabled === shouldEnable) {
|
|
6910
|
+
console.log(`Margin trading already ${shouldEnable ? "enabled" : "disabled"}`);
|
|
6911
|
+
return;
|
|
6912
|
+
}
|
|
6913
|
+
try {
|
|
6914
|
+
const txSig = await glamClient.drift.updateUserMarginTradingEnabled(cliConfig.glamState, shouldEnable, 0, txOptions);
|
|
6915
|
+
console.log(`Margin trading ${shouldEnable ? "enabled" : "disabled"}: ${txSig}`);
|
|
6916
|
+
}
|
|
6917
|
+
catch (e) {
|
|
6918
|
+
console.error((0, utils_1.parseTxError)(e));
|
|
6919
|
+
process.exit(1);
|
|
6920
|
+
}
|
|
6921
|
+
});
|
|
5752
6922
|
drift
|
|
5753
6923
|
.command("delete")
|
|
5754
6924
|
.description("Delete a drift user")
|
|
@@ -5766,7 +6936,7 @@ function installDriftCommands(drift, glamClient, cliConfig, txOptions = {}) {
|
|
|
5766
6936
|
|
|
5767
6937
|
|
|
5768
6938
|
/***/ }),
|
|
5769
|
-
/*
|
|
6939
|
+
/* 45 */
|
|
5770
6940
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5771
6941
|
|
|
5772
6942
|
|
|
@@ -5774,7 +6944,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
5774
6944
|
exports.installMintCommands = installMintCommands;
|
|
5775
6945
|
const anchor_1 = __webpack_require__(2);
|
|
5776
6946
|
const web3_js_1 = __webpack_require__(5);
|
|
5777
|
-
const utils_1 = __webpack_require__(
|
|
6947
|
+
const utils_1 = __webpack_require__(40);
|
|
5778
6948
|
function installMintCommands(mint, glamClient, cliConfig, txOptions = {}) {
|
|
5779
6949
|
mint
|
|
5780
6950
|
.command("holders")
|
|
@@ -5971,7 +7141,7 @@ function installMintCommands(mint, glamClient, cliConfig, txOptions = {}) {
|
|
|
5971
7141
|
|
|
5972
7142
|
|
|
5973
7143
|
/***/ }),
|
|
5974
|
-
/*
|
|
7144
|
+
/* 46 */
|
|
5975
7145
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
5976
7146
|
|
|
5977
7147
|
|
|
@@ -5979,7 +7149,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
5979
7149
|
exports.installMeteoraCommands = installMeteoraCommands;
|
|
5980
7150
|
const anchor_1 = __webpack_require__(2);
|
|
5981
7151
|
const glam_sdk_1 = __webpack_require__(3);
|
|
5982
|
-
const utils_1 = __webpack_require__(
|
|
7152
|
+
const utils_1 = __webpack_require__(40);
|
|
5983
7153
|
function installMeteoraCommands(meteora, glamClient, cliConfig, txOptions = {}) {
|
|
5984
7154
|
meteora
|
|
5985
7155
|
.command("init <pool>")
|
|
@@ -6078,7 +7248,7 @@ function installMeteoraCommands(meteora, glamClient, cliConfig, txOptions = {})
|
|
|
6078
7248
|
|
|
6079
7249
|
|
|
6080
7250
|
/***/ }),
|
|
6081
|
-
/*
|
|
7251
|
+
/* 47 */
|
|
6082
7252
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6083
7253
|
|
|
6084
7254
|
|
|
@@ -6086,7 +7256,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
6086
7256
|
exports.installLstCommands = installLstCommands;
|
|
6087
7257
|
const anchor_1 = __webpack_require__(2);
|
|
6088
7258
|
const web3_js_1 = __webpack_require__(5);
|
|
6089
|
-
const utils_1 = __webpack_require__(
|
|
7259
|
+
const utils_1 = __webpack_require__(40);
|
|
6090
7260
|
function installLstCommands(lst, glamClient, cliConfig, txOptions = {}) {
|
|
6091
7261
|
lst
|
|
6092
7262
|
.command("stake <stakepool> <amount>")
|
|
@@ -6180,14 +7350,14 @@ function installLstCommands(lst, glamClient, cliConfig, txOptions = {}) {
|
|
|
6180
7350
|
|
|
6181
7351
|
|
|
6182
7352
|
/***/ }),
|
|
6183
|
-
/*
|
|
7353
|
+
/* 48 */
|
|
6184
7354
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6185
7355
|
|
|
6186
7356
|
|
|
6187
7357
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6188
7358
|
exports.installMarinadeCommands = installMarinadeCommands;
|
|
6189
7359
|
const anchor_1 = __webpack_require__(2);
|
|
6190
|
-
const utils_1 = __webpack_require__(
|
|
7360
|
+
const utils_1 = __webpack_require__(40);
|
|
6191
7361
|
const web3_js_1 = __webpack_require__(5);
|
|
6192
7362
|
function installMarinadeCommands(marinade, glamClient, cliConfig, txOptions = {}) {
|
|
6193
7363
|
marinade
|
|
@@ -6256,14 +7426,14 @@ function installMarinadeCommands(marinade, glamClient, cliConfig, txOptions = {}
|
|
|
6256
7426
|
|
|
6257
7427
|
|
|
6258
7428
|
/***/ }),
|
|
6259
|
-
/*
|
|
7429
|
+
/* 49 */
|
|
6260
7430
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6261
7431
|
|
|
6262
7432
|
|
|
6263
7433
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6264
7434
|
exports.installKlendCommands = installKlendCommands;
|
|
6265
7435
|
const glam_sdk_1 = __webpack_require__(3);
|
|
6266
|
-
const utils_1 = __webpack_require__(
|
|
7436
|
+
const utils_1 = __webpack_require__(40);
|
|
6267
7437
|
const web3_js_1 = __webpack_require__(5);
|
|
6268
7438
|
function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
|
|
6269
7439
|
klend
|
|
@@ -6418,14 +7588,14 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
|
|
|
6418
7588
|
|
|
6419
7589
|
|
|
6420
7590
|
/***/ }),
|
|
6421
|
-
/*
|
|
7591
|
+
/* 50 */
|
|
6422
7592
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6423
7593
|
|
|
6424
7594
|
|
|
6425
7595
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6426
7596
|
exports.installJupCommands = installJupCommands;
|
|
6427
7597
|
const anchor_1 = __webpack_require__(2);
|
|
6428
|
-
const utils_1 = __webpack_require__(
|
|
7598
|
+
const utils_1 = __webpack_require__(40);
|
|
6429
7599
|
const web3_js_1 = __webpack_require__(5);
|
|
6430
7600
|
function installJupCommands(jup, glamClient, cliConfig, txOptions = {}) {
|
|
6431
7601
|
jup
|
|
@@ -6527,14 +7697,14 @@ function installJupCommands(jup, glamClient, cliConfig, txOptions = {}) {
|
|
|
6527
7697
|
|
|
6528
7698
|
|
|
6529
7699
|
/***/ }),
|
|
6530
|
-
/*
|
|
7700
|
+
/* 51 */
|
|
6531
7701
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6532
7702
|
|
|
6533
7703
|
|
|
6534
7704
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6535
7705
|
exports.installIntegrationCommands = installIntegrationCommands;
|
|
6536
7706
|
const glam_sdk_1 = __webpack_require__(3);
|
|
6537
|
-
const utils_1 = __webpack_require__(
|
|
7707
|
+
const utils_1 = __webpack_require__(40);
|
|
6538
7708
|
const web3_js_1 = __webpack_require__(5);
|
|
6539
7709
|
function installIntegrationCommands(integration, glamClient, cliConfig, txOptions = {}) {
|
|
6540
7710
|
integration
|
|
@@ -6623,7 +7793,7 @@ function installIntegrationCommands(integration, glamClient, cliConfig, txOption
|
|
|
6623
7793
|
|
|
6624
7794
|
|
|
6625
7795
|
/***/ }),
|
|
6626
|
-
/*
|
|
7796
|
+
/* 52 */
|
|
6627
7797
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6628
7798
|
|
|
6629
7799
|
|
|
@@ -6631,7 +7801,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
6631
7801
|
exports.installDelegateCommands = installDelegateCommands;
|
|
6632
7802
|
const anchor_1 = __webpack_require__(2);
|
|
6633
7803
|
const glam_sdk_1 = __webpack_require__(3);
|
|
6634
|
-
const utils_1 = __webpack_require__(
|
|
7804
|
+
const utils_1 = __webpack_require__(40);
|
|
6635
7805
|
const web3_js_1 = __webpack_require__(5);
|
|
6636
7806
|
const allowedPermissions = glam_sdk_1.GlamPermissions.map((p) => p.slice(0, 1).toLowerCase() + p.slice(1));
|
|
6637
7807
|
const validate = (permissions) => {
|
|
@@ -6773,13 +7943,13 @@ function installDelegateCommands(delegate, glamClient, cliConfig, txOptions = {}
|
|
|
6773
7943
|
|
|
6774
7944
|
|
|
6775
7945
|
/***/ }),
|
|
6776
|
-
/*
|
|
7946
|
+
/* 53 */
|
|
6777
7947
|
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
6778
7948
|
|
|
6779
7949
|
|
|
6780
7950
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
6781
7951
|
exports.installSwapCommands = installSwapCommands;
|
|
6782
|
-
const utils_1 = __webpack_require__(
|
|
7952
|
+
const utils_1 = __webpack_require__(40);
|
|
6783
7953
|
function installSwapCommands(program, glamClient, cliConfig, txOptions = {}) {
|
|
6784
7954
|
program
|
|
6785
7955
|
.command("swap <from> <to> <amount>")
|
|
@@ -6869,19 +8039,19 @@ const tslib_1 = __webpack_require__(1);
|
|
|
6869
8039
|
const anchor = tslib_1.__importStar(__webpack_require__(2));
|
|
6870
8040
|
const glam_sdk_1 = __webpack_require__(3);
|
|
6871
8041
|
const web3_js_1 = __webpack_require__(5);
|
|
6872
|
-
const commander_1 = __webpack_require__(
|
|
6873
|
-
const fs_1 = tslib_1.__importDefault(__webpack_require__(
|
|
6874
|
-
const utils_1 = __webpack_require__(
|
|
6875
|
-
const drift_1 = __webpack_require__(
|
|
6876
|
-
const mint_1 = __webpack_require__(
|
|
6877
|
-
const meteora_1 = __webpack_require__(
|
|
6878
|
-
const lst_1 = __webpack_require__(
|
|
6879
|
-
const marinade_1 = __webpack_require__(
|
|
6880
|
-
const klend_1 = __webpack_require__(
|
|
6881
|
-
const jup_1 = __webpack_require__(
|
|
6882
|
-
const integration_1 = __webpack_require__(
|
|
6883
|
-
const delegate_1 = __webpack_require__(
|
|
6884
|
-
const swap_1 = __webpack_require__(
|
|
8042
|
+
const commander_1 = __webpack_require__(38);
|
|
8043
|
+
const fs_1 = tslib_1.__importDefault(__webpack_require__(39));
|
|
8044
|
+
const utils_1 = __webpack_require__(40);
|
|
8045
|
+
const drift_1 = __webpack_require__(44);
|
|
8046
|
+
const mint_1 = __webpack_require__(45);
|
|
8047
|
+
const meteora_1 = __webpack_require__(46);
|
|
8048
|
+
const lst_1 = __webpack_require__(47);
|
|
8049
|
+
const marinade_1 = __webpack_require__(48);
|
|
8050
|
+
const klend_1 = __webpack_require__(49);
|
|
8051
|
+
const jup_1 = __webpack_require__(50);
|
|
8052
|
+
const integration_1 = __webpack_require__(51);
|
|
8053
|
+
const delegate_1 = __webpack_require__(52);
|
|
8054
|
+
const swap_1 = __webpack_require__(53);
|
|
6885
8055
|
const cliConfig = utils_1.CliConfig.get();
|
|
6886
8056
|
const glamClient = new glam_sdk_1.GlamClient();
|
|
6887
8057
|
const txOptions = {
|
|
@@ -6906,7 +8076,7 @@ let globalOpts = { skipSimulation: false };
|
|
|
6906
8076
|
program
|
|
6907
8077
|
.name("glam-cli")
|
|
6908
8078
|
.description("CLI for interacting with the GLAM Protocol")
|
|
6909
|
-
.version("0.1.
|
|
8079
|
+
.version("0.1.21")
|
|
6910
8080
|
.option("-S, --skip-simulation", "Skip transaction simulation");
|
|
6911
8081
|
program
|
|
6912
8082
|
.command("env")
|