@glamsystems/glam-cli 0.1.18 → 0.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +4 -122
  2. package/main.js +439 -192
  3. package/package.json +2 -2
package/main.js CHANGED
@@ -81,7 +81,7 @@ module.exports = require("@solana/web3.js");
81
81
  /* 6 */
82
82
  /***/ ((module) => {
83
83
 
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","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\\""}]}');
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\\""}]}');
85
85
 
86
86
  /***/ }),
87
87
  /* 7 */
@@ -101,7 +101,8 @@ exports.GlamIntegrations = glamExports_1.GlamProtocolIdlJson?.types
101
101
  ?.type?.variants?.map((v) => v.name) ?? [];
102
102
  exports.GlamPermissions = glamExports_1.GlamProtocolIdlJson?.types
103
103
  ?.find((t) => t.name === "Permission")
104
- ?.type?.variants?.map((v) => v.name) ?? [];
104
+ ?.type?.variants?.map((v) => v.name)
105
+ .filter((v) => !v.startsWith("__")) ?? [];
105
106
  const GLAM_PROGRAM_ID_DEFAULT = new web3_js_1.PublicKey(glamExports_1.GlamProtocolIdlJson.address);
106
107
  class StateIdlModel {
107
108
  constructor(data) {
@@ -451,7 +452,7 @@ module.exports = require("@solana/spl-token-metadata");
451
452
 
452
453
 
453
454
  Object.defineProperty(exports, "__esModule", ({ value: true }));
454
- exports.JUPSOL_STAKE_POOL = exports.JITO_STAKE_POOL = exports.MEMO_PROGRAM = exports.KAMINO_FARM_PROGRAM = exports.KAMINO_LENDING_PROGRAM = exports.METEORA_DLMM_PROGRAM = exports.TRANSFER_HOOK_PROGRAM = exports.MERKLE_DISTRIBUTOR_PROGRAM = exports.JUP_VOTE_PROGRAM = exports.GOVERNANCE_PROGRAM_ID = exports.SANCTUM_STAKE_POOL_PROGRAM_ID = exports.JUPITER_PROGRAM_ID = exports.DRIFT_PROGRAM_ID = exports.MARINADE_PROGRAM_ID = exports.JUP = exports.WBTC = exports.WETH = exports.USDC = exports.JITOSOL = exports.MSOL = exports.WSOL = exports.JITO_TIP_DEFAULT = exports.KAMINO_OBTRIGATION_SIZE = exports.METEORA_POSITION_SIZE = exports.STAKE_ACCOUNT_SIZE = exports.MARINADE_TICKET_SIZE = exports.SEED_ESCROW = exports.SEED_VAULT = exports.SEED_STATE = exports.SEED_MINT = exports.SEED_METADATA = void 0;
455
+ exports.GLAM_REFERRER = exports.JUPSOL_STAKE_POOL = exports.JITO_STAKE_POOL = exports.MEMO_PROGRAM = exports.KAMINO_FARM_PROGRAM = exports.KAMINO_LENDING_PROGRAM = exports.METEORA_DLMM_PROGRAM = exports.TRANSFER_HOOK_PROGRAM = exports.MERKLE_DISTRIBUTOR_PROGRAM = exports.JUP_VOTE_PROGRAM = exports.GOVERNANCE_PROGRAM_ID = exports.SANCTUM_STAKE_POOL_PROGRAM_ID = exports.JUPITER_PROGRAM_ID = exports.DRIFT_PROGRAM_ID = exports.MARINADE_PROGRAM_ID = exports.JUP = exports.WBTC = exports.WETH = exports.USDC = exports.JITOSOL = exports.MSOL = exports.WSOL = exports.JITO_TIP_DEFAULT = exports.KAMINO_OBTRIGATION_SIZE = exports.METEORA_POSITION_SIZE = exports.STAKE_ACCOUNT_SIZE = exports.MARINADE_TICKET_SIZE = exports.SEED_ESCROW = exports.SEED_VAULT = exports.SEED_STATE = exports.SEED_MINT = exports.SEED_METADATA = void 0;
455
456
  const web3_js_1 = __webpack_require__(5);
456
457
  const glamExports_1 = __webpack_require__(4);
457
458
  exports.SEED_METADATA = (glamExports_1.GlamProtocolIdlJson.constants.find((x) => x.name === "SEED_METADATA")
@@ -504,6 +505,10 @@ exports.MEMO_PROGRAM = new web3_js_1.PublicKey("MemoSq4gqABAXKb96qnH8TysNcWxMyWC
504
505
  */
505
506
  exports.JITO_STAKE_POOL = new web3_js_1.PublicKey("Jito4APyf642JPZPx3hGc6WWJ8zPKtRbRs4P815Awbb");
506
507
  exports.JUPSOL_STAKE_POOL = new web3_js_1.PublicKey("8VpRhuxa7sUUepdY3kQiTmX9rS5vx4WgaXiAnXq4KCtr");
508
+ /**
509
+ * Referrers
510
+ */
511
+ exports.GLAM_REFERRER = new web3_js_1.PublicKey("GLAMrG37ZqioqvzBNQGCfCUueDz3tsr7MwMFyRk9PS89");
507
512
 
508
513
 
509
514
  /***/ }),
@@ -597,7 +602,7 @@ class GlamClient extends base_1.BaseClient {
597
602
  }
598
603
  get price() {
599
604
  if (!this._price) {
600
- this._price = new price_1.PriceClient(this);
605
+ this._price = new price_1.PriceClient(this, this.kaminoLending);
601
606
  }
602
607
  return this._price;
603
608
  }
@@ -619,6 +624,12 @@ class GlamClient extends base_1.BaseClient {
619
624
  }
620
625
  return this._kaminoLending;
621
626
  }
627
+ get kaminoFarm() {
628
+ if (!this._kaminoFarm) {
629
+ this._kaminoFarm = new kamino_1.KaminoFarmClient(this);
630
+ }
631
+ return this._kaminoFarm;
632
+ }
622
633
  get meteoraDlmm() {
623
634
  if (!this._meteoraDlmm) {
624
635
  this._meteoraDlmm = new meteora_1.MeteoraDlmmClient(this);
@@ -1598,6 +1609,12 @@ class DriftClient {
1598
1609
  (0, sdk_1.getUserStatsAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID, vault),
1599
1610
  ];
1600
1611
  }
1612
+ getGlamReferrer() {
1613
+ return [
1614
+ (0, sdk_1.getUserAccountPublicKeySync)(constants_1.DRIFT_PROGRAM_ID, constants_1.GLAM_REFERRER, 0),
1615
+ (0, sdk_1.getUserStatsAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID, constants_1.GLAM_REFERRER),
1616
+ ];
1617
+ }
1601
1618
  async fetchMarketConfigs() {
1602
1619
  const response = await fetch("https://api.glam.systems/v0/drift/market_configs/");
1603
1620
  if (!response.ok) {
@@ -1708,6 +1725,11 @@ class DriftClient {
1708
1725
  .concat(Array(24).fill(0));
1709
1726
  const [user, userStats] = this.getUser(glamState, subAccountId);
1710
1727
  const state = await (0, sdk_1.getDriftStateAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID);
1728
+ const remainingAccounts = this.getGlamReferrer().map((p) => ({
1729
+ pubkey: p,
1730
+ isWritable: true,
1731
+ isSigner: false,
1732
+ }));
1711
1733
  return await this.base.program.methods
1712
1734
  .driftInitializeUser(subAccountId, name)
1713
1735
  .accounts({
@@ -1717,8 +1739,7 @@ class DriftClient {
1717
1739
  state,
1718
1740
  glamSigner,
1719
1741
  })
1720
- // We should only try to add referrer if it is the first user (subAccountId == 0)
1721
- // .remainingAccounts([]) TODO: set glam referral account
1742
+ .remainingAccounts(remainingAccounts)
1722
1743
  .instruction();
1723
1744
  }
1724
1745
  async initializeTx(glamState, subAccountId = 0, txOptions = {}) {
@@ -1890,7 +1911,11 @@ class DriftClient {
1890
1911
  }
1891
1912
  async placeOrderTx(glamState, orderParams, subAccountId = 0, marketConfigs, txOptions = {}) {
1892
1913
  const { marketIndex, marketType } = orderParams;
1893
- const remainingAccounts = await this.composeRemainingAccounts(glamState, subAccountId, marketConfigs, marketType, marketIndex);
1914
+ const remainingAccounts = (await this.composeRemainingAccounts(glamState, subAccountId, marketConfigs, marketType, marketIndex)).concat(this.getGlamReferrer().map((p) => ({
1915
+ pubkey: p,
1916
+ isWritable: true,
1917
+ isSigner: false,
1918
+ })));
1894
1919
  const glamSigner = txOptions.signer || this.base.getSigner();
1895
1920
  const [user] = this.getUser(glamState, subAccountId);
1896
1921
  const state = await (0, sdk_1.getDriftStateAccountPublicKey)(constants_1.DRIFT_PROGRAM_ID);
@@ -3873,7 +3898,7 @@ exports.MintClient = MintClient;
3873
3898
 
3874
3899
 
3875
3900
  Object.defineProperty(exports, "__esModule", ({ value: true }));
3876
- exports.KaminoLendingClient = void 0;
3901
+ exports.KaminoFarmClient = exports.KaminoLendingClient = void 0;
3877
3902
  const tslib_1 = __webpack_require__(1);
3878
3903
  const anchor_1 = __webpack_require__(2);
3879
3904
  const web3_js_1 = __webpack_require__(5);
@@ -3883,7 +3908,7 @@ const constants_1 = __webpack_require__(10);
3883
3908
  const LOOKUP_TABLE = new web3_js_1.PublicKey("284iwGtA9X9aLy3KsyV8uT2pXLARhYbiSi5SiM2g47M2");
3884
3909
  const DEFAULT_OBLIGATION_ARGS = { tag: 0, id: 0 };
3885
3910
  const SCOPE_PRICES = new web3_js_1.PublicKey("3NJYftD5sjVfxSnUdZ1wVML8f3aC6mp1CXCL6L7TnU8C");
3886
- function refreshObligation(accounts, programId) {
3911
+ function refreshObligation(accounts, programId = constants_1.KAMINO_LENDING_PROGRAM) {
3887
3912
  const keys = [
3888
3913
  { pubkey: accounts.lendingMarket, isSigner: false, isWritable: false },
3889
3914
  { pubkey: accounts.obligation, isSigner: false, isWritable: true },
@@ -3896,7 +3921,7 @@ function refreshObligation(accounts, programId) {
3896
3921
  const ix = new web3_js_1.TransactionInstruction({ keys, programId, data });
3897
3922
  return ix;
3898
3923
  }
3899
- function refreshReserve(accounts, programId) {
3924
+ function refreshReserve(accounts, programId = constants_1.KAMINO_LENDING_PROGRAM) {
3900
3925
  const keys = [
3901
3926
  { pubkey: accounts.reserve, isSigner: false, isWritable: true },
3902
3927
  { pubkey: accounts.lendingMarket, isSigner: false, isWritable: false },
@@ -3918,7 +3943,7 @@ function refreshReserve(accounts, programId) {
3918
3943
  const ix = new web3_js_1.TransactionInstruction({ keys, programId, data });
3919
3944
  return ix;
3920
3945
  }
3921
- function refreshObligationFarmsForReserve(args, accounts, programId) {
3946
+ function refreshObligationFarmsForReserve(args, accounts, programId = constants_1.KAMINO_LENDING_PROGRAM) {
3922
3947
  const keys = [
3923
3948
  { pubkey: accounts.crank, isSigner: true, isWritable: false },
3924
3949
  {
@@ -3988,7 +4013,7 @@ class KaminoLendingClient {
3988
4013
  * @returns
3989
4014
  */
3990
4015
  async initUserMetadata(statePda, referrer, txOptions = {}) {
3991
- const tx = await this.initUserMetadataTx(new web3_js_1.PublicKey(statePda), referrer ? new web3_js_1.PublicKey(referrer) : web3_js_1.PublicKey.default, txOptions);
4016
+ const tx = await this.initUserMetadataTx(new web3_js_1.PublicKey(statePda), referrer ? new web3_js_1.PublicKey(referrer) : null, txOptions);
3992
4017
  return await this.base.sendAndConfirm(tx);
3993
4018
  }
3994
4019
  /**
@@ -4067,14 +4092,11 @@ class KaminoLendingClient {
4067
4092
  const [obligationFarm] = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("user"), farm.toBuffer(), obligation.toBuffer()], constants_1.KAMINO_FARM_PROGRAM);
4068
4093
  return obligationFarm;
4069
4094
  }
4070
- async initUserMetadataTx(glamState, referrer, txOptions) {
4095
+ async initUserMetadataTx(glamState, referrer, txOptions = {}) {
4071
4096
  const glamSigner = txOptions.signer || this.base.getSigner();
4072
4097
  const vault = this.base.getVaultPda(glamState);
4073
4098
  const userMetadata = this.getUserMetadataPda(vault);
4074
4099
  const lookupTable = new web3_js_1.PublicKey(0); // FIXME: create lookup table
4075
- const referrerUserMetadata = referrer.equals(web3_js_1.PublicKey.default)
4076
- ? constants_1.KAMINO_LENDING_PROGRAM
4077
- : referrer;
4078
4100
  // @ts-ignore
4079
4101
  const tx = await this.base.program.methods
4080
4102
  .kaminoLendingInitUserMetadata(lookupTable)
@@ -4082,7 +4104,7 @@ class KaminoLendingClient {
4082
4104
  glamState,
4083
4105
  glamSigner,
4084
4106
  userMetadata,
4085
- referrerUserMetadata,
4107
+ referrerUserMetadata: referrer,
4086
4108
  })
4087
4109
  .transaction();
4088
4110
  const vTx = await this.base.intoVersionedTransaction(tx, txOptions);
@@ -4096,7 +4118,7 @@ class KaminoLendingClient {
4096
4118
  switchboardPriceOracle: constants_1.KAMINO_LENDING_PROGRAM,
4097
4119
  switchboardTwapOracle: constants_1.KAMINO_LENDING_PROGRAM,
4098
4120
  scopePrices: SCOPE_PRICES,
4099
- }, constants_1.KAMINO_LENDING_PROGRAM));
4121
+ }));
4100
4122
  }
4101
4123
  refreshObligationFarmsForReserveIxs(obligation, lendingMarket, parsedReserves) {
4102
4124
  return parsedReserves
@@ -4119,26 +4141,30 @@ class KaminoLendingClient {
4119
4141
  farmsProgram: constants_1.KAMINO_FARM_PROGRAM,
4120
4142
  rent: web3_js_1.SYSVAR_RENT_PUBKEY,
4121
4143
  systemProgram: web3_js_1.SystemProgram.programId,
4122
- }, constants_1.KAMINO_LENDING_PROGRAM);
4144
+ });
4123
4145
  });
4124
4146
  })
4125
4147
  .flat();
4126
4148
  }
4127
- /**
4128
- * Returns an array of instructions for refreshing an existing obligation and reserves it depends on.
4129
- */
4130
- async getRefreshIxs(obligation, lendingMarket) {
4131
- // If obligation has deposits or borrows, we need the following refresh ixs:
4132
- // - refreshReserve x N_reserves
4133
- // - refreshObligation
4134
- // - refreshObligationFarmsForReserve x M_farms
4135
- const { deposits, borrows } = await this.fetchAndParseObligation(obligation);
4149
+ // If obligation has deposits or borrows, we need the following refresh ixs:
4150
+ // - refreshReserve x N_reserves
4151
+ // - refreshObligation
4152
+ // - refreshObligationFarmsForReserve x M_farms
4153
+ //
4154
+ // For pricing purpose, we don't need to refresh farm states
4155
+ async getRefreshIxs(obligation, refreshFarms = true) {
4156
+ const { lendingMarket, deposits, borrows } = await this.fetchAndParseObligation(obligation);
4157
+ if (!lendingMarket) {
4158
+ throw new Error("Lending market not found");
4159
+ }
4136
4160
  const reserves = deposits.concat(borrows).map((d) => d.reserve);
4137
4161
  const parsedReserves = await this.fetchAndParseReserves(reserves);
4138
4162
  return [
4139
4163
  ...this.refreshReserveIxs(lendingMarket, reserves),
4140
- refreshObligation({ lendingMarket, obligation, reserves }, constants_1.KAMINO_LENDING_PROGRAM),
4141
- ...this.refreshObligationFarmsForReserveIxs(obligation, lendingMarket, parsedReserves),
4164
+ refreshObligation({ lendingMarket, obligation, reserves }),
4165
+ ...(refreshFarms
4166
+ ? this.refreshObligationFarmsForReserveIxs(obligation, lendingMarket, parsedReserves)
4167
+ : []),
4142
4168
  ];
4143
4169
  }
4144
4170
  getMarketAuthority(market) {
@@ -4170,9 +4196,15 @@ class KaminoLendingClient {
4170
4196
  }
4171
4197
  const obligationAccount = await this.base.provider.connection.getAccountInfo(obligation);
4172
4198
  if (!obligationAccount) {
4173
- return { deposits: [], borrows: [] };
4199
+ return {
4200
+ address: obligation,
4201
+ lendingMarket: null,
4202
+ deposits: [],
4203
+ borrows: [],
4204
+ };
4174
4205
  }
4175
4206
  const data = obligationAccount.data;
4207
+ const lendingMarket = new web3_js_1.PublicKey(data.subarray(32, 64));
4176
4208
  // read deposits
4177
4209
  let depositsOffset = 96;
4178
4210
  let depositSize = 136;
@@ -4180,7 +4212,8 @@ class KaminoLendingClient {
4180
4212
  const depositsData = data.subarray(depositsOffset, depositsOffset + numDeposits * depositSize);
4181
4213
  const deposits = Array.from({ length: numDeposits }, (_, i) => {
4182
4214
  const depositData = depositsData.subarray(i * depositSize, (i + 1) * depositSize);
4183
- return { reserve: new web3_js_1.PublicKey(depositData.subarray(0, 32)) };
4215
+ const reserve = new web3_js_1.PublicKey(depositData.subarray(0, 32));
4216
+ return { reserve };
4184
4217
  }).filter((d) => !d.reserve.equals(web3_js_1.PublicKey.default));
4185
4218
  // read borrows
4186
4219
  let borrowsOffset = 1208;
@@ -4189,19 +4222,32 @@ class KaminoLendingClient {
4189
4222
  const borrowsData = data.subarray(borrowsOffset, borrowsOffset + numBorrows * borrowSize);
4190
4223
  const borrows = Array.from({ length: numBorrows }, (_, i) => {
4191
4224
  const borrowData = borrowsData.subarray(i * borrowSize, (i + 1) * borrowSize);
4192
- return { reserve: new web3_js_1.PublicKey(borrowData.subarray(0, 32)) };
4225
+ const reserve = new web3_js_1.PublicKey(borrowData.subarray(0, 32));
4226
+ return { reserve };
4193
4227
  }).filter((d) => !d.reserve.equals(web3_js_1.PublicKey.default));
4194
- const parsedObligation = { deposits, borrows };
4228
+ const parsedObligation = {
4229
+ address: obligation,
4230
+ lendingMarket,
4231
+ deposits,
4232
+ borrows,
4233
+ };
4195
4234
  this.obligations.set(obligation, parsedObligation);
4196
4235
  return parsedObligation;
4197
4236
  }
4198
- /**
4199
- * We only need pubkeys that don't change over time. No need to fetch them every time.
4200
- *
4201
- * @param market
4202
- * @param asset
4203
- * @returns
4204
- */
4237
+ _parseReserveAccount(data) {
4238
+ const market = new web3_js_1.PublicKey(data.subarray(32, 64));
4239
+ const farmCollateral = new web3_js_1.PublicKey(data.subarray(64, 96));
4240
+ const farmDebt = new web3_js_1.PublicKey(data.subarray(96, 128));
4241
+ const liquidityMint = new web3_js_1.PublicKey(data.subarray(128, 160));
4242
+ return {
4243
+ farmCollateral: farmCollateral.equals(web3_js_1.PublicKey.default)
4244
+ ? null
4245
+ : farmCollateral,
4246
+ farmDebt: farmDebt.equals(web3_js_1.PublicKey.default) ? null : farmDebt,
4247
+ liquidityMint,
4248
+ ...this.reservePdas(market, liquidityMint),
4249
+ };
4250
+ }
4205
4251
  async fetchAndParseReserves(reserves) {
4206
4252
  if (this.pubkeyArraysEqual(reserves, Array.from(this.reserves.keys()))) {
4207
4253
  return Array.from(this.reserves.values());
@@ -4213,60 +4259,32 @@ class KaminoLendingClient {
4213
4259
  return reserveAccounts
4214
4260
  .filter((a) => !!a)
4215
4261
  .map((account, i) => {
4216
- const data = account.data;
4217
- const market = new web3_js_1.PublicKey(data.subarray(32, 64));
4218
- const farmCollateral = new web3_js_1.PublicKey(data.subarray(64, 96));
4219
- const farmDebt = new web3_js_1.PublicKey(data.subarray(96, 128));
4220
- const liquidityMint = new web3_js_1.PublicKey(data.subarray(128, 160));
4221
- const parsed = {
4262
+ const parsedReserve = {
4222
4263
  address: reserves[i],
4223
- farmCollateral: farmCollateral.equals(web3_js_1.PublicKey.default)
4224
- ? undefined
4225
- : farmCollateral,
4226
- farmDebt: farmDebt.equals(web3_js_1.PublicKey.default) ? undefined : farmDebt,
4227
- liquidityMint,
4228
- ...this.reservePdas(market, liquidityMint),
4264
+ ...this._parseReserveAccount(account.data),
4229
4265
  };
4230
- this.reserves.set(reserves[i], parsed);
4231
- return parsed;
4266
+ this.reserves.set(reserves[i], parsedReserve);
4267
+ return parsedReserve;
4232
4268
  });
4233
4269
  }
4234
4270
  async findAndParseReserve(market, asset) {
4235
4271
  const accounts = await this.base.provider.connection.getProgramAccounts(constants_1.KAMINO_LENDING_PROGRAM, {
4236
4272
  filters: [
4237
4273
  { dataSize: 8624 },
4238
- {
4239
- memcmp: {
4240
- offset: 32,
4241
- bytes: market.toBase58(),
4242
- },
4243
- },
4244
- {
4245
- memcmp: {
4246
- offset: 128,
4247
- bytes: asset.toBase58(),
4248
- },
4249
- },
4274
+ { memcmp: { offset: 32, bytes: market.toBase58() } },
4275
+ { memcmp: { offset: 128, bytes: asset.toBase58() } },
4250
4276
  ],
4251
4277
  });
4252
4278
  if (accounts.length === 0) {
4253
4279
  throw new Error("Reserve not found");
4254
4280
  }
4255
4281
  const account = accounts[0];
4256
- const data = account.account.data;
4257
- const farmCollateral = new web3_js_1.PublicKey(data.subarray(64, 96));
4258
- const farmDebt = new web3_js_1.PublicKey(data.subarray(96, 128));
4259
- const parsed = {
4282
+ const parsedReserve = {
4260
4283
  address: account.pubkey,
4261
- farmCollateral: farmCollateral.equals(web3_js_1.PublicKey.default)
4262
- ? undefined
4263
- : farmCollateral,
4264
- farmDebt: farmDebt.equals(web3_js_1.PublicKey.default) ? undefined : farmDebt,
4265
- liquidityMint: asset,
4266
- ...this.reservePdas(market, asset),
4284
+ ...this._parseReserveAccount(account.account.data),
4267
4285
  };
4268
- this.reserves.set(account.pubkey, parsed);
4269
- return parsed;
4286
+ this.reserves.set(account.pubkey, parsedReserve);
4287
+ return parsedReserve;
4270
4288
  }
4271
4289
  async depositTx(glamState, market, asset, amount, txOptions) {
4272
4290
  const glamSigner = txOptions.signer || this.base.getSigner();
@@ -4326,7 +4344,11 @@ class KaminoLendingClient {
4326
4344
  // Refresh reserves, including deposit reserve and reserves in use
4327
4345
  preInstructions.push(...this.refreshReserveIxs(market, reservesToRefresh));
4328
4346
  // Refresh obligation with reserves in use
4329
- preInstructions.push(refreshObligation({ lendingMarket: market, obligation, reserves: reservesInUse }, constants_1.KAMINO_LENDING_PROGRAM));
4347
+ preInstructions.push(refreshObligation({
4348
+ lendingMarket: market,
4349
+ obligation,
4350
+ reserves: reservesInUse,
4351
+ }));
4330
4352
  if (depositReserve.farmCollateral) {
4331
4353
  const ixs = this.refreshObligationFarmsForReserveIxs(obligation, market, [
4332
4354
  depositReserve,
@@ -4373,7 +4395,6 @@ class KaminoLendingClient {
4373
4395
  liquidityTokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
4374
4396
  instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
4375
4397
  obligationFarmUserState: obligationFarm,
4376
- // @ts-ignore
4377
4398
  reserveFarmState: depositReserve.farmCollateral,
4378
4399
  farmsProgram: constants_1.KAMINO_FARM_PROGRAM,
4379
4400
  })
@@ -4429,7 +4450,11 @@ class KaminoLendingClient {
4429
4450
  // Refresh reserves, including deposit reserve and reserves in use
4430
4451
  preInstructions.push(...this.refreshReserveIxs(market, reservesToRefresh));
4431
4452
  // Refresh obligation with reserves in use
4432
- preInstructions.push(refreshObligation({ lendingMarket: market, obligation, reserves: reservesInUse }, constants_1.KAMINO_LENDING_PROGRAM));
4453
+ preInstructions.push(refreshObligation({
4454
+ lendingMarket: market,
4455
+ obligation,
4456
+ reserves: reservesInUse,
4457
+ }));
4433
4458
  if (withdrawReserve.farmCollateral) {
4434
4459
  const ixs = this.refreshObligationFarmsForReserveIxs(obligation, market, [
4435
4460
  withdrawReserve,
@@ -4460,7 +4485,6 @@ class KaminoLendingClient {
4460
4485
  liquidityTokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
4461
4486
  instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
4462
4487
  obligationFarmUserState: obligationFarm,
4463
- // @ts-ignore
4464
4488
  reserveFarmState: withdrawReserve.farmCollateral,
4465
4489
  farmsProgram: constants_1.KAMINO_FARM_PROGRAM,
4466
4490
  })
@@ -4522,7 +4546,11 @@ class KaminoLendingClient {
4522
4546
  // Refresh reserves, including deposit reserve and reserves in use
4523
4547
  preInstructions.push(...this.refreshReserveIxs(market, reservesToRefresh));
4524
4548
  // Refresh obligation with reserves in use
4525
- preInstructions.push(refreshObligation({ lendingMarket: market, obligation, reserves: reservesInUse }, constants_1.KAMINO_LENDING_PROGRAM));
4549
+ preInstructions.push(refreshObligation({
4550
+ lendingMarket: market,
4551
+ obligation,
4552
+ reserves: reservesInUse,
4553
+ }));
4526
4554
  // Don't need to refresh debt farm for borrow
4527
4555
  /*
4528
4556
  if (borrowReserve.farmDebt) {
@@ -4554,7 +4582,6 @@ class KaminoLendingClient {
4554
4582
  instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
4555
4583
  tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
4556
4584
  obligationFarmUserState: obligationFarm,
4557
- // @ts-ignore
4558
4585
  reserveFarmState: borrowReserve.farmDebt,
4559
4586
  farmsProgram: constants_1.KAMINO_FARM_PROGRAM,
4560
4587
  })
@@ -4613,7 +4640,11 @@ class KaminoLendingClient {
4613
4640
  // Refresh reserves, including deposit reserve and reserves in use
4614
4641
  preInstructions.push(...this.refreshReserveIxs(market, reservesToRefresh));
4615
4642
  // Refresh obligation with reserves in use
4616
- preInstructions.push(refreshObligation({ lendingMarket: market, obligation, reserves: reservesInUse }, constants_1.KAMINO_LENDING_PROGRAM));
4643
+ preInstructions.push(refreshObligation({
4644
+ lendingMarket: market,
4645
+ obligation,
4646
+ reserves: reservesInUse,
4647
+ }));
4617
4648
  const repayIx = await this.base.program.methods
4618
4649
  .kaminoLendingRepayObligationLiquidityV2(amount)
4619
4650
  .accounts({
@@ -4629,7 +4660,6 @@ class KaminoLendingClient {
4629
4660
  instructionSysvarAccount: web3_js_1.SYSVAR_INSTRUCTIONS_PUBKEY,
4630
4661
  tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
4631
4662
  obligationFarmUserState: obligationFarm,
4632
- // @ts-ignore
4633
4663
  reserveFarmState: repayReserve.farmDebt,
4634
4664
  farmsProgram: constants_1.KAMINO_FARM_PROGRAM,
4635
4665
  })
@@ -4650,6 +4680,119 @@ class KaminoLendingClient {
4650
4680
  }
4651
4681
  }
4652
4682
  exports.KaminoLendingClient = KaminoLendingClient;
4683
+ class KaminoFarmClient {
4684
+ constructor(base) {
4685
+ this.base = base;
4686
+ this.farmVaultsAuthority = (farm) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("authority"), farm.toBuffer()], constants_1.KAMINO_FARM_PROGRAM)[0];
4687
+ this.rewardsTreasuryVault = (globalConfig, mint) => web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("tvault"), globalConfig.toBuffer(), mint.toBuffer()], constants_1.KAMINO_FARM_PROGRAM)[0];
4688
+ }
4689
+ async findAndParseFarmStates(owner) {
4690
+ const accounts = await this.base.provider.connection.getProgramAccounts(constants_1.KAMINO_FARM_PROGRAM, {
4691
+ filters: [
4692
+ { dataSize: 920 },
4693
+ { memcmp: { offset: 48, bytes: owner.toBase58() } },
4694
+ ],
4695
+ });
4696
+ return accounts.map((account) => {
4697
+ const data = account.account.data;
4698
+ const farmState = new web3_js_1.PublicKey(data.subarray(16, 48));
4699
+ return {
4700
+ userFarmState: account.pubkey,
4701
+ farmState,
4702
+ };
4703
+ });
4704
+ }
4705
+ async parseFarm(data) {
4706
+ const globalConfig = new web3_js_1.PublicKey(data.subarray(40, 72));
4707
+ const rewardsOffset = 192;
4708
+ const numRewards = 10;
4709
+ const rewardSize = 704;
4710
+ const rewardsData = data.subarray(rewardsOffset, rewardsOffset + numRewards * rewardSize);
4711
+ const rewards = Array.from({ length: numRewards }, (_, i) => {
4712
+ const rewardData = rewardsData.subarray(i * rewardSize, (i + 1) * rewardSize);
4713
+ const mint = new web3_js_1.PublicKey(rewardData.subarray(0, 32));
4714
+ const tokenProgram = new web3_js_1.PublicKey(rewardData.subarray(40, 72));
4715
+ const rewardsVault = new web3_js_1.PublicKey(rewardData.subarray(120, 152));
4716
+ const minClaimDurationSeconds = new anchor_1.BN(rewardData.subarray(480, 488), "le");
4717
+ return {
4718
+ index: i,
4719
+ mint,
4720
+ minClaimDurationSeconds,
4721
+ tokenProgram,
4722
+ rewardsVault,
4723
+ };
4724
+ }).filter((r) => {
4725
+ if (r.mint.equals(web3_js_1.PublicKey.default)) {
4726
+ return false;
4727
+ }
4728
+ // Filter out rewards with minClaimDurationSeconds > 1 year, they are considered disabled
4729
+ if (r.minClaimDurationSeconds.div(new anchor_1.BN(365 * 24 * 60 * 60)).gt(new anchor_1.BN(1))) {
4730
+ return false;
4731
+ }
4732
+ return true;
4733
+ });
4734
+ return { globalConfig, rewards };
4735
+ }
4736
+ async fetchAndParseFarms(farms) {
4737
+ const farmAccounts = await this.base.provider.connection.getMultipleAccountsInfo(farms);
4738
+ const map = new Map();
4739
+ for (let i = 0; i < farmAccounts.length; i++) {
4740
+ const account = farmAccounts[i];
4741
+ if (!account) {
4742
+ continue;
4743
+ }
4744
+ const data = account.data;
4745
+ const parsedFarm = await this.parseFarm(data);
4746
+ map.set(farms[i].toBase58(), parsedFarm);
4747
+ }
4748
+ return map;
4749
+ }
4750
+ async harvest(statePda, txOptions = {}) {
4751
+ const tx = await this.harvestTx(new web3_js_1.PublicKey(statePda), txOptions);
4752
+ return await this.base.sendAndConfirm(tx);
4753
+ }
4754
+ async harvestTx(glamState, txOptions = {}) {
4755
+ const glamSigner = txOptions.signer || this.base.getSigner();
4756
+ const vault = this.base.getVaultPda(glamState);
4757
+ const farmStates = await this.findAndParseFarmStates(vault);
4758
+ const parsedFarms = await this.fetchAndParseFarms(farmStates.map((f) => f.farmState));
4759
+ const tx = new web3_js_1.Transaction();
4760
+ for (const { userFarmState, farmState } of farmStates) {
4761
+ const { globalConfig, rewards } = parsedFarms.get(farmState.toBase58());
4762
+ for (const { index, mint, tokenProgram, rewardsVault } of rewards) {
4763
+ console.log("Reward token:", mint.toBase58());
4764
+ const vaultAta = this.base.getVaultAta(glamState, mint, tokenProgram);
4765
+ const createAtaIx = (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(glamSigner, vaultAta, vault, mint, tokenProgram);
4766
+ const harvestIx = await this.base.program.methods
4767
+ .kaminoFarmHarvestReward(new anchor_1.BN(index))
4768
+ .accounts({
4769
+ glamState,
4770
+ glamSigner,
4771
+ userState: userFarmState,
4772
+ farmState,
4773
+ globalConfig,
4774
+ rewardMint: mint,
4775
+ userRewardAta: vaultAta,
4776
+ rewardsVault,
4777
+ rewardsTreasuryVault: this.rewardsTreasuryVault(globalConfig, mint),
4778
+ farmVaultsAuthority: this.farmVaultsAuthority(farmState),
4779
+ scopePrices: null,
4780
+ tokenProgram,
4781
+ })
4782
+ .instruction();
4783
+ tx.add(createAtaIx, harvestIx);
4784
+ }
4785
+ }
4786
+ const lookupTables = txOptions.lookupTables ||
4787
+ (await this.base.getAdressLookupTableAccounts([LOOKUP_TABLE]));
4788
+ const vTx = await this.base.intoVersionedTransaction(tx, {
4789
+ ...txOptions,
4790
+ lookupTables,
4791
+ });
4792
+ return vTx;
4793
+ }
4794
+ }
4795
+ exports.KaminoFarmClient = KaminoFarmClient;
4653
4796
 
4654
4797
 
4655
4798
  /***/ }),
@@ -5198,17 +5341,9 @@ const anchor_1 = __webpack_require__(2);
5198
5341
  const assets_1 = __webpack_require__(16);
5199
5342
  const helpers_1 = __webpack_require__(14);
5200
5343
  class PriceClient {
5201
- constructor(base) {
5344
+ constructor(base, klend) {
5202
5345
  this.base = base;
5203
- this.remainingAccountsForPricingKamino = async (glamState) => {
5204
- const glamVault = this.base.getVaultPda(glamState);
5205
- const obligationAccounts = await (0, helpers_1.fetchKaminoObligations)(this.base.provider.connection, glamVault);
5206
- return obligationAccounts.map((a) => ({
5207
- pubkey: a,
5208
- isSigner: false,
5209
- isWritable: false,
5210
- }));
5211
- };
5346
+ this.klend = klend;
5212
5347
  this.remainingAccountsForPricingMeteora = async (glamState) => {
5213
5348
  const glamVault = this.base.getVaultPda(glamState);
5214
5349
  const positions = await (0, helpers_1.fetchMeteoraPositions)(this.base.provider.connection, glamVault);
@@ -5264,6 +5399,29 @@ class PriceClient {
5264
5399
  });
5265
5400
  return pricedAssets.reduce((sum, p) => new anchor_1.BN(p.amount).add(sum), new anchor_1.BN(0));
5266
5401
  }
5402
+ async priceKaminoIxs(glamState, priceDenom) {
5403
+ const glamVault = this.base.getVaultPda(glamState);
5404
+ const obligations = await (0, helpers_1.fetchKaminoObligations)(this.base.provider.connection, glamVault);
5405
+ const refreshIxs = [];
5406
+ for (const obligation of obligations) {
5407
+ const ixs = await this.klend.getRefreshIxs(obligation, false); // skip farms
5408
+ refreshIxs.push(...ixs);
5409
+ }
5410
+ // @ts-ignore
5411
+ const priceIx = await this.base.program.methods
5412
+ .priceKaminoObligations(priceDenom)
5413
+ .accounts({
5414
+ glamState,
5415
+ solOracle: assets_1.SOL_ORACLE,
5416
+ })
5417
+ .remainingAccounts(obligations.map((o) => ({
5418
+ pubkey: o,
5419
+ isSigner: false,
5420
+ isWritable: false,
5421
+ })))
5422
+ .instruction();
5423
+ return [...refreshIxs, priceIx];
5424
+ }
5267
5425
  async priceVaultIxs(glamState, priceDenom) {
5268
5426
  const vault = this.base.getVaultPda(glamState);
5269
5427
  const tickets = await (0, helpers_1.fetchMarinadeTicketAccounts)(this.base.provider.connection, vault);
@@ -5309,20 +5467,13 @@ class PriceClient {
5309
5467
  })
5310
5468
  .remainingAccounts(await this.remainingAccountsForPricingMeteora(glamState))
5311
5469
  .instruction();
5312
- const priceKaminoIx = await this.base.program.methods
5313
- .priceKaminoObligations(priceDenom)
5314
- .accounts({
5315
- glamState,
5316
- solOracle: assets_1.SOL_ORACLE,
5317
- })
5318
- .remainingAccounts(await this.remainingAccountsForPricingKamino(glamState))
5319
- .instruction();
5470
+ const priceKaminoIxs = await this.priceKaminoIxs(glamState, priceDenom);
5320
5471
  return [
5321
5472
  priceTicketsIx,
5322
5473
  priceStakesIx,
5323
5474
  priceVaultIx,
5324
5475
  priceMeteoraIx,
5325
- priceKaminoIx,
5476
+ ...priceKaminoIxs,
5326
5477
  ];
5327
5478
  }
5328
5479
  }
@@ -5341,7 +5492,9 @@ const getPriorityFeeEstimate = async (heliusApiKey, tx, accountKeys, priorityLev
5341
5492
  if (!tx && !accountKeys) {
5342
5493
  throw new Error("Either tx or accountKeys must be provided");
5343
5494
  }
5344
- const options = priorityLevel ? { priorityLevel } : { recommended: true };
5495
+ const options = priorityLevel && priorityLevel !== "Recommended"
5496
+ ? { priorityLevel }
5497
+ : { recommended: true };
5345
5498
  const param = tx
5346
5499
  ? { transaction: bytes_1.bs58.encode(tx.serialize()) }
5347
5500
  : { accountKeys };
@@ -5412,7 +5565,7 @@ class CliConfig {
5412
5565
  set glamState(state) {
5413
5566
  const configPath = getConfigPath();
5414
5567
  const config = fs_1.default.readFileSync(configPath, "utf8");
5415
- const updated = { ...JSON.parse(config), glam_state: state.toBase58() };
5568
+ const updated = { ...JSON.parse(config), glam_state: state?.toBase58() };
5416
5569
  fs_1.default.writeFileSync(configPath, JSON.stringify(updated, null, 2), "utf8");
5417
5570
  CliConfig.reset();
5418
5571
  CliConfig.get();
@@ -6115,12 +6268,12 @@ const web3_js_1 = __webpack_require__(5);
6115
6268
  function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6116
6269
  klend
6117
6270
  .command("init")
6118
- .description("Initialize Kamino Lending account")
6271
+ .description("Initialize Kamino user")
6119
6272
  .action(async () => {
6120
6273
  const glamState = cliConfig.glamState;
6121
6274
  try {
6122
6275
  const txSig = await glamClient.kaminoLending.initUserMetadata(glamState, null, txOptions);
6123
- console.log(`Initialized Kamino Lending:`, txSig);
6276
+ console.log(`Initialized Kamino user:`, txSig);
6124
6277
  }
6125
6278
  catch (e) {
6126
6279
  console.error((0, utils_1.parseTxError)(e));
@@ -6145,19 +6298,19 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6145
6298
  const vault = glamClient.getVaultPda(glamState);
6146
6299
  const obligation = glamClient.kaminoLending.getObligationPda(vault, new web3_js_1.PublicKey(market));
6147
6300
  const tx = new web3_js_1.Transaction();
6148
- const refreshIxs = await glamClient.kaminoLending.getRefreshIxs(obligation, new web3_js_1.PublicKey(market));
6301
+ const refreshIxs = await glamClient.kaminoLending.getRefreshIxs(obligation, false);
6149
6302
  tx.add(...refreshIxs);
6150
6303
  try {
6151
6304
  const vTx = await glamClient.intoVersionedTransaction(tx, txOptions);
6152
6305
  const txSig = await glamClient.sendAndConfirm(vTx);
6153
- console.log(`Refreshed Kamino obligation:`, txSig);
6306
+ console.log(`Refreshed Kamino obligation for pricing:`, txSig);
6154
6307
  }
6155
6308
  catch (e) {
6156
6309
  console.error((0, utils_1.parseTxError)(e));
6157
6310
  throw e;
6158
6311
  }
6159
6312
  const obligations = await (0, glam_sdk_1.fetchKaminoObligations)(glamClient.provider.connection, vault);
6160
- console.log("Obligations:", obligations);
6313
+ console.log("Priced Kamino obligations:", obligations.map((o) => o.toBase58()));
6161
6314
  });
6162
6315
  klend
6163
6316
  .command("deposit <market> <asset> <amount>")
@@ -6174,7 +6327,7 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6174
6327
  }
6175
6328
  try {
6176
6329
  const txSig = await glamClient.kaminoLending.deposit(statePda, market, asset, parseFloat(amount) * 10 ** decimals, txOptions);
6177
- console.log(`Deposit ${amount} SOL to Kamino from vault:`, txSig);
6330
+ console.log(`Deposit ${amount} ${asset} to Kamino from vault:`, txSig);
6178
6331
  }
6179
6332
  catch (e) {
6180
6333
  console.error((0, utils_1.parseTxError)(e));
@@ -6188,7 +6341,7 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6188
6341
  .action(async (market, asset, amount, options) => {
6189
6342
  const statePda = cliConfig.glamState;
6190
6343
  options?.yes ||
6191
- (await (0, utils_1.confirmOperation)(`Confirm repay of ${amount} ${asset}?`));
6344
+ (await (0, utils_1.confirmOperation)(`Confirm withdrawing ${amount} ${asset}?`));
6192
6345
  const decimals = glam_sdk_1.ASSETS_MAINNET.get(asset)?.decimals;
6193
6346
  if (!decimals) {
6194
6347
  console.error(`Asset ${asset} not supported`);
@@ -6196,7 +6349,7 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6196
6349
  }
6197
6350
  try {
6198
6351
  const txSig = await glamClient.kaminoLending.withdraw(statePda, market, asset, parseFloat(amount) * 10 ** decimals, txOptions);
6199
- console.log(`Repaid ${amount} ${asset} to Kamino:`, txSig);
6352
+ console.log(`Withdraw ${amount} ${asset} from Kamino:`, txSig);
6200
6353
  }
6201
6354
  catch (e) {
6202
6355
  console.error((0, utils_1.parseTxError)(e));
@@ -6247,6 +6400,20 @@ function installKlendCommands(klend, glamClient, cliConfig, txOptions = {}) {
6247
6400
  throw e;
6248
6401
  }
6249
6402
  });
6403
+ klend
6404
+ .command("harvest")
6405
+ .description("Harvest Kamino farms rewards")
6406
+ .action(async () => {
6407
+ const statePda = cliConfig.glamState;
6408
+ try {
6409
+ const txSig = await glamClient.kaminoFarm.harvest(statePda, txOptions);
6410
+ console.log(`Harvested farm rewards:`, txSig);
6411
+ }
6412
+ catch (e) {
6413
+ console.error((0, utils_1.parseTxError)(e));
6414
+ throw e;
6415
+ }
6416
+ });
6250
6417
  }
6251
6418
 
6252
6419
 
@@ -6349,7 +6516,7 @@ function installJupCommands(jup, glamClient, cliConfig, txOptions = {}) {
6349
6516
  }
6350
6517
  try {
6351
6518
  const txId = await glamClient.jupiterVote.voteOnProposal(statePda, proposal, Number(side));
6352
- console.log("castVote:", txId);
6519
+ console.log(`Cast vote on proposal ${proposal.toBase58()} with side ${side}:`, txId);
6353
6520
  }
6354
6521
  catch (e) {
6355
6522
  console.error((0, utils_1.parseTxError)(e));
@@ -6419,12 +6586,8 @@ function installIntegrationCommands(integration, glamClient, cliConfig, txOption
6419
6586
  integrations: [...stateModel.integrations, { [integration]: {} }],
6420
6587
  });
6421
6588
  try {
6422
- const txSig = await glamClient.program.methods
6423
- .updateState(updated)
6424
- .accounts({ glamState: statePda })
6425
- .rpc();
6426
- console.log("txSig:", txSig);
6427
- console.log(`${integration} enabled on ${stateModel} (${statePda.toBase58()})`);
6589
+ const txSig = await glamClient.state.updateState(statePda, updated, txOptions);
6590
+ console.log(`${integration} enabled: ${txSig}`);
6428
6591
  }
6429
6592
  catch (e) {
6430
6593
  console.error((0, utils_1.parseTxError)(e));
@@ -6448,12 +6611,8 @@ function installIntegrationCommands(integration, glamClient, cliConfig, txOption
6448
6611
  integrations: stateModel.integrations.filter((integ) => Object.keys(integ)[0] !== integration),
6449
6612
  });
6450
6613
  try {
6451
- const txSig = await glamClient.program.methods
6452
- .updateState(updated)
6453
- .accounts({ glamState: statePda })
6454
- .rpc();
6455
- console.log("txSig:", txSig);
6456
- console.log(`${integration} disabled on ${stateModel.name} (${statePda.toBase58()})`);
6614
+ const txSig = await glamClient.state.updateState(statePda, updated, txOptions);
6615
+ console.log(`${integration} disabled: ${txSig}`);
6457
6616
  }
6458
6617
  catch (e) {
6459
6618
  console.error((0, utils_1.parseTxError)(e));
@@ -6474,10 +6633,19 @@ const anchor_1 = __webpack_require__(2);
6474
6633
  const glam_sdk_1 = __webpack_require__(3);
6475
6634
  const utils_1 = __webpack_require__(38);
6476
6635
  const web3_js_1 = __webpack_require__(5);
6636
+ const allowedPermissions = glam_sdk_1.GlamPermissions.map((p) => p.slice(0, 1).toLowerCase() + p.slice(1));
6637
+ const validate = (permissions) => {
6638
+ permissions.forEach((p) => {
6639
+ if (!allowedPermissions.includes(p)) {
6640
+ console.error(`Invalid permission: ${p}. Value must be among: ${allowedPermissions.join(", ")}`);
6641
+ process.exit(1);
6642
+ }
6643
+ });
6644
+ };
6477
6645
  function installDelegateCommands(delegate, glamClient, cliConfig, txOptions = {}) {
6478
6646
  delegate
6479
6647
  .command("list")
6480
- .description("List delegates and permissions")
6648
+ .description("List delegates and their permissions")
6481
6649
  .action(async () => {
6482
6650
  const statePda = cliConfig.glamState;
6483
6651
  const stateModel = await glamClient.fetchState(statePda);
@@ -6489,20 +6657,19 @@ function installDelegateCommands(delegate, glamClient, cliConfig, txOptions = {}
6489
6657
  acl.permissions.map((p) => Object.keys(p)[0]).join(", "));
6490
6658
  }
6491
6659
  });
6492
- const allowedPermissions = glam_sdk_1.GlamPermissions.map((p) => p.slice(0, 1).toLowerCase() + p.slice(1));
6493
6660
  delegate
6494
6661
  .command("set")
6495
6662
  .argument("<pubkey>", "Delegate pubkey")
6496
6663
  .argument("<permissions...>", `A space-separated list of permissions to grant. Allowed values: ${allowedPermissions.join(", ")}.`)
6497
- .description("Set delegate permissions")
6664
+ .description("(Deprecated. Use `delegate grant` instead.) Set delegate permissions")
6498
6665
  .action(async (pubkey, permissions) => {
6499
- const statePda = cliConfig.glamState;
6666
+ console.warn("This command is deprecated and will be removed in the future. Use `delegate grant` instead.");
6500
6667
  if (!permissions.every((p) => allowedPermissions.includes(p))) {
6501
6668
  console.error(`Invalid permissions: ${permissions}. Values must be among: ${allowedPermissions.join(", ")}`);
6502
6669
  process.exit(1);
6503
6670
  }
6504
6671
  try {
6505
- const txSig = await glamClient.state.upsertDelegateAcls(statePda, [
6672
+ const txSig = await glamClient.state.upsertDelegateAcls(cliConfig.glamState, [
6506
6673
  {
6507
6674
  pubkey: new web3_js_1.PublicKey(pubkey),
6508
6675
  permissions: permissions.map((p) => ({
@@ -6510,9 +6677,72 @@ function installDelegateCommands(delegate, glamClient, cliConfig, txOptions = {}
6510
6677
  })),
6511
6678
  expiresAt: new anchor_1.BN(0),
6512
6679
  },
6513
- ]);
6514
- console.log("txSig:", txSig);
6515
- console.log(`Granted ${pubkey} permissions ${permissions}`);
6680
+ ], txOptions);
6681
+ console.log(`Granted ${pubkey} permissions ${permissions}: ${txSig}`);
6682
+ }
6683
+ catch (e) {
6684
+ console.error((0, utils_1.parseTxError)(e));
6685
+ process.exit(1);
6686
+ }
6687
+ });
6688
+ delegate
6689
+ .command("grant")
6690
+ .argument("<pubkey>", "Delegate pubkey")
6691
+ .argument("<permissions...>", `A space-separated list of permissions to grant. Allowed values: ${allowedPermissions.join(", ")}.`)
6692
+ .description("Grant delegate new permissions")
6693
+ .action(async (pubkey, permissions) => {
6694
+ validate(permissions);
6695
+ const stateModel = await glamClient.fetchState(cliConfig.glamState);
6696
+ const acl = stateModel.delegateAcls.find((acl) => acl.pubkey.toBase58() === pubkey);
6697
+ // if acl doesn't exist, it's a new delegate to add, and we add `wSol` automatically
6698
+ const existingPermissionKeys = new Set(acl ? acl.permissions.map((p) => Object.keys(p)[0]) : ["wSol"]);
6699
+ const newPermissionKeys = permissions.filter((p) => !existingPermissionKeys.has(p));
6700
+ if (newPermissionKeys.length === 0) {
6701
+ console.log(`Delegate ${pubkey} already has permissions: ${permissions.join(", ")}`);
6702
+ return;
6703
+ }
6704
+ const updatedPermissions = Array.from(new Set([...existingPermissionKeys, ...newPermissionKeys])).map((p) => ({ [p]: {} }));
6705
+ try {
6706
+ const txSig = await glamClient.state.upsertDelegateAcls(cliConfig.glamState, [
6707
+ {
6708
+ pubkey: new web3_js_1.PublicKey(pubkey),
6709
+ permissions: updatedPermissions,
6710
+ expiresAt: new anchor_1.BN(0),
6711
+ },
6712
+ ], txOptions);
6713
+ console.log(`Granted ${pubkey} permissions ${permissions}: ${txSig}`);
6714
+ }
6715
+ catch (e) {
6716
+ console.error((0, utils_1.parseTxError)(e));
6717
+ process.exit(1);
6718
+ }
6719
+ });
6720
+ delegate
6721
+ .command("revoke")
6722
+ .argument("<pubkey>", "Delegate pubkey")
6723
+ .argument("<permissions...>", `A space-separated list of permissions to revoke. Allowed values: ${allowedPermissions.join(", ")}.`)
6724
+ .description("Revoke delegate permissions")
6725
+ .action(async (pubkey, permissions) => {
6726
+ validate(permissions);
6727
+ const stateModel = await glamClient.fetchState(cliConfig.glamState);
6728
+ const acl = stateModel.delegateAcls.find((acl) => acl.pubkey.toBase58() === pubkey);
6729
+ if (!acl) {
6730
+ console.error(`Delegate ${pubkey} not found. No need to revoke.`);
6731
+ return;
6732
+ }
6733
+ const existingPermissionKeys = new Set(acl.permissions.map((p) => Object.keys(p)[0]));
6734
+ const updatedPermissions = Array.from(existingPermissionKeys)
6735
+ .filter((p) => !permissions.includes(p))
6736
+ .map((p) => ({ [p]: {} }));
6737
+ try {
6738
+ const txSig = await glamClient.state.upsertDelegateAcls(cliConfig.glamState, [
6739
+ {
6740
+ pubkey: new web3_js_1.PublicKey(pubkey),
6741
+ permissions: updatedPermissions,
6742
+ expiresAt: new anchor_1.BN(0),
6743
+ },
6744
+ ], txOptions);
6745
+ console.log(`Revoked ${pubkey} permissions ${permissions}: ${txSig}`);
6516
6746
  }
6517
6747
  catch (e) {
6518
6748
  console.error((0, utils_1.parseTxError)(e));
@@ -6521,15 +6751,77 @@ function installDelegateCommands(delegate, glamClient, cliConfig, txOptions = {}
6521
6751
  });
6522
6752
  delegate
6523
6753
  .command("delete <pubkey>")
6524
- .description("Revoke all delegate permissions for a pubkey")
6754
+ .description("Revoke delegate access entirely")
6525
6755
  .action(async (pubkey) => {
6526
6756
  const statePda = cliConfig.glamState;
6757
+ const stateModel = await glamClient.fetchState(statePda);
6758
+ const acl = stateModel.delegateAcls.find((acl) => acl.pubkey.toBase58() === pubkey);
6759
+ if (!acl) {
6760
+ console.error(`Delegate ${pubkey} not found. No need to delete.`);
6761
+ return;
6762
+ }
6527
6763
  try {
6528
- const txSig = await glamClient.state.deleteDelegateAcls(statePda, [
6529
- new web3_js_1.PublicKey(pubkey),
6530
- ]);
6531
- console.log("txSig:", txSig);
6532
- console.log(`Revoked ${pubkey} access to ${statePda.toBase58()}`);
6764
+ const txSig = await glamClient.state.deleteDelegateAcls(statePda, [new web3_js_1.PublicKey(pubkey)], txOptions);
6765
+ console.log(`Revoked ${pubkey} access to ${statePda.toBase58()}: ${txSig}`);
6766
+ }
6767
+ catch (e) {
6768
+ console.error((0, utils_1.parseTxError)(e));
6769
+ process.exit(1);
6770
+ }
6771
+ });
6772
+ }
6773
+
6774
+
6775
+ /***/ }),
6776
+ /* 51 */
6777
+ /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
6778
+
6779
+
6780
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
6781
+ exports.installSwapCommands = installSwapCommands;
6782
+ const utils_1 = __webpack_require__(38);
6783
+ function installSwapCommands(program, glamClient, cliConfig, txOptions = {}) {
6784
+ program
6785
+ .command("swap <from> <to> <amount>")
6786
+ .description("Swap assets held in the vault")
6787
+ .option("-m, --max-accounts <num>", "Specify max accounts allowed")
6788
+ .option("-s, --slippage-bps <bps>", "Specify slippage bps")
6789
+ .option("-d, --only-direct-routes", "Direct routes only")
6790
+ .action(async (from, to, amount, options) => {
6791
+ const statePda = cliConfig.glamState;
6792
+ const { maxAccounts, slippageBps, onlyDirectRoutes } = options;
6793
+ const response = await fetch("https://tokens.jup.ag/tokens?tags=verified");
6794
+ const data = await response.json(); // an array of tokens
6795
+ const tokenFrom = data.find((t) => t.address === from || t.symbol.toLowerCase() === from.toLowerCase());
6796
+ const tokenTo = data.find((t) => t.address === to || t.symbol.toLowerCase() === to.toLowerCase());
6797
+ if (!tokenFrom || !tokenTo) {
6798
+ console.error("Error: cannot swap unverified token");
6799
+ process.exit(1);
6800
+ }
6801
+ let quoteParams = {
6802
+ inputMint: tokenFrom.address,
6803
+ outputMint: tokenTo.address,
6804
+ amount: Math.floor(parseFloat(amount) * 10 ** tokenFrom.decimals),
6805
+ swapMode: "ExactIn",
6806
+ slippageBps: slippageBps ? parseInt(slippageBps) : 5,
6807
+ asLegacyTransaction: false,
6808
+ };
6809
+ if (maxAccounts) {
6810
+ quoteParams = {
6811
+ ...quoteParams,
6812
+ maxAccounts: parseInt(maxAccounts),
6813
+ };
6814
+ }
6815
+ if (onlyDirectRoutes) {
6816
+ quoteParams = {
6817
+ ...quoteParams,
6818
+ onlyDirectRoutes,
6819
+ };
6820
+ }
6821
+ console.log("Quote params:", quoteParams);
6822
+ try {
6823
+ const txSig = await glamClient.jupiterSwap.swap(statePda, { quoteParams }, txOptions);
6824
+ console.log(`Swapped ${amount} ${from} to ${to}: ${txSig}`);
6533
6825
  }
6534
6826
  catch (e) {
6535
6827
  console.error((0, utils_1.parseTxError)(e));
@@ -6589,6 +6881,7 @@ const klend_1 = __webpack_require__(47);
6589
6881
  const jup_1 = __webpack_require__(48);
6590
6882
  const integration_1 = __webpack_require__(49);
6591
6883
  const delegate_1 = __webpack_require__(50);
6884
+ const swap_1 = __webpack_require__(51);
6592
6885
  const cliConfig = utils_1.CliConfig.get();
6593
6886
  const glamClient = new glam_sdk_1.GlamClient();
6594
6887
  const txOptions = {
@@ -6613,7 +6906,7 @@ let globalOpts = { skipSimulation: false };
6613
6906
  program
6614
6907
  .name("glam-cli")
6615
6908
  .description("CLI for interacting with the GLAM Protocol")
6616
- .version("0.1.18")
6909
+ .version("0.1.20")
6617
6910
  .option("-S, --skip-simulation", "Skip transaction simulation");
6618
6911
  program
6619
6912
  .command("env")
@@ -6625,7 +6918,7 @@ program
6625
6918
  if (cliConfig.glam_state) {
6626
6919
  const vault = glamClient.getVaultPda(cliConfig.glamState);
6627
6920
  console.log("GLAM state:", cliConfig.glam_state);
6628
- console.log("Active vault:", vault.toBase58());
6921
+ console.log("Active vault:", vault.toBase58());
6629
6922
  }
6630
6923
  else {
6631
6924
  console.log("No active GLAM specified");
@@ -6857,53 +7150,7 @@ program
6857
7150
  }
6858
7151
  });
6859
7152
  });
6860
- program
6861
- .command("swap <from> <to> <amount>")
6862
- .description("Swap assets held in the vault")
6863
- .option("-m, --max-accounts <num>", "Specify max accounts allowed")
6864
- .option("-s, --slippage-bps <bps>", "Specify slippage bps")
6865
- .option("-d, --only-direct-routes", "Direct routes only")
6866
- .action(async (from, to, amount, options) => {
6867
- const statePda = cliConfig.glamState;
6868
- const { maxAccounts, slippageBps, onlyDirectRoutes } = options;
6869
- const response = await fetch("https://tokens.jup.ag/tokens?tags=verified");
6870
- const data = await response.json(); // an array of tokens
6871
- const tokenFrom = data.find((t) => t.address === from || t.symbol.toLowerCase() === from.toLowerCase());
6872
- const tokenTo = data.find((t) => t.address === to || t.symbol.toLowerCase() === to.toLowerCase());
6873
- if (!tokenFrom || !tokenTo) {
6874
- console.error("Error: cannot swap unverified token");
6875
- process.exit(1);
6876
- }
6877
- let quoteParams = {
6878
- inputMint: tokenFrom.address,
6879
- outputMint: tokenTo.address,
6880
- amount: Math.floor(parseFloat(amount) * 10 ** tokenFrom.decimals),
6881
- swapMode: "ExactIn",
6882
- slippageBps: slippageBps ? parseInt(slippageBps) : 5,
6883
- asLegacyTransaction: false,
6884
- };
6885
- if (maxAccounts) {
6886
- quoteParams = {
6887
- ...quoteParams,
6888
- maxAccounts: parseInt(maxAccounts),
6889
- };
6890
- }
6891
- if (onlyDirectRoutes) {
6892
- quoteParams = {
6893
- ...quoteParams,
6894
- onlyDirectRoutes,
6895
- };
6896
- }
6897
- console.log("Quote params:", quoteParams);
6898
- try {
6899
- const txSig = await glamClient.jupiterSwap.swap(statePda, { quoteParams }, { ...txOptions, simulate: !globalOpts.skipSimulation });
6900
- console.log(`Swapped ${amount} ${from} to ${to}: ${txSig}`);
6901
- }
6902
- catch (e) {
6903
- console.error((0, utils_1.parseTxError)(e));
6904
- process.exit(1);
6905
- }
6906
- });
7153
+ (0, swap_1.installSwapCommands)(program, glamClient, cliConfig, txOptions);
6907
7154
  const delegate = program.command("delegate").description("Manage delegates");
6908
7155
  (0, delegate_1.installDelegateCommands)(delegate, glamClient, cliConfig, txOptions);
6909
7156
  const integration = program