@glamsystems/glam-cli 1.0.9 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/main.js +486 -164
- package/package.json +2 -2
package/main.js
CHANGED
|
@@ -189,105 +189,105 @@ module.exports = require("@solana/web3.js");
|
|
|
189
189
|
/***/ ((module) => {
|
|
190
190
|
|
|
191
191
|
"use strict";
|
|
192
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz","metadata":{"name":"glam_protocol","version":"1.0.2","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"cancel_timelock","discriminator":[158,180,47,81,133,231,168,238],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]},{"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":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"cpi_proxy","docs":["Only accessible by integration programs"],"discriminator":[65,134,48,2,7,232,199,46],"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":"integration_authority","signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"data","type":"bytes"},{"name":"extra_params","type":{"vec":{"defined":{"name":"ExtraParams"}}}}]},{"name":"emergency_access_update","docs":["Bypasses the timelock for emergency updates on access control rules. Allowed operations:","- removing an integration program","- removing a delegate","- enabling/disabling glam state"],"discriminator":[207,247,157,14,87,132,230,0],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyAccessUpdateArgs"}}}]},{"name":"enable_disable_protocols","discriminator":[222,198,164,163,194,161,11,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"set_enabled","type":"bool"}]},{"name":"extend_state","discriminator":[34,147,151,206,134,128,82,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"bytes","type":"u32"}]},{"name":"grant_revoke_delegate_permissions","discriminator":[162,21,218,157,218,86,114,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"delegate","type":"pubkey"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"},{"name":"set_granted","type":"bool"}]},{"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_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"base_asset_mint"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"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_stake_pool","optional":true},{"name":"output_stake_pool","optional":true}],"args":[{"name":"data","type":"bytes"}]},{"name":"link_unlink_mint_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[85,67,58,245,175,14,122,6],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"link","type":"bool"}]},{"name":"reset_priced_protocols_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[86,95,153,145,179,181,107,235],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[]},{"name":"set_jupiter_swap_policy","discriminator":[189,182,227,165,127,148,246,189],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"JupiterSwapPolicy"}}}]},{"name":"set_protocol_policy","discriminator":[37,99,61,122,227,102,182,180],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]},{"name":"set_system_transfer_policy","discriminator":[102,21,157,101,19,4,100,213],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"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_or_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","discriminator":[165,157,188,245,244,234,42,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":"move_stake","type":"bool"},{"name":"lamports","type":"u64"}]},{"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"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"system_transfer","docs":["Transfers SOL from the vault to another account.","","Token program ID is required as a remaining account when wrapping SOL (i.e., transfer to wSOL token account)."],"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_transfer_checked_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[37,131,188,85,45,183,8,81],"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_mint","writable":true},{"name":"glam_mint_authority","writable":true,"signer":true},{"name":"from","writable":true},{"name":"to","writable":true},{"name":"mint"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint_params","discriminator":[45,42,115,25,179,27,57,191],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_mint_params_by_mint_authority","docs":["For glam mint program\'s use only, timelock is not enforced"],"discriminator":[94,160,55,53,175,225,62,118],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_priced_protocol","docs":["Only accessible by integration programs"],"discriminator":[10,106,94,171,118,217,62,98],"accounts":[{"name":"glam_state","writable":true},{"name":"integration_authority","signer":true}],"args":[{"name":"priced_protocol","type":{"defined":{"name":"PricedProtocol"}}}]},{"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":"update_state_apply_timelock","discriminator":[66,12,138,80,133,85,46,220],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":48001,"name":"UnauthorizedIntegrationProgram","msg":"Integration program is not authorized"},{"code":48002,"name":"IntegrationNotEnabled","msg":"Integration is not enabled"},{"code":48003,"name":"ProtocolNotEnabled","msg":"Protocol is not enabled"},{"code":48004,"name":"GlamStateDisabled","msg":"GLAM state is disabled"},{"code":48005,"name":"ProtocolPolicyViolation","msg":"Protocol policy violation"},{"code":48006,"name":"EmergencyUpdateDenied","msg":"Emergency update denied"},{"code":48007,"name":"TimelockStillActive","msg":"Timelock still active"},{"code":48008,"name":"CannotApplyChanges","msg":"Pending changes cannot be applied due to unfulfilled requests"},{"code":48009,"name":"AssetNotBorrowable","msg":"Asset is not allowed to borrow"},{"code":48010,"name":"InvalidAccountOwner","msg":"Account owner does not match expected program"},{"code":48011,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Invalid name"},{"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":"InvalidIndex","msg":"Invalid index"},{"code":49005,"name":"InvalidIxArgs","msg":"Invalid instruction arguments"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed: mint must be closed and state must be disabled"},{"code":49007,"name":"InvalidMintParams","msg":"Invalid mint params"},{"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":49014,"name":"InvalidBaseAsset","msg":"Invalid base asset"},{"code":49015,"name":"InvalidProtocolBitflag","msg":"Invalid protocol bitflag"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidPlatformFeeForSwap","msg":"Invalid platform fee"},{"code":50005,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50006,"name":"InvalidSwapAmount","msg":"Invalid swap amount"},{"code":50007,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":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":"ExternalPositionsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultTokensNotPriced","msg":"Not all vault tokens are priced"},{"code":51105,"name":"PriceDivergenceTooLarge","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":51108,"name":"TypeCastingError","msg":"Type casting error"},{"code":51109,"name":"BaseAssetNotSupported","msg":"Base asset must have 6 decimals."},{"code":51110,"name":"InvalidQuoteSpotMarket","msg":"Unsupported spot market for perp quotes"},{"code":51111,"name":"UnknownExternalVaultAsset","msg":"Unknown external vault account"},{"code":51112,"name":"InvalidPriceDenom","msg":"Invalid price denom"},{"code":51113,"name":"InvalidDiscriminator","msg":"Account discriminator does not match expected value"},{"code":51114,"name":"InvalidAccountData","msg":"Invalid account data"},{"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":"TokenizedVault"},{"name":"Mint"}]}},{"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":"ActionType","type":{"kind":"enum","variants":[{"name":"AddExternalAccount"},{"name":"DeleteExternalAccount"},{"name":"DeleteExternalAccountIfZeroLamports"},{"name":"DeleteExternalAccountIfZeroBalance"},{"name":"AddAsset"},{"name":"DeleteAsset"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyAccessUpdateArgs","type":{"kind":"struct","fields":[{"name":"disabled_integrations","type":{"vec":"pubkey"}},{"name":"disabled_delegates","type":{"vec":"pubkey"}},{"name":"state_enabled","type":{"option":"bool"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"ExtraParams","type":{"kind":"struct","fields":[{"name":"action_type","type":{"defined":{"name":"ActionType"}}},{"name":"pubkey","type":"pubkey"},{"name":"amount","type":{"option":"u64"}}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"JupiterSwapPolicy","type":{"kind":"struct","fields":[{"name":"max_slippage_bps","type":"u16"},{"name":"swap_allowlist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"owner","type":{"option":"pubkey"}},{"name":"portfolio_manager_name","type":{"option":{"array":["u8",32]}}},{"name":"borrowable","type":{"option":{"vec":"pubkey"}}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"any_lst","type":{"option":"bool"}},{"name":"timelock_duration","type":{"option":"u32"}},{"name":"integration_acls","type":{"option":{"vec":{"defined":{"name":"IntegrationAcl"}}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_JUPITER_SWAP","type":"u16","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_ALLOWLISTED","type":"u64","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_FROM_ANY","type":"u64","value":"8"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_LST","type":"u64","value":"2"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_TO_ANY","type":"u64","value":"1"},{"name":"PROTO_STAKE","type":"u16","value":"2"},{"name":"PROTO_STAKE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_STAKE_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_SYSTEM","type":"u16","value":"1"},{"name":"PROTO_SYSTEM_PERM_EMERGENCY_UPDATE","type":"u64","value":"4"},{"name":"PROTO_SYSTEM_PERM_TRANSFER","type":"u64","value":"2"},{"name":"PROTO_SYSTEM_PERM_WSOL","type":"u64","value":"1"}]}');
|
|
192
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz","metadata":{"name":"glam_protocol","version":"1.0.3","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"cancel_timelock","discriminator":[158,180,47,81,133,231,168,238],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]},{"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":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"cpi_proxy","docs":["Only accessible by integration programs"],"discriminator":[65,134,48,2,7,232,199,46],"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":"integration_authority","signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"data","type":"bytes"},{"name":"extra_params","type":{"vec":{"defined":{"name":"ExtraParams"}}}}]},{"name":"emergency_access_update","docs":["Bypasses the timelock for emergency updates on access control rules. Allowed operations:","- removing an integration program","- removing a delegate","- enabling/disabling glam state"],"discriminator":[207,247,157,14,87,132,230,0],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyAccessUpdateArgs"}}}]},{"name":"enable_disable_protocols","discriminator":[222,198,164,163,194,161,11,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"set_enabled","type":"bool"}]},{"name":"extend_state","discriminator":[34,147,151,206,134,128,82,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"bytes","type":"u32"}]},{"name":"grant_revoke_delegate_permissions","discriminator":[162,21,218,157,218,86,114,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"delegate","type":"pubkey"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"},{"name":"set_granted","type":"bool"}]},{"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_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"base_asset_mint"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"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_stake_pool","optional":true},{"name":"output_stake_pool","optional":true}],"args":[{"name":"data","type":"bytes"}]},{"name":"link_unlink_mint_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[85,67,58,245,175,14,122,6],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"link","type":"bool"}]},{"name":"reset_priced_protocols_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[86,95,153,145,179,181,107,235],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[]},{"name":"set_jupiter_swap_policy","discriminator":[189,182,227,165,127,148,246,189],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"JupiterSwapPolicy"}}}]},{"name":"set_protocol_policy","discriminator":[37,99,61,122,227,102,182,180],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]},{"name":"set_system_transfer_policy","discriminator":[102,21,157,101,19,4,100,213],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"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_or_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","discriminator":[165,157,188,245,244,234,42,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":"move_stake","type":"bool"},{"name":"lamports","type":"u64"}]},{"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"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"system_transfer","docs":["Transfers SOL from the vault to another account.","","Token program ID is required as a remaining account when wrapping SOL (i.e., transfer to wSOL token account)."],"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_transfer_checked_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[37,131,188,85,45,183,8,81],"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_mint","writable":true},{"name":"glam_mint_authority","writable":true,"signer":true},{"name":"from","writable":true},{"name":"to","writable":true},{"name":"mint"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint_params","discriminator":[45,42,115,25,179,27,57,191],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_mint_params_by_mint_authority","docs":["For glam mint program\'s use only, timelock is not enforced"],"discriminator":[94,160,55,53,175,225,62,118],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_priced_protocol","docs":["Only accessible by integration programs"],"discriminator":[10,106,94,171,118,217,62,98],"accounts":[{"name":"glam_state","writable":true},{"name":"integration_authority","signer":true}],"args":[{"name":"priced_protocol","type":{"defined":{"name":"PricedProtocol"}}}]},{"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":"update_state_apply_timelock","discriminator":[66,12,138,80,133,85,46,220],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":48001,"name":"UnauthorizedIntegrationProgram","msg":"Integration program is not authorized"},{"code":48002,"name":"IntegrationNotEnabled","msg":"Integration is not enabled"},{"code":48003,"name":"ProtocolNotEnabled","msg":"Protocol is not enabled"},{"code":48004,"name":"GlamStateDisabled","msg":"GLAM state is disabled"},{"code":48005,"name":"ProtocolPolicyViolation","msg":"Protocol policy violation"},{"code":48006,"name":"EmergencyUpdateDenied","msg":"Emergency update denied"},{"code":48007,"name":"TimelockStillActive","msg":"Timelock still active"},{"code":48008,"name":"CannotApplyChanges","msg":"Pending changes cannot be applied due to unfulfilled requests"},{"code":48009,"name":"AssetNotBorrowable","msg":"Asset is not allowed to borrow"},{"code":48010,"name":"InvalidAccountOwner","msg":"Account owner does not match expected program"},{"code":48011,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Invalid name"},{"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":"InvalidIndex","msg":"Invalid index"},{"code":49005,"name":"InvalidIxArgs","msg":"Invalid instruction arguments"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed: mint must be closed and state must be disabled"},{"code":49007,"name":"InvalidMintParams","msg":"Invalid mint params"},{"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":49014,"name":"InvalidBaseAsset","msg":"Invalid base asset"},{"code":49015,"name":"InvalidProtocolBitflag","msg":"Invalid protocol bitflag"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidPlatformFeeForSwap","msg":"Invalid platform fee"},{"code":50005,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50006,"name":"InvalidSwapAmount","msg":"Invalid swap amount"},{"code":50007,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":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":"ExternalPositionsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultTokensNotPriced","msg":"Not all vault tokens are priced"},{"code":51105,"name":"PriceDivergenceTooLarge","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":51108,"name":"TypeCastingError","msg":"Type casting error"},{"code":51109,"name":"BaseAssetNotSupported","msg":"Base asset must have 6 decimals."},{"code":51110,"name":"InvalidQuoteSpotMarket","msg":"Unsupported spot market for perp quotes"},{"code":51111,"name":"UnknownExternalVaultAsset","msg":"Unknown external vault account"},{"code":51112,"name":"InvalidPriceDenom","msg":"Invalid price denom"},{"code":51113,"name":"InvalidDiscriminator","msg":"Account discriminator does not match expected value"},{"code":51114,"name":"InvalidAccountData","msg":"Invalid account data"},{"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":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"ActionType","type":{"kind":"enum","variants":[{"name":"AddExternalAccount"},{"name":"DeleteExternalAccount"},{"name":"DeleteExternalAccountIfZeroLamports"},{"name":"DeleteExternalAccountIfZeroBalance"},{"name":"AddAsset"},{"name":"DeleteAsset"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyAccessUpdateArgs","type":{"kind":"struct","fields":[{"name":"disabled_integrations","type":{"vec":"pubkey"}},{"name":"disabled_delegates","type":{"vec":"pubkey"}},{"name":"state_enabled","type":{"option":"bool"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"ExtraParams","type":{"kind":"struct","fields":[{"name":"action_type","type":{"defined":{"name":"ActionType"}}},{"name":"pubkey","type":"pubkey"},{"name":"amount","type":{"option":"u64"}}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"JupiterSwapPolicy","type":{"kind":"struct","fields":[{"name":"max_slippage_bps","type":"u16"},{"name":"swap_allowlist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"owner","type":{"option":"pubkey"}},{"name":"portfolio_manager_name","type":{"option":{"array":["u8",32]}}},{"name":"borrowable","type":{"option":{"vec":"pubkey"}}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"any_lst","type":{"option":"bool"}},{"name":"timelock_duration","type":{"option":"u32"}},{"name":"integration_acls","type":{"option":{"vec":{"defined":{"name":"IntegrationAcl"}}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_JUPITER_SWAP","type":"u16","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_ALLOWLISTED","type":"u64","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_FROM_ANY","type":"u64","value":"8"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_LST","type":"u64","value":"2"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_TO_ANY","type":"u64","value":"1"},{"name":"PROTO_STAKE","type":"u16","value":"2"},{"name":"PROTO_STAKE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_STAKE_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_SYSTEM","type":"u16","value":"1"},{"name":"PROTO_SYSTEM_PERM_EMERGENCY_UPDATE","type":"u64","value":"4"},{"name":"PROTO_SYSTEM_PERM_TRANSFER","type":"u64","value":"2"},{"name":"PROTO_SYSTEM_PERM_WSOL","type":"u64","value":"1"}]}');
|
|
193
193
|
|
|
194
194
|
/***/ }),
|
|
195
195
|
/* 7 */
|
|
196
196
|
/***/ ((module) => {
|
|
197
197
|
|
|
198
198
|
"use strict";
|
|
199
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gConFzxKL9USmwTdJoeQJvfKmqhJ2CyUaXTyQ8v9TGX","metadata":{"name":"glam_config","version":"1.0.0","spec":"0.1.0","description":"GLAM config program"},"instructions":[{"name":"close","discriminator":[98,165,201,177,108,65,206,96],"accounts":[{"name":"global_config","writable":true},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"deprecate_asset_meta","docs":["Marks an asset meta as deprecated"],"discriminator":[138,242,230,22,21,151,149,19],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"asset","type":"pubkey"},{"name":"oracle","type":"pubkey"}]},{"name":"initialize","discriminator":[175,175,109,31,13,152,155,237],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"admin","type":"pubkey"},{"name":"fee_authority","type":"pubkey"},{"name":"referrer","type":"pubkey"},{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"name":"update_admin","discriminator":[161,176,40,213,60,184,179,228],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"new_admin","type":"pubkey"}]},{"name":"update_protocol_fees","discriminator":[158,219,253,143,54,45,113,182],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"fee_authority","signer":true}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"name":"update_referrer","discriminator":[208,225,56,15,244,21,195,34],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"fee_authority","signer":true}],"args":[{"name":"referrer","type":"pubkey"}]},{"name":"upsert_asset_meta","discriminator":[29,40,115,194,215,146,222,212],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"asset"},{"name":"oracle"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"asset_meta","type":{"defined":{"name":"AssetMeta"}}}]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"InvalidAssetMeta","msg":"Invalid asset meta"},{"code":6002,"name":"InvalidParameters","msg":"Invalid parameters"},{"code":6003,"name":"InvalidOracleSource","msg":"Invalid oracle source"},{"code":6004,"name":"InvalidGlobalConfig","msg":"Invalid global config"}],"types":[{"name":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"i8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","type":"pubkey"},{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"},{"name":"asset_metas","type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}}]}');
|
|
199
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gConFzxKL9USmwTdJoeQJvfKmqhJ2CyUaXTyQ8v9TGX","metadata":{"name":"glam_config","version":"1.0.0","spec":"0.1.0","description":"GLAM config program"},"instructions":[{"name":"close","discriminator":[98,165,201,177,108,65,206,96],"accounts":[{"name":"global_config","writable":true},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"deprecate_asset_meta","docs":["Marks an asset meta as deprecated"],"discriminator":[138,242,230,22,21,151,149,19],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"asset","type":"pubkey"},{"name":"oracle","type":"pubkey"}]},{"name":"initialize","discriminator":[175,175,109,31,13,152,155,237],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"payer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"admin","type":"pubkey"},{"name":"fee_authority","type":"pubkey"},{"name":"referrer","type":"pubkey"},{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"name":"update_admin","discriminator":[161,176,40,213,60,184,179,228],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"new_admin","type":"pubkey"}]},{"name":"update_fee_authority","discriminator":[31,223,200,21,114,158,65,61],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"fee_authority","signer":true}],"args":[{"name":"fee_authority","type":"pubkey"}]},{"name":"update_protocol_fees","discriminator":[158,219,253,143,54,45,113,182],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"fee_authority","signer":true}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"name":"update_referrer","discriminator":[208,225,56,15,244,21,195,34],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"fee_authority","signer":true}],"args":[{"name":"referrer","type":"pubkey"}]},{"name":"upsert_asset_meta","discriminator":[29,40,115,194,215,146,222,212],"accounts":[{"name":"global_config","writable":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}]}},{"name":"admin","writable":true,"signer":true},{"name":"asset"},{"name":"oracle"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"asset_meta","type":{"defined":{"name":"AssetMeta"}}}]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"InvalidAssetMeta","msg":"Invalid asset meta"},{"code":6002,"name":"InvalidParameters","msg":"Invalid parameters"},{"code":6003,"name":"InvalidOracleSource","msg":"Invalid oracle source"},{"code":6004,"name":"InvalidGlobalConfig","msg":"Invalid global config"}],"types":[{"name":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"i8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","docs":["Default GLAM referrer"],"type":"pubkey"},{"name":"base_fee_bps","docs":["Default protocol base fee applied to all vaults"],"type":"u16"},{"name":"flow_fee_bps","docs":["Default protocol flow fee applied to all vaults"],"type":"u16"},{"name":"asset_metas","docs":["List of assets and their oracle configs supported by the protocol"],"type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}}]}');
|
|
200
200
|
|
|
201
201
|
/***/ }),
|
|
202
202
|
/* 8 */
|
|
203
203
|
/***/ ((module) => {
|
|
204
204
|
|
|
205
205
|
"use strict";
|
|
206
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh","metadata":{"name":"glam_mint","version":"1.0.1","spec":"0.1.0","description":"GLAM mint program"},"instructions":[{"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_token_account","writable":true},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"amount","type":"u64"}]},{"name":"cancel","discriminator":[232,219,223,41,219,236,220,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"user"},{"name":"recover_token_mint"},{"name":"user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"user"},{"kind":"account","path":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"claim_user"},{"name":"claim_token_mint"},{"name":"claim_user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"claim_user"},{"kind":"account","path":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_user_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"claim_token_program"},{"name":"glam_policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim_fees","discriminator":[82,251,233,156,12,52,184,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"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":"deposit_asset"},{"name":"vault_deposit_ata","docs":["To pay out fees"],"writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"deposit_token_program"},{"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":"protocol_fee_authority","docs":["To receive protocol fee"]},{"name":"protocol_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"protocol_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"manager_fee_authority","docs":["To receive manager fee"]},{"name":"manager_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"manager_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"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_mint"}]}},{"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":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"emergency_update_mint","discriminator":[141,210,26,160,120,140,28,239],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint"},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyUpdateMintArgs"}}}]},{"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_token_account","writable":true},{"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":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"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"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_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":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_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":"system_program","address":"11111111111111111111111111111111"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"limit","type":{"option":"u32"}}]},{"name":"initialize_mint","docs":["Initialize a new GLAM mint with extensions and metadata.","","- `mint_model` - Configuration model containing mint parameters and metadata","- `created_key` - 8-byte key used in the GLAM state PDA derivation","- `account_type` - Fund (for tokenized vault mint) or Mint","- `decimals` - Decimals of new mint"],"discriminator":[209,42,195,4,129,85,209,44],"accounts":[{"name":"glam_state","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"new_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"base_asset_mint"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}},{"name":"created_key","type":{"array":["u8",8]}},{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"decimals","type":{"option":"u8"}}]},{"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":"amount","type":"u64"}]},{"name":"price_drift_users","docs":["Extra accounts for pricing N drift users under the same user stats:","- user_stats x 1","- drift_user x N","- markets and oracles used by all drift users (no specific order)"],"discriminator":[12,5,143,51,101,81,200,150],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_users","type":"u8"}]},{"name":"price_drift_vault_depositors","docs":["Extra accounts for pricing N vault depositors:","- (vault_depositor, drift_vault, drift_user) x N","- spot_market used by drift users of vaults (no specific order)","- perp markets used by drift users of vaults (no specific order)","- oracles of spot markets and perp markets (no specific order)"],"discriminator":[234,16,238,70,189,23,98,160],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_vault_depositors","type":"u8"},{"name":"num_spot_markets","type":"u8"},{"name":"num_perp_markets","type":"u8"}]},{"name":"price_kamino_obligations","docs":["Prices Kamino obligations. Reserves and obligations must be refreshed in the same slot before calling this ix.","","Extra accounts for pricing N kamino obligations:","- obligations x N"],"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"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]},{"name":"price_kamino_vault_shares","docs":["Prices Kamino vault shares.","- `num_vaults` Number of kamino vaults to price.","","Extra accounts for pricing N kamino vault shares:","- (kvault_share_ata, kvault_share_mint, kvault_state, kvault_deposit_token_oracle) x N","- reserve x M","- M = number of reserves used by all kvaults\' allocations","- reserve pubkeys must follow the same order of reserves used by each allocation"],"discriminator":[112,92,238,224,145,105,38,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_vaults","type":"u8"}]},{"name":"price_stake_accounts","discriminator":[119,137,9,15,196,73,30,27],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]},{"name":"price_vault_tokens","docs":["Prices vault SOL balance and tokens it holds.","","Args:","- `denom`: Denomination of the price.","- `agg_indexes`: Indexes of the aggregation oracles for the tokens (must follow the same order of mints in extra accounts). If aggregation oracle is not used for token #`i`, `agg_indexes[i]` should be set to -1.","","Extra accounts for pricing N tokens:","- (ata, mint, oracle) x N","- optional oracle mapping (only add it if any token uses an agg oracle)"],"discriminator":[54,42,16,199,20,183,50,137],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"agg_indexes","type":{"vec":{"array":["i16",4]}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"amount_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"amount_in","type":"u64"}]},{"name":"set_mint_policy","discriminator":[12,208,252,52,166,250,137,169],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"MintPolicy"}}}]},{"name":"set_protocol_fees","discriminator":[49,143,189,18,56,206,158,226],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"signer","writable":true,"signer":true},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"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":"frozen","type":"bool"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"amount_in","type":"u64"}]},{"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":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_mint_apply_timelock","discriminator":[223,241,80,24,120,25,82,134],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[]},{"name":"validate_aum","docs":["Validates AUM of the vault and emits AumRecord event."],"discriminator":[101,15,233,89,134,123,224,99],"accounts":[{"name":"glam_state"},{"name":"signer","writable":true,"signer":true},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]},{"name":"RequestQueue","discriminator":[172,124,172,253,233,63,70,234]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"events":[{"name":"AumRecord","discriminator":[162,116,55,29,223,230,239,205]},{"name":"PricedProtocolRecord","discriminator":[232,89,187,82,49,200,127,132]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":6002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":6003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":6004,"name":"MaxCapExceeded","msg":"Max cap exceeded"},{"code":6005,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":6006,"name":"NewRequestNotAllowed","msg":"New request is not allowed"},{"code":6007,"name":"RequestNotClaimable","msg":"Request is not claimable"},{"code":6008,"name":"RequestNotCancellable","msg":"Request is not cancellable"},{"code":6009,"name":"RequestNotFound","msg":"Request not found"},{"code":6010,"name":"RequestQueueNotEmpty","msg":"Request queue not empty"},{"code":6011,"name":"InvalidRequestQueueData","msg":"Invalid request queue data"},{"code":6012,"name":"RequestQueueFull","msg":"Request queue full"},{"code":6013,"name":"ProtocolFeesNotCrystallized","msg":"Protocol fees should be crystallized before updating"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"u8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"AumRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyUpdateMintArgs","type":{"kind":"struct","fields":[{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"set_paused","type":"bool"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","type":"pubkey"},{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"},{"name":"asset_metas","type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"year_in_seconds","type":{"option":"u32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"notify_and_settle","type":{"option":{"defined":{"name":"NotifyAndSettle"}}}},{"name":"lockup_period","type":{"option":"u32"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"MintPolicy","type":{"kind":"struct","fields":[{"name":"lockup_period","type":"u32"},{"name":"max_cap","type":"u64"},{"name":"min_subscription","type":"u64"},{"name":"min_redemption","type":"u64"},{"name":"reserved","type":"u64"},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}},{"name":"PendingRequest","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"incoming","type":"u64"},{"name":"outgoing","type":"u64"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":"u8"},{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"reserved","type":{"array":["u8",6]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"PricedProtocolRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"RequestQueue","type":{"kind":"struct","fields":[{"name":"glam_state","type":"pubkey"},{"name":"glam_mint","type":"pubkey"},{"name":"subscription_paused","type":"bool"},{"name":"redemption_paused","type":"bool"},{"name":"data","type":{"vec":{"defined":{"name":"PendingRequest"}}}}]}},{"name":"RequestType","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MINT","type":"u16","value":"1"},{"name":"PROTO_MINT_PERM_BURN_TOKENS","type":"u64","value":"2"},{"name":"PROTO_MINT_PERM_CANCEL_REQUEST","type":"u64","value":"128"},{"name":"PROTO_MINT_PERM_CLAIM_FEES","type":"u64","value":"16"},{"name":"PROTO_MINT_PERM_CLAIM_REQUEST","type":"u64","value":"256"},{"name":"PROTO_MINT_PERM_EMERGENCY_UPDATE","type":"u64","value":"64"},{"name":"PROTO_MINT_PERM_FORCE_TRANSFER_TOKENS","type":"u64","value":"4"},{"name":"PROTO_MINT_PERM_FULFILL","type":"u64","value":"32"},{"name":"PROTO_MINT_PERM_MINT_TOKENS","type":"u64","value":"1"},{"name":"PROTO_MINT_PERM_SET_TOKEN_ACCOUNT_STATE","type":"u64","value":"8"}]}');
|
|
206
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh","metadata":{"name":"glam_mint","version":"1.0.2","spec":"0.1.0","description":"GLAM mint program"},"instructions":[{"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_token_account","writable":true},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"amount","type":"u64"}]},{"name":"cancel","discriminator":[232,219,223,41,219,236,220,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"user"},{"name":"recover_token_mint"},{"name":"user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"user"},{"kind":"account","path":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"claim_user"},{"name":"claim_token_mint"},{"name":"claim_user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"claim_user"},{"kind":"account","path":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_user_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"claim_token_program"},{"name":"glam_policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim_fees","discriminator":[82,251,233,156,12,52,184,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"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":"deposit_asset"},{"name":"vault_deposit_ata","docs":["To pay out fees"],"writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"deposit_token_program"},{"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":"protocol_fee_authority","docs":["To receive protocol fee"]},{"name":"protocol_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"protocol_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"manager_fee_authority","docs":["To receive manager fee"]},{"name":"manager_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"manager_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"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_mint"}]}},{"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":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"emergency_update_mint","discriminator":[141,210,26,160,120,140,28,239],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint"},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyUpdateMintArgs"}}}]},{"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_token_account","writable":true},{"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":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"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"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_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":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_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":"system_program","address":"11111111111111111111111111111111"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"limit","type":{"option":"u32"}}]},{"name":"initialize_mint","docs":["Initialize a new GLAM mint with extensions and metadata.","","- `mint_model` - Configuration model containing mint parameters and metadata","- `created_key` - 8-byte key used in the GLAM state PDA derivation","- `account_type` - Fund (for tokenized vault mint) or Mint","- `decimals` - Decimals of new mint"],"discriminator":[209,42,195,4,129,85,209,44],"accounts":[{"name":"glam_state","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"new_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"base_asset_mint"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}},{"name":"created_key","type":{"array":["u8",8]}},{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"decimals","type":{"option":"u8"}}]},{"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":"amount","type":"u64"}]},{"name":"price_drift_users","docs":["Extra accounts for pricing N drift users under the same user stats:","- user_stats x 1","- drift_user x N","- markets and oracles used by all drift users (no specific order)"],"discriminator":[12,5,143,51,101,81,200,150],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_users","type":"u8"}]},{"name":"price_drift_vault_depositors","docs":["Extra accounts for pricing N vault depositors:","- (vault_depositor, drift_vault, drift_user) x N","- spot_market used by drift users of vaults (no specific order)","- perp markets used by drift users of vaults (no specific order)","- oracles of spot markets and perp markets (no specific order)"],"discriminator":[234,16,238,70,189,23,98,160],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_vault_depositors","type":"u8"},{"name":"num_spot_markets","type":"u8"},{"name":"num_perp_markets","type":"u8"}]},{"name":"price_kamino_obligations","docs":["Prices Kamino obligations. Reserves and obligations must be refreshed in the same slot before calling this ix.","","Extra accounts for pricing N kamino obligations:","- obligations x N"],"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"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]},{"name":"price_kamino_vault_shares","docs":["Prices Kamino vault shares.","- `num_vaults` Number of kamino vaults to price.","","Extra accounts for pricing N kamino vault shares:","- (kvault_share_ata, kvault_share_mint, kvault_state, kvault_deposit_token_oracle) x N","- reserve x M","- M = number of reserves used by all kvaults\' allocations","- reserve pubkeys must follow the same order of reserves used by each allocation"],"discriminator":[112,92,238,224,145,105,38,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"num_vaults","type":"u8"}]},{"name":"price_single_asset_vault","docs":["Prices a single asset vault."],"discriminator":[93,213,219,25,38,74,9,167],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"base_asset_ata"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]},{"name":"price_stake_accounts","discriminator":[119,137,9,15,196,73,30,27],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]},{"name":"price_vault_tokens","docs":["Prices vault SOL balance and tokens it holds.","","Args:","- `denom`: Denomination of the price.","- `agg_indexes`: Indexes of the aggregation oracles for the tokens (must follow the same order of mints in extra accounts). If aggregation oracle is not used for token #`i`, `agg_indexes[i]` should be set to -1.","","Extra accounts for pricing N tokens:","- (ata, mint, oracle) x N","- optional oracle mapping (only add it if any token uses an agg oracle)"],"discriminator":[54,42,16,199,20,183,50,137],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[{"name":"agg_indexes","type":{"vec":{"array":["i16",4]}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"amount_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"amount_in","type":"u64"}]},{"name":"set_mint_policy","discriminator":[12,208,252,52,166,250,137,169],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"MintPolicy"}}}]},{"name":"set_protocol_fees","discriminator":[49,143,189,18,56,206,158,226],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"signer","writable":true,"signer":true},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"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":"frozen","type":"bool"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[227,199,235,230,176,132,243,117,43,131,173,18,78,255,26,50,209,135,86,219,140,126,61,255,0,218,252,224,172,8,223,207]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"amount_in","type":"u64"}]},{"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":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_mint_apply_timelock","discriminator":[223,241,80,24,120,25,82,134],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[]},{"name":"validate_aum","docs":["Validates AUM of the vault and emits AumRecord event."],"discriminator":[101,15,233,89,134,123,224,99],"accounts":[{"name":"glam_state"},{"name":"signer","writable":true,"signer":true},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"GM1NtvvnSXUptTrMCqbogAdZJydZSNv98DoU5AZVLmGh"}],"args":[]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]},{"name":"RequestQueue","discriminator":[172,124,172,253,233,63,70,234]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"events":[{"name":"AumRecord","discriminator":[162,116,55,29,223,230,239,205]},{"name":"PricedProtocolRecord","discriminator":[232,89,187,82,49,200,127,132]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":6002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":6003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":6004,"name":"MaxCapExceeded","msg":"Max cap exceeded"},{"code":6005,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":6006,"name":"NewRequestNotAllowed","msg":"New request is not allowed"},{"code":6007,"name":"RequestNotClaimable","msg":"Request is not claimable"},{"code":6008,"name":"RequestNotCancellable","msg":"Request is not cancellable"},{"code":6009,"name":"RequestNotFound","msg":"Request not found"},{"code":6010,"name":"RequestQueueNotEmpty","msg":"Request queue not empty"},{"code":6011,"name":"InvalidRequestQueueData","msg":"Invalid request queue data"},{"code":6012,"name":"RequestQueueFull","msg":"Request queue full"},{"code":6013,"name":"ProtocolFeesNotCrystallized","msg":"Protocol fees should be crystallized before updating"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"i8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"AumRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyUpdateMintArgs","type":{"kind":"struct","fields":[{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"set_paused","type":"bool"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","docs":["Default GLAM referrer"],"type":"pubkey"},{"name":"base_fee_bps","docs":["Default protocol base fee applied to all vaults"],"type":"u16"},{"name":"flow_fee_bps","docs":["Default protocol flow fee applied to all vaults"],"type":"u16"},{"name":"asset_metas","docs":["List of assets and their oracle configs supported by the protocol"],"type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"year_in_seconds","type":{"option":"u32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"notify_and_settle","type":{"option":{"defined":{"name":"NotifyAndSettle"}}}},{"name":"lockup_period","type":{"option":"u32"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"MintPolicy","type":{"kind":"struct","fields":[{"name":"lockup_period","type":"u32"},{"name":"max_cap","type":"u64"},{"name":"min_subscription","type":"u64"},{"name":"min_redemption","type":"u64"},{"name":"reserved","type":"u64"},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}},{"name":"PendingRequest","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"incoming","type":"u64"},{"name":"outgoing","type":"u64"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":"u8"},{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"reserved","type":{"array":["u8",6]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"PricedProtocolRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"RequestQueue","type":{"kind":"struct","fields":[{"name":"glam_state","type":"pubkey"},{"name":"glam_mint","type":"pubkey"},{"name":"subscription_paused","type":"bool"},{"name":"redemption_paused","type":"bool"},{"name":"data","type":{"vec":{"defined":{"name":"PendingRequest"}}}}]}},{"name":"RequestType","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MINT","type":"u16","value":"1"},{"name":"PROTO_MINT_PERM_BURN_TOKENS","type":"u64","value":"2"},{"name":"PROTO_MINT_PERM_CANCEL_REQUEST","type":"u64","value":"128"},{"name":"PROTO_MINT_PERM_CLAIM_FEES","type":"u64","value":"16"},{"name":"PROTO_MINT_PERM_CLAIM_REQUEST","type":"u64","value":"256"},{"name":"PROTO_MINT_PERM_EMERGENCY_UPDATE","type":"u64","value":"64"},{"name":"PROTO_MINT_PERM_FORCE_TRANSFER_TOKENS","type":"u64","value":"4"},{"name":"PROTO_MINT_PERM_FULFILL","type":"u64","value":"32"},{"name":"PROTO_MINT_PERM_MINT_TOKENS","type":"u64","value":"1"},{"name":"PROTO_MINT_PERM_SET_TOKEN_ACCOUNT_STATE","type":"u64","value":"8"}]}');
|
|
207
207
|
|
|
208
208
|
/***/ }),
|
|
209
209
|
/* 9 */
|
|
210
210
|
/***/ ((module) => {
|
|
211
211
|
|
|
212
212
|
"use strict";
|
|
213
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTsQ36mjPe89HtPYqxKsjY5HmYsDR6CbD2gd2U2pta","metadata":{"name":"ext_spl","version":"1.0.0","spec":"0.1.0","description":"SPL integration for GLAM Protocol"},"instructions":[{"name":"set_token_transfer_policy","discriminator":[0,144,15,4,149,22,95,50],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_TOKEN","type":"u16","value":"1"},{"name":"PROTO_TOKEN_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
213
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTsQ36mjPe89HtPYqxKsjY5HmYsDR6CbD2gd2U2pta","metadata":{"name":"ext_spl","version":"1.0.0","spec":"0.1.0","description":"SPL integration for GLAM Protocol"},"instructions":[{"name":"set_token_transfer_policy","discriminator":[0,144,15,4,149,22,95,50],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_TOKEN","type":"u16","value":"1"},{"name":"PROTO_TOKEN_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
214
214
|
|
|
215
215
|
/***/ }),
|
|
216
216
|
/* 10 */
|
|
217
217
|
/***/ ((module) => {
|
|
218
218
|
|
|
219
219
|
"use strict";
|
|
220
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTdrBmBpW43msRQmsf7qXSw3MFBNaqJcAkGiRmRq2F","metadata":{"name":"ext_drift","version":"1.0.0","spec":"0.1.0","description":"Drift integration for GLAM Protocol"},"instructions":[{"name":"cancel_orders","discriminator":[238,225,95,158,227,103,8,194],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"cancel_orders_by_ids","discriminator":[134,19,144,165,94,240,210,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"delete_user","discriminator":[186,85,17,249,219,231,98,251],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"deposit","discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"initialize_user","discriminator":[111,17,185,250,60,122,38,254],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"initialize_user_stats","discriminator":[254,243,72,98,251,130,168,213],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"modify_order","discriminator":[47,124,117,255,201,197,130,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"place_orders","discriminator":[60,63,50,123,12,197,60,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"reclaim_rent","discriminator":[218,200,19,197,227,89,192,22],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"set_drift_protocol_policy","discriminator":[200,22,110,2,58,22,76,162],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftProtocolPolicy"}}}]},{"name":"set_drift_vaults_policy","discriminator":[168,134,53,33,18,88,142,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftVaultsPolicy"}}}]},{"name":"settle_multiple_pnls","discriminator":[127,66,117,57,40,50,152,127],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"settle_pnl","discriminator":[43,61,234,45,15,95,152,153],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"update_user_custom_margin_ratio","discriminator":[21,221,140,187,32,129,11,123],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"update_user_delegate","discriminator":[139,205,141,141,113,36,94,187],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"update_user_margin_trading_enabled","discriminator":[194,92,204,223,246,188,31,203],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"update_user_pool_id","discriminator":[219,86,73,106,56,218,128,109],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"pool_id","type":"u8"}]},{"name":"vaults_cancel_request_withdraw","discriminator":[188,93,159,202,157,47,143,219],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"vaults_initialize_vault_depositor","discriminator":[135,5,41,254,229,75,138,49],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"vault"},{"name":"vault_depositor","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"vaults_request_withdraw","discriminator":[138,91,50,130,167,165,120,175],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[{"name":"withdraw_amount","type":"u64"},{"name":"withdraw_unit","type":{"defined":{"name":"WithdrawUnit"}}}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[]},{"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DriftProtocolPolicy","type":{"kind":"struct","fields":[{"name":"spot_markets_allowlist","type":{"vec":"u16"}},{"name":"perp_markets_allowlist","type":{"vec":"u16"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"DriftVaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"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":"bit_flags","type":{"option":"u8"}},{"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":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"bit_flags","type":"u8"},{"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":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"WithdrawUnit","type":{"kind":"enum","variants":[{"name":"Shares"},{"name":"Token"},{"name":"SharesPercent"}]}}],"constants":[{"name":"PROTO_DRIFT_PROTOCOL","type":"u16","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_BORROW","type":"u64","value":"32"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CANCEL_ORDERS","type":"u64","value":"256"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CREATE_MODIFY_ORDERS","type":"u64","value":"128"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DELETE_USER","type":"u64","value":"4"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DEPOSIT","type":"u64","value":"8"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_INIT_USER","type":"u64","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_PERP_MARKETS","type":"u64","value":"512"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_REPAY","type":"u64","value":"64"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_SPOT_MARKETS","type":"u64","value":"1024"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_UPDATE_USER","type":"u64","value":"2"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_WITHDRAW","type":"u64","value":"16"},{"name":"PROTO_DRIFT_VAULTS","type":"u16","value":"2"},{"name":"PROTO_DRIFT_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_DRIFT_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
220
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTdrBmBpW43msRQmsf7qXSw3MFBNaqJcAkGiRmRq2F","metadata":{"name":"ext_drift","version":"1.0.0","spec":"0.1.0","description":"Drift integration for GLAM Protocol"},"instructions":[{"name":"cancel_orders","discriminator":[238,225,95,158,227,103,8,194],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"cancel_orders_by_ids","discriminator":[134,19,144,165,94,240,210,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"delete_user","discriminator":[186,85,17,249,219,231,98,251],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"deposit","discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"initialize_user","discriminator":[111,17,185,250,60,122,38,254],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"initialize_user_stats","discriminator":[254,243,72,98,251,130,168,213],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"modify_order","discriminator":[47,124,117,255,201,197,130,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"place_orders","discriminator":[60,63,50,123,12,197,60,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"reclaim_rent","discriminator":[218,200,19,197,227,89,192,22],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"set_drift_protocol_policy","discriminator":[200,22,110,2,58,22,76,162],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftProtocolPolicy"}}}]},{"name":"set_drift_vaults_policy","discriminator":[168,134,53,33,18,88,142,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftVaultsPolicy"}}}]},{"name":"settle_multiple_pnls","discriminator":[127,66,117,57,40,50,152,127],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"settle_pnl","discriminator":[43,61,234,45,15,95,152,153],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"update_user_custom_margin_ratio","discriminator":[21,221,140,187,32,129,11,123],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"update_user_delegate","discriminator":[139,205,141,141,113,36,94,187],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"update_user_margin_trading_enabled","discriminator":[194,92,204,223,246,188,31,203],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"update_user_pool_id","discriminator":[219,86,73,106,56,218,128,109],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"pool_id","type":"u8"}]},{"name":"vaults_cancel_request_withdraw","discriminator":[188,93,159,202,157,47,143,219],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"vaults_initialize_vault_depositor","discriminator":[135,5,41,254,229,75,138,49],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"vault"},{"name":"vault_depositor","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"vaults_request_withdraw","discriminator":[138,91,50,130,167,165,120,175],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[{"name":"withdraw_amount","type":"u64"},{"name":"withdraw_unit","type":{"defined":{"name":"WithdrawUnit"}}}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[]},{"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DriftProtocolPolicy","type":{"kind":"struct","fields":[{"name":"spot_markets_allowlist","type":{"vec":"u16"}},{"name":"perp_markets_allowlist","type":{"vec":"u16"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"DriftVaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"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":"bit_flags","type":{"option":"u8"}},{"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":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"bit_flags","type":"u8"},{"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":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"WithdrawUnit","type":{"kind":"enum","variants":[{"name":"Shares"},{"name":"Token"},{"name":"SharesPercent"}]}}],"constants":[{"name":"PROTO_DRIFT_PROTOCOL","type":"u16","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_BORROW","type":"u64","value":"32"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CANCEL_ORDERS","type":"u64","value":"256"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CREATE_MODIFY_ORDERS","type":"u64","value":"128"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DELETE_USER","type":"u64","value":"4"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DEPOSIT","type":"u64","value":"8"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_INIT_USER","type":"u64","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_PERP_MARKETS","type":"u64","value":"512"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_REPAY","type":"u64","value":"64"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_SPOT_MARKETS","type":"u64","value":"1024"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_UPDATE_USER","type":"u64","value":"2"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_WITHDRAW","type":"u64","value":"16"},{"name":"PROTO_DRIFT_VAULTS","type":"u16","value":"2"},{"name":"PROTO_DRIFT_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_DRIFT_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
221
221
|
|
|
222
222
|
/***/ }),
|
|
223
223
|
/* 11 */
|
|
224
224
|
/***/ ((module) => {
|
|
225
225
|
|
|
226
226
|
"use strict";
|
|
227
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTkDEUR3pkEqGCKZtmtmVzCUEdYa86pezHkwYbLyde","metadata":{"name":"ext_kamino","version":"1.0.0","spec":"0.1.0","description":"Kamino integration for GLAM Protocol"},"instructions":[{"name":"farms_harvest_reward","discriminator":[244,248,124,210,194,52,75,152],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"farms_initialize_user","discriminator":[188,148,82,37,44,46,162,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"farms_stake","discriminator":[224,105,208,179,98,200,213,238],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"farm_vault","writable":true},{"name":"user_ata","writable":true},{"name":"token_mint"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"farms_unstake","discriminator":[180,131,50,144,26,242,175,242],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"scope_prices","optional":true}],"args":[{"name":"amount","type":"u128"}]},{"name":"farms_withdraw_unstaked_deposits","discriminator":[107,97,50,15,211,245,52,96],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"user_ata","writable":true},{"name":"farm_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"token_program"}],"args":[]},{"name":"lending_borrow_obligation_liquidity_v2","discriminator":[149,226,84,157,124,178,35,122],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[33,146,50,121,127,94,92,192],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_init_obligation","discriminator":[188,161,62,142,106,232,77,135],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_init_obligation_farms_for_reserve","discriminator":[3,234,110,39,12,147,175,185],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_init_user_metadata","discriminator":[68,236,138,146,124,228,247,241],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_repay_obligation_liquidity_v2","discriminator":[79,34,126,170,174,156,174,29],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[217,223,173,35,64,225,161,222],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"set_lending_policy","discriminator":[226,185,23,3,113,88,118,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"LendingPolicy"}}}]},{"name":"set_vaults_policy","discriminator":[211,177,22,152,235,59,192,62],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"VaultsPolicy"}}}]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault_state","writable":true},{"name":"token_vault","writable":true},{"name":"token_mint"},{"name":"base_vault_authority"},{"name":"shares_mint","writable":true},{"name":"user_token_ata","writable":true},{"name":"user_shares_ata","writable":true},{"name":"klend_program"},{"name":"token_program"},{"name":"shares_token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"max_amount","type":"u64"}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"withdraw_from_available_vault_state","writable":true},{"name":"withdraw_from_available_global_config"},{"name":"withdraw_from_available_token_vault","writable":true},{"name":"withdraw_from_available_base_vault_authority"},{"name":"withdraw_from_available_user_token_ata","writable":true},{"name":"withdraw_from_available_token_mint","writable":true},{"name":"withdraw_from_available_user_shares_ata","writable":true},{"name":"withdraw_from_available_shares_mint","writable":true},{"name":"withdraw_from_available_token_program"},{"name":"withdraw_from_available_shares_token_program"},{"name":"withdraw_from_available_klend_program"},{"name":"withdraw_from_available_event_authority"},{"name":"withdraw_from_available_program"},{"name":"withdraw_from_reserve_vault_state","writable":true},{"name":"withdraw_from_reserve_reserve","writable":true},{"name":"withdraw_from_reserve_ctoken_vault","writable":true},{"name":"withdraw_from_reserve_lending_market"},{"name":"withdraw_from_reserve_lending_market_authority"},{"name":"withdraw_from_reserve_reserve_liquidity_supply","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_mint","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_token_program"},{"name":"withdraw_from_reserve_instruction_sysvar_account"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"shares_amount","type":"u64"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"LendingPolicy","type":{"kind":"struct","fields":[{"name":"markets_allowlist","type":{"vec":"pubkey"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"VaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}}],"constants":[{"name":"PROTO_KAMINO_FARMS","type":"u16","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_HARVEST_REWARD","type":"u64","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_KAMINO_FARMS_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING","type":"u16","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_BORROW","type":"u64","value":"8"},{"name":"PROTO_KAMINO_LENDING_PERM_DEPOSIT","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING_PERM_INIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_REPAY","type":"u64","value":"16"},{"name":"PROTO_KAMINO_LENDING_PERM_WITHDRAW","type":"u64","value":"4"},{"name":"PROTO_KAMINO_VAULTS","type":"u16","value":"2"},{"name":"PROTO_KAMINO_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
227
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTkDEUR3pkEqGCKZtmtmVzCUEdYa86pezHkwYbLyde","metadata":{"name":"ext_kamino","version":"1.0.0","spec":"0.1.0","description":"Kamino integration for GLAM Protocol"},"instructions":[{"name":"farms_harvest_reward","discriminator":[244,248,124,210,194,52,75,152],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"farms_initialize_user","discriminator":[188,148,82,37,44,46,162,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"farms_stake","discriminator":[224,105,208,179,98,200,213,238],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"farm_vault","writable":true},{"name":"user_ata","writable":true},{"name":"token_mint"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"farms_unstake","discriminator":[180,131,50,144,26,242,175,242],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"scope_prices","optional":true}],"args":[{"name":"amount","type":"u128"}]},{"name":"farms_withdraw_unstaked_deposits","discriminator":[107,97,50,15,211,245,52,96],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"user_ata","writable":true},{"name":"farm_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"token_program"}],"args":[]},{"name":"lending_borrow_obligation_liquidity_v2","discriminator":[149,226,84,157,124,178,35,122],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[33,146,50,121,127,94,92,192],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_init_obligation","discriminator":[188,161,62,142,106,232,77,135],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_init_obligation_farms_for_reserve","discriminator":[3,234,110,39,12,147,175,185],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_init_user_metadata","discriminator":[68,236,138,146,124,228,247,241],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"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":"lending_repay_obligation_liquidity_v2","discriminator":[79,34,126,170,174,156,174,29],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[217,223,173,35,64,225,161,222],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"set_lending_policy","discriminator":[226,185,23,3,113,88,118,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"LendingPolicy"}}}]},{"name":"set_vaults_policy","discriminator":[211,177,22,152,235,59,192,62],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"VaultsPolicy"}}}]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault_state","writable":true},{"name":"token_vault","writable":true},{"name":"token_mint"},{"name":"base_vault_authority"},{"name":"shares_mint","writable":true},{"name":"user_token_ata","writable":true},{"name":"user_shares_ata","writable":true},{"name":"klend_program"},{"name":"token_program"},{"name":"shares_token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"max_amount","type":"u64"}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"withdraw_from_available_vault_state","writable":true},{"name":"withdraw_from_available_global_config"},{"name":"withdraw_from_available_token_vault","writable":true},{"name":"withdraw_from_available_base_vault_authority"},{"name":"withdraw_from_available_user_token_ata","writable":true},{"name":"withdraw_from_available_token_mint","writable":true},{"name":"withdraw_from_available_user_shares_ata","writable":true},{"name":"withdraw_from_available_shares_mint","writable":true},{"name":"withdraw_from_available_token_program"},{"name":"withdraw_from_available_shares_token_program"},{"name":"withdraw_from_available_klend_program"},{"name":"withdraw_from_available_event_authority"},{"name":"withdraw_from_available_program"},{"name":"withdraw_from_reserve_vault_state","writable":true},{"name":"withdraw_from_reserve_reserve","writable":true},{"name":"withdraw_from_reserve_ctoken_vault","writable":true},{"name":"withdraw_from_reserve_lending_market"},{"name":"withdraw_from_reserve_lending_market_authority"},{"name":"withdraw_from_reserve_reserve_liquidity_supply","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_mint","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_token_program"},{"name":"withdraw_from_reserve_instruction_sysvar_account"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"shares_amount","type":"u64"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"LendingPolicy","type":{"kind":"struct","fields":[{"name":"markets_allowlist","type":{"vec":"pubkey"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"VaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}}],"constants":[{"name":"PROTO_KAMINO_FARMS","type":"u16","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_HARVEST_REWARD","type":"u64","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_KAMINO_FARMS_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING","type":"u16","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_BORROW","type":"u64","value":"8"},{"name":"PROTO_KAMINO_LENDING_PERM_DEPOSIT","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING_PERM_INIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_REPAY","type":"u64","value":"16"},{"name":"PROTO_KAMINO_LENDING_PERM_WITHDRAW","type":"u64","value":"4"},{"name":"PROTO_KAMINO_VAULTS","type":"u16","value":"2"},{"name":"PROTO_KAMINO_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
228
228
|
|
|
229
229
|
/***/ }),
|
|
230
230
|
/* 12 */
|
|
231
231
|
/***/ ((module) => {
|
|
232
232
|
|
|
233
233
|
"use strict";
|
|
234
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTMNMgmgJAWAD9G3toFVMtNcc21dEyHf3fTXc3t74t","metadata":{"name":"ext_marinade","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for Marinade Finance"},"instructions":[{"name":"deposit","docs":["Deposits SOL to get mSOL"],"discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"token_program"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"deposit_stake_account","docs":["Deposits a stake account"],"discriminator":[110,130,115,41,164,102,2,59],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"token_program"},{"name":"stake_program"}],"args":[{"name":"validator_index","type":"u32"}]},{"name":"liquid_unstake","docs":["Burns mSOL and receives SOL"],"discriminator":[30,30,119,240,191,227,12,16],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"treasury_msol_account","writable":true},{"name":"get_msol_from","writable":true},{"name":"token_program"}],"args":[{"name":"msol_amount","type":"u64"}]},{"name":"withdraw_stake_account","docs":["Burns mSOL and receives a stake account"],"discriminator":[211,85,184,65,183,177,233,217],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"burn_msol_from","writable":true},{"name":"treasury_msol_account","writable":true},{"name":"validator_list","writable":true},{"name":"stake_list","writable":true},{"name":"stake_withdraw_authority"},{"name":"stake_deposit_authority"},{"name":"stake_account","writable":true},{"name":"split_stake_account","writable":true,"signer":true},{"name":"clock"},{"name":"token_program"},{"name":"stake_program"}],"args":[{"name":"stake_index","type":"u32"},{"name":"validator_index","type":"u32"},{"name":"msol_amount","type":"u64"},{"name":"beneficiary","type":"pubkey"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MARINADE","type":"u16","value":"1"},{"name":"PROTO_MARINADE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_MARINADE_PERM_UNSTAKE","type":"u64","value":"2"}]}');
|
|
234
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTMNMgmgJAWAD9G3toFVMtNcc21dEyHf3fTXc3t74t","metadata":{"name":"ext_marinade","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for Marinade Finance"},"instructions":[{"name":"deposit","docs":["Deposits SOL to get mSOL"],"discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"token_program"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"deposit_stake_account","docs":["Deposits a stake account"],"discriminator":[110,130,115,41,164,102,2,59],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"token_program"},{"name":"stake_program"}],"args":[{"name":"validator_index","type":"u32"}]},{"name":"liquid_unstake","docs":["Burns mSOL and receives SOL"],"discriminator":[30,30,119,240,191,227,12,16],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"treasury_msol_account","writable":true},{"name":"get_msol_from","writable":true},{"name":"token_program"}],"args":[{"name":"msol_amount","type":"u64"}]},{"name":"withdraw_stake_account","docs":["Burns mSOL and receives a stake account"],"discriminator":[211,85,184,65,183,177,233,217],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"MarBmsSgKXdrN1egZf5sqe1TMai9K1rChYNDJgjq7aD"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state","writable":true},{"name":"msol_mint","writable":true},{"name":"burn_msol_from","writable":true},{"name":"treasury_msol_account","writable":true},{"name":"validator_list","writable":true},{"name":"stake_list","writable":true},{"name":"stake_withdraw_authority"},{"name":"stake_deposit_authority"},{"name":"stake_account","writable":true},{"name":"split_stake_account","writable":true,"signer":true},{"name":"clock"},{"name":"token_program"},{"name":"stake_program"}],"args":[{"name":"stake_index","type":"u32"},{"name":"validator_index","type":"u32"},{"name":"msol_amount","type":"u64"},{"name":"beneficiary","type":"pubkey"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MARINADE","type":"u16","value":"1"},{"name":"PROTO_MARINADE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_MARINADE_PERM_UNSTAKE","type":"u64","value":"2"}]}');
|
|
235
235
|
|
|
236
236
|
/***/ }),
|
|
237
237
|
/* 13 */
|
|
238
238
|
/***/ ((module) => {
|
|
239
239
|
|
|
240
240
|
"use strict";
|
|
241
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTstCVkEhGVQPnPe6r7yEyRTvnp3ta63AFkEKxqg25","metadata":{"name":"ext_stake_pool","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for SPL stake pool programs"},"instructions":[{"name":"deposit_sol","discriminator":[108,81,78,117,125,155,56,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"pool_mint","writable":true},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":{"option":"u64"}}]},{"name":"deposit_stake","discriminator":[160,167,9,220,74,243,228,43],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_deposit_authority"},{"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":"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":{"option":"u64"}}]},{"name":"withdraw_sol","discriminator":[145,131,74,136,65,137,42,38],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]},{"name":"withdraw_stake","discriminator":[153,8,22,138,105,176,87,66],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_SANCTUM_MULTI","type":"u16","value":"4"},{"name":"PROTO_SANCTUM_SINGLE","type":"u16","value":"2"},{"name":"PROTO_STAKE_POOL","type":"u16","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL","type":"u64","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL_ANY","type":"u64","value":"4"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE","type":"u64","value":"2"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE_ANY","type":"u64","value":"8"},{"name":"STAKE_POOL_PERM_WITHDRAW_SOL","type":"u64","value":"16"},{"name":"STAKE_POOL_PERM_WITHDRAW_STAKE","type":"u64","value":"32"}]}');
|
|
241
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTstCVkEhGVQPnPe6r7yEyRTvnp3ta63AFkEKxqg25","metadata":{"name":"ext_stake_pool","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for SPL stake pool programs"},"instructions":[{"name":"deposit_sol","discriminator":[108,81,78,117,125,155,56,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"pool_mint","writable":true},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":{"option":"u64"}}]},{"name":"deposit_stake","discriminator":[160,167,9,220,74,243,228,43],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_deposit_authority"},{"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":"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":{"option":"u64"}}]},{"name":"withdraw_sol","discriminator":[145,131,74,136,65,137,42,38],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]},{"name":"withdraw_stake","discriminator":[153,8,22,138,105,176,87,66],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_SANCTUM_MULTI","type":"u16","value":"4"},{"name":"PROTO_SANCTUM_SINGLE","type":"u16","value":"2"},{"name":"PROTO_STAKE_POOL","type":"u16","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL","type":"u64","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL_ANY","type":"u64","value":"4"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE","type":"u64","value":"2"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE_ANY","type":"u64","value":"8"},{"name":"STAKE_POOL_PERM_WITHDRAW_SOL","type":"u64","value":"16"},{"name":"STAKE_POOL_PERM_WITHDRAW_STAKE","type":"u64","value":"32"}]}');
|
|
242
242
|
|
|
243
243
|
/***/ }),
|
|
244
244
|
/* 14 */
|
|
245
245
|
/***/ ((module) => {
|
|
246
246
|
|
|
247
247
|
"use strict";
|
|
248
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTcMDYgNLpDwgnrpSZvoSKQuR9NXG7S3DmtNQCDmrK","metadata":{"name":"ext_cctp","version":"1.0.0","spec":"0.1.0","description":"CCTP integration for GLAM Protocol"},"instructions":[{"name":"deposit_for_burn","discriminator":[215,60,61,46,114,55,128,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"sender_authority_pda"},{"name":"burn_token_account","writable":true},{"name":"denylist_account"},{"name":"message_transmitter","writable":true},{"name":"token_messenger"},{"name":"remote_token_messenger"},{"name":"token_minter"},{"name":"local_token","writable":true},{"name":"burn_token_mint","writable":true},{"name":"message_sent_event_data","writable":true,"signer":true},{"name":"message_transmitter_program","address":"CCTPV2Sm4AdWt5296sk4P66VBZ7bEhcARwFaaS9YPbeC"},{"name":"token_messenger_minter_program","address":"CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"event_authority"}],"args":[{"name":"args","type":{"defined":{"name":"DepositForBurnParams"}}}]},{"name":"set_cctp_policy","discriminator":[32,88,254,15,2,206,222,234],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"CctpPolicy"}}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"CctpDestination","type":{"kind":"struct","fields":[{"name":"domain","type":"u32"},{"name":"address","type":"pubkey"}]}},{"name":"CctpPolicy","type":{"kind":"struct","fields":[{"name":"allowed_destinations","type":{"vec":{"defined":{"name":"CctpDestination"}}}}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DepositForBurnParams","type":{"kind":"struct","fields":[{"name":"amount","type":"u64"},{"name":"destination_domain","type":"u32"},{"name":"mint_recipient","type":"pubkey"},{"name":"destination_caller","type":"pubkey"},{"name":"max_fee","type":"u64"},{"name":"min_finality_threshold","type":"u32"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_CCTP","type":"u16","value":"1"},{"name":"PROTO_CCTP_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
248
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"G1NTcMDYgNLpDwgnrpSZvoSKQuR9NXG7S3DmtNQCDmrK","metadata":{"name":"ext_cctp","version":"1.0.0","spec":"0.1.0","description":"CCTP integration for GLAM Protocol"},"instructions":[{"name":"deposit_for_burn","discriminator":[215,60,61,46,114,55,128,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe"},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"sender_authority_pda"},{"name":"burn_token_account","writable":true},{"name":"denylist_account"},{"name":"message_transmitter","writable":true},{"name":"token_messenger"},{"name":"remote_token_messenger"},{"name":"token_minter"},{"name":"local_token","writable":true},{"name":"burn_token_mint","writable":true},{"name":"message_sent_event_data","writable":true,"signer":true},{"name":"message_transmitter_program","address":"CCTPV2Sm4AdWt5296sk4P66VBZ7bEhcARwFaaS9YPbeC"},{"name":"token_messenger_minter_program","address":"CCTPV2vPZJS2u2BBsUoscuikbYjnpFmbFsvVuJdgUMQe"},{"name":"token_program","address":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},{"name":"event_authority"}],"args":[{"name":"args","type":{"defined":{"name":"DepositForBurnParams"}}}]},{"name":"set_cctp_policy","discriminator":[32,88,254,15,2,206,222,234],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"GLAMpaME8wdTEzxtiYEAa5yD8fZbxZiz2hNtV58RZiEz"}],"args":[{"name":"policy","type":{"defined":{"name":"CctpPolicy"}}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"CctpDestination","type":{"kind":"struct","fields":[{"name":"domain","type":"u32"},{"name":"address","type":"pubkey"}]}},{"name":"CctpPolicy","type":{"kind":"struct","fields":[{"name":"allowed_destinations","type":{"vec":{"defined":{"name":"CctpDestination"}}}}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DepositForBurnParams","type":{"kind":"struct","fields":[{"name":"amount","type":"u64"},{"name":"destination_domain","type":"u32"},{"name":"mint_recipient","type":"pubkey"},{"name":"destination_caller","type":"pubkey"},{"name":"max_fee","type":"u64"},{"name":"min_finality_threshold","type":"u32"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_CCTP","type":"u16","value":"1"},{"name":"PROTO_CCTP_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
249
249
|
|
|
250
250
|
/***/ }),
|
|
251
251
|
/* 15 */
|
|
252
252
|
/***/ ((module) => {
|
|
253
253
|
|
|
254
254
|
"use strict";
|
|
255
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz","metadata":{"name":"glam_protocol","version":"1.0.2","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"cancel_timelock","discriminator":[158,180,47,81,133,231,168,238],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]},{"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":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"cpi_proxy","docs":["Only accessible by integration programs"],"discriminator":[65,134,48,2,7,232,199,46],"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":"integration_authority","signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"data","type":"bytes"},{"name":"extra_params","type":{"vec":{"defined":{"name":"ExtraParams"}}}}]},{"name":"emergency_access_update","docs":["Bypasses the timelock for emergency updates on access control rules. Allowed operations:","- removing an integration program","- removing a delegate","- enabling/disabling glam state"],"discriminator":[207,247,157,14,87,132,230,0],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyAccessUpdateArgs"}}}]},{"name":"enable_disable_protocols","discriminator":[222,198,164,163,194,161,11,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"set_enabled","type":"bool"}]},{"name":"extend_state","discriminator":[34,147,151,206,134,128,82,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"bytes","type":"u32"}]},{"name":"grant_revoke_delegate_permissions","discriminator":[162,21,218,157,218,86,114,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"delegate","type":"pubkey"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"},{"name":"set_granted","type":"bool"}]},{"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_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"base_asset_mint"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"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_stake_pool","optional":true},{"name":"output_stake_pool","optional":true},{"name":"glam_config","optional":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"sol_usd_oracle","optional":true},{"name":"input_token_oracle","optional":true},{"name":"output_token_oracle","optional":true}],"args":[{"name":"data","type":"bytes"}]},{"name":"link_unlink_mint_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[85,67,58,245,175,14,122,6],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"link","type":"bool"}]},{"name":"reset_priced_protocols_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[86,95,153,145,179,181,107,235],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[]},{"name":"set_jupiter_swap_policy","discriminator":[189,182,227,165,127,148,246,189],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"JupiterSwapPolicy"}}}]},{"name":"set_protocol_policy","discriminator":[37,99,61,122,227,102,182,180],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]},{"name":"set_system_transfer_policy","discriminator":[102,21,157,101,19,4,100,213],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"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_or_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","discriminator":[165,157,188,245,244,234,42,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":"move_stake","type":"bool"},{"name":"lamports","type":"u64"}]},{"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"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"system_transfer","docs":["Transfers SOL from the vault to another account.","","Token program ID is required as a remaining account when wrapping SOL (i.e., transfer to wSOL token account)."],"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_transfer_checked_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[37,131,188,85,45,183,8,81],"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_mint","writable":true},{"name":"glam_mint_authority","writable":true,"signer":true},{"name":"from","writable":true},{"name":"to","writable":true},{"name":"mint"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint_params","discriminator":[45,42,115,25,179,27,57,191],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_mint_params_by_mint_authority","docs":["For glam mint program\'s use only, timelock is not enforced"],"discriminator":[94,160,55,53,175,225,62,118],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_priced_protocol","docs":["Only accessible by integration programs"],"discriminator":[10,106,94,171,118,217,62,98],"accounts":[{"name":"glam_state","writable":true},{"name":"integration_authority","signer":true}],"args":[{"name":"priced_protocol","type":{"defined":{"name":"PricedProtocol"}}}]},{"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":"update_state_apply_timelock","discriminator":[66,12,138,80,133,85,46,220],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":48001,"name":"UnauthorizedIntegrationProgram","msg":"Integration program is not authorized"},{"code":48002,"name":"IntegrationNotEnabled","msg":"Integration is not enabled"},{"code":48003,"name":"ProtocolNotEnabled","msg":"Protocol is not enabled"},{"code":48004,"name":"GlamStateDisabled","msg":"GLAM state is disabled"},{"code":48005,"name":"ProtocolPolicyViolation","msg":"Protocol policy violation"},{"code":48006,"name":"EmergencyUpdateDenied","msg":"Emergency update denied"},{"code":48007,"name":"TimelockStillActive","msg":"Timelock still active"},{"code":48008,"name":"CannotApplyChanges","msg":"Pending changes cannot be applied due to unfulfilled requests"},{"code":48009,"name":"AssetNotBorrowable","msg":"Asset is not allowed to borrow"},{"code":48010,"name":"InvalidAccountOwner","msg":"Account owner does not match expected program"},{"code":48011,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Invalid name"},{"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":"InvalidIndex","msg":"Invalid index"},{"code":49005,"name":"InvalidIxArgs","msg":"Invalid instruction arguments"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed: mint must be closed and state must be disabled"},{"code":49007,"name":"InvalidMintParams","msg":"Invalid mint params"},{"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":49014,"name":"InvalidBaseAsset","msg":"Invalid base asset"},{"code":49015,"name":"InvalidProtocolBitflag","msg":"Invalid protocol bitflag"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidPlatformFeeForSwap","msg":"Invalid platform fee"},{"code":50005,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50006,"name":"InvalidSwapAmount","msg":"Invalid swap amount"},{"code":50007,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":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":"ExternalPositionsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultTokensNotPriced","msg":"Not all vault tokens are priced"},{"code":51105,"name":"PriceDivergenceTooLarge","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":51108,"name":"TypeCastingError","msg":"Type casting error"},{"code":51109,"name":"BaseAssetNotSupported","msg":"Base asset must have 6 decimals."},{"code":51110,"name":"InvalidQuoteSpotMarket","msg":"Unsupported spot market for perp quotes"},{"code":51111,"name":"UnknownExternalVaultAsset","msg":"Unknown external vault account"},{"code":51112,"name":"InvalidPriceDenom","msg":"Invalid price denom"},{"code":51113,"name":"InvalidDiscriminator","msg":"Account discriminator does not match expected value"},{"code":51114,"name":"InvalidAccountData","msg":"Invalid account data"},{"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":"TokenizedVault"},{"name":"Mint"}]}},{"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":"ActionType","type":{"kind":"enum","variants":[{"name":"AddExternalAccount"},{"name":"DeleteExternalAccount"},{"name":"DeleteExternalAccountIfZeroLamports"},{"name":"DeleteExternalAccountIfZeroBalance"},{"name":"AddAsset"},{"name":"DeleteAsset"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyAccessUpdateArgs","type":{"kind":"struct","fields":[{"name":"disabled_integrations","type":{"vec":"pubkey"}},{"name":"disabled_delegates","type":{"vec":"pubkey"}},{"name":"state_enabled","type":{"option":"bool"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"ExtraParams","type":{"kind":"struct","fields":[{"name":"action_type","type":{"defined":{"name":"ActionType"}}},{"name":"pubkey","type":"pubkey"},{"name":"amount","type":{"option":"u64"}}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"JupiterSwapPolicy","type":{"kind":"struct","fields":[{"name":"max_slippage_bps","type":"u16"},{"name":"swap_allowlist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"owner","type":{"option":"pubkey"}},{"name":"portfolio_manager_name","type":{"option":{"array":["u8",32]}}},{"name":"borrowable","type":{"option":{"vec":"pubkey"}}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"any_lst","type":{"option":"bool"}},{"name":"timelock_duration","type":{"option":"u32"}},{"name":"integration_acls","type":{"option":{"vec":{"defined":{"name":"IntegrationAcl"}}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_JUPITER_SWAP","type":"u16","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_ALLOWLISTED","type":"u64","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_FROM_ANY","type":"u64","value":"8"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_LST","type":"u64","value":"2"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_TO_ANY","type":"u64","value":"1"},{"name":"PROTO_STAKE","type":"u16","value":"2"},{"name":"PROTO_STAKE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_STAKE_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_SYSTEM","type":"u16","value":"1"},{"name":"PROTO_SYSTEM_PERM_EMERGENCY_UPDATE","type":"u64","value":"4"},{"name":"PROTO_SYSTEM_PERM_TRANSFER","type":"u64","value":"2"},{"name":"PROTO_SYSTEM_PERM_WSOL","type":"u64","value":"1"}]}');
|
|
255
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz","metadata":{"name":"glam_protocol","version":"1.0.3","spec":"0.1.0","description":"Glam Protocol"},"instructions":[{"name":"cancel_timelock","discriminator":[158,180,47,81,133,231,168,238],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]},{"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":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"cpi_proxy","docs":["Only accessible by integration programs"],"discriminator":[65,134,48,2,7,232,199,46],"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":"integration_authority","signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"data","type":"bytes"},{"name":"extra_params","type":{"vec":{"defined":{"name":"ExtraParams"}}}}]},{"name":"emergency_access_update","docs":["Bypasses the timelock for emergency updates on access control rules. Allowed operations:","- removing an integration program","- removing a delegate","- enabling/disabling glam state"],"discriminator":[207,247,157,14,87,132,230,0],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyAccessUpdateArgs"}}}]},{"name":"enable_disable_protocols","discriminator":[222,198,164,163,194,161,11,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"set_enabled","type":"bool"}]},{"name":"extend_state","discriminator":[34,147,151,206,134,128,82,228],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"bytes","type":"u32"}]},{"name":"grant_revoke_delegate_permissions","discriminator":[162,21,218,157,218,86,114,171],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"delegate","type":"pubkey"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"},{"name":"set_granted","type":"bool"}]},{"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_signer","writable":true,"signer":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"base_asset_mint"}],"args":[{"name":"state","type":{"defined":{"name":"StateModel"}}}]},{"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_stake_pool","optional":true},{"name":"output_stake_pool","optional":true},{"name":"glam_config","optional":true,"pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"sol_usd_oracle","optional":true},{"name":"input_token_oracle","optional":true},{"name":"output_token_oracle","optional":true}],"args":[{"name":"data","type":"bytes"}]},{"name":"link_unlink_mint_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[85,67,58,245,175,14,122,6],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"link","type":"bool"}]},{"name":"reset_priced_protocols_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[86,95,153,145,179,181,107,235],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[]},{"name":"set_jupiter_swap_policy","discriminator":[189,182,227,165,127,148,246,189],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"JupiterSwapPolicy"}}}]},{"name":"set_protocol_policy","discriminator":[37,99,61,122,227,102,182,180],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]},{"name":"set_system_transfer_policy","discriminator":[102,21,157,101,19,4,100,213],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"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_or_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","discriminator":[165,157,188,245,244,234,42,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":"move_stake","type":"bool"},{"name":"lamports","type":"u64"}]},{"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"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"lamports","type":"u64"}]},{"name":"system_transfer","docs":["Transfers SOL from the vault to another account.","","Token program ID is required as a remaining account when wrapping SOL (i.e., transfer to wSOL token account)."],"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_transfer_checked_by_mint_authority","docs":["For glam mint program\'s use only"],"discriminator":[37,131,188,85,45,183,8,81],"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_mint","writable":true},{"name":"glam_mint_authority","writable":true,"signer":true},{"name":"from","writable":true},{"name":"to","writable":true},{"name":"mint"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]},{"name":"update_mint_params","discriminator":[45,42,115,25,179,27,57,191],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_mint_params_by_mint_authority","docs":["For glam mint program\'s use only, timelock is not enforced"],"discriminator":[94,160,55,53,175,225,62,118],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"glam_mint_authority","signer":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"EngineField"}}}}]},{"name":"update_priced_protocol","docs":["Only accessible by integration programs"],"discriminator":[10,106,94,171,118,217,62,98],"accounts":[{"name":"glam_state","writable":true},{"name":"integration_authority","signer":true}],"args":[{"name":"priced_protocol","type":{"defined":{"name":"PricedProtocol"}}}]},{"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":"update_state_apply_timelock","discriminator":[66,12,138,80,133,85,46,220],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true}],"args":[]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"errors":[{"code":48000,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":48001,"name":"UnauthorizedIntegrationProgram","msg":"Integration program is not authorized"},{"code":48002,"name":"IntegrationNotEnabled","msg":"Integration is not enabled"},{"code":48003,"name":"ProtocolNotEnabled","msg":"Protocol is not enabled"},{"code":48004,"name":"GlamStateDisabled","msg":"GLAM state is disabled"},{"code":48005,"name":"ProtocolPolicyViolation","msg":"Protocol policy violation"},{"code":48006,"name":"EmergencyUpdateDenied","msg":"Emergency update denied"},{"code":48007,"name":"TimelockStillActive","msg":"Timelock still active"},{"code":48008,"name":"CannotApplyChanges","msg":"Pending changes cannot be applied due to unfulfilled requests"},{"code":48009,"name":"AssetNotBorrowable","msg":"Asset is not allowed to borrow"},{"code":48010,"name":"InvalidAccountOwner","msg":"Account owner does not match expected program"},{"code":48011,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":49000,"name":"InvalidAccountType","msg":"Invalid account type"},{"code":49001,"name":"InvalidName","msg":"Invalid name"},{"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":"InvalidIndex","msg":"Invalid index"},{"code":49005,"name":"InvalidIxArgs","msg":"Invalid instruction arguments"},{"code":49006,"name":"CannotCloseState","msg":"Glam state cannot be closed: mint must be closed and state must be disabled"},{"code":49007,"name":"InvalidMintParams","msg":"Invalid mint params"},{"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":49014,"name":"InvalidBaseAsset","msg":"Invalid base asset"},{"code":49015,"name":"InvalidProtocolBitflag","msg":"Invalid protocol bitflag"},{"code":50000,"name":"WithdrawDenied","msg":"Withdraw denied. Only vaults allow withdraws (funds and mints don\'t)"},{"code":50001,"name":"InvalidAssetForSwap","msg":"Asset cannot be swapped"},{"code":50002,"name":"UnsupportedSwapIx","msg":"Unsupported swap instruction"},{"code":50003,"name":"SlippageLimitExceeded","msg":"Max slippage exceeded"},{"code":50004,"name":"InvalidPlatformFeeForSwap","msg":"Invalid platform fee"},{"code":50005,"name":"InvalidTokenAccount","msg":"Invalid token account"},{"code":50006,"name":"InvalidSwapAmount","msg":"Invalid swap amount"},{"code":50007,"name":"MultipleStakeAccountsDisallowed","msg":"Multiple stake accounts disallowed"},{"code":51000,"name":"InvalidAssetPrice","msg":"Invalid asset price"},{"code":51001,"name":"InvalidStableCoinPriceForSubscribe","msg":"Subscription not allowed: invalid stable coin price"},{"code":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":"ExternalPositionsNotPriced","msg":"Not all external vault accounts are priced"},{"code":51104,"name":"VaultTokensNotPriced","msg":"Not all vault tokens are priced"},{"code":51105,"name":"PriceDivergenceTooLarge","msg":"No priced assets found"},{"code":51106,"name":"PositiveAumRequired","msg":"AUM must be positive"},{"code":51107,"name":"MathError","msg":"Math error"},{"code":51108,"name":"TypeCastingError","msg":"Type casting error"},{"code":51109,"name":"BaseAssetNotSupported","msg":"Base asset must have 6 decimals."},{"code":51110,"name":"InvalidQuoteSpotMarket","msg":"Unsupported spot market for perp quotes"},{"code":51111,"name":"UnknownExternalVaultAsset","msg":"Unknown external vault account"},{"code":51112,"name":"InvalidPriceDenom","msg":"Invalid price denom"},{"code":51113,"name":"InvalidDiscriminator","msg":"Account discriminator does not match expected value"},{"code":51114,"name":"InvalidAccountData","msg":"Invalid account data"},{"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":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"ActionType","type":{"kind":"enum","variants":[{"name":"AddExternalAccount"},{"name":"DeleteExternalAccount"},{"name":"DeleteExternalAccountIfZeroLamports"},{"name":"DeleteExternalAccountIfZeroBalance"},{"name":"AddAsset"},{"name":"DeleteAsset"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyAccessUpdateArgs","type":{"kind":"struct","fields":[{"name":"disabled_integrations","type":{"vec":"pubkey"}},{"name":"disabled_delegates","type":{"vec":"pubkey"}},{"name":"state_enabled","type":{"option":"bool"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"name":"EntryExitFees","type":{"kind":"struct","fields":[{"name":"subscription_fee_bps","type":"u16"},{"name":"redemption_fee_bps","type":"u16"}]}},{"name":"ExtraParams","type":{"kind":"struct","fields":[{"name":"action_type","type":{"defined":{"name":"ActionType"}}},{"name":"pubkey","type":"pubkey"},{"name":"amount","type":{"option":"u64"}}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"JupiterSwapPolicy","type":{"kind":"struct","fields":[{"name":"max_slippage_bps","type":"u16"},{"name":"swap_allowlist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"StateModel","type":{"kind":"struct","fields":[{"name":"account_type","type":{"option":{"defined":{"name":"AccountType"}}}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"enabled","type":{"option":"bool"}},{"name":"assets","type":{"option":{"vec":"pubkey"}}},{"name":"created","type":{"option":{"defined":{"name":"CreatedModel"}}}},{"name":"owner","type":{"option":"pubkey"}},{"name":"portfolio_manager_name","type":{"option":{"array":["u8",32]}}},{"name":"borrowable","type":{"option":{"vec":"pubkey"}}},{"name":"reduce_only","type":{"option":"bool"}},{"name":"any_lst","type":{"option":"bool"}},{"name":"timelock_duration","type":{"option":"u32"}},{"name":"integration_acls","type":{"option":{"vec":{"defined":{"name":"IntegrationAcl"}}}}},{"name":"delegate_acls","type":{"option":{"vec":{"defined":{"name":"DelegateAcl"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_JUPITER_SWAP","type":"u16","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_ALLOWLISTED","type":"u64","value":"4"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_FROM_ANY","type":"u64","value":"8"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_LST","type":"u64","value":"2"},{"name":"PROTO_JUPITER_SWAP_PERM_SWAP_TO_ANY","type":"u64","value":"1"},{"name":"PROTO_STAKE","type":"u16","value":"2"},{"name":"PROTO_STAKE_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_STAKE_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_SYSTEM","type":"u16","value":"1"},{"name":"PROTO_SYSTEM_PERM_EMERGENCY_UPDATE","type":"u64","value":"4"},{"name":"PROTO_SYSTEM_PERM_TRANSFER","type":"u64","value":"2"},{"name":"PROTO_SYSTEM_PERM_WSOL","type":"u64","value":"1"}]}');
|
|
256
256
|
|
|
257
257
|
/***/ }),
|
|
258
258
|
/* 16 */
|
|
259
259
|
/***/ ((module) => {
|
|
260
260
|
|
|
261
261
|
"use strict";
|
|
262
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5","metadata":{"name":"glam_mint","version":"1.0.1","spec":"0.1.0","description":"GLAM mint program"},"instructions":[{"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_token_account","writable":true},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"amount","type":"u64"}]},{"name":"cancel","discriminator":[232,219,223,41,219,236,220,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"user"},{"name":"recover_token_mint"},{"name":"user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"user"},{"kind":"account","path":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"claim_user"},{"name":"claim_token_mint"},{"name":"claim_user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"claim_user"},{"kind":"account","path":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_user_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"claim_token_program"},{"name":"glam_policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim_fees","discriminator":[82,251,233,156,12,52,184,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"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":"deposit_asset"},{"name":"vault_deposit_ata","docs":["To pay out fees"],"writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"deposit_token_program"},{"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":"protocol_fee_authority","docs":["To receive protocol fee"]},{"name":"protocol_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"protocol_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"manager_fee_authority","docs":["To receive manager fee"]},{"name":"manager_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"manager_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"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_mint"}]}},{"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":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"emergency_update_mint","discriminator":[141,210,26,160,120,140,28,239],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint"},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyUpdateMintArgs"}}}]},{"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_token_account","writable":true},{"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":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"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"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_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":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_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":"system_program","address":"11111111111111111111111111111111"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"limit","type":{"option":"u32"}}]},{"name":"initialize_mint","docs":["Initialize a new GLAM mint with extensions and metadata.","","- `mint_model` - Configuration model containing mint parameters and metadata","- `created_key` - 8-byte key used in the GLAM state PDA derivation","- `account_type` - Fund (for tokenized vault mint) or Mint","- `decimals` - Decimals of new mint"],"discriminator":[209,42,195,4,129,85,209,44],"accounts":[{"name":"glam_state","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"new_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"base_asset_mint"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}},{"name":"created_key","type":{"array":["u8",8]}},{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"decimals","type":{"option":"u8"}}]},{"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":"amount","type":"u64"}]},{"name":"price_drift_users","docs":["Extra accounts for pricing N drift users under the same user stats:","- user_stats x 1","- drift_user x N","- markets and oracles used by all drift users (no specific order)"],"discriminator":[12,5,143,51,101,81,200,150],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_users","type":"u8"}]},{"name":"price_drift_vault_depositors","docs":["Extra accounts for pricing N vault depositors:","- (vault_depositor, drift_vault, drift_user) x N","- spot_market used by drift users of vaults (no specific order)","- perp markets used by drift users of vaults (no specific order)","- oracles of spot markets and perp markets (no specific order)"],"discriminator":[234,16,238,70,189,23,98,160],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_vault_depositors","type":"u8"},{"name":"num_spot_markets","type":"u8"},{"name":"num_perp_markets","type":"u8"}]},{"name":"price_kamino_obligations","docs":["Prices Kamino obligations. Reserves and obligations must be refreshed in the same slot before calling this ix.","","Extra accounts for pricing N kamino obligations:","- obligations x N"],"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"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]},{"name":"price_kamino_vault_shares","docs":["Prices Kamino vault shares.","- `num_vaults` Number of kamino vaults to price.","","Extra accounts for pricing N kamino vault shares:","- (kvault_share_ata, kvault_share_mint, kvault_state, kvault_deposit_token_oracle) x N","- reserve x M","- M = number of reserves used by all kvaults\' allocations","- reserve pubkeys must follow the same order of reserves used by each allocation"],"discriminator":[112,92,238,224,145,105,38,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_vaults","type":"u8"}]},{"name":"price_stake_accounts","discriminator":[119,137,9,15,196,73,30,27],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]},{"name":"price_vault_tokens","docs":["Prices vault SOL balance and tokens it holds.","","Args:","- `denom`: Denomination of the price.","- `agg_indexes`: Indexes of the aggregation oracles for the tokens (must follow the same order of mints in extra accounts). If aggregation oracle is not used for token #`i`, `agg_indexes[i]` should be set to -1.","","Extra accounts for pricing N tokens:","- (ata, mint, oracle) x N","- optional oracle mapping (only add it if any token uses an agg oracle)"],"discriminator":[54,42,16,199,20,183,50,137],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"agg_indexes","type":{"vec":{"array":["i16",4]}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"amount_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"amount_in","type":"u64"}]},{"name":"set_mint_policy","discriminator":[12,208,252,52,166,250,137,169],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"MintPolicy"}}}]},{"name":"set_protocol_fees","discriminator":[49,143,189,18,56,206,158,226],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"signer","writable":true,"signer":true},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"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":"frozen","type":"bool"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"amount_in","type":"u64"}]},{"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":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_mint_apply_timelock","discriminator":[223,241,80,24,120,25,82,134],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[]},{"name":"validate_aum","docs":["Validates AUM of the vault and emits AumRecord event."],"discriminator":[101,15,233,89,134,123,224,99],"accounts":[{"name":"glam_state"},{"name":"signer","writable":true,"signer":true},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]},{"name":"RequestQueue","discriminator":[172,124,172,253,233,63,70,234]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"events":[{"name":"AumRecord","discriminator":[162,116,55,29,223,230,239,205]},{"name":"PricedProtocolRecord","discriminator":[232,89,187,82,49,200,127,132]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":6002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":6003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":6004,"name":"MaxCapExceeded","msg":"Max cap exceeded"},{"code":6005,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":6006,"name":"NewRequestNotAllowed","msg":"New request is not allowed"},{"code":6007,"name":"RequestNotClaimable","msg":"Request is not claimable"},{"code":6008,"name":"RequestNotCancellable","msg":"Request is not cancellable"},{"code":6009,"name":"RequestNotFound","msg":"Request not found"},{"code":6010,"name":"RequestQueueNotEmpty","msg":"Request queue not empty"},{"code":6011,"name":"InvalidRequestQueueData","msg":"Invalid request queue data"},{"code":6012,"name":"RequestQueueFull","msg":"Request queue full"},{"code":6013,"name":"ProtocolFeesNotCrystallized","msg":"Protocol fees should be crystallized before updating"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"u8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"AumRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyUpdateMintArgs","type":{"kind":"struct","fields":[{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"set_paused","type":"bool"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","type":"pubkey"},{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"},{"name":"asset_metas","type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"year_in_seconds","type":{"option":"u32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"notify_and_settle","type":{"option":{"defined":{"name":"NotifyAndSettle"}}}},{"name":"lockup_period","type":{"option":"u32"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"MintPolicy","type":{"kind":"struct","fields":[{"name":"lockup_period","type":"u32"},{"name":"max_cap","type":"u64"},{"name":"min_subscription","type":"u64"},{"name":"min_redemption","type":"u64"},{"name":"reserved","type":"u64"},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}},{"name":"PendingRequest","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"incoming","type":"u64"},{"name":"outgoing","type":"u64"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":"u8"},{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"reserved","type":{"array":["u8",6]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"PricedProtocolRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"RequestQueue","type":{"kind":"struct","fields":[{"name":"glam_state","type":"pubkey"},{"name":"glam_mint","type":"pubkey"},{"name":"subscription_paused","type":"bool"},{"name":"redemption_paused","type":"bool"},{"name":"data","type":{"vec":{"defined":{"name":"PendingRequest"}}}}]}},{"name":"RequestType","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MINT","type":"u16","value":"1"},{"name":"PROTO_MINT_PERM_BURN_TOKENS","type":"u64","value":"2"},{"name":"PROTO_MINT_PERM_CANCEL_REQUEST","type":"u64","value":"128"},{"name":"PROTO_MINT_PERM_CLAIM_FEES","type":"u64","value":"16"},{"name":"PROTO_MINT_PERM_CLAIM_REQUEST","type":"u64","value":"256"},{"name":"PROTO_MINT_PERM_EMERGENCY_UPDATE","type":"u64","value":"64"},{"name":"PROTO_MINT_PERM_FORCE_TRANSFER_TOKENS","type":"u64","value":"4"},{"name":"PROTO_MINT_PERM_FULFILL","type":"u64","value":"32"},{"name":"PROTO_MINT_PERM_MINT_TOKENS","type":"u64","value":"1"},{"name":"PROTO_MINT_PERM_SET_TOKEN_ACCOUNT_STATE","type":"u64","value":"8"}]}');
|
|
262
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5","metadata":{"name":"glam_mint","version":"1.0.2","spec":"0.1.0","description":"GLAM mint program"},"instructions":[{"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_token_account","writable":true},{"name":"from"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[{"name":"amount","type":"u64"}]},{"name":"cancel","discriminator":[232,219,223,41,219,236,220,190],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"user"},{"name":"recover_token_mint"},{"name":"user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"user"},{"kind":"account","path":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"kind":"account","path":"recover_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":"recover_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim","discriminator":[62,198,214,193,213,159,108,210],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"claim_user"},{"name":"claim_token_mint"},{"name":"claim_user_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"claim_user"},{"kind":"account","path":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_token_program"},{"kind":"account","path":"claim_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":"claim_user_policy","writable":true,"optional":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"claim_token_program"},{"name":"glam_policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[]},{"name":"claim_fees","discriminator":[82,251,233,156,12,52,184,202],"accounts":[{"name":"glam_state"},{"name":"glam_vault","writable":true,"pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"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":"deposit_asset"},{"name":"vault_deposit_ata","docs":["To pay out fees"],"writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_vault"},{"kind":"account","path":"deposit_token_program"},{"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":"protocol_fee_authority","docs":["To receive protocol fee"]},{"name":"protocol_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"protocol_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"manager_fee_authority","docs":["To receive manager fee"]},{"name":"manager_fee_authority_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"manager_fee_authority"},{"kind":"account","path":"deposit_token_program"},{"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":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"close_mint","discriminator":[149,251,157,212,65,181,235,129],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"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_mint"}]}},{"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":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"}],"args":[]},{"name":"emergency_update_mint","discriminator":[141,210,26,160,120,140,28,239],"accounts":[{"name":"glam_state"},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint"},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}}],"args":[{"name":"args","type":{"defined":{"name":"EmergencyUpdateMintArgs"}}}]},{"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_token_account","writable":true},{"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":"amount","type":"u64"}]},{"name":"fulfill","discriminator":[143,2,52,206,174,164,247,72],"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"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_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":"escrow_asset_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_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":"system_program","address":"11111111111111111111111111111111"},{"name":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"limit","type":{"option":"u32"}}]},{"name":"initialize_mint","docs":["Initialize a new GLAM mint with extensions and metadata.","","- `mint_model` - Configuration model containing mint parameters and metadata","- `created_key` - 8-byte key used in the GLAM state PDA derivation","- `account_type` - Fund (for tokenized vault mint) or Mint","- `decimals` - Decimals of new mint"],"discriminator":[209,42,195,4,129,85,209,44],"accounts":[{"name":"glam_state","writable":true},{"name":"signer","writable":true,"signer":true},{"name":"new_mint","writable":true},{"name":"request_queue","writable":true,"optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"new_mint"}]}},{"name":"extra_metas_account","writable":true},{"name":"base_asset_mint"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}},{"name":"created_key","type":{"array":["u8",8]}},{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"decimals","type":{"option":"u8"}}]},{"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":"amount","type":"u64"}]},{"name":"price_drift_users","docs":["Extra accounts for pricing N drift users under the same user stats:","- user_stats x 1","- drift_user x N","- markets and oracles used by all drift users (no specific order)"],"discriminator":[12,5,143,51,101,81,200,150],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_users","type":"u8"}]},{"name":"price_drift_vault_depositors","docs":["Extra accounts for pricing N vault depositors:","- (vault_depositor, drift_vault, drift_user) x N","- spot_market used by drift users of vaults (no specific order)","- perp markets used by drift users of vaults (no specific order)","- oracles of spot markets and perp markets (no specific order)"],"discriminator":[234,16,238,70,189,23,98,160],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_vault_depositors","type":"u8"},{"name":"num_spot_markets","type":"u8"},{"name":"num_perp_markets","type":"u8"}]},{"name":"price_kamino_obligations","docs":["Prices Kamino obligations. Reserves and obligations must be refreshed in the same slot before calling this ix.","","Extra accounts for pricing N kamino obligations:","- obligations x N"],"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"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]},{"name":"price_kamino_vault_shares","docs":["Prices Kamino vault shares.","- `num_vaults` Number of kamino vaults to price.","","Extra accounts for pricing N kamino vault shares:","- (kvault_share_ata, kvault_share_mint, kvault_state, kvault_deposit_token_oracle) x N","- reserve x M","- M = number of reserves used by all kvaults\' allocations","- reserve pubkeys must follow the same order of reserves used by each allocation"],"discriminator":[112,92,238,224,145,105,38,249],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"num_vaults","type":"u8"}]},{"name":"price_single_asset_vault","docs":["Prices a single asset vault."],"discriminator":[93,213,219,25,38,74,9,167],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"base_asset_ata"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]},{"name":"price_stake_accounts","discriminator":[119,137,9,15,196,73,30,27],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]},{"name":"price_vault_tokens","docs":["Prices vault SOL balance and tokens it holds.","","Args:","- `denom`: Denomination of the price.","- `agg_indexes`: Indexes of the aggregation oracles for the tokens (must follow the same order of mints in extra accounts). If aggregation oracle is not used for token #`i`, `agg_indexes[i]` should be set to -1.","","Extra accounts for pricing N tokens:","- (ata, mint, oracle) x N","- optional oracle mapping (only add it if any token uses an agg oracle)"],"discriminator":[54,42,16,199,20,183,50,137],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"signer","writable":true,"signer":true},{"name":"sol_usd_oracle"},{"name":"base_asset_oracle"},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[{"name":"agg_indexes","type":{"vec":{"array":["i16",4]}}}]},{"name":"queued_redeem","discriminator":[82,242,202,93,170,196,215,113],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"amount_in","type":"u64"}]},{"name":"queued_subscribe","discriminator":[107,180,212,63,146,0,159,255],"accounts":[{"name":"glam_state"},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","writable":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"signer","writable":true,"signer":true},{"name":"deposit_asset"},{"name":"escrow_deposit_ata","writable":true,"pda":{"seeds":[{"kind":"account","path":"glam_escrow"},{"kind":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"}],"args":[{"name":"amount_in","type":"u64"}]},{"name":"set_mint_policy","discriminator":[12,208,252,52,166,250,137,169],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"MintPolicy"}}}]},{"name":"set_protocol_fees","discriminator":[49,143,189,18,56,206,158,226],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_mint"},{"name":"signer","writable":true,"signer":true},{"name":"glam_config","pda":{"seeds":[{"kind":"const","value":[103,108,111,98,97,108,45,99,111,110,102,105,103]}],"program":{"kind":"const","value":[10,11,0,83,72,16,46,144,46,42,79,22,157,123,21,242,192,146,1,78,88,59,102,9,190,226,92,189,187,232,83,220]}}},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]},{"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":"frozen","type":"bool"}]},{"name":"subscribe","discriminator":[254,28,191,138,156,179,183,53],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_vault","pda":{"seeds":[{"kind":"const","value":[118,97,117,108,116]},{"kind":"account","path":"glam_state"}],"program":{"kind":"const","value":[10,55,49,193,142,247,75,193,33,61,5,218,254,219,143,206,156,138,14,32,89,232,248,173,46,77,46,206,189,171,68,237]}}},{"name":"glam_mint","writable":true},{"name":"glam_escrow","pda":{"seeds":[{"kind":"const","value":[101,115,99,114,111,119]},{"kind":"account","path":"glam_mint"}]}},{"name":"request_queue","pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"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":"account","path":"deposit_token_program"},{"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":"account","path":"deposit_token_program"},{"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":"deposit_token_program"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"associated_token_program","address":"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"},{"name":"policies_program","address":"po1iCYakK3gHCLbuju4wGzFowTMpAJxkqK1iwUqMonY"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"amount_in","type":"u64"}]},{"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":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"mint_model","type":{"defined":{"name":"MintModel"}}}]},{"name":"update_mint_apply_timelock","discriminator":[223,241,80,24,120,25,82,134],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_mint","writable":true},{"name":"request_queue","optional":true,"pda":{"seeds":[{"kind":"const","value":[114,101,113,117,101,115,116,45,113,117,101,117,101]},{"kind":"account","path":"glam_mint"}]}},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_2022_program","address":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"},{"name":"glam_protocol","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[]},{"name":"validate_aum","docs":["Validates AUM of the vault and emits AumRecord event."],"discriminator":[101,15,233,89,134,123,224,99],"accounts":[{"name":"glam_state"},{"name":"signer","writable":true,"signer":true},{"name":"event_authority","optional":true,"pda":{"seeds":[{"kind":"const","value":[95,95,101,118,101,110,116,95,97,117,116,104,111,114,105,116,121]}]}},{"name":"event_program","optional":true,"address":"gstgm1M39mhgnvgyScGUDRwNn5kNVSd97hTtyow1Et5"}],"args":[]}],"accounts":[{"name":"GlobalConfig","discriminator":[149,8,156,202,160,252,176,217]},{"name":"RequestQueue","discriminator":[172,124,172,253,233,63,70,234]},{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"events":[{"name":"AumRecord","discriminator":[162,116,55,29,223,230,239,205]},{"name":"PricedProtocolRecord","discriminator":[232,89,187,82,49,200,127,132]}],"errors":[{"code":6000,"name":"InvalidAuthority","msg":"Invalid authority"},{"code":6001,"name":"UnauthorizedSigner","msg":"Signer is not authorized"},{"code":6002,"name":"ActionPaused","msg":"Requested action is paused"},{"code":6003,"name":"InvalidAsset","msg":"Asset not allowed to subscribe"},{"code":6004,"name":"MaxCapExceeded","msg":"Max cap exceeded"},{"code":6005,"name":"InvalidAmount","msg":"Invalid amount for subscription or redemption"},{"code":6006,"name":"NewRequestNotAllowed","msg":"New request is not allowed"},{"code":6007,"name":"RequestNotClaimable","msg":"Request is not claimable"},{"code":6008,"name":"RequestNotCancellable","msg":"Request is not cancellable"},{"code":6009,"name":"RequestNotFound","msg":"Request not found"},{"code":6010,"name":"RequestQueueNotEmpty","msg":"Request queue not empty"},{"code":6011,"name":"InvalidRequestQueueData","msg":"Invalid request queue data"},{"code":6012,"name":"RequestQueueFull","msg":"Request queue full"},{"code":6013,"name":"ProtocolFeesNotCrystallized","msg":"Protocol fees should be crystallized before updating"}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"AssetMeta","type":{"kind":"struct","fields":[{"name":"asset","type":"pubkey"},{"name":"decimals","type":"u8"},{"name":"oracle","type":"pubkey"},{"name":"oracle_source","type":{"defined":{"name":"OracleSource"}}},{"name":"max_age_seconds","type":"u16"},{"name":"priority","type":"i8"},{"name":"padding","type":{"array":["u8",3]}}]}},{"name":"AumRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"EmergencyUpdateMintArgs","type":{"kind":"struct","fields":[{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"set_paused","type":"bool"}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"GlobalConfig","type":{"kind":"struct","fields":[{"name":"admin","docs":["The authority that can modify the config"],"type":"pubkey"},{"name":"fee_authority","docs":["The authority that can modify fee structure of individual glam state and claim protocol fees"],"type":"pubkey"},{"name":"referrer","docs":["Default GLAM referrer"],"type":"pubkey"},{"name":"base_fee_bps","docs":["Default protocol base fee applied to all vaults"],"type":"u16"},{"name":"flow_fee_bps","docs":["Default protocol flow fee applied to all vaults"],"type":"u16"},{"name":"asset_metas","docs":["List of assets and their oracle configs supported by the protocol"],"type":{"vec":{"defined":{"name":"AssetMeta"}}}}]}},{"name":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MintModel","type":{"kind":"struct","fields":[{"name":"symbol","type":{"option":"string"}},{"name":"name","type":{"option":{"array":["u8",32]}}},{"name":"uri","type":{"option":"string"}},{"name":"year_in_seconds","type":{"option":"u32"}},{"name":"permanent_delegate","type":{"option":"pubkey"}},{"name":"default_account_state_frozen","type":{"option":"bool"}},{"name":"fee_structure","type":{"option":{"defined":{"name":"FeeStructure"}}}},{"name":"notify_and_settle","type":{"option":{"defined":{"name":"NotifyAndSettle"}}}},{"name":"lockup_period","type":{"option":"u32"}},{"name":"max_cap","type":{"option":"u64"}},{"name":"min_subscription","type":{"option":"u64"}},{"name":"min_redemption","type":{"option":"u64"}},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"MintPolicy","type":{"kind":"struct","fields":[{"name":"lockup_period","type":"u32"},{"name":"max_cap","type":"u64"},{"name":"min_subscription","type":"u64"},{"name":"min_redemption","type":"u64"},{"name":"reserved","type":"u64"},{"name":"allowlist","type":{"option":{"vec":"pubkey"}}},{"name":"blocklist","type":{"option":{"vec":"pubkey"}}}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"name":"OracleSource","type":{"kind":"enum","variants":[{"name":"Pyth"},{"name":"Switchboard"},{"name":"QuoteAsset"},{"name":"Pyth1K"},{"name":"Pyth1M"},{"name":"PythStableCoin"},{"name":"Prelaunch"},{"name":"PythPull"},{"name":"Pyth1KPull"},{"name":"Pyth1MPull"},{"name":"PythStableCoinPull"},{"name":"SwitchboardOnDemand"},{"name":"PythLazer"},{"name":"PythLazer1K"},{"name":"PythLazer1M"},{"name":"PythLazerStableCoin"},{"name":"NotSet"},{"name":"LstPoolState"},{"name":"MarinadeState"},{"name":"BaseAsset"},{"name":"ChainlinkRWA"}]}},{"name":"PendingRequest","type":{"kind":"struct","fields":[{"name":"user","type":"pubkey"},{"name":"incoming","type":"u64"},{"name":"outgoing","type":"u64"},{"name":"created_at","type":"u64"},{"name":"fulfilled_at","type":"u64"},{"name":"time_unit","type":"u8"},{"name":"request_type","type":{"defined":{"name":"RequestType"}}},{"name":"reserved","type":{"array":["u8",6]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"PricedProtocolRecord","type":{"kind":"struct","fields":[{"name":"base_asset_amount","type":"i128"}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"RequestQueue","type":{"kind":"struct","fields":[{"name":"glam_state","type":"pubkey"},{"name":"glam_mint","type":"pubkey"},{"name":"subscription_paused","type":"bool"},{"name":"redemption_paused","type":"bool"},{"name":"data","type":{"vec":{"defined":{"name":"PendingRequest"}}}}]}},{"name":"RequestType","type":{"kind":"enum","variants":[{"name":"Subscription"},{"name":"Redemption"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_MINT","type":"u16","value":"1"},{"name":"PROTO_MINT_PERM_BURN_TOKENS","type":"u64","value":"2"},{"name":"PROTO_MINT_PERM_CANCEL_REQUEST","type":"u64","value":"128"},{"name":"PROTO_MINT_PERM_CLAIM_FEES","type":"u64","value":"16"},{"name":"PROTO_MINT_PERM_CLAIM_REQUEST","type":"u64","value":"256"},{"name":"PROTO_MINT_PERM_EMERGENCY_UPDATE","type":"u64","value":"64"},{"name":"PROTO_MINT_PERM_FORCE_TRANSFER_TOKENS","type":"u64","value":"4"},{"name":"PROTO_MINT_PERM_FULFILL","type":"u64","value":"32"},{"name":"PROTO_MINT_PERM_MINT_TOKENS","type":"u64","value":"1"},{"name":"PROTO_MINT_PERM_SET_TOKEN_ACCOUNT_STATE","type":"u64","value":"8"}]}');
|
|
263
263
|
|
|
264
264
|
/***/ }),
|
|
265
265
|
/* 17 */
|
|
266
266
|
/***/ ((module) => {
|
|
267
267
|
|
|
268
268
|
"use strict";
|
|
269
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgs9nJgX8PmRHWAAEP9H7xT3ZkaPWSGPYbj3mXdTa","metadata":{"name":"ext_spl","version":"1.0.0","spec":"0.1.0","description":"SPL integration for GLAM Protocol"},"instructions":[{"name":"set_token_transfer_policy","discriminator":[0,144,15,4,149,22,95,50],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_TOKEN","type":"u16","value":"1"},{"name":"PROTO_TOKEN_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
269
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgs9nJgX8PmRHWAAEP9H7xT3ZkaPWSGPYbj3mXdTa","metadata":{"name":"ext_spl","version":"1.0.0","spec":"0.1.0","description":"SPL integration for GLAM Protocol"},"instructions":[{"name":"set_token_transfer_policy","discriminator":[0,144,15,4,149,22,95,50],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"TransferPolicy"}}}]},{"name":"token_close_account","discriminator":[240,32,179,154,96,110,43,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"token_account","writable":true}],"args":[]},{"name":"token_transfer_checked","discriminator":[169,178,117,156,169,191,199,116],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"from","writable":true},{"name":"mint"},{"name":"to","writable":true}],"args":[{"name":"amount","type":"u64"},{"name":"decimals","type":"u8"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"TransferPolicy","type":{"kind":"struct","fields":[{"name":"allowlist","type":{"vec":"pubkey"}}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_TOKEN","type":"u16","value":"1"},{"name":"PROTO_TOKEN_PERM_TRANSFER","type":"u64","value":"1"}]}');
|
|
270
270
|
|
|
271
271
|
/***/ }),
|
|
272
272
|
/* 18 */
|
|
273
273
|
/***/ ((module) => {
|
|
274
274
|
|
|
275
275
|
"use strict";
|
|
276
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgdpMFXKobURsFtStdaMLRSuwdmDUsrndov7kyu9h","metadata":{"name":"ext_drift","version":"1.0.0","spec":"0.1.0","description":"Drift integration for GLAM Protocol"},"instructions":[{"name":"cancel_orders","discriminator":[238,225,95,158,227,103,8,194],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"cancel_orders_by_ids","discriminator":[134,19,144,165,94,240,210,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"delete_user","discriminator":[186,85,17,249,219,231,98,251],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"deposit","discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"initialize_user","discriminator":[111,17,185,250,60,122,38,254],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"initialize_user_stats","discriminator":[254,243,72,98,251,130,168,213],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"modify_order","discriminator":[47,124,117,255,201,197,130,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"place_orders","discriminator":[60,63,50,123,12,197,60,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"reclaim_rent","discriminator":[218,200,19,197,227,89,192,22],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"set_drift_protocol_policy","discriminator":[200,22,110,2,58,22,76,162],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftProtocolPolicy"}}}]},{"name":"set_drift_vaults_policy","discriminator":[168,134,53,33,18,88,142,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftVaultsPolicy"}}}]},{"name":"settle_multiple_pnls","discriminator":[127,66,117,57,40,50,152,127],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"settle_pnl","discriminator":[43,61,234,45,15,95,152,153],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"update_user_custom_margin_ratio","discriminator":[21,221,140,187,32,129,11,123],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"update_user_delegate","discriminator":[139,205,141,141,113,36,94,187],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"update_user_margin_trading_enabled","discriminator":[194,92,204,223,246,188,31,203],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"update_user_pool_id","discriminator":[219,86,73,106,56,218,128,109],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"pool_id","type":"u8"}]},{"name":"vaults_cancel_request_withdraw","discriminator":[188,93,159,202,157,47,143,219],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"vaults_initialize_vault_depositor","discriminator":[135,5,41,254,229,75,138,49],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"vault"},{"name":"vault_depositor","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"vaults_request_withdraw","discriminator":[138,91,50,130,167,165,120,175],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[{"name":"withdraw_amount","type":"u64"},{"name":"withdraw_unit","type":{"defined":{"name":"WithdrawUnit"}}}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[]},{"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DriftProtocolPolicy","type":{"kind":"struct","fields":[{"name":"spot_markets_allowlist","type":{"vec":"u16"}},{"name":"perp_markets_allowlist","type":{"vec":"u16"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"DriftVaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"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":"bit_flags","type":{"option":"u8"}},{"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":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"bit_flags","type":"u8"},{"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":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"WithdrawUnit","type":{"kind":"enum","variants":[{"name":"Shares"},{"name":"Token"},{"name":"SharesPercent"}]}}],"constants":[{"name":"PROTO_DRIFT_PROTOCOL","type":"u16","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_BORROW","type":"u64","value":"32"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CANCEL_ORDERS","type":"u64","value":"256"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CREATE_MODIFY_ORDERS","type":"u64","value":"128"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DELETE_USER","type":"u64","value":"4"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DEPOSIT","type":"u64","value":"8"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_INIT_USER","type":"u64","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_PERP_MARKETS","type":"u64","value":"512"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_REPAY","type":"u64","value":"64"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_SPOT_MARKETS","type":"u64","value":"1024"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_UPDATE_USER","type":"u64","value":"2"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_WITHDRAW","type":"u64","value":"16"},{"name":"PROTO_DRIFT_VAULTS","type":"u16","value":"2"},{"name":"PROTO_DRIFT_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_DRIFT_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
276
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgdpMFXKobURsFtStdaMLRSuwdmDUsrndov7kyu9h","metadata":{"name":"ext_drift","version":"1.0.0","spec":"0.1.0","description":"Drift integration for GLAM Protocol"},"instructions":[{"name":"cancel_orders","discriminator":[238,225,95,158,227,103,8,194],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"cancel_orders_by_ids","discriminator":[134,19,144,165,94,240,210,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_ids","type":{"vec":"u32"}}]},{"name":"delete_user","discriminator":[186,85,17,249,219,231,98,251],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true}],"args":[]},{"name":"deposit","discriminator":[242,35,198,137,82,225,242,182],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"initialize_user","discriminator":[111,17,185,250,60,122,38,254],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"name","type":{"array":["u8",32]}}]},{"name":"initialize_user_stats","discriminator":[254,243,72,98,251,130,168,213],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"user_stats","writable":true},{"name":"state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"modify_order","discriminator":[47,124,117,255,201,197,130,94],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"order_id","type":{"option":"u32"}},{"name":"modify_order_params","type":{"defined":{"name":"ModifyOrderParams"}}}]},{"name":"place_orders","discriminator":[60,63,50,123,12,197,60,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true}],"args":[{"name":"params","type":{"vec":{"defined":{"name":"OrderParams"}}}}]},{"name":"reclaim_rent","discriminator":[218,200,19,197,227,89,192,22],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true},{"name":"user_stats","writable":true},{"name":"state"},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"set_drift_protocol_policy","discriminator":[200,22,110,2,58,22,76,162],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftProtocolPolicy"}}}]},{"name":"set_drift_vaults_policy","discriminator":[168,134,53,33,18,88,142,223],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"DriftVaultsPolicy"}}}]},{"name":"settle_multiple_pnls","discriminator":[127,66,117,57,40,50,152,127],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_indexes","type":{"vec":"u16"}},{"name":"mode","type":{"defined":{"name":"SettlePnlMode"}}}]},{"name":"settle_pnl","discriminator":[43,61,234,45,15,95,152,153],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"state"},{"name":"user","writable":true},{"name":"spot_market_vault"}],"args":[{"name":"market_index","type":"u16"}]},{"name":"update_user_custom_margin_ratio","discriminator":[21,221,140,187,32,129,11,123],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_ratio","type":"u32"}]},{"name":"update_user_delegate","discriminator":[139,205,141,141,113,36,94,187],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"delegate","type":"pubkey"}]},{"name":"update_user_margin_trading_enabled","discriminator":[194,92,204,223,246,188,31,203],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"margin_trading_enabled","type":"bool"}]},{"name":"update_user_pool_id","discriminator":[219,86,73,106,56,218,128,109],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user","writable":true}],"args":[{"name":"sub_account_id","type":"u16"},{"name":"pool_id","type":"u8"}]},{"name":"vaults_cancel_request_withdraw","discriminator":[188,93,159,202,157,47,143,219],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"vaults_initialize_vault_depositor","discriminator":[135,5,41,254,229,75,138,49],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"vault"},{"name":"vault_depositor","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"},{"name":"system_program","address":"11111111111111111111111111111111"}],"args":[]},{"name":"vaults_request_withdraw","discriminator":[138,91,50,130,167,165,120,175],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"drift_user_stats"},{"name":"drift_user"}],"args":[{"name":"withdraw_amount","type":"u64"},{"name":"withdraw_unit","type":{"defined":{"name":"WithdrawUnit"}}}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"vAuLTsyrvSfZRuRB3XgvkPwNGgYSs9YRYymVebLKoxR"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault","writable":true},{"name":"vault_depositor","writable":true},{"name":"vault_token_account","writable":true},{"name":"drift_user_stats","writable":true},{"name":"drift_user","writable":true},{"name":"drift_state"},{"name":"drift_spot_market_vault","writable":true},{"name":"drift_signer"},{"name":"user_token_account","writable":true},{"name":"drift_program"},{"name":"token_program"}],"args":[]},{"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"name":"expires_at","type":"i64"}]}},{"name":"DriftProtocolPolicy","type":{"kind":"struct","fields":[{"name":"spot_markets_allowlist","type":{"vec":"u16"}},{"name":"perp_markets_allowlist","type":{"vec":"u16"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"DriftVaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"MarketType","type":{"kind":"enum","variants":[{"name":"Spot"},{"name":"Perp"}]}},{"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":"bit_flags","type":{"option":"u8"}},{"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":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"bit_flags","type":"u8"},{"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":"PositionDirection","type":{"kind":"enum","variants":[{"name":"Long"},{"name":"Short"}]}},{"name":"PostOnlyParam","type":{"kind":"enum","variants":[{"name":"None"},{"name":"MustPostOnly"},{"name":"TryPostOnly"},{"name":"Slide"}]}},{"name":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"SettlePnlMode","type":{"kind":"enum","variants":[{"name":"MustSettle"},{"name":"TrySettle"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"WithdrawUnit","type":{"kind":"enum","variants":[{"name":"Shares"},{"name":"Token"},{"name":"SharesPercent"}]}}],"constants":[{"name":"PROTO_DRIFT_PROTOCOL","type":"u16","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_BORROW","type":"u64","value":"32"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CANCEL_ORDERS","type":"u64","value":"256"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_CREATE_MODIFY_ORDERS","type":"u64","value":"128"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DELETE_USER","type":"u64","value":"4"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_DEPOSIT","type":"u64","value":"8"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_INIT_USER","type":"u64","value":"1"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_PERP_MARKETS","type":"u64","value":"512"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_REPAY","type":"u64","value":"64"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_SPOT_MARKETS","type":"u64","value":"1024"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_UPDATE_USER","type":"u64","value":"2"},{"name":"PROTO_DRIFT_PROTOCOL_PERM_WITHDRAW","type":"u64","value":"16"},{"name":"PROTO_DRIFT_VAULTS","type":"u16","value":"2"},{"name":"PROTO_DRIFT_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_DRIFT_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
277
277
|
|
|
278
278
|
/***/ }),
|
|
279
279
|
/* 19 */
|
|
280
280
|
/***/ ((module) => {
|
|
281
281
|
|
|
282
282
|
"use strict";
|
|
283
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgKa2Gq9wf5hM3DFWx1TvUrGYzDYszyFGq3XBY9Uq","metadata":{"name":"ext_kamino","version":"1.0.0","spec":"0.1.0","description":"Kamino integration for GLAM Protocol"},"instructions":[{"name":"farms_harvest_reward","discriminator":[244,248,124,210,194,52,75,152],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"farms_initialize_user","discriminator":[188,148,82,37,44,46,162,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"farms_stake","discriminator":[224,105,208,179,98,200,213,238],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"farm_vault","writable":true},{"name":"user_ata","writable":true},{"name":"token_mint"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"farms_unstake","discriminator":[180,131,50,144,26,242,175,242],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"scope_prices","optional":true}],"args":[{"name":"amount","type":"u128"}]},{"name":"farms_withdraw_unstaked_deposits","discriminator":[107,97,50,15,211,245,52,96],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"user_ata","writable":true},{"name":"farm_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"token_program"}],"args":[]},{"name":"lending_borrow_obligation_liquidity_v2","discriminator":[149,226,84,157,124,178,35,122],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[33,146,50,121,127,94,92,192],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_init_obligation","discriminator":[188,161,62,142,106,232,77,135],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_init_obligation_farms_for_reserve","discriminator":[3,234,110,39,12,147,175,185],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_init_user_metadata","discriminator":[68,236,138,146,124,228,247,241],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_repay_obligation_liquidity_v2","discriminator":[79,34,126,170,174,156,174,29],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[217,223,173,35,64,225,161,222],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"set_lending_policy","discriminator":[226,185,23,3,113,88,118,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"LendingPolicy"}}}]},{"name":"set_vaults_policy","discriminator":[211,177,22,152,235,59,192,62],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"VaultsPolicy"}}}]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault_state","writable":true},{"name":"token_vault","writable":true},{"name":"token_mint"},{"name":"base_vault_authority"},{"name":"shares_mint","writable":true},{"name":"user_token_ata","writable":true},{"name":"user_shares_ata","writable":true},{"name":"klend_program"},{"name":"token_program"},{"name":"shares_token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"max_amount","type":"u64"}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"withdraw_from_available_vault_state","writable":true},{"name":"withdraw_from_available_global_config"},{"name":"withdraw_from_available_token_vault","writable":true},{"name":"withdraw_from_available_base_vault_authority"},{"name":"withdraw_from_available_user_token_ata","writable":true},{"name":"withdraw_from_available_token_mint","writable":true},{"name":"withdraw_from_available_user_shares_ata","writable":true},{"name":"withdraw_from_available_shares_mint","writable":true},{"name":"withdraw_from_available_token_program"},{"name":"withdraw_from_available_shares_token_program"},{"name":"withdraw_from_available_klend_program"},{"name":"withdraw_from_available_event_authority"},{"name":"withdraw_from_available_program"},{"name":"withdraw_from_reserve_vault_state","writable":true},{"name":"withdraw_from_reserve_reserve","writable":true},{"name":"withdraw_from_reserve_ctoken_vault","writable":true},{"name":"withdraw_from_reserve_lending_market"},{"name":"withdraw_from_reserve_lending_market_authority"},{"name":"withdraw_from_reserve_reserve_liquidity_supply","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_mint","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_token_program"},{"name":"withdraw_from_reserve_instruction_sysvar_account"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"shares_amount","type":"u64"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"LendingPolicy","type":{"kind":"struct","fields":[{"name":"markets_allowlist","type":{"vec":"pubkey"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"VaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}}],"constants":[{"name":"PROTO_KAMINO_FARMS","type":"u16","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_HARVEST_REWARD","type":"u64","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_KAMINO_FARMS_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING","type":"u16","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_BORROW","type":"u64","value":"8"},{"name":"PROTO_KAMINO_LENDING_PERM_DEPOSIT","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING_PERM_INIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_REPAY","type":"u64","value":"16"},{"name":"PROTO_KAMINO_LENDING_PERM_WITHDRAW","type":"u64","value":"4"},{"name":"PROTO_KAMINO_VAULTS","type":"u16","value":"2"},{"name":"PROTO_KAMINO_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
283
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgKa2Gq9wf5hM3DFWx1TvUrGYzDYszyFGq3XBY9Uq","metadata":{"name":"ext_kamino","version":"1.0.0","spec":"0.1.0","description":"Kamino integration for GLAM Protocol"},"instructions":[{"name":"farms_harvest_reward","discriminator":[244,248,124,210,194,52,75,152],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"farms_initialize_user","discriminator":[188,148,82,37,44,46,162,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"rent","address":"SysvarRent111111111111111111111111111111111"}],"args":[]},{"name":"farms_stake","discriminator":[224,105,208,179,98,200,213,238],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"farm_vault","writable":true},{"name":"user_ata","writable":true},{"name":"token_mint"},{"name":"scope_prices","optional":true},{"name":"token_program"}],"args":[{"name":"amount","type":"u64"}]},{"name":"farms_unstake","discriminator":[180,131,50,144,26,242,175,242],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"scope_prices","optional":true}],"args":[{"name":"amount","type":"u128"}]},{"name":"farms_withdraw_unstaked_deposits","discriminator":[107,97,50,15,211,245,52,96],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"FarmsPZpWu9i7Kky8tPN37rs2TpmMrAZrC7S7vJa91Hr"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"user_state","writable":true},{"name":"farm_state","writable":true},{"name":"user_ata","writable":true},{"name":"farm_vault","writable":true},{"name":"farm_vaults_authority"},{"name":"token_program"}],"args":[]},{"name":"lending_borrow_obligation_liquidity_v2","discriminator":[149,226,84,157,124,178,35,122],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_deposit_reserve_liquidity_and_obligation_collateral_v2","discriminator":[33,146,50,121,127,94,92,192],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_init_obligation","discriminator":[188,161,62,142,106,232,77,135],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_init_obligation_farms_for_reserve","discriminator":[3,234,110,39,12,147,175,185],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_init_user_metadata","discriminator":[68,236,138,146,124,228,247,241],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"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":"lending_repay_obligation_liquidity_v2","discriminator":[79,34,126,170,174,156,174,29],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"lending_withdraw_obligation_collateral_and_redeem_reserve_collateral_v2","discriminator":[217,223,173,35,64,225,161,222],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"set_lending_policy","discriminator":[226,185,23,3,113,88,118,176],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"LendingPolicy"}}}]},{"name":"set_vaults_policy","discriminator":[211,177,22,152,235,59,192,62],"accounts":[{"name":"glam_state","writable":true},{"name":"glam_signer","writable":true,"signer":true},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"}],"args":[{"name":"policy","type":{"defined":{"name":"VaultsPolicy"}}}]},{"name":"vaults_deposit","discriminator":[124,173,191,223,48,26,84,84],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"vault_state","writable":true},{"name":"token_vault","writable":true},{"name":"token_mint"},{"name":"base_vault_authority"},{"name":"shares_mint","writable":true},{"name":"user_token_ata","writable":true},{"name":"user_shares_ata","writable":true},{"name":"klend_program"},{"name":"token_program"},{"name":"shares_token_program"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"max_amount","type":"u64"}]},{"name":"vaults_withdraw","discriminator":[12,8,236,92,134,144,196,87],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program","address":"KvauGMspG5k6rtzrqqn7WNn3oZdyKqLKwK2XWQ8FLjd"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"withdraw_from_available_vault_state","writable":true},{"name":"withdraw_from_available_global_config"},{"name":"withdraw_from_available_token_vault","writable":true},{"name":"withdraw_from_available_base_vault_authority"},{"name":"withdraw_from_available_user_token_ata","writable":true},{"name":"withdraw_from_available_token_mint","writable":true},{"name":"withdraw_from_available_user_shares_ata","writable":true},{"name":"withdraw_from_available_shares_mint","writable":true},{"name":"withdraw_from_available_token_program"},{"name":"withdraw_from_available_shares_token_program"},{"name":"withdraw_from_available_klend_program"},{"name":"withdraw_from_available_event_authority"},{"name":"withdraw_from_available_program"},{"name":"withdraw_from_reserve_vault_state","writable":true},{"name":"withdraw_from_reserve_reserve","writable":true},{"name":"withdraw_from_reserve_ctoken_vault","writable":true},{"name":"withdraw_from_reserve_lending_market"},{"name":"withdraw_from_reserve_lending_market_authority"},{"name":"withdraw_from_reserve_reserve_liquidity_supply","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_mint","writable":true},{"name":"withdraw_from_reserve_reserve_collateral_token_program"},{"name":"withdraw_from_reserve_instruction_sysvar_account"},{"name":"event_authority"},{"name":"program"}],"args":[{"name":"shares_amount","type":"u64"}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"InitObligationArgs","type":{"kind":"struct","fields":[{"name":"tag","type":"u8"},{"name":"id","type":"u8"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"LendingPolicy","type":{"kind":"struct","fields":[{"name":"markets_allowlist","type":{"vec":"pubkey"}},{"name":"borrow_allowlist","type":{"vec":"pubkey"}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}},{"name":"VaultsPolicy","type":{"kind":"struct","fields":[{"name":"vaults_allowlist","type":{"vec":"pubkey"}}]}}],"constants":[{"name":"PROTO_KAMINO_FARMS","type":"u16","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_HARVEST_REWARD","type":"u64","value":"4"},{"name":"PROTO_KAMINO_FARMS_PERM_STAKE","type":"u64","value":"1"},{"name":"PROTO_KAMINO_FARMS_PERM_UNSTAKE","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING","type":"u16","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_BORROW","type":"u64","value":"8"},{"name":"PROTO_KAMINO_LENDING_PERM_DEPOSIT","type":"u64","value":"2"},{"name":"PROTO_KAMINO_LENDING_PERM_INIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_LENDING_PERM_REPAY","type":"u64","value":"16"},{"name":"PROTO_KAMINO_LENDING_PERM_WITHDRAW","type":"u64","value":"4"},{"name":"PROTO_KAMINO_VAULTS","type":"u16","value":"2"},{"name":"PROTO_KAMINO_VAULTS_PERM_DEPOSIT","type":"u64","value":"1"},{"name":"PROTO_KAMINO_VAULTS_PERM_WITHDRAW","type":"u64","value":"2"}]}');
|
|
284
284
|
|
|
285
285
|
/***/ }),
|
|
286
286
|
/* 20 */
|
|
287
287
|
/***/ ((module) => {
|
|
288
288
|
|
|
289
289
|
"use strict";
|
|
290
|
-
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgS4dNeT3BTEQa1aaTS2b8CsAUz1SmwQDGosHSPsw","metadata":{"name":"ext_stake_pool","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for SPL stake pool programs"},"instructions":[{"name":"deposit_sol","discriminator":[108,81,78,117,125,155,56,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"pool_mint","writable":true},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":{"option":"u64"}}]},{"name":"deposit_stake","discriminator":[160,167,9,220,74,243,228,43],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_deposit_authority"},{"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":"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":{"option":"u64"}}]},{"name":"withdraw_sol","discriminator":[145,131,74,136,65,137,42,38],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]},{"name":"withdraw_stake","discriminator":[153,8,22,138,105,176,87,66],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_SANCTUM_MULTI","type":"u16","value":"4"},{"name":"PROTO_SANCTUM_SINGLE","type":"u16","value":"2"},{"name":"PROTO_STAKE_POOL","type":"u16","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL","type":"u64","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL_ANY","type":"u64","value":"4"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE","type":"u64","value":"2"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE_ANY","type":"u64","value":"8"},{"name":"STAKE_POOL_PERM_WITHDRAW_SOL","type":"u64","value":"16"},{"name":"STAKE_POOL_PERM_WITHDRAW_STAKE","type":"u64","value":"32"}]}');
|
|
290
|
+
module.exports = /*#__PURE__*/JSON.parse('{"address":"gstgS4dNeT3BTEQa1aaTS2b8CsAUz1SmwQDGosHSPsw","metadata":{"name":"ext_stake_pool","version":"0.1.0","spec":"0.1.0","description":"GLAM extension for SPL stake pool programs"},"instructions":[{"name":"deposit_sol","discriminator":[108,81,78,117,125,155,56,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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":"pool_mint","writable":true},{"name":"token_program"}],"args":[{"name":"lamports_in","type":"u64"},{"name":"minimum_pool_tokens_out","type":{"option":"u64"}}]},{"name":"deposit_stake","discriminator":[160,167,9,220,74,243,228,43],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"name":"stake_pool","writable":true},{"name":"validator_list","writable":true},{"name":"stake_pool_deposit_authority"},{"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":"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":{"option":"u64"}}]},{"name":"withdraw_sol","discriminator":[145,131,74,136,65,137,42,38],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]},{"name":"withdraw_stake","discriminator":[153,8,22,138,105,176,87,66],"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"}],"program":{"kind":"account","path":"glam_protocol_program"}}},{"name":"glam_signer","writable":true,"signer":true},{"name":"integration_authority","pda":{"seeds":[{"kind":"const","value":[105,110,116,101,103,114,97,116,105,111,110,45,97,117,116,104,111,114,105,116,121]}]}},{"name":"cpi_program"},{"name":"glam_protocol_program","address":"gstgptmbgJVi5f8ZmSRVZjZkDQwqKa3xWuUtD5WmJHz"},{"name":"system_program","address":"11111111111111111111111111111111"},{"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":{"option":"u64"}}]}],"accounts":[{"name":"StateAccount","discriminator":[142,247,54,95,85,133,249,103]}],"types":[{"name":"AccountType","type":{"kind":"enum","variants":[{"name":"Vault"},{"name":"TokenizedVault"},{"name":"Mint"},{"name":"SingleAssetVault"}]}},{"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":"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":"integration_permissions","type":{"vec":{"defined":{"name":"IntegrationPermissions"}}}},{"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":"Owner"},{"name":"PortfolioManagerName"},{"name":"Name"},{"name":"Uri"},{"name":"Assets"},{"name":"DelegateAcls"},{"name":"IntegrationAcls"},{"name":"TimelockDuration"},{"name":"Borrowable"},{"name":"DefaultAccountStateFrozen"},{"name":"PermanentDelegate"},{"name":"NotifyAndSettle"},{"name":"FeeStructure"},{"name":"FeeParams"},{"name":"ClaimableFees"},{"name":"ClaimedFees"},{"name":"OracleConfigs"},{"name":"ReduceOnly"},{"name":"AnyLst"}]}},{"name":"EngineFieldValue","type":{"kind":"enum","variants":[{"name":"Boolean","fields":[{"name":"val","type":"bool"}]},{"name":"U8","fields":[{"name":"val","type":"u8"}]},{"name":"U32","fields":[{"name":"val","type":"u32"}]},{"name":"U64","fields":[{"name":"val","type":"u64"}]},{"name":"String","fields":[{"name":"val","type":"string"}]},{"name":"Pubkey","fields":[{"name":"val","type":"pubkey"}]},{"name":"VecPubkey","fields":[{"name":"val","type":{"vec":"pubkey"}}]},{"name":"VecU8","fields":[{"name":"val","type":"bytes"}]},{"name":"VecU32","fields":[{"name":"val","type":{"vec":"u32"}}]},{"name":"VecDelegateAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"DelegateAcl"}}}}]},{"name":"VecIntegrationAcl","fields":[{"name":"val","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}}]},{"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":"NotifyAndSettle","fields":[{"name":"val","type":{"defined":{"name":"NotifyAndSettle"}}}]},{"name":"OracleConfigs","fields":[{"name":"val","type":{"defined":{"name":"OracleConfigs"}}}]}]}},{"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":"HurdleType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"IntegrationAcl","docs":["An integration program can have multiple protocols supported.","Enabled protocols are stored in a bitmask, and each protocol can have its own policy."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocols_bitmask","type":"u16"},{"name":"protocol_policies","type":{"vec":{"defined":{"name":"ProtocolPolicy"}}}}]}},{"name":"IntegrationPermissions","docs":["Stores delegate permissions for an integration program."],"type":{"kind":"struct","fields":[{"name":"integration_program","type":"pubkey"},{"name":"protocol_permissions","type":{"vec":{"defined":{"name":"ProtocolPermissions"}}}}]}},{"name":"ManagementFee","type":{"kind":"struct","fields":[{"name":"fee_bps","type":"u16"}]}},{"name":"NoticePeriodType","type":{"kind":"enum","variants":[{"name":"Hard"},{"name":"Soft"}]}},{"name":"NotifyAndSettle","type":{"kind":"struct","fields":[{"name":"model","type":{"defined":{"name":"ValuationModel"}}},{"name":"permissionless_fulfillment","type":"bool"},{"name":"subscribe_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"subscribe_notice_period","type":"u64"},{"name":"subscribe_settlement_period","type":"u64"},{"name":"subscribe_cancellation_window","type":"u64"},{"name":"redeem_notice_period_type","type":{"defined":{"name":"NoticePeriodType"}}},{"name":"redeem_notice_period","type":"u64"},{"name":"redeem_settlement_period","type":"u64"},{"name":"redeem_cancellation_window","type":"u64"},{"name":"time_unit","type":{"defined":{"name":"TimeUnit"}}},{"name":"_padding","type":{"array":["u8",3]}}]}},{"name":"OracleConfigs","docs":["Vault-specific oracle configs. If available, these configs are preferred over the global config."],"type":{"kind":"struct","fields":[{"name":"max_ages_seconds","type":{"vec":{"array":["u16",2]}}},{"name":"padding","type":{"array":["u8",12]}}]}},{"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":"PricedProtocol","type":{"kind":"struct","fields":[{"name":"rent","type":"u64"},{"name":"amount","type":"i128"},{"name":"decimals","type":"u8"},{"name":"last_updated_slot","type":"u64"},{"name":"integration_program","type":"pubkey"},{"name":"protocol_bitflag","type":"u16"},{"name":"positions","type":{"vec":"pubkey"}}]}},{"name":"ProtocolFees","type":{"kind":"struct","fields":[{"name":"base_fee_bps","type":"u16"},{"name":"flow_fee_bps","type":"u16"}]}},{"name":"ProtocolPermissions","docs":["Represents a delegate\'s permissions for a specific protocol"],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"permissions_bitmask","type":"u64"}]}},{"name":"ProtocolPolicy","docs":["Stores policy data for an integrated protocol.","Integration programs serialize/deserialize this data."],"type":{"kind":"struct","fields":[{"name":"protocol_bitflag","type":"u16"},{"name":"data","type":"bytes"}]}},{"name":"StateAccount","type":{"kind":"struct","fields":[{"name":"account_type","type":{"defined":{"name":"AccountType"}}},{"name":"enabled","type":"bool"},{"name":"vault","type":"pubkey"},{"name":"owner","type":"pubkey"},{"name":"portfolio_manager_name","type":{"array":["u8",32]}},{"name":"created","type":{"defined":{"name":"CreatedModel"}}},{"name":"base_asset_mint","type":"pubkey"},{"name":"base_asset_decimals","type":"u8"},{"name":"base_asset_token_program","type":"u8"},{"name":"name","type":{"array":["u8",32]}},{"name":"timelock_duration","type":"u32"},{"name":"timelock_expires_at","type":"u64"},{"name":"mint","type":"pubkey"},{"name":"assets","type":{"vec":"pubkey"}},{"name":"integration_acls","type":{"vec":{"defined":{"name":"IntegrationAcl"}}}},{"name":"delegate_acls","type":{"vec":{"defined":{"name":"DelegateAcl"}}}},{"name":"external_positions","type":{"vec":"pubkey"}},{"name":"priced_protocols","type":{"vec":{"defined":{"name":"PricedProtocol"}}}},{"name":"params","type":{"vec":{"vec":{"defined":{"name":"EngineField"}}}}}]}},{"name":"TimeUnit","type":{"kind":"enum","variants":[{"name":"Second"},{"name":"Slot"}]}},{"name":"ValuationModel","type":{"kind":"enum","variants":[{"name":"Continuous"},{"name":"Periodic"}]}}],"constants":[{"name":"PROTO_SANCTUM_MULTI","type":"u16","value":"4"},{"name":"PROTO_SANCTUM_SINGLE","type":"u16","value":"2"},{"name":"PROTO_STAKE_POOL","type":"u16","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL","type":"u64","value":"1"},{"name":"STAKE_POOL_PERM_DEPOSIT_SOL_ANY","type":"u64","value":"4"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE","type":"u64","value":"2"},{"name":"STAKE_POOL_PERM_DEPOSIT_STAKE_ANY","type":"u64","value":"8"},{"name":"STAKE_POOL_PERM_WITHDRAW_SOL","type":"u64","value":"16"},{"name":"STAKE_POOL_PERM_WITHDRAW_STAKE","type":"u64","value":"32"}]}');
|
|
291
291
|
|
|
292
292
|
/***/ }),
|
|
293
293
|
/* 21 */
|
|
@@ -412,8 +412,9 @@ class StateModel extends StateIdlModel {
|
|
|
412
412
|
return new Date(createdAt * 1000).toISOString().split("T")[0] || "Unknown";
|
|
413
413
|
}
|
|
414
414
|
get sparkleKey() {
|
|
415
|
-
const pubkey = (this.mint
|
|
416
|
-
|
|
415
|
+
const pubkey = (this.mint && !this.mint.equals(web3_js_1.PublicKey.default)
|
|
416
|
+
? this.mint
|
|
417
|
+
: this.vault) || web3_js_1.PublicKey.default;
|
|
417
418
|
return pubkey.toBase58();
|
|
418
419
|
}
|
|
419
420
|
get baseAssetTokenProgramId() {
|
|
@@ -555,6 +556,9 @@ class StateAccountType {
|
|
|
555
556
|
if (s === "tokenizedVault") {
|
|
556
557
|
return StateAccountType.TOKENIZED_VAULT;
|
|
557
558
|
}
|
|
559
|
+
if (s === "singleAssetVault") {
|
|
560
|
+
return StateAccountType.SINGLE_ASSET_VAULT;
|
|
561
|
+
}
|
|
558
562
|
if (s === "mint") {
|
|
559
563
|
return StateAccountType.MINT;
|
|
560
564
|
}
|
|
@@ -565,6 +569,7 @@ exports.StateAccountType = StateAccountType;
|
|
|
565
569
|
StateAccountType.VAULT = { vault: {} };
|
|
566
570
|
StateAccountType.TOKENIZED_VAULT = { tokenizedVault: {} };
|
|
567
571
|
StateAccountType.MINT = { mint: {} };
|
|
572
|
+
StateAccountType.SINGLE_ASSET_VAULT = { singleAssetVault: {} };
|
|
568
573
|
|
|
569
574
|
|
|
570
575
|
/***/ }),
|
|
@@ -2340,6 +2345,7 @@ async function fetchAddressLookupTableAccounts(connection, pubkeys) {
|
|
|
2340
2345
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2341
2346
|
exports.getProtocolNamesFromBitmask = getProtocolNamesFromBitmask;
|
|
2342
2347
|
exports.getPermissionNamesFromBitmask = getPermissionNamesFromBitmask;
|
|
2348
|
+
exports.comparePublicKeyArrays = comparePublicKeyArrays;
|
|
2343
2349
|
exports.compareIntegrationAcls = compareIntegrationAcls;
|
|
2344
2350
|
exports.compareDelegateAcls = compareDelegateAcls;
|
|
2345
2351
|
const bitmask_1 = __webpack_require__(38);
|
|
@@ -2361,6 +2367,17 @@ function getPermissionNamesFromBitmask(integrationProgram, protocolBitflag, perm
|
|
|
2361
2367
|
const { permissions } = (0, bitmask_1.parseProtocolPermissionsBitmask)(integrationProgram, protocolBitflag, permissionsBitmask);
|
|
2362
2368
|
return permissions.map((p) => p.name);
|
|
2363
2369
|
}
|
|
2370
|
+
/**
|
|
2371
|
+
* Compare current and staged PublicKey arrays and return added/removed keys
|
|
2372
|
+
*/
|
|
2373
|
+
function comparePublicKeyArrays(current, staged) {
|
|
2374
|
+
const currentSet = new pkset_1.PkSet(current || []);
|
|
2375
|
+
const stagedSet = new pkset_1.PkSet(staged);
|
|
2376
|
+
return {
|
|
2377
|
+
added: [...stagedSet].filter((pk) => !currentSet.has(pk)),
|
|
2378
|
+
removed: [...currentSet].filter((pk) => !stagedSet.has(pk)),
|
|
2379
|
+
};
|
|
2380
|
+
}
|
|
2364
2381
|
/**
|
|
2365
2382
|
* Compare current and staged integrationAcls and return the differences
|
|
2366
2383
|
*/
|
|
@@ -2681,14 +2698,13 @@ function parseProgramLogs(logs) {
|
|
|
2681
2698
|
// "Error Message:" indicates an anchor program error
|
|
2682
2699
|
// Other messages are manually sourced & handled
|
|
2683
2700
|
const errorMsgLog = (logs || []).find((log) => log.includes("Error Message:") ||
|
|
2684
|
-
log.includes("Error: insufficient funds")
|
|
2701
|
+
log.includes("Error: insufficient funds") ||
|
|
2702
|
+
log.includes("Transfer: insufficient lamports"));
|
|
2685
2703
|
if (errorMsgLog) {
|
|
2686
2704
|
if (errorMsgLog.includes("Error Message:")) {
|
|
2687
2705
|
return errorMsgLog.split("Error Message:")[1].trim();
|
|
2688
2706
|
}
|
|
2689
|
-
|
|
2690
|
-
return "Insufficient funds";
|
|
2691
|
-
}
|
|
2707
|
+
return errorMsgLog;
|
|
2692
2708
|
}
|
|
2693
2709
|
// Match the following pattern to find Jupiter error code in logs
|
|
2694
2710
|
// "Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 failed: custom program error: 0x1788"
|
|
@@ -9023,6 +9039,7 @@ const tslib_1 = __webpack_require__(2);
|
|
|
9023
9039
|
const web3_js_1 = __webpack_require__(5);
|
|
9024
9040
|
const anchor_1 = __webpack_require__(4);
|
|
9025
9041
|
const assets_1 = __webpack_require__(67);
|
|
9042
|
+
const models_1 = __webpack_require__(22);
|
|
9026
9043
|
const utils_1 = __webpack_require__(30);
|
|
9027
9044
|
const decimal_js_1 = tslib_1.__importDefault(__webpack_require__(51));
|
|
9028
9045
|
const spl_token_1 = __webpack_require__(24);
|
|
@@ -9856,6 +9873,17 @@ class PriceClient {
|
|
|
9856
9873
|
async priceVaultIxs() {
|
|
9857
9874
|
// Cache state model
|
|
9858
9875
|
this.cachedStateModel = await this.base.fetchStateModel();
|
|
9876
|
+
if (models_1.StateAccountType.equals(this.cachedStateModel.accountType, models_1.StateAccountType.SINGLE_ASSET_VAULT)) {
|
|
9877
|
+
const baseAssetAta = this.base.getVaultAta(this.cachedStateModel.baseAssetMint, this.cachedStateModel.baseAssetTokenProgramId);
|
|
9878
|
+
const ix = await this.base.mintProgram.methods
|
|
9879
|
+
.priceSingleAssetVault()
|
|
9880
|
+
.accounts({
|
|
9881
|
+
glamState: this.base.statePda,
|
|
9882
|
+
baseAssetAta,
|
|
9883
|
+
})
|
|
9884
|
+
.instruction();
|
|
9885
|
+
return [ix];
|
|
9886
|
+
}
|
|
9859
9887
|
const priceVaultIx = await this.priceVaultTokensIx();
|
|
9860
9888
|
// If there are no external assets, we don't need to price DeFi positions
|
|
9861
9889
|
if ((this.cachedStateModel.externalPositions || []).length === 0) {
|
|
@@ -10349,8 +10377,12 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
10349
10377
|
const mintProgram = this.client.base.mintProgram;
|
|
10350
10378
|
const mintPda = (0, glamPDAs_1.getMintPda)(glamState, 0, mintProgram.programId);
|
|
10351
10379
|
const extraMetasPda = (0, glamPDAs_1.getExtraMetasPda)(mintPda);
|
|
10380
|
+
// Use glam hosted metadata as a fallback if uri is not provided
|
|
10381
|
+
if (!initMintParams.uri) {
|
|
10382
|
+
initMintParams.uri = `https://static.glam.systems/v0/token/metadata?key=${mintPda}`;
|
|
10383
|
+
}
|
|
10352
10384
|
const ix = await mintProgram.methods
|
|
10353
|
-
.initializeMint(new models_1.MintIdlModel(initMintParams), //
|
|
10385
|
+
.initializeMint(new models_1.MintIdlModel(initMintParams), // accountType, baseAssetMint, and decimals are dropped,
|
|
10354
10386
|
stateInitKey, initMintParams.accountType, decimals)
|
|
10355
10387
|
.accounts({
|
|
10356
10388
|
glamState,
|
|
@@ -11283,26 +11315,26 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
11283
11315
|
* Returns a transaction that calls CCTP's `depositForBurn` instruction that bridges USDC to another chain.
|
|
11284
11316
|
* A keypair is generated for the message sent event account, which must be included as a transaction signer.
|
|
11285
11317
|
*/
|
|
11286
|
-
async bridgeUsdcIx(amount, domain,
|
|
11318
|
+
async bridgeUsdcIx(amount, domain, destinationAddress, params, glamSigner) {
|
|
11287
11319
|
const usdcAddress = this.client.base.isMainnet ? constants_1.USDC : constants_1.USDC_DEVNET;
|
|
11288
11320
|
const pdas = this.client.getDepositForBurnPdas(constants_1.MESSAGE_TRANSMITTER_V2, constants_1.TOKEN_MESSENGER_MINTER_V2, usdcAddress, domain);
|
|
11289
11321
|
const depositForBurnParams = {
|
|
11290
11322
|
amount,
|
|
11291
11323
|
destinationDomain: domain,
|
|
11292
|
-
mintRecipient:
|
|
11324
|
+
mintRecipient: destinationAddress,
|
|
11293
11325
|
destinationCaller: params.destinationCaller || web3_js_1.PublicKey.default,
|
|
11294
11326
|
...params,
|
|
11295
11327
|
};
|
|
11296
11328
|
const denylistAccount = web3_js_1.PublicKey.findProgramAddressSync([Buffer.from("denylist_account"), this.client.base.vaultPda.toBuffer()], constants_1.TOKEN_MESSENGER_MINTER_V2)[0];
|
|
11297
11329
|
const messageSentEventAccountKeypair = web3_js_1.Keypair.generate();
|
|
11298
|
-
const
|
|
11330
|
+
const senderUsdcAta = this.client.base.getVaultAta(usdcAddress);
|
|
11299
11331
|
const ix = await this.client.base.extCctpProgram.methods
|
|
11300
11332
|
.depositForBurn(depositForBurnParams)
|
|
11301
11333
|
.accounts({
|
|
11302
11334
|
glamState: this.client.base.statePda,
|
|
11303
11335
|
glamSigner,
|
|
11304
11336
|
senderAuthorityPda: pdas.authorityPda,
|
|
11305
|
-
burnTokenAccount,
|
|
11337
|
+
burnTokenAccount: senderUsdcAta,
|
|
11306
11338
|
denylistAccount,
|
|
11307
11339
|
messageTransmitter: pdas.messageTransmitterAccount,
|
|
11308
11340
|
tokenMessenger: pdas.tokenMessengerAccount,
|
|
@@ -11316,9 +11348,9 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
11316
11348
|
.instruction();
|
|
11317
11349
|
return [ix, messageSentEventAccountKeypair];
|
|
11318
11350
|
}
|
|
11319
|
-
async bridgeUsdcTx(amount, domain,
|
|
11351
|
+
async bridgeUsdcTx(amount, domain, destinationAddress, params, txOptions) {
|
|
11320
11352
|
const signer = txOptions.signer || this.client.base.signer;
|
|
11321
|
-
const [ix, messageSentEventAccountKeypair] = await this.bridgeUsdcIx(amount, domain,
|
|
11353
|
+
const [ix, messageSentEventAccountKeypair] = await this.bridgeUsdcIx(amount, domain, destinationAddress, params, signer);
|
|
11322
11354
|
const tx = await this.buildVersionedTx([ix], txOptions);
|
|
11323
11355
|
return [tx, messageSentEventAccountKeypair];
|
|
11324
11356
|
}
|
|
@@ -11332,6 +11364,7 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
11332
11364
|
!decodedMessage?.decodedMessageBody?.burnToken) {
|
|
11333
11365
|
throw new Error("Invalid message object: missing burnToken in decodedMessage");
|
|
11334
11366
|
}
|
|
11367
|
+
const recipientUsdcAta = this.client.base.getVaultAta(constants_1.USDC);
|
|
11335
11368
|
// message, attestation, eventNonce, burnToken are hex strings
|
|
11336
11369
|
const pdas = await this.client.getReceiveMessagePdas(constants_1.MESSAGE_TRANSMITTER_V2, constants_1.TOKEN_MESSENGER_MINTER_V2, constants_1.USDC, decodedMessage.decodedMessageBody.burnToken, sourceDomain.toString(), eventNonce);
|
|
11337
11370
|
// raw ix data: [discriminator][message][attestation]
|
|
@@ -11396,7 +11429,7 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
11396
11429
|
{
|
|
11397
11430
|
isSigner: false,
|
|
11398
11431
|
isWritable: true,
|
|
11399
|
-
pubkey:
|
|
11432
|
+
pubkey: recipientUsdcAta,
|
|
11400
11433
|
},
|
|
11401
11434
|
{
|
|
11402
11435
|
isSigner: false,
|
|
@@ -11444,7 +11477,9 @@ class TxBuilder extends base_1.BaseTxBuilder {
|
|
|
11444
11477
|
const ix = await this.receiveMessageIx(sourceDomain, message);
|
|
11445
11478
|
receiveMessageIxs.push(ix);
|
|
11446
11479
|
}
|
|
11447
|
-
const
|
|
11480
|
+
const recipientWallet = this.client.base.vaultPda;
|
|
11481
|
+
const recipientUsdcAta = this.client.base.getVaultAta(constants_1.USDC);
|
|
11482
|
+
const createUsdcAtaIx = (0, spl_token_1.createAssociatedTokenAccountIdempotentInstruction)(this.client.base.signer, recipientUsdcAta, recipientWallet, constants_1.USDC);
|
|
11448
11483
|
return await this.buildVersionedTx([createUsdcAtaIx, ...receiveMessageIxs], txOptions);
|
|
11449
11484
|
}
|
|
11450
11485
|
}
|
|
@@ -11458,12 +11493,12 @@ class CctpClient {
|
|
|
11458
11493
|
*
|
|
11459
11494
|
* @param amount Amount of USDC to bridge (in smallest units)
|
|
11460
11495
|
* @param domain Destination domain (e.g., 0 for Ethereum, 1 for Avalanche)
|
|
11461
|
-
* @param
|
|
11496
|
+
* @param destinationAddress Destination address on target chain (EVM address as PublicKey)
|
|
11462
11497
|
* @param params Additional parameters (maxFee, minFinalityThreshold)
|
|
11463
11498
|
* @param txOptions Transaction options
|
|
11464
11499
|
*/
|
|
11465
|
-
async bridgeUsdc(amount, domain,
|
|
11466
|
-
const [tx, keypair] = await this.txBuilder.bridgeUsdcTx(new anchor_1.BN(amount), domain,
|
|
11500
|
+
async bridgeUsdc(amount, domain, destinationAddress, params, txOptions = {}) {
|
|
11501
|
+
const [tx, keypair] = await this.txBuilder.bridgeUsdcTx(new anchor_1.BN(amount), domain, destinationAddress, params, txOptions);
|
|
11467
11502
|
return await this.base.sendAndConfirm(tx, [keypair]);
|
|
11468
11503
|
}
|
|
11469
11504
|
/**
|
|
@@ -11549,16 +11584,16 @@ class CctpClient {
|
|
|
11549
11584
|
};
|
|
11550
11585
|
}
|
|
11551
11586
|
/**
|
|
11552
|
-
* Find all message accounts onchain for a given sender
|
|
11587
|
+
* Find all message accounts onchain for a given sender wallet
|
|
11553
11588
|
*
|
|
11554
11589
|
* TODO: filter by burned token mint
|
|
11555
11590
|
*/
|
|
11556
|
-
async findV2Messages(
|
|
11591
|
+
async findV2Messages(senderWallet, options) {
|
|
11557
11592
|
const accounts = await (0, utils_1.getProgramAccounts)(this.base.connection, constants_1.MESSAGE_TRANSMITTER_V2, {
|
|
11558
11593
|
...(options.commitment ? { commitment: options.commitment } : {}),
|
|
11559
11594
|
filters: [
|
|
11560
11595
|
{ dataSize: 428 },
|
|
11561
|
-
{ memcmp: { offset: 300, bytes:
|
|
11596
|
+
{ memcmp: { offset: 300, bytes: senderWallet.toBase58() } },
|
|
11562
11597
|
],
|
|
11563
11598
|
});
|
|
11564
11599
|
return accounts.map(({ pubkey }) => pubkey);
|
|
@@ -15128,6 +15163,9 @@ exports.validateInvestorAction = validateInvestorAction;
|
|
|
15128
15163
|
exports.validateBooleanInput = validateBooleanInput;
|
|
15129
15164
|
exports.validateDriftMarketType = validateDriftMarketType;
|
|
15130
15165
|
exports.executeTxWithErrorHandling = executeTxWithErrorHandling;
|
|
15166
|
+
exports.levenshtein = levenshtein;
|
|
15167
|
+
exports.resolveProtocolName = resolveProtocolName;
|
|
15168
|
+
exports.resolvePermissionNames = resolvePermissionNames;
|
|
15131
15169
|
const tslib_1 = __webpack_require__(2);
|
|
15132
15170
|
const anchor_1 = __webpack_require__(4);
|
|
15133
15171
|
const glam_sdk_1 = __webpack_require__(1);
|
|
@@ -15259,31 +15297,43 @@ async function confirmOperation(message) {
|
|
|
15259
15297
|
throw err;
|
|
15260
15298
|
}
|
|
15261
15299
|
}
|
|
15300
|
+
/**
|
|
15301
|
+
* Parses a JSON object containing state initialization parameters.
|
|
15302
|
+
*
|
|
15303
|
+
* `json.state` must contain the following properties:
|
|
15304
|
+
* - `accountType`: The type of the state account.
|
|
15305
|
+
* - `name`: The name of the state account.
|
|
15306
|
+
* - `baseAssetMint`: The base asset mint of the vault.
|
|
15307
|
+
*/
|
|
15262
15308
|
function parseStateJson(json) {
|
|
15263
15309
|
if (!json.state) {
|
|
15264
15310
|
throw new Error("Invalid JSON file: must contain 'state' property");
|
|
15265
15311
|
}
|
|
15266
15312
|
const { state } = json;
|
|
15267
|
-
|
|
15268
|
-
? ["accountType", "name", "baseAssetMint"]
|
|
15269
|
-
: ["accountType"];
|
|
15270
|
-
requiredFields.forEach((field) => {
|
|
15313
|
+
["accountType", "name", "baseAssetMint"].forEach((field) => {
|
|
15271
15314
|
if (state?.[field] === undefined) {
|
|
15272
|
-
throw new Error(`
|
|
15315
|
+
throw new Error(`Account type ${state.accountType} missing required state field: ${field}`);
|
|
15273
15316
|
}
|
|
15274
15317
|
});
|
|
15275
|
-
|
|
15318
|
+
return {
|
|
15276
15319
|
accountType: glam_sdk_1.StateAccountType.from(state.accountType),
|
|
15277
15320
|
name: (0, glam_sdk_1.stringToChars)(state.name),
|
|
15321
|
+
baseAssetMint: new web3_js_1.PublicKey(state.baseAssetMint),
|
|
15278
15322
|
enabled: state.enabled !== false,
|
|
15279
15323
|
assets: state.assets?.map((asset) => new web3_js_1.PublicKey(asset)) || null,
|
|
15280
|
-
baseAssetMint: new web3_js_1.PublicKey(state.baseAssetMint),
|
|
15281
15324
|
portfolioManagerName: state.portfolioManagerName
|
|
15282
15325
|
? (0, glam_sdk_1.stringToChars)(state.portfolioManagerName)
|
|
15283
15326
|
: null,
|
|
15284
15327
|
};
|
|
15285
|
-
return params;
|
|
15286
15328
|
}
|
|
15329
|
+
/**
|
|
15330
|
+
* Parses a JSON object containing mint initialization parameters.
|
|
15331
|
+
*
|
|
15332
|
+
* `json.mint` must contain the following properties:
|
|
15333
|
+
* - `name`: The name of the mint.
|
|
15334
|
+
* - `symbol`: The symbol of the mint.
|
|
15335
|
+
* - `uri`: The URI of the mint.
|
|
15336
|
+
*/
|
|
15287
15337
|
function parseMintJson(json, accountType) {
|
|
15288
15338
|
if (accountType === glam_sdk_1.StateAccountType.VAULT) {
|
|
15289
15339
|
throw new Error("Invalid JSON file: mint config is not supported for state account type `vault`");
|
|
@@ -15292,18 +15342,21 @@ function parseMintJson(json, accountType) {
|
|
|
15292
15342
|
throw new Error("Invalid JSON file: must contain 'mint' property for tokenized vault");
|
|
15293
15343
|
}
|
|
15294
15344
|
const { mint } = json;
|
|
15295
|
-
|
|
15296
|
-
requiredFields.forEach((field) => {
|
|
15345
|
+
["name", "symbol", "uri"].forEach((field) => {
|
|
15297
15346
|
if (mint?.[field] === undefined) {
|
|
15298
|
-
throw new Error(`
|
|
15347
|
+
throw new Error(`Account type ${accountType} missing required mint field: ${field}`);
|
|
15299
15348
|
}
|
|
15300
15349
|
});
|
|
15301
|
-
const
|
|
15350
|
+
const baseAssetMint = json?.state?.baseAssetMint;
|
|
15351
|
+
if (!baseAssetMint) {
|
|
15352
|
+
throw new Error("Invalid JSON file: missing required state field `baseAssetMint`");
|
|
15353
|
+
}
|
|
15354
|
+
return {
|
|
15302
15355
|
accountType,
|
|
15303
15356
|
name: (0, glam_sdk_1.stringToChars)(mint.name),
|
|
15304
15357
|
symbol: mint.symbol,
|
|
15305
15358
|
uri: mint.uri,
|
|
15306
|
-
baseAssetMint: new web3_js_1.PublicKey(
|
|
15359
|
+
baseAssetMint: new web3_js_1.PublicKey(baseAssetMint),
|
|
15307
15360
|
maxCap: mint.maxCap ? new anchor_1.BN(mint.maxCap) : null,
|
|
15308
15361
|
minSubscription: mint.minSubscription ? new anchor_1.BN(mint.minSubscription) : null,
|
|
15309
15362
|
minRedemption: mint.minRedemption ? new anchor_1.BN(mint.minRedemption) : null,
|
|
@@ -15345,7 +15398,6 @@ function parseMintJson(json, accountType) {
|
|
|
15345
15398
|
}
|
|
15346
15399
|
: null,
|
|
15347
15400
|
};
|
|
15348
|
-
return params;
|
|
15349
15401
|
}
|
|
15350
15402
|
function validatePublicKey(value) {
|
|
15351
15403
|
try {
|
|
@@ -15417,6 +15469,127 @@ async function executeTxWithErrorHandling(txFn, confirmOptions, successMessage)
|
|
|
15417
15469
|
process.exit(1);
|
|
15418
15470
|
}
|
|
15419
15471
|
}
|
|
15472
|
+
function levenshtein(a, b) {
|
|
15473
|
+
const m = a.length, n = b.length;
|
|
15474
|
+
const dp = Array.from({ length: n + 1 }, (_, i) => i);
|
|
15475
|
+
for (let i = 1; i <= m; i++) {
|
|
15476
|
+
let prev = dp[0];
|
|
15477
|
+
dp[0] = i;
|
|
15478
|
+
for (let j = 1; j <= n; j++) {
|
|
15479
|
+
const tmp = dp[j];
|
|
15480
|
+
dp[j] =
|
|
15481
|
+
a[i - 1] === b[j - 1] ? prev : 1 + Math.min(prev, dp[j], dp[j - 1]);
|
|
15482
|
+
prev = tmp;
|
|
15483
|
+
}
|
|
15484
|
+
}
|
|
15485
|
+
return dp[n];
|
|
15486
|
+
}
|
|
15487
|
+
/**
|
|
15488
|
+
* Resolve a single protocol name with fuzzy matching:
|
|
15489
|
+
* 1. Exact match
|
|
15490
|
+
* 2. Case-insensitive match
|
|
15491
|
+
* 3. Levenshtein suggestion (distance <= 3)
|
|
15492
|
+
*
|
|
15493
|
+
* Returns the canonical protocol name or exits with an error.
|
|
15494
|
+
*/
|
|
15495
|
+
function resolveProtocolName(name) {
|
|
15496
|
+
const lookup = (0, glam_sdk_1.getProgramAndBitflagByProtocolName)();
|
|
15497
|
+
const validNames = Object.keys(lookup);
|
|
15498
|
+
// 1. Exact match
|
|
15499
|
+
if (lookup[name]) {
|
|
15500
|
+
return name;
|
|
15501
|
+
}
|
|
15502
|
+
// 2. Case-insensitive match
|
|
15503
|
+
const ciIndex = new Map();
|
|
15504
|
+
for (const valid of validNames) {
|
|
15505
|
+
ciIndex.set(valid.toLowerCase(), valid);
|
|
15506
|
+
}
|
|
15507
|
+
const ciMatch = ciIndex.get(name.toLowerCase());
|
|
15508
|
+
if (ciMatch) {
|
|
15509
|
+
console.log(`Note: using '${ciMatch}' for '${name}'`);
|
|
15510
|
+
return ciMatch;
|
|
15511
|
+
}
|
|
15512
|
+
// 3. Levenshtein suggestion
|
|
15513
|
+
let bestName = "";
|
|
15514
|
+
let bestDist = Infinity;
|
|
15515
|
+
const nameLower = name.toLowerCase();
|
|
15516
|
+
for (const valid of validNames) {
|
|
15517
|
+
const dist = levenshtein(nameLower, valid.toLowerCase());
|
|
15518
|
+
if (dist < bestDist) {
|
|
15519
|
+
bestDist = dist;
|
|
15520
|
+
bestName = valid;
|
|
15521
|
+
}
|
|
15522
|
+
}
|
|
15523
|
+
const suggestion = bestDist <= 3 ? ` Did you mean '${bestName}' instead of '${name}'?` : "";
|
|
15524
|
+
console.error(`Unknown protocol name: ${name}`);
|
|
15525
|
+
if (suggestion)
|
|
15526
|
+
console.error(suggestion);
|
|
15527
|
+
console.error(`Valid protocol names: ${validNames.join(", ")}`);
|
|
15528
|
+
process.exit(1);
|
|
15529
|
+
}
|
|
15530
|
+
/**
|
|
15531
|
+
* Resolve permission names for a given (already-resolved) protocol with fuzzy matching.
|
|
15532
|
+
* Returns an array of canonical permission names or exits with an error.
|
|
15533
|
+
*/
|
|
15534
|
+
function resolvePermissionNames(protocolName, inputNames) {
|
|
15535
|
+
const protocolConfig = (0, glam_sdk_1.getProgramAndBitflagByProtocolName)()[protocolName];
|
|
15536
|
+
if (!protocolConfig) {
|
|
15537
|
+
console.error(`Unknown protocol name: ${protocolName}`);
|
|
15538
|
+
process.exit(1);
|
|
15539
|
+
}
|
|
15540
|
+
const [programIdStr, bitflagStr] = protocolConfig;
|
|
15541
|
+
const protocolPermissions = (0, glam_sdk_1.getProtocolsAndPermissions)()[programIdStr]?.[bitflagStr];
|
|
15542
|
+
if (!protocolPermissions) {
|
|
15543
|
+
console.error(`Protocol mapping not found for protocol name ${protocolName}`);
|
|
15544
|
+
process.exit(1);
|
|
15545
|
+
}
|
|
15546
|
+
const validNames = Object.values(protocolPermissions.permissions);
|
|
15547
|
+
const ciIndex = new Map();
|
|
15548
|
+
for (const valid of validNames) {
|
|
15549
|
+
ciIndex.set(valid.toLowerCase(), valid);
|
|
15550
|
+
}
|
|
15551
|
+
const resolved = [];
|
|
15552
|
+
const unknown = [];
|
|
15553
|
+
const suggestions = [];
|
|
15554
|
+
for (const name of inputNames) {
|
|
15555
|
+
// 1. Exact match
|
|
15556
|
+
if (validNames.includes(name)) {
|
|
15557
|
+
resolved.push(name);
|
|
15558
|
+
continue;
|
|
15559
|
+
}
|
|
15560
|
+
// 2. Case-insensitive match
|
|
15561
|
+
const ciMatch = ciIndex.get(name.toLowerCase());
|
|
15562
|
+
if (ciMatch) {
|
|
15563
|
+
console.log(`Note: using '${ciMatch}' for '${name}'`);
|
|
15564
|
+
resolved.push(ciMatch);
|
|
15565
|
+
continue;
|
|
15566
|
+
}
|
|
15567
|
+
// 3. Levenshtein suggestion
|
|
15568
|
+
let bestName = "";
|
|
15569
|
+
let bestDist = Infinity;
|
|
15570
|
+
const nameLower = name.toLowerCase();
|
|
15571
|
+
for (const valid of validNames) {
|
|
15572
|
+
const dist = levenshtein(nameLower, valid.toLowerCase());
|
|
15573
|
+
if (dist < bestDist) {
|
|
15574
|
+
bestDist = dist;
|
|
15575
|
+
bestName = valid;
|
|
15576
|
+
}
|
|
15577
|
+
}
|
|
15578
|
+
if (bestDist <= 3) {
|
|
15579
|
+
suggestions.push(` Did you mean '${bestName}' instead of '${name}'?`);
|
|
15580
|
+
}
|
|
15581
|
+
unknown.push(name);
|
|
15582
|
+
}
|
|
15583
|
+
if (unknown.length) {
|
|
15584
|
+
console.error(`Unknown permission name(s) for ${protocolName}: ${unknown.join(", ")}`);
|
|
15585
|
+
for (const s of suggestions) {
|
|
15586
|
+
console.error(s);
|
|
15587
|
+
}
|
|
15588
|
+
console.error(`Valid permissions for ${protocolName}: ${validNames.join(", ")}`);
|
|
15589
|
+
process.exit(1);
|
|
15590
|
+
}
|
|
15591
|
+
return resolved;
|
|
15592
|
+
}
|
|
15420
15593
|
|
|
15421
15594
|
|
|
15422
15595
|
/***/ }),
|
|
@@ -48017,6 +48190,21 @@ const validateIntegrationProgram = (input) => {
|
|
|
48017
48190
|
}
|
|
48018
48191
|
return pubkey;
|
|
48019
48192
|
};
|
|
48193
|
+
function resolveProtocolNames(names) {
|
|
48194
|
+
const lookup = (0, glam_sdk_1.getProgramAndBitflagByProtocolName)();
|
|
48195
|
+
const groups = {};
|
|
48196
|
+
for (const name of names) {
|
|
48197
|
+
const resolved = (0, utils_1.resolveProtocolName)(name);
|
|
48198
|
+
const [programIdStr, bitflagStr] = lookup[resolved];
|
|
48199
|
+
if (programIdStr === (0, glam_sdk_1.getGlamMintProgramId)().toBase58()) {
|
|
48200
|
+
console.error("Mint integration is not allowed");
|
|
48201
|
+
process.exit(1);
|
|
48202
|
+
}
|
|
48203
|
+
const bitflag = parseInt(bitflagStr, 2);
|
|
48204
|
+
groups[programIdStr] = (groups[programIdStr] || 0) | bitflag;
|
|
48205
|
+
}
|
|
48206
|
+
return groups;
|
|
48207
|
+
}
|
|
48020
48208
|
function installIntegrationCommands(integration, context) {
|
|
48021
48209
|
integration
|
|
48022
48210
|
.command("list")
|
|
@@ -48036,27 +48224,7 @@ function installIntegrationCommands(integration, context) {
|
|
|
48036
48224
|
.argument("<protocols...>", "Protocol names (e.g., SplToken, JupiterSwap, DriftProtocol)")
|
|
48037
48225
|
.option("-y, --yes", "Skip confirmation")
|
|
48038
48226
|
.action(async (protocols, { yes }) => {
|
|
48039
|
-
const groups =
|
|
48040
|
-
const unknown = [];
|
|
48041
|
-
const PROGRAM_AND_BITFLAG_BY_PROTOCOL_NAME = (0, glam_sdk_1.getProgramAndBitflagByProtocolName)();
|
|
48042
|
-
for (const name of protocols) {
|
|
48043
|
-
const entry = PROGRAM_AND_BITFLAG_BY_PROTOCOL_NAME[name];
|
|
48044
|
-
if (!entry) {
|
|
48045
|
-
unknown.push(name);
|
|
48046
|
-
continue;
|
|
48047
|
-
}
|
|
48048
|
-
const [programIdStr, bitflagStr] = entry;
|
|
48049
|
-
if (programIdStr === (0, glam_sdk_1.getGlamMintProgramId)().toBase58()) {
|
|
48050
|
-
console.error("Mint integration is not allowed");
|
|
48051
|
-
process.exit(1);
|
|
48052
|
-
}
|
|
48053
|
-
const bitflag = parseInt(bitflagStr, 2);
|
|
48054
|
-
groups[programIdStr] = (groups[programIdStr] || 0) | bitflag;
|
|
48055
|
-
}
|
|
48056
|
-
if (unknown.length) {
|
|
48057
|
-
console.error(`Unknown protocol name(s): ${unknown.join(", ")}`);
|
|
48058
|
-
process.exit(1);
|
|
48059
|
-
}
|
|
48227
|
+
const groups = resolveProtocolNames(protocols);
|
|
48060
48228
|
const details = Object.entries(groups).map(([pid, mask]) => {
|
|
48061
48229
|
const { protocols } = (0, glam_sdk_1.parseProtocolsBitmask)(new web3_js_1.PublicKey(pid), mask);
|
|
48062
48230
|
const names = protocols.map((p) => p.name).join(", ");
|
|
@@ -48080,27 +48248,7 @@ function installIntegrationCommands(integration, context) {
|
|
|
48080
48248
|
.argument("<protocols...>", "Protocol names (e.g., SplToken, JupiterSwap, DriftProtocol)")
|
|
48081
48249
|
.option("-y, --yes", "Skip confirmation")
|
|
48082
48250
|
.action(async (protocols, { yes }) => {
|
|
48083
|
-
const groups =
|
|
48084
|
-
const unknown = [];
|
|
48085
|
-
const PROGRAM_AND_BITFLAG_BY_PROTOCOL_NAME = (0, glam_sdk_1.getProgramAndBitflagByProtocolName)();
|
|
48086
|
-
for (const name of protocols) {
|
|
48087
|
-
const entry = PROGRAM_AND_BITFLAG_BY_PROTOCOL_NAME[name];
|
|
48088
|
-
if (!entry) {
|
|
48089
|
-
unknown.push(name);
|
|
48090
|
-
continue;
|
|
48091
|
-
}
|
|
48092
|
-
const [programIdStr, bitflagStr] = entry;
|
|
48093
|
-
if (programIdStr === (0, glam_sdk_1.getGlamMintProgramId)().toBase58()) {
|
|
48094
|
-
console.error("Mint integration is not allowed");
|
|
48095
|
-
process.exit(1);
|
|
48096
|
-
}
|
|
48097
|
-
const mask = parseInt(bitflagStr, 2);
|
|
48098
|
-
groups[programIdStr] = (groups[programIdStr] || 0) | mask;
|
|
48099
|
-
}
|
|
48100
|
-
if (unknown.length) {
|
|
48101
|
-
console.error(`Unknown protocol name(s): ${unknown.join(", ")}`);
|
|
48102
|
-
process.exit(1);
|
|
48103
|
-
}
|
|
48251
|
+
const groups = resolveProtocolNames(protocols);
|
|
48104
48252
|
const details = Object.entries(groups).map(([pid, mask]) => {
|
|
48105
48253
|
const { protocols } = (0, glam_sdk_1.parseProtocolsBitmask)(new web3_js_1.PublicKey(pid), mask);
|
|
48106
48254
|
const names = protocols.map((p) => p.name).join(", ");
|
|
@@ -48181,17 +48329,13 @@ function installDelegateCommands(delegate, context) {
|
|
|
48181
48329
|
.option("-y, --yes", "Skip confirmation prompt")
|
|
48182
48330
|
.description("Grant delegate permissions for a single protocol")
|
|
48183
48331
|
.action(async (delegate, permissions, { protocol, yes }) => {
|
|
48184
|
-
|
|
48185
|
-
|
|
48186
|
-
|
|
48187
|
-
|
|
48188
|
-
|
|
48189
|
-
|
|
48190
|
-
|
|
48191
|
-
catch (e) {
|
|
48192
|
-
console.error(e);
|
|
48193
|
-
process.exit(1);
|
|
48194
|
-
}
|
|
48332
|
+
const resolvedProtocol = (0, utils_1.resolveProtocolName)(protocol);
|
|
48333
|
+
const resolvedPermissions = (0, utils_1.resolvePermissionNames)(resolvedProtocol, permissions);
|
|
48334
|
+
const { integrationProgram, protocolBitflag, permissionsBitmask } = (0, glam_sdk_1.parsePermissionNames)({
|
|
48335
|
+
protocolName: resolvedProtocol,
|
|
48336
|
+
permissionNames: resolvedPermissions,
|
|
48337
|
+
});
|
|
48338
|
+
await handleDelegatePermissions("grant", delegate, integrationProgram, protocolBitflag, resolvedProtocol, permissionsBitmask, resolvedPermissions, context, yes);
|
|
48195
48339
|
});
|
|
48196
48340
|
delegate
|
|
48197
48341
|
.command("revoke")
|
|
@@ -48201,17 +48345,13 @@ function installDelegateCommands(delegate, context) {
|
|
|
48201
48345
|
.option("-y, --yes", "Skip confirmation prompt")
|
|
48202
48346
|
.description("Revoke delegate permissions for a single protocol by name")
|
|
48203
48347
|
.action(async (delegate, permissions, { protocol, yes }) => {
|
|
48204
|
-
|
|
48205
|
-
|
|
48206
|
-
|
|
48207
|
-
|
|
48208
|
-
|
|
48209
|
-
|
|
48210
|
-
|
|
48211
|
-
catch (e) {
|
|
48212
|
-
console.error(e);
|
|
48213
|
-
process.exit(1);
|
|
48214
|
-
}
|
|
48348
|
+
const resolvedProtocol = (0, utils_1.resolveProtocolName)(protocol);
|
|
48349
|
+
const resolvedPermissions = (0, utils_1.resolvePermissionNames)(resolvedProtocol, permissions);
|
|
48350
|
+
const { integrationProgram, protocolBitflag, permissionsBitmask } = (0, glam_sdk_1.parsePermissionNames)({
|
|
48351
|
+
protocolName: resolvedProtocol,
|
|
48352
|
+
permissionNames: resolvedPermissions,
|
|
48353
|
+
});
|
|
48354
|
+
await handleDelegatePermissions("revoke", delegate, integrationProgram, protocolBitflag, resolvedProtocol, permissionsBitmask, resolvedPermissions, context, yes);
|
|
48215
48355
|
});
|
|
48216
48356
|
delegate
|
|
48217
48357
|
.command("revoke-all")
|
|
@@ -48751,18 +48891,33 @@ function installVaultCommands(program, context) {
|
|
|
48751
48891
|
message,
|
|
48752
48892
|
}, (txSig) => `Vault ownership transferred: ${txSig}`);
|
|
48753
48893
|
});
|
|
48754
|
-
|
|
48755
|
-
.command("set-enabled")
|
|
48756
|
-
.argument("<enabled>", "New vault state", utils_1.validateBooleanInput)
|
|
48757
|
-
.description("Enable or disable a GLAM vault")
|
|
48758
|
-
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
48759
|
-
.action(async (enabled, options) => {
|
|
48894
|
+
const setEnabled = async (enabled, options) => {
|
|
48760
48895
|
const stateAccount = await context.glamClient.fetchStateAccount();
|
|
48761
48896
|
const name = (0, glam_sdk_1.charsToString)(stateAccount.name);
|
|
48762
48897
|
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.access.emergencyAccessUpdate({ stateEnabled: enabled }, context.txOptions), {
|
|
48763
48898
|
skip: options?.yes,
|
|
48764
48899
|
message: `Confirm ${enabled ? "enabling" : "disabling"} vault: ${name}`,
|
|
48765
48900
|
}, (txSig) => `GLAM vault ${name} ${enabled ? "enabled" : "disabled"}: ${txSig}`);
|
|
48901
|
+
};
|
|
48902
|
+
program
|
|
48903
|
+
.command("enable")
|
|
48904
|
+
.description("Enable a GLAM vault")
|
|
48905
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
48906
|
+
.action(async (options) => setEnabled(true, options));
|
|
48907
|
+
program
|
|
48908
|
+
.command("disable")
|
|
48909
|
+
.description("Disable a GLAM vault")
|
|
48910
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
48911
|
+
.action(async (options) => setEnabled(false, options));
|
|
48912
|
+
// Deprecated: use 'enable' or 'disable' instead
|
|
48913
|
+
program
|
|
48914
|
+
.command("set-enabled")
|
|
48915
|
+
.argument("<enabled>", "New vault state", utils_1.validateBooleanInput)
|
|
48916
|
+
.description("[deprecated] Use 'enable' or 'disable' instead")
|
|
48917
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
48918
|
+
.action(async (enabled, options) => {
|
|
48919
|
+
console.warn("Warning: 'set-enabled' is deprecated, use 'enable' or 'disable' instead.");
|
|
48920
|
+
await setEnabled(enabled, options);
|
|
48766
48921
|
});
|
|
48767
48922
|
program
|
|
48768
48923
|
.command("view")
|
|
@@ -48786,7 +48941,9 @@ function installVaultCommands(program, context) {
|
|
|
48786
48941
|
throw new Error("Invalid JSON file: must contain 'state' or 'mint' property");
|
|
48787
48942
|
}
|
|
48788
48943
|
const initStateParams = (0, utils_1.parseStateJson)(json);
|
|
48789
|
-
|
|
48944
|
+
const accountType = initStateParams.accountType;
|
|
48945
|
+
const accountTypeStr = Object.keys(accountType)[0];
|
|
48946
|
+
if (accountType === glam_sdk_1.StateAccountType.VAULT) {
|
|
48790
48947
|
await (0, utils_1.executeTxWithErrorHandling)(async () => {
|
|
48791
48948
|
const txSig = await context.glamClient.state.initialize(initStateParams, context.txOptions);
|
|
48792
48949
|
context.cliConfig.glamState = context.glamClient.statePda;
|
|
@@ -48795,11 +48952,11 @@ function installVaultCommands(program, context) {
|
|
|
48795
48952
|
return txSig;
|
|
48796
48953
|
}, {
|
|
48797
48954
|
skip: options?.yes,
|
|
48798
|
-
message: `Confirm initializing
|
|
48799
|
-
}, (txSig) => `
|
|
48955
|
+
message: `Confirm initializing ${accountTypeStr}: ${(0, glam_sdk_1.charsToString)(initStateParams.name)}`,
|
|
48956
|
+
}, (txSig) => `Initialized ${accountTypeStr}: ${txSig}`);
|
|
48800
48957
|
return;
|
|
48801
48958
|
}
|
|
48802
|
-
const initMintParams = (0, utils_1.parseMintJson)(json,
|
|
48959
|
+
const initMintParams = (0, utils_1.parseMintJson)(json, accountType);
|
|
48803
48960
|
await (0, utils_1.executeTxWithErrorHandling)(async () => {
|
|
48804
48961
|
// mint.initializeWithStateParams creates state with default setup
|
|
48805
48962
|
// we update state with input after mint initialization to apply state params
|
|
@@ -48813,8 +48970,8 @@ function installVaultCommands(program, context) {
|
|
|
48813
48970
|
return txSig;
|
|
48814
48971
|
}, {
|
|
48815
48972
|
skip: options?.yes,
|
|
48816
|
-
message: `Confirm initializing
|
|
48817
|
-
}, (txSig) => `
|
|
48973
|
+
message: `Confirm initializing ${accountTypeStr}: ${(0, glam_sdk_1.charsToString)(initMintParams.name)}`,
|
|
48974
|
+
}, (txSig) => `Initialized ${accountTypeStr}: ${txSig}`);
|
|
48818
48975
|
});
|
|
48819
48976
|
program
|
|
48820
48977
|
.command("extend")
|
|
@@ -48883,11 +49040,42 @@ function installVaultCommands(program, context) {
|
|
|
48883
49040
|
}, (txSig) => `wSOL unwrapped: ${txSig}`);
|
|
48884
49041
|
});
|
|
48885
49042
|
program
|
|
48886
|
-
.command("
|
|
48887
|
-
.
|
|
48888
|
-
.option("
|
|
48889
|
-
.
|
|
48890
|
-
|
|
49043
|
+
.command("close-token-accounts")
|
|
49044
|
+
.argument("[mints...]", "Mint address(es) of token accounts to close")
|
|
49045
|
+
.option("--empty", "Close all empty (zero-balance) token accounts", false)
|
|
49046
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49047
|
+
.description("Close vault token accounts")
|
|
49048
|
+
.action(async (mints, options) => {
|
|
49049
|
+
let tokenAccountPubkeys = [];
|
|
49050
|
+
if (options.empty) {
|
|
49051
|
+
const vault = context.glamClient.vaultPda;
|
|
49052
|
+
const { tokenAccounts } = await context.glamClient.getSolAndTokenBalances(vault);
|
|
49053
|
+
const emptyAccounts = tokenAccounts.filter((ta) => ta.uiAmount === 0);
|
|
49054
|
+
if (emptyAccounts.length === 0) {
|
|
49055
|
+
console.log("No empty token accounts to close.");
|
|
49056
|
+
return;
|
|
49057
|
+
}
|
|
49058
|
+
const emptyMints = emptyAccounts.map((ta) => ta.mint);
|
|
49059
|
+
const mintInfos = await (0, glam_sdk_1.fetchMintsAndTokenPrograms)(context.glamClient.connection, emptyMints);
|
|
49060
|
+
tokenAccountPubkeys = mintInfos.map(({ mint: { address }, tokenProgram }) => context.glamClient.getVaultAta(address, tokenProgram));
|
|
49061
|
+
}
|
|
49062
|
+
else if (mints.length > 0) {
|
|
49063
|
+
const mintPubkeys = mints.map((m) => (0, utils_1.validatePublicKey)(m));
|
|
49064
|
+
const mintInfos = await (0, glam_sdk_1.fetchMintsAndTokenPrograms)(context.glamClient.connection, mintPubkeys);
|
|
49065
|
+
tokenAccountPubkeys = mintInfos.map(({ mint: { address }, tokenProgram }) => context.glamClient.getVaultAta(address, tokenProgram));
|
|
49066
|
+
}
|
|
49067
|
+
else {
|
|
49068
|
+
console.error("Provide mint address(es) or use --empty to close all empty token accounts.");
|
|
49069
|
+
process.exit(1);
|
|
49070
|
+
}
|
|
49071
|
+
const count = tokenAccountPubkeys.length;
|
|
49072
|
+
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.vault.closeTokenAccounts(tokenAccountPubkeys, context.txOptions), {
|
|
49073
|
+
skip: options?.yes,
|
|
49074
|
+
message: `Confirm closing ${count} token account(s)`,
|
|
49075
|
+
}, (txSig) => `Closed ${count} token account(s): ${txSig}`);
|
|
49076
|
+
});
|
|
49077
|
+
const tokenBalances = async (options) => {
|
|
49078
|
+
const { all, json } = options;
|
|
48891
49079
|
const vault = context.glamClient.vaultPda;
|
|
48892
49080
|
const { uiAmount: solUiAmount, tokenAccounts } = await context.glamClient.getSolAndTokenBalances(vault);
|
|
48893
49081
|
const mints = tokenAccounts.map((ta) => ta.mint.toBase58());
|
|
@@ -48896,33 +49084,59 @@ function installVaultCommands(program, context) {
|
|
|
48896
49084
|
}
|
|
48897
49085
|
const jupApi = context.glamClient.jupiterSwap.jupApi;
|
|
48898
49086
|
const tokenList = await jupApi.fetchTokensList();
|
|
48899
|
-
|
|
49087
|
+
const solPrice = tokenList.getByMint(glam_sdk_1.WSOL)?.usdPrice || 0;
|
|
49088
|
+
const rows = [
|
|
49089
|
+
{
|
|
49090
|
+
token: "SOL",
|
|
49091
|
+
mint: "N/A",
|
|
49092
|
+
amount: solUiAmount,
|
|
49093
|
+
value: solPrice * solUiAmount,
|
|
49094
|
+
},
|
|
49095
|
+
...tokenAccounts
|
|
49096
|
+
.filter((ta) => all || ta.uiAmount > 0)
|
|
49097
|
+
.map((ta) => {
|
|
49098
|
+
const mintStr = ta.mint.toBase58();
|
|
49099
|
+
const token = tokenList.getByMint(mintStr);
|
|
49100
|
+
const tokenSymbol = token?.symbol === "SOL" ? "wSOL" : token?.symbol || "Unknown";
|
|
49101
|
+
const value = (token?.usdPrice || 0) * ta.uiAmount;
|
|
49102
|
+
return {
|
|
49103
|
+
token: tokenSymbol,
|
|
49104
|
+
mint: mintStr,
|
|
49105
|
+
amount: ta.uiAmount,
|
|
49106
|
+
value,
|
|
49107
|
+
};
|
|
49108
|
+
}),
|
|
49109
|
+
];
|
|
49110
|
+
if (json) {
|
|
49111
|
+
console.log(JSON.stringify(rows, null, 2));
|
|
49112
|
+
return;
|
|
49113
|
+
}
|
|
48900
49114
|
const colWidths = [12, 45, 15, 20];
|
|
48901
49115
|
const printRow = (items) => {
|
|
48902
49116
|
console.log(items[0].padEnd(colWidths[0]), items[1].padEnd(colWidths[1]), items[2].padEnd(colWidths[2]), items[3].padEnd(colWidths[3]));
|
|
48903
49117
|
};
|
|
48904
|
-
printRow(["Token", "Mint", "Amount", "Value (USD)"]);
|
|
48905
|
-
printRow([
|
|
48906
|
-
|
|
48907
|
-
|
|
48908
|
-
|
|
48909
|
-
|
|
48910
|
-
]);
|
|
48911
|
-
|
|
48912
|
-
|
|
48913
|
-
|
|
48914
|
-
|
|
48915
|
-
|
|
48916
|
-
|
|
48917
|
-
|
|
48918
|
-
|
|
48919
|
-
|
|
48920
|
-
|
|
48921
|
-
|
|
48922
|
-
|
|
48923
|
-
|
|
48924
|
-
|
|
48925
|
-
|
|
49118
|
+
printRow(["Token", "Mint", "Amount", "Value (USD)"]);
|
|
49119
|
+
rows.forEach((r) => printRow([
|
|
49120
|
+
r.token,
|
|
49121
|
+
r.mint,
|
|
49122
|
+
r.token === "SOL" ? r.amount.toFixed(9) : r.amount.toString(),
|
|
49123
|
+
r.value ? r.value.toFixed(6) : "NaN",
|
|
49124
|
+
]));
|
|
49125
|
+
};
|
|
49126
|
+
program
|
|
49127
|
+
.command("token-balances")
|
|
49128
|
+
.description("Get token balances")
|
|
49129
|
+
.option("-a, --all", "Show all assets including token accounts with 0 balance")
|
|
49130
|
+
.option("-j, --json", "Output in JSON format", false)
|
|
49131
|
+
.action(tokenBalances);
|
|
49132
|
+
// Deprecated: use 'token-balances' instead
|
|
49133
|
+
program
|
|
49134
|
+
.command("balances")
|
|
49135
|
+
.description("[deprecated] Use 'token-balances' instead")
|
|
49136
|
+
.option("-a, --all", "Show all assets including token accounts with 0 balance")
|
|
49137
|
+
.action(async (options) => {
|
|
49138
|
+
console.warn("Warning: 'balances' is deprecated, use 'token-balances' instead.");
|
|
49139
|
+
await tokenBalances(options);
|
|
48926
49140
|
});
|
|
48927
49141
|
program
|
|
48928
49142
|
.command("list-assets")
|
|
@@ -49065,12 +49279,46 @@ module.exports = require("zlib");
|
|
|
49065
49279
|
|
|
49066
49280
|
/***/ }),
|
|
49067
49281
|
/* 642 */
|
|
49068
|
-
/***/ ((__unused_webpack_module, exports, __webpack_require__)
|
|
49282
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
49069
49283
|
|
|
49070
49284
|
"use strict";
|
|
49071
49285
|
|
|
49286
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
49287
|
+
if (k2 === undefined) k2 = k;
|
|
49288
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
49289
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
49290
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
49291
|
+
}
|
|
49292
|
+
Object.defineProperty(o, k2, desc);
|
|
49293
|
+
}) : (function(o, m, k, k2) {
|
|
49294
|
+
if (k2 === undefined) k2 = k;
|
|
49295
|
+
o[k2] = m[k];
|
|
49296
|
+
}));
|
|
49297
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
49298
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
49299
|
+
}) : function(o, v) {
|
|
49300
|
+
o["default"] = v;
|
|
49301
|
+
});
|
|
49302
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
49303
|
+
var ownKeys = function(o) {
|
|
49304
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
49305
|
+
var ar = [];
|
|
49306
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
49307
|
+
return ar;
|
|
49308
|
+
};
|
|
49309
|
+
return ownKeys(o);
|
|
49310
|
+
};
|
|
49311
|
+
return function (mod) {
|
|
49312
|
+
if (mod && mod.__esModule) return mod;
|
|
49313
|
+
var result = {};
|
|
49314
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
49315
|
+
__setModuleDefault(result, mod);
|
|
49316
|
+
return result;
|
|
49317
|
+
};
|
|
49318
|
+
})();
|
|
49072
49319
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
49073
49320
|
exports.installManageCommands = installManageCommands;
|
|
49321
|
+
const anchor_1 = __webpack_require__(4);
|
|
49074
49322
|
const utils_1 = __webpack_require__(102);
|
|
49075
49323
|
const web3_js_1 = __webpack_require__(5);
|
|
49076
49324
|
const glam_sdk_1 = __webpack_require__(1);
|
|
@@ -49165,6 +49413,62 @@ function installManageCommands(manage, context) {
|
|
|
49165
49413
|
message: `Confirm unpausing ${action}`,
|
|
49166
49414
|
}, (txSig) => `Unpaused ${action}: ${txSig}`);
|
|
49167
49415
|
});
|
|
49416
|
+
manage
|
|
49417
|
+
.command("list-requests")
|
|
49418
|
+
.description("List pending user requests in the queue")
|
|
49419
|
+
.action(async () => {
|
|
49420
|
+
const queue = await context.glamClient.fetchRequestQueue();
|
|
49421
|
+
const requests = queue?.data || [];
|
|
49422
|
+
if (requests.length === 0) {
|
|
49423
|
+
console.log("No pending requests in the queue.");
|
|
49424
|
+
return;
|
|
49425
|
+
}
|
|
49426
|
+
const { baseAssetDecimals } = await context.glamClient.fetchStateModel();
|
|
49427
|
+
const { mint } = await (await Promise.resolve().then(() => __importStar(__webpack_require__(1)))).fetchMintAndTokenProgram(context.glamClient.connection, context.glamClient.mintPda);
|
|
49428
|
+
const shareDecimals = mint.decimals;
|
|
49429
|
+
console.log(`Found ${requests.length} request(s):\n`);
|
|
49430
|
+
for (const r of requests) {
|
|
49431
|
+
const type = Object.keys(r.requestType)[0];
|
|
49432
|
+
const isSub = glam_sdk_1.RequestType.equals(r.requestType, glam_sdk_1.RequestType.SUBSCRIPTION);
|
|
49433
|
+
const incoming = (0, glam_sdk_1.toUiAmount)(new anchor_1.BN(r.incoming.toString()), isSub ? baseAssetDecimals : shareDecimals);
|
|
49434
|
+
const outgoing = (0, glam_sdk_1.toUiAmount)(new anchor_1.BN(r.outgoing.toString()), isSub ? shareDecimals : baseAssetDecimals);
|
|
49435
|
+
const createdAt = new anchor_1.BN(r.createdAt.toString()).toNumber();
|
|
49436
|
+
const fulfilledAt = new anchor_1.BN(r.fulfilledAt.toString()).toNumber();
|
|
49437
|
+
const createdDate = createdAt
|
|
49438
|
+
? new Date(createdAt * 1000).toISOString()
|
|
49439
|
+
: "N/A";
|
|
49440
|
+
const status = fulfilledAt ? "fulfilled (claimable)" : "pending";
|
|
49441
|
+
console.log(` User: ${r.user.toBase58()}`);
|
|
49442
|
+
console.log(` Type: ${type}`);
|
|
49443
|
+
console.log(` Incoming: ${incoming}`);
|
|
49444
|
+
console.log(` Outgoing: ${outgoing}`);
|
|
49445
|
+
console.log(` Status: ${status}`);
|
|
49446
|
+
console.log(` Created: ${createdDate}`);
|
|
49447
|
+
console.log();
|
|
49448
|
+
}
|
|
49449
|
+
});
|
|
49450
|
+
manage
|
|
49451
|
+
.command("cancel-for-user")
|
|
49452
|
+
.argument("<pubkey>", "Public key of the user", utils_1.validatePublicKey)
|
|
49453
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49454
|
+
.description("Cancel a queued request on behalf of a user")
|
|
49455
|
+
.action(async (pubkey, options) => {
|
|
49456
|
+
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.invest.cancelForUser(pubkey, context.txOptions), {
|
|
49457
|
+
skip: options?.yes,
|
|
49458
|
+
message: `Confirm canceling queued request for user ${pubkey.toBase58()}?`,
|
|
49459
|
+
}, (txSig) => `Cancelled request for ${pubkey.toBase58()}: ${txSig}`);
|
|
49460
|
+
});
|
|
49461
|
+
manage
|
|
49462
|
+
.command("claim-for-user")
|
|
49463
|
+
.argument("<pubkey>", "Public key of the user", utils_1.validatePublicKey)
|
|
49464
|
+
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49465
|
+
.description("Claim a fulfilled request on behalf of a user")
|
|
49466
|
+
.action(async (pubkey, options) => {
|
|
49467
|
+
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.invest.claimForUser(pubkey, context.txOptions), {
|
|
49468
|
+
skip: options?.yes,
|
|
49469
|
+
message: `Confirm claiming for user ${pubkey.toBase58()}?`,
|
|
49470
|
+
}, (txSig) => `Claimed for ${pubkey.toBase58()}: ${txSig}`);
|
|
49471
|
+
});
|
|
49168
49472
|
}
|
|
49169
49473
|
|
|
49170
49474
|
|
|
@@ -49204,15 +49508,18 @@ function installCctpCommands(program, context) {
|
|
|
49204
49508
|
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49205
49509
|
.description("Add a destination to the allowlist")
|
|
49206
49510
|
.action(async (domain, destinationAddress, { base58, yes }) => {
|
|
49207
|
-
const
|
|
49511
|
+
const destinationPubkey = base58
|
|
49208
49512
|
? new web3_js_1.PublicKey(destinationAddress)
|
|
49209
49513
|
: (0, glam_sdk_2.evmAddressToPublicKey)(destinationAddress);
|
|
49210
49514
|
const cctpPolicy = (await context.glamClient.fetchProtocolPolicy(context.glamClient.extCctpProgram.programId, 0b01, glam_sdk_1.CctpPolicy)) ?? new glam_sdk_1.CctpPolicy([]);
|
|
49211
|
-
if (cctpPolicy.allowedDestinations.find((d) => d.domain === domain && d.address.equals(
|
|
49515
|
+
if (cctpPolicy.allowedDestinations.find((d) => d.domain === domain && d.address.equals(destinationPubkey))) {
|
|
49212
49516
|
console.error(`Destination address ${destinationAddress} is already in the allowlist`);
|
|
49213
49517
|
process.exit(1);
|
|
49214
49518
|
}
|
|
49215
|
-
cctpPolicy.allowedDestinations.push({
|
|
49519
|
+
cctpPolicy.allowedDestinations.push({
|
|
49520
|
+
domain,
|
|
49521
|
+
address: destinationPubkey,
|
|
49522
|
+
});
|
|
49216
49523
|
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.access.setProtocolPolicy(context.glamClient.extCctpProgram.programId, 0b01, cctpPolicy.encode(), context.txOptions), {
|
|
49217
49524
|
skip: yes,
|
|
49218
49525
|
message: `Confirm adding destination ${destinationAddress} (domain ${domain}) to allowlist`,
|
|
@@ -49226,7 +49533,7 @@ function installCctpCommands(program, context) {
|
|
|
49226
49533
|
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49227
49534
|
.description("Remove a destination from the allowlist")
|
|
49228
49535
|
.action(async (domain, destinationAddress, { base58, yes }) => {
|
|
49229
|
-
const
|
|
49536
|
+
const destinationPubkey = base58
|
|
49230
49537
|
? new web3_js_1.PublicKey(destinationAddress)
|
|
49231
49538
|
: (0, glam_sdk_2.evmAddressToPublicKey)(destinationAddress);
|
|
49232
49539
|
const cctpPolicy = await context.glamClient.fetchProtocolPolicy(context.glamClient.extCctpProgram.programId, 0b01, glam_sdk_1.CctpPolicy);
|
|
@@ -49234,7 +49541,7 @@ function installCctpCommands(program, context) {
|
|
|
49234
49541
|
console.error(`CCTP policy not found`);
|
|
49235
49542
|
process.exit(1);
|
|
49236
49543
|
}
|
|
49237
|
-
cctpPolicy.allowedDestinations = cctpPolicy.allowedDestinations.filter((d) => !(d.domain === domain && d.address.equals(
|
|
49544
|
+
cctpPolicy.allowedDestinations = cctpPolicy.allowedDestinations.filter((d) => !(d.domain === domain && d.address.equals(destinationPubkey)));
|
|
49238
49545
|
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.access.setProtocolPolicy(context.glamClient.extCctpProgram.programId, 0b01, cctpPolicy.encode(), context.txOptions), {
|
|
49239
49546
|
skip: yes,
|
|
49240
49547
|
message: `Confirm removing destination ${destinationAddress} (domain ${domain}) from allowlist`,
|
|
@@ -49256,7 +49563,7 @@ function installCctpCommands(program, context) {
|
|
|
49256
49563
|
.option("-y, --yes", "Skip confirmation prompt", false)
|
|
49257
49564
|
.description("Bridge USDC to an EVM chain")
|
|
49258
49565
|
.action(async (amount, domain, destinationAddress, { destinationCaller, maxFeeBps, base58, fast, yes }) => {
|
|
49259
|
-
const
|
|
49566
|
+
const destinationPubkey = base58
|
|
49260
49567
|
? new web3_js_1.PublicKey(destinationAddress)
|
|
49261
49568
|
: (0, glam_sdk_2.evmAddressToPublicKey)(destinationAddress);
|
|
49262
49569
|
const destinationCallerPubkey = destinationCaller
|
|
@@ -49266,7 +49573,7 @@ function installCctpCommands(program, context) {
|
|
|
49266
49573
|
: undefined;
|
|
49267
49574
|
const cctpPolicy = await context.glamClient.fetchProtocolPolicy(context.glamClient.extCctpProgram.programId, 0b01, glam_sdk_1.CctpPolicy);
|
|
49268
49575
|
if (cctpPolicy &&
|
|
49269
|
-
!cctpPolicy.allowedDestinations.find((d) => d.domain === domain && d.address.equals(
|
|
49576
|
+
!cctpPolicy.allowedDestinations.find((d) => d.domain === domain && d.address.equals(destinationPubkey))) {
|
|
49270
49577
|
console.error(`Destination (${domain}, ${destinationAddress}) not in allowlist`);
|
|
49271
49578
|
process.exit(1);
|
|
49272
49579
|
}
|
|
@@ -49274,7 +49581,7 @@ function installCctpCommands(program, context) {
|
|
|
49274
49581
|
const amountBN = (0, glam_sdk_1.fromUiAmount)(amount, 6);
|
|
49275
49582
|
const maxFee = amountBN.mul(new anchor_1.BN(maxFeeBps)).div(new anchor_1.BN(10000));
|
|
49276
49583
|
const minFinalityThreshold = fast ? 1000 : 2000;
|
|
49277
|
-
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.cctp.bridgeUsdc(amountBN, domain,
|
|
49584
|
+
await (0, utils_1.executeTxWithErrorHandling)(() => context.glamClient.cctp.bridgeUsdc(amountBN, domain, destinationPubkey, {
|
|
49278
49585
|
maxFee,
|
|
49279
49586
|
minFinalityThreshold,
|
|
49280
49587
|
destinationCaller: destinationCallerPubkey,
|
|
@@ -49542,6 +49849,21 @@ function installTimelockCommands(program, context) {
|
|
|
49542
49849
|
});
|
|
49543
49850
|
}
|
|
49544
49851
|
}
|
|
49852
|
+
else if (name === "assets" || name === "borrowable") {
|
|
49853
|
+
const { added, removed } = (0, glam_sdk_1.comparePublicKeyArrays)(stateModel[name] || [], value);
|
|
49854
|
+
if (added.length === 0 && removed.length === 0) {
|
|
49855
|
+
console.log(` ${name}: No changes`);
|
|
49856
|
+
}
|
|
49857
|
+
else {
|
|
49858
|
+
console.log(` ${name}:`);
|
|
49859
|
+
added.forEach((pk) => {
|
|
49860
|
+
console.log(` [+] ${pk.toBase58()}`);
|
|
49861
|
+
});
|
|
49862
|
+
removed.forEach((pk) => {
|
|
49863
|
+
console.log(` [-] ${pk.toBase58()}`);
|
|
49864
|
+
});
|
|
49865
|
+
}
|
|
49866
|
+
}
|
|
49545
49867
|
else if (name === "timelockDuration") {
|
|
49546
49868
|
console.log(` ${name}: ${stateModel.timelockDuration}s → ${value}s`);
|
|
49547
49869
|
}
|
|
@@ -49723,7 +50045,7 @@ program
|
|
|
49723
50045
|
initialize(config, skipSimulation);
|
|
49724
50046
|
await (0, idl_1.idlCheck)(context.glamClient);
|
|
49725
50047
|
})
|
|
49726
|
-
.version("1.0.
|
|
50048
|
+
.version("1.0.11");
|
|
49727
50049
|
program
|
|
49728
50050
|
.command("env")
|
|
49729
50051
|
.description("Display current environment setup")
|