use crate::{DriftV2Decoder, PROGRAM_ID};
#[cfg(feature = "postgres")]
pub mod postgres;
#[cfg(feature = "graphql")]
pub mod graphql;
pub mod add_amm_constituent_mapping_data;
pub mod add_insurance_fund_stake;
pub mod add_market_to_amm_cache;
pub mod admin_deposit;
pub mod admin_update_user_stats_paused_operations;
pub mod admin_withdraw_from_insurance_fund_vault;
pub mod begin_insurance_fund_swap;
pub mod begin_lp_swap;
pub mod begin_swap;
pub mod cancel_order;
pub mod cancel_order_by_user_id;
pub mod cancel_orders;
pub mod cancel_orders_by_ids;
pub mod cancel_request_remove_insurance_fund_stake;
pub mod change_approved_builder;
pub mod change_signed_msg_ws_delegate_status;
pub mod cpi_event;
pub mod delete_amm_cache;
pub mod delete_initialized_perp_market;
pub mod delete_initialized_spot_market;
pub mod delete_openbook_v2_fulfillment_config;
pub mod delete_prelaunch_oracle;
pub mod delete_serum_fulfillment_config;
pub mod delete_signed_msg_user_orders;
pub mod delete_user;
pub mod deposit;
pub mod deposit_into_insurance_fund_stake;
pub mod deposit_into_isolated_perp_position;
pub mod deposit_into_perp_market_fee_pool;
pub mod deposit_into_spot_market_revenue_pool;
pub mod deposit_into_spot_market_vault;
pub mod deposit_to_program_vault;
pub mod disable_user_high_leverage_mode;
pub mod enable_user_high_leverage_mode;
pub mod end_insurance_fund_swap;
pub mod end_lp_swap;
pub mod end_swap;
pub mod fill_perp_order;
pub mod fill_spot_order;
pub mod force_cancel_orders;
pub mod force_delete_user;
pub mod initialize;
pub mod initialize_amm_cache;
pub mod initialize_constituent;
pub mod initialize_fuel_overflow;
pub mod initialize_high_leverage_mode_config;
pub mod initialize_if_rebalance_config;
pub mod initialize_insurance_fund_stake;
pub mod initialize_lp_pool;
pub mod initialize_openbook_v2_fulfillment_config;
pub mod initialize_perp_market;
pub mod initialize_phoenix_fulfillment_config;
pub mod initialize_prediction_market;
pub mod initialize_prelaunch_oracle;
pub mod initialize_protected_maker_mode_config;
pub mod initialize_pyth_lazer_oracle;
pub mod initialize_pyth_pull_oracle;
pub mod initialize_referrer_name;
pub mod initialize_revenue_share;
pub mod initialize_revenue_share_escrow;
pub mod initialize_serum_fulfillment_config;
pub mod initialize_signed_msg_user_orders;
pub mod initialize_signed_msg_ws_delegates;
pub mod initialize_spot_market;
pub mod initialize_user;
pub mod initialize_user_stats;
pub mod liquidate_borrow_for_perp_pnl;
pub mod liquidate_perp;
pub mod liquidate_perp_pnl_for_deposit;
pub mod liquidate_perp_with_fill;
pub mod liquidate_spot;
pub mod liquidate_spot_with_swap_begin;
pub mod liquidate_spot_with_swap_end;
pub mod log_user_balances;
pub mod lp_pool_add_liquidity;
pub mod lp_pool_remove_liquidity;
pub mod lp_pool_swap;
pub mod modify_order;
pub mod modify_order_by_user_id;
pub mod move_amm_price;
pub mod openbook_v2_fulfillment_config_status;
pub mod override_amm_cache_info;
pub mod pause_spot_market_deposit_withdraw;
pub mod phoenix_fulfillment_config_status;
pub mod place_and_make_perp_order;
pub mod place_and_make_signed_msg_perp_order;
pub mod place_and_make_spot_order;
pub mod place_and_take_perp_order;
pub mod place_and_take_spot_order;
pub mod place_orders;
pub mod place_perp_order;
pub mod place_scale_orders;
pub mod place_signed_msg_taker_order;
pub mod place_spot_order;
pub mod post_multi_pyth_pull_oracle_updates_atomic;
pub mod post_pyth_lazer_oracle_update;
pub mod post_pyth_pull_oracle_update_atomic;
pub mod recenter_perp_market_amm;
pub mod recenter_perp_market_amm_crank;
pub mod reclaim_rent;
pub mod remove_amm_constituent_mapping_data;
pub mod remove_insurance_fund_stake;
pub mod repeg_amm_curve;
pub mod request_remove_insurance_fund_stake;
pub mod reset_fuel_season;
pub mod reset_perp_market_amm_oracle_twap;
pub mod resize_revenue_share_escrow_orders;
pub mod resize_signed_msg_user_orders;
pub mod resolve_perp_bankruptcy;
pub mod resolve_perp_pnl_deficit;
pub mod resolve_spot_bankruptcy;
pub mod revert_fill;
pub mod set_user_status_to_being_liquidated;
pub mod settle_expired_market;
pub mod settle_expired_market_pools_to_revenue_pool;
pub mod settle_funding_payment;
pub mod settle_multiple_pnls;
pub mod settle_perp_to_lp_pool;
pub mod settle_pnl;
pub mod settle_revenue_to_insurance_fund;
pub mod sweep_fuel;
pub mod transfer_deposit;
pub mod transfer_isolated_perp_position_deposit;
pub mod transfer_perp_position;
pub mod transfer_pools;
pub mod transfer_protocol_if_shares_to_revenue_pool;
pub mod trigger_order;
pub mod update_admin;
pub mod update_amm_cache;
pub mod update_amm_constituent_mapping_data;
pub mod update_amm_jit_intensity;
pub mod update_amms;
pub mod update_constituent_correlation_data;
pub mod update_constituent_oracle_info;
pub mod update_constituent_params;
pub mod update_constituent_paused_operations;
pub mod update_constituent_status;
pub mod update_delegate_user_gov_token_insurance_stake;
pub mod update_discount_mint;
pub mod update_exchange_status;
pub mod update_feature_bit_flags_builder_codes;
pub mod update_feature_bit_flags_median_trigger_price;
pub mod update_feature_bit_flags_mint_redeem_lp_pool;
pub mod update_feature_bit_flags_mm_oracle;
pub mod update_feature_bit_flags_settle_lp_pool;
pub mod update_feature_bit_flags_swap_lp_pool;
pub mod update_funding_rate;
pub mod update_high_leverage_mode_config;
pub mod update_if_rebalance_config;
pub mod update_initial_amm_cache_info;
pub mod update_initial_pct_to_liquidate;
pub mod update_insurance_fund_unstaking_period;
pub mod update_k;
pub mod update_liquidation_duration;
pub mod update_liquidation_margin_buffer_ratio;
pub mod update_lp_constituent_target_base;
pub mod update_lp_pool_aum;
pub mod update_lp_pool_params;
pub mod update_oracle_guard_rails;
pub mod update_perp_auction_duration;
pub mod update_perp_bid_ask_twap;
pub mod update_perp_fee_structure;
pub mod update_perp_market_amm_oracle_twap;
pub mod update_perp_market_amm_spread_adjustment;
pub mod update_perp_market_amm_summary_stats;
pub mod update_perp_market_base_spread;
pub mod update_perp_market_concentration_coef;
pub mod update_perp_market_config;
pub mod update_perp_market_contract_tier;
pub mod update_perp_market_curve_update_intensity;
pub mod update_perp_market_expiry;
pub mod update_perp_market_fee_adjustment;
pub mod update_perp_market_funding_period;
pub mod update_perp_market_high_leverage_margin_ratio;
pub mod update_perp_market_imf_factor;
pub mod update_perp_market_liquidation_fee;
pub mod update_perp_market_lp_pool_fee_transfer_scalar;
pub mod update_perp_market_lp_pool_id;
pub mod update_perp_market_lp_pool_paused_operations;
pub mod update_perp_market_lp_pool_status;
pub mod update_perp_market_margin_ratio;
pub mod update_perp_market_max_fill_reserve_fraction;
pub mod update_perp_market_max_imbalances;
pub mod update_perp_market_max_open_interest;
pub mod update_perp_market_max_slippage_ratio;
pub mod update_perp_market_max_spread;
pub mod update_perp_market_min_order_size;
pub mod update_perp_market_name;
pub mod update_perp_market_number_of_users;
pub mod update_perp_market_oracle;
pub mod update_perp_market_oracle_low_risk_slot_delay_override;
pub mod update_perp_market_oracle_slot_delay_override;
pub mod update_perp_market_paused_operations;
pub mod update_perp_market_pnl_pool;
pub mod update_perp_market_protected_maker_params;
pub mod update_perp_market_reference_price_offset_deadband_pct;
pub mod update_perp_market_status;
pub mod update_perp_market_step_size_and_tick_size;
pub mod update_perp_market_unrealized_asset_weight;
pub mod update_prelaunch_oracle;
pub mod update_prelaunch_oracle_params;
pub mod update_protected_maker_mode_config;
pub mod update_pyth_pull_oracle;
pub mod update_serum_fulfillment_config_status;
pub mod update_spot_auction_duration;
pub mod update_spot_fee_structure;
pub mod update_spot_market_asset_tier;
pub mod update_spot_market_borrow_rate;
pub mod update_spot_market_cumulative_interest;
pub mod update_spot_market_expiry;
pub mod update_spot_market_fee_adjustment;
pub mod update_spot_market_if_factor;
pub mod update_spot_market_if_paused_operations;
pub mod update_spot_market_liquidation_fee;
pub mod update_spot_market_margin_weights;
pub mod update_spot_market_max_token_borrows;
pub mod update_spot_market_max_token_deposits;
pub mod update_spot_market_min_order_size;
pub mod update_spot_market_name;
pub mod update_spot_market_oracle;
pub mod update_spot_market_orders_enabled;
pub mod update_spot_market_paused_operations;
pub mod update_spot_market_pool_id;
pub mod update_spot_market_revenue_settle_period;
pub mod update_spot_market_scale_initial_asset_weight_start;
pub mod update_spot_market_status;
pub mod update_spot_market_step_size_and_tick_size;
pub mod update_state_max_initialize_user_fee;
pub mod update_state_max_number_of_sub_accounts;
pub mod update_state_settlement_duration;
pub mod update_user_custom_margin_ratio;
pub mod update_user_delegate;
pub mod update_user_gov_token_insurance_stake;
pub mod update_user_idle;
pub mod update_user_margin_trading_enabled;
pub mod update_user_name;
pub mod update_user_perp_position_custom_margin_ratio;
pub mod update_user_pool_id;
pub mod update_user_protected_maker_orders;
pub mod update_user_quote_asset_insurance_stake;
pub mod update_user_reduce_only;
pub mod update_user_stats_referrer_status;
pub mod update_withdraw_guard_threshold;
pub mod view_lp_pool_add_liquidity_fees;
pub mod view_lp_pool_remove_liquidity_fees;
pub mod view_lp_pool_swap_fees;
pub mod withdraw;
pub mod withdraw_from_isolated_perp_position;
pub mod withdraw_from_program_vault;
pub mod zero_mm_oracle_fields;
pub use self::{
add_amm_constituent_mapping_data::*, add_insurance_fund_stake::*, add_market_to_amm_cache::*,
admin_deposit::*, admin_update_user_stats_paused_operations::*,
admin_withdraw_from_insurance_fund_vault::*, begin_insurance_fund_swap::*, begin_lp_swap::*,
begin_swap::*, cancel_order::*, cancel_order_by_user_id::*, cancel_orders::*,
cancel_orders_by_ids::*, cancel_request_remove_insurance_fund_stake::*,
change_approved_builder::*, change_signed_msg_ws_delegate_status::*, cpi_event::*,
delete_amm_cache::*, delete_initialized_perp_market::*, delete_initialized_spot_market::*,
delete_openbook_v2_fulfillment_config::*, delete_prelaunch_oracle::*,
delete_serum_fulfillment_config::*, delete_signed_msg_user_orders::*, delete_user::*,
deposit::*, deposit_into_insurance_fund_stake::*, deposit_into_isolated_perp_position::*,
deposit_into_perp_market_fee_pool::*, deposit_into_spot_market_revenue_pool::*,
deposit_into_spot_market_vault::*, deposit_to_program_vault::*,
disable_user_high_leverage_mode::*, enable_user_high_leverage_mode::*,
end_insurance_fund_swap::*, end_lp_swap::*, end_swap::*, fill_perp_order::*,
fill_spot_order::*, force_cancel_orders::*, force_delete_user::*, initialize::*,
initialize_amm_cache::*, initialize_constituent::*, initialize_fuel_overflow::*,
initialize_high_leverage_mode_config::*, initialize_if_rebalance_config::*,
initialize_insurance_fund_stake::*, initialize_lp_pool::*,
initialize_openbook_v2_fulfillment_config::*, initialize_perp_market::*,
initialize_phoenix_fulfillment_config::*, initialize_prediction_market::*,
initialize_prelaunch_oracle::*, initialize_protected_maker_mode_config::*,
initialize_pyth_lazer_oracle::*, initialize_pyth_pull_oracle::*, initialize_referrer_name::*,
initialize_revenue_share::*, initialize_revenue_share_escrow::*,
initialize_serum_fulfillment_config::*, initialize_signed_msg_user_orders::*,
initialize_signed_msg_ws_delegates::*, initialize_spot_market::*, initialize_user::*,
initialize_user_stats::*, liquidate_borrow_for_perp_pnl::*, liquidate_perp::*,
liquidate_perp_pnl_for_deposit::*, liquidate_perp_with_fill::*, liquidate_spot::*,
liquidate_spot_with_swap_begin::*, liquidate_spot_with_swap_end::*, log_user_balances::*,
lp_pool_add_liquidity::*, lp_pool_remove_liquidity::*, lp_pool_swap::*, modify_order::*,
modify_order_by_user_id::*, move_amm_price::*, openbook_v2_fulfillment_config_status::*,
override_amm_cache_info::*, pause_spot_market_deposit_withdraw::*,
phoenix_fulfillment_config_status::*, place_and_make_perp_order::*,
place_and_make_signed_msg_perp_order::*, place_and_make_spot_order::*,
place_and_take_perp_order::*, place_and_take_spot_order::*, place_orders::*,
place_perp_order::*, place_scale_orders::*, place_signed_msg_taker_order::*,
place_spot_order::*, post_multi_pyth_pull_oracle_updates_atomic::*,
post_pyth_lazer_oracle_update::*, post_pyth_pull_oracle_update_atomic::*,
recenter_perp_market_amm::*, recenter_perp_market_amm_crank::*, reclaim_rent::*,
remove_amm_constituent_mapping_data::*, remove_insurance_fund_stake::*, repeg_amm_curve::*,
request_remove_insurance_fund_stake::*, reset_fuel_season::*,
reset_perp_market_amm_oracle_twap::*, resize_revenue_share_escrow_orders::*,
resize_signed_msg_user_orders::*, resolve_perp_bankruptcy::*, resolve_perp_pnl_deficit::*,
resolve_spot_bankruptcy::*, revert_fill::*, set_user_status_to_being_liquidated::*,
settle_expired_market::*, settle_expired_market_pools_to_revenue_pool::*,
settle_funding_payment::*, settle_multiple_pnls::*, settle_perp_to_lp_pool::*, settle_pnl::*,
settle_revenue_to_insurance_fund::*, sweep_fuel::*, transfer_deposit::*,
transfer_isolated_perp_position_deposit::*, transfer_perp_position::*, transfer_pools::*,
transfer_protocol_if_shares_to_revenue_pool::*, trigger_order::*, update_admin::*,
update_amm_cache::*, update_amm_constituent_mapping_data::*, update_amm_jit_intensity::*,
update_amms::*, update_constituent_correlation_data::*, update_constituent_oracle_info::*,
update_constituent_params::*, update_constituent_paused_operations::*,
update_constituent_status::*, update_delegate_user_gov_token_insurance_stake::*,
update_discount_mint::*, update_exchange_status::*, update_feature_bit_flags_builder_codes::*,
update_feature_bit_flags_median_trigger_price::*,
update_feature_bit_flags_mint_redeem_lp_pool::*, update_feature_bit_flags_mm_oracle::*,
update_feature_bit_flags_settle_lp_pool::*, update_feature_bit_flags_swap_lp_pool::*,
update_funding_rate::*, update_high_leverage_mode_config::*, update_if_rebalance_config::*,
update_initial_amm_cache_info::*, update_initial_pct_to_liquidate::*,
update_insurance_fund_unstaking_period::*, update_k::*, update_liquidation_duration::*,
update_liquidation_margin_buffer_ratio::*, update_lp_constituent_target_base::*,
update_lp_pool_aum::*, update_lp_pool_params::*, update_oracle_guard_rails::*,
update_perp_auction_duration::*, update_perp_bid_ask_twap::*, update_perp_fee_structure::*,
update_perp_market_amm_oracle_twap::*, update_perp_market_amm_spread_adjustment::*,
update_perp_market_amm_summary_stats::*, update_perp_market_base_spread::*,
update_perp_market_concentration_coef::*, update_perp_market_config::*,
update_perp_market_contract_tier::*, update_perp_market_curve_update_intensity::*,
update_perp_market_expiry::*, update_perp_market_fee_adjustment::*,
update_perp_market_funding_period::*, update_perp_market_high_leverage_margin_ratio::*,
update_perp_market_imf_factor::*, update_perp_market_liquidation_fee::*,
update_perp_market_lp_pool_fee_transfer_scalar::*, update_perp_market_lp_pool_id::*,
update_perp_market_lp_pool_paused_operations::*, update_perp_market_lp_pool_status::*,
update_perp_market_margin_ratio::*, update_perp_market_max_fill_reserve_fraction::*,
update_perp_market_max_imbalances::*, update_perp_market_max_open_interest::*,
update_perp_market_max_slippage_ratio::*, update_perp_market_max_spread::*,
update_perp_market_min_order_size::*, update_perp_market_name::*,
update_perp_market_number_of_users::*, update_perp_market_oracle::*,
update_perp_market_oracle_low_risk_slot_delay_override::*,
update_perp_market_oracle_slot_delay_override::*, update_perp_market_paused_operations::*,
update_perp_market_pnl_pool::*, update_perp_market_protected_maker_params::*,
update_perp_market_reference_price_offset_deadband_pct::*, update_perp_market_status::*,
update_perp_market_step_size_and_tick_size::*, update_perp_market_unrealized_asset_weight::*,
update_prelaunch_oracle::*, update_prelaunch_oracle_params::*,
update_protected_maker_mode_config::*, update_pyth_pull_oracle::*,
update_serum_fulfillment_config_status::*, update_spot_auction_duration::*,
update_spot_fee_structure::*, update_spot_market_asset_tier::*,
update_spot_market_borrow_rate::*, update_spot_market_cumulative_interest::*,
update_spot_market_expiry::*, update_spot_market_fee_adjustment::*,
update_spot_market_if_factor::*, update_spot_market_if_paused_operations::*,
update_spot_market_liquidation_fee::*, update_spot_market_margin_weights::*,
update_spot_market_max_token_borrows::*, update_spot_market_max_token_deposits::*,
update_spot_market_min_order_size::*, update_spot_market_name::*, update_spot_market_oracle::*,
update_spot_market_orders_enabled::*, update_spot_market_paused_operations::*,
update_spot_market_pool_id::*, update_spot_market_revenue_settle_period::*,
update_spot_market_scale_initial_asset_weight_start::*, update_spot_market_status::*,
update_spot_market_step_size_and_tick_size::*, update_state_max_initialize_user_fee::*,
update_state_max_number_of_sub_accounts::*, update_state_settlement_duration::*,
update_user_custom_margin_ratio::*, update_user_delegate::*,
update_user_gov_token_insurance_stake::*, update_user_idle::*,
update_user_margin_trading_enabled::*, update_user_name::*,
update_user_perp_position_custom_margin_ratio::*, update_user_pool_id::*,
update_user_protected_maker_orders::*, update_user_quote_asset_insurance_stake::*,
update_user_reduce_only::*, update_user_stats_referrer_status::*,
update_withdraw_guard_threshold::*, view_lp_pool_add_liquidity_fees::*,
view_lp_pool_remove_liquidity_fees::*, view_lp_pool_swap_fees::*, withdraw::*,
withdraw_from_isolated_perp_position::*, withdraw_from_program_vault::*,
zero_mm_oracle_fields::*,
};
#[derive(Debug, Clone, PartialEq)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
#[cfg_attr(feature = "serde", serde(tag = "type", content = "data"))]
pub enum DriftV2Instruction {
AddAmmConstituentMappingData {
program_id: solana_pubkey::Pubkey,
data: AddAmmConstituentMappingData,
accounts: AddAmmConstituentMappingDataInstructionAccounts,
},
AddInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: AddInsuranceFundStake,
accounts: AddInsuranceFundStakeInstructionAccounts,
},
AddMarketToAmmCache {
program_id: solana_pubkey::Pubkey,
data: AddMarketToAmmCache,
accounts: AddMarketToAmmCacheInstructionAccounts,
},
AdminDeposit {
program_id: solana_pubkey::Pubkey,
data: AdminDeposit,
accounts: AdminDepositInstructionAccounts,
},
AdminUpdateUserStatsPausedOperations {
program_id: solana_pubkey::Pubkey,
data: AdminUpdateUserStatsPausedOperations,
accounts: AdminUpdateUserStatsPausedOperationsInstructionAccounts,
},
AdminWithdrawFromInsuranceFundVault {
program_id: solana_pubkey::Pubkey,
data: AdminWithdrawFromInsuranceFundVault,
accounts: AdminWithdrawFromInsuranceFundVaultInstructionAccounts,
},
BeginInsuranceFundSwap {
program_id: solana_pubkey::Pubkey,
data: BeginInsuranceFundSwap,
accounts: BeginInsuranceFundSwapInstructionAccounts,
},
BeginLpSwap {
program_id: solana_pubkey::Pubkey,
data: BeginLpSwap,
accounts: BeginLpSwapInstructionAccounts,
},
BeginSwap {
program_id: solana_pubkey::Pubkey,
data: BeginSwap,
accounts: BeginSwapInstructionAccounts,
},
CancelOrder {
program_id: solana_pubkey::Pubkey,
data: CancelOrder,
accounts: CancelOrderInstructionAccounts,
},
CancelOrderByUserId {
program_id: solana_pubkey::Pubkey,
data: CancelOrderByUserId,
accounts: CancelOrderByUserIdInstructionAccounts,
},
CancelOrders {
program_id: solana_pubkey::Pubkey,
data: CancelOrders,
accounts: CancelOrdersInstructionAccounts,
},
CancelOrdersByIds {
program_id: solana_pubkey::Pubkey,
data: CancelOrdersByIds,
accounts: CancelOrdersByIdsInstructionAccounts,
},
CancelRequestRemoveInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: CancelRequestRemoveInsuranceFundStake,
accounts: CancelRequestRemoveInsuranceFundStakeInstructionAccounts,
},
ChangeApprovedBuilder {
program_id: solana_pubkey::Pubkey,
data: ChangeApprovedBuilder,
accounts: ChangeApprovedBuilderInstructionAccounts,
},
ChangeSignedMsgWsDelegateStatus {
program_id: solana_pubkey::Pubkey,
data: ChangeSignedMsgWsDelegateStatus,
accounts: ChangeSignedMsgWsDelegateStatusInstructionAccounts,
},
DeleteAmmCache {
program_id: solana_pubkey::Pubkey,
data: DeleteAmmCache,
accounts: DeleteAmmCacheInstructionAccounts,
},
DeleteInitializedPerpMarket {
program_id: solana_pubkey::Pubkey,
data: DeleteInitializedPerpMarket,
accounts: DeleteInitializedPerpMarketInstructionAccounts,
},
DeleteInitializedSpotMarket {
program_id: solana_pubkey::Pubkey,
data: DeleteInitializedSpotMarket,
accounts: DeleteInitializedSpotMarketInstructionAccounts,
},
DeleteOpenbookV2FulfillmentConfig {
program_id: solana_pubkey::Pubkey,
data: DeleteOpenbookV2FulfillmentConfig,
accounts: DeleteOpenbookV2FulfillmentConfigInstructionAccounts,
},
DeletePrelaunchOracle {
program_id: solana_pubkey::Pubkey,
data: DeletePrelaunchOracle,
accounts: DeletePrelaunchOracleInstructionAccounts,
},
DeleteSerumFulfillmentConfig {
program_id: solana_pubkey::Pubkey,
data: DeleteSerumFulfillmentConfig,
accounts: DeleteSerumFulfillmentConfigInstructionAccounts,
},
DeleteSignedMsgUserOrders {
program_id: solana_pubkey::Pubkey,
data: DeleteSignedMsgUserOrders,
accounts: DeleteSignedMsgUserOrdersInstructionAccounts,
},
DeleteUser {
program_id: solana_pubkey::Pubkey,
data: DeleteUser,
accounts: DeleteUserInstructionAccounts,
},
Deposit {
program_id: solana_pubkey::Pubkey,
data: Deposit,
accounts: DepositInstructionAccounts,
},
DepositIntoInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: DepositIntoInsuranceFundStake,
accounts: DepositIntoInsuranceFundStakeInstructionAccounts,
},
DepositIntoIsolatedPerpPosition {
program_id: solana_pubkey::Pubkey,
data: DepositIntoIsolatedPerpPosition,
accounts: DepositIntoIsolatedPerpPositionInstructionAccounts,
},
DepositIntoPerpMarketFeePool {
program_id: solana_pubkey::Pubkey,
data: DepositIntoPerpMarketFeePool,
accounts: DepositIntoPerpMarketFeePoolInstructionAccounts,
},
DepositIntoSpotMarketRevenuePool {
program_id: solana_pubkey::Pubkey,
data: DepositIntoSpotMarketRevenuePool,
accounts: DepositIntoSpotMarketRevenuePoolInstructionAccounts,
},
DepositIntoSpotMarketVault {
program_id: solana_pubkey::Pubkey,
data: DepositIntoSpotMarketVault,
accounts: DepositIntoSpotMarketVaultInstructionAccounts,
},
DepositToProgramVault {
program_id: solana_pubkey::Pubkey,
data: DepositToProgramVault,
accounts: DepositToProgramVaultInstructionAccounts,
},
DisableUserHighLeverageMode {
program_id: solana_pubkey::Pubkey,
data: DisableUserHighLeverageMode,
accounts: DisableUserHighLeverageModeInstructionAccounts,
},
EnableUserHighLeverageMode {
program_id: solana_pubkey::Pubkey,
data: EnableUserHighLeverageMode,
accounts: EnableUserHighLeverageModeInstructionAccounts,
},
EndInsuranceFundSwap {
program_id: solana_pubkey::Pubkey,
data: EndInsuranceFundSwap,
accounts: EndInsuranceFundSwapInstructionAccounts,
},
EndLpSwap {
program_id: solana_pubkey::Pubkey,
data: EndLpSwap,
accounts: EndLpSwapInstructionAccounts,
},
EndSwap {
program_id: solana_pubkey::Pubkey,
data: EndSwap,
accounts: EndSwapInstructionAccounts,
},
FillPerpOrder {
program_id: solana_pubkey::Pubkey,
data: FillPerpOrder,
accounts: FillPerpOrderInstructionAccounts,
},
FillSpotOrder {
program_id: solana_pubkey::Pubkey,
data: FillSpotOrder,
accounts: FillSpotOrderInstructionAccounts,
},
ForceCancelOrders {
program_id: solana_pubkey::Pubkey,
data: ForceCancelOrders,
accounts: ForceCancelOrdersInstructionAccounts,
},
ForceDeleteUser {
program_id: solana_pubkey::Pubkey,
data: ForceDeleteUser,
accounts: ForceDeleteUserInstructionAccounts,
},
Initialize {
program_id: solana_pubkey::Pubkey,
data: Initialize,
accounts: InitializeInstructionAccounts,
},
InitializeAmmCache {
program_id: solana_pubkey::Pubkey,
data: InitializeAmmCache,
accounts: InitializeAmmCacheInstructionAccounts,
},
InitializeConstituent {
program_id: solana_pubkey::Pubkey,
data: InitializeConstituent,
accounts: InitializeConstituentInstructionAccounts,
},
InitializeFuelOverflow {
program_id: solana_pubkey::Pubkey,
data: InitializeFuelOverflow,
accounts: InitializeFuelOverflowInstructionAccounts,
},
InitializeHighLeverageModeConfig {
program_id: solana_pubkey::Pubkey,
data: InitializeHighLeverageModeConfig,
accounts: InitializeHighLeverageModeConfigInstructionAccounts,
},
InitializeIfRebalanceConfig {
program_id: solana_pubkey::Pubkey,
data: InitializeIfRebalanceConfig,
accounts: InitializeIfRebalanceConfigInstructionAccounts,
},
InitializeInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: InitializeInsuranceFundStake,
accounts: InitializeInsuranceFundStakeInstructionAccounts,
},
InitializeLpPool {
program_id: solana_pubkey::Pubkey,
data: InitializeLpPool,
accounts: InitializeLpPoolInstructionAccounts,
},
InitializeOpenbookV2FulfillmentConfig {
program_id: solana_pubkey::Pubkey,
data: InitializeOpenbookV2FulfillmentConfig,
accounts: InitializeOpenbookV2FulfillmentConfigInstructionAccounts,
},
InitializePerpMarket {
program_id: solana_pubkey::Pubkey,
data: InitializePerpMarket,
accounts: InitializePerpMarketInstructionAccounts,
},
InitializePhoenixFulfillmentConfig {
program_id: solana_pubkey::Pubkey,
data: InitializePhoenixFulfillmentConfig,
accounts: InitializePhoenixFulfillmentConfigInstructionAccounts,
},
InitializePredictionMarket {
program_id: solana_pubkey::Pubkey,
data: InitializePredictionMarket,
accounts: InitializePredictionMarketInstructionAccounts,
},
InitializePrelaunchOracle {
program_id: solana_pubkey::Pubkey,
data: InitializePrelaunchOracle,
accounts: InitializePrelaunchOracleInstructionAccounts,
},
InitializeProtectedMakerModeConfig {
program_id: solana_pubkey::Pubkey,
data: InitializeProtectedMakerModeConfig,
accounts: InitializeProtectedMakerModeConfigInstructionAccounts,
},
InitializePythLazerOracle {
program_id: solana_pubkey::Pubkey,
data: InitializePythLazerOracle,
accounts: InitializePythLazerOracleInstructionAccounts,
},
InitializePythPullOracle {
program_id: solana_pubkey::Pubkey,
data: InitializePythPullOracle,
accounts: InitializePythPullOracleInstructionAccounts,
},
InitializeReferrerName {
program_id: solana_pubkey::Pubkey,
data: InitializeReferrerName,
accounts: InitializeReferrerNameInstructionAccounts,
},
InitializeRevenueShare {
program_id: solana_pubkey::Pubkey,
data: InitializeRevenueShare,
accounts: InitializeRevenueShareInstructionAccounts,
},
InitializeRevenueShareEscrow {
program_id: solana_pubkey::Pubkey,
data: InitializeRevenueShareEscrow,
accounts: InitializeRevenueShareEscrowInstructionAccounts,
},
InitializeSerumFulfillmentConfig {
program_id: solana_pubkey::Pubkey,
data: InitializeSerumFulfillmentConfig,
accounts: InitializeSerumFulfillmentConfigInstructionAccounts,
},
InitializeSignedMsgUserOrders {
program_id: solana_pubkey::Pubkey,
data: InitializeSignedMsgUserOrders,
accounts: InitializeSignedMsgUserOrdersInstructionAccounts,
},
InitializeSignedMsgWsDelegates {
program_id: solana_pubkey::Pubkey,
data: InitializeSignedMsgWsDelegates,
accounts: InitializeSignedMsgWsDelegatesInstructionAccounts,
},
InitializeSpotMarket {
program_id: solana_pubkey::Pubkey,
data: InitializeSpotMarket,
accounts: InitializeSpotMarketInstructionAccounts,
},
InitializeUser {
program_id: solana_pubkey::Pubkey,
data: InitializeUser,
accounts: InitializeUserInstructionAccounts,
},
InitializeUserStats {
program_id: solana_pubkey::Pubkey,
data: InitializeUserStats,
accounts: InitializeUserStatsInstructionAccounts,
},
LiquidateBorrowForPerpPnl {
program_id: solana_pubkey::Pubkey,
data: LiquidateBorrowForPerpPnl,
accounts: LiquidateBorrowForPerpPnlInstructionAccounts,
},
LiquidatePerp {
program_id: solana_pubkey::Pubkey,
data: LiquidatePerp,
accounts: LiquidatePerpInstructionAccounts,
},
LiquidatePerpPnlForDeposit {
program_id: solana_pubkey::Pubkey,
data: LiquidatePerpPnlForDeposit,
accounts: LiquidatePerpPnlForDepositInstructionAccounts,
},
LiquidatePerpWithFill {
program_id: solana_pubkey::Pubkey,
data: LiquidatePerpWithFill,
accounts: LiquidatePerpWithFillInstructionAccounts,
},
LiquidateSpot {
program_id: solana_pubkey::Pubkey,
data: LiquidateSpot,
accounts: LiquidateSpotInstructionAccounts,
},
LiquidateSpotWithSwapBegin {
program_id: solana_pubkey::Pubkey,
data: LiquidateSpotWithSwapBegin,
accounts: LiquidateSpotWithSwapBeginInstructionAccounts,
},
LiquidateSpotWithSwapEnd {
program_id: solana_pubkey::Pubkey,
data: LiquidateSpotWithSwapEnd,
accounts: LiquidateSpotWithSwapEndInstructionAccounts,
},
LogUserBalances {
program_id: solana_pubkey::Pubkey,
data: LogUserBalances,
accounts: LogUserBalancesInstructionAccounts,
},
LpPoolAddLiquidity {
program_id: solana_pubkey::Pubkey,
data: LpPoolAddLiquidity,
accounts: LpPoolAddLiquidityInstructionAccounts,
},
LpPoolRemoveLiquidity {
program_id: solana_pubkey::Pubkey,
data: LpPoolRemoveLiquidity,
accounts: LpPoolRemoveLiquidityInstructionAccounts,
},
LpPoolSwap {
program_id: solana_pubkey::Pubkey,
data: LpPoolSwap,
accounts: LpPoolSwapInstructionAccounts,
},
ModifyOrder {
program_id: solana_pubkey::Pubkey,
data: ModifyOrder,
accounts: ModifyOrderInstructionAccounts,
},
ModifyOrderByUserId {
program_id: solana_pubkey::Pubkey,
data: ModifyOrderByUserId,
accounts: ModifyOrderByUserIdInstructionAccounts,
},
MoveAmmPrice {
program_id: solana_pubkey::Pubkey,
data: MoveAmmPrice,
accounts: MoveAmmPriceInstructionAccounts,
},
OpenbookV2FulfillmentConfigStatus {
program_id: solana_pubkey::Pubkey,
data: OpenbookV2FulfillmentConfigStatus,
accounts: OpenbookV2FulfillmentConfigStatusInstructionAccounts,
},
OverrideAmmCacheInfo {
program_id: solana_pubkey::Pubkey,
data: OverrideAmmCacheInfo,
accounts: OverrideAmmCacheInfoInstructionAccounts,
},
PauseSpotMarketDepositWithdraw {
program_id: solana_pubkey::Pubkey,
data: PauseSpotMarketDepositWithdraw,
accounts: PauseSpotMarketDepositWithdrawInstructionAccounts,
},
PhoenixFulfillmentConfigStatus {
program_id: solana_pubkey::Pubkey,
data: PhoenixFulfillmentConfigStatus,
accounts: PhoenixFulfillmentConfigStatusInstructionAccounts,
},
PlaceAndMakePerpOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceAndMakePerpOrder,
accounts: PlaceAndMakePerpOrderInstructionAccounts,
},
PlaceAndMakeSignedMsgPerpOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceAndMakeSignedMsgPerpOrder,
accounts: PlaceAndMakeSignedMsgPerpOrderInstructionAccounts,
},
PlaceAndMakeSpotOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceAndMakeSpotOrder,
accounts: PlaceAndMakeSpotOrderInstructionAccounts,
},
PlaceAndTakePerpOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceAndTakePerpOrder,
accounts: PlaceAndTakePerpOrderInstructionAccounts,
},
PlaceAndTakeSpotOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceAndTakeSpotOrder,
accounts: PlaceAndTakeSpotOrderInstructionAccounts,
},
PlaceOrders {
program_id: solana_pubkey::Pubkey,
data: PlaceOrders,
accounts: PlaceOrdersInstructionAccounts,
},
PlacePerpOrder {
program_id: solana_pubkey::Pubkey,
data: PlacePerpOrder,
accounts: PlacePerpOrderInstructionAccounts,
},
PlaceScaleOrders {
program_id: solana_pubkey::Pubkey,
data: PlaceScaleOrders,
accounts: PlaceScaleOrdersInstructionAccounts,
},
PlaceSignedMsgTakerOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceSignedMsgTakerOrder,
accounts: PlaceSignedMsgTakerOrderInstructionAccounts,
},
PlaceSpotOrder {
program_id: solana_pubkey::Pubkey,
data: PlaceSpotOrder,
accounts: PlaceSpotOrderInstructionAccounts,
},
PostMultiPythPullOracleUpdatesAtomic {
program_id: solana_pubkey::Pubkey,
data: PostMultiPythPullOracleUpdatesAtomic,
accounts: PostMultiPythPullOracleUpdatesAtomicInstructionAccounts,
},
PostPythLazerOracleUpdate {
program_id: solana_pubkey::Pubkey,
data: PostPythLazerOracleUpdate,
accounts: PostPythLazerOracleUpdateInstructionAccounts,
},
PostPythPullOracleUpdateAtomic {
program_id: solana_pubkey::Pubkey,
data: PostPythPullOracleUpdateAtomic,
accounts: PostPythPullOracleUpdateAtomicInstructionAccounts,
},
RecenterPerpMarketAmm {
program_id: solana_pubkey::Pubkey,
data: RecenterPerpMarketAmm,
accounts: RecenterPerpMarketAmmInstructionAccounts,
},
RecenterPerpMarketAmmCrank {
program_id: solana_pubkey::Pubkey,
data: RecenterPerpMarketAmmCrank,
accounts: RecenterPerpMarketAmmCrankInstructionAccounts,
},
ReclaimRent {
program_id: solana_pubkey::Pubkey,
data: ReclaimRent,
accounts: ReclaimRentInstructionAccounts,
},
RemoveAmmConstituentMappingData {
program_id: solana_pubkey::Pubkey,
data: RemoveAmmConstituentMappingData,
accounts: RemoveAmmConstituentMappingDataInstructionAccounts,
},
RemoveInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: RemoveInsuranceFundStake,
accounts: RemoveInsuranceFundStakeInstructionAccounts,
},
RepegAmmCurve {
program_id: solana_pubkey::Pubkey,
data: RepegAmmCurve,
accounts: RepegAmmCurveInstructionAccounts,
},
RequestRemoveInsuranceFundStake {
program_id: solana_pubkey::Pubkey,
data: RequestRemoveInsuranceFundStake,
accounts: RequestRemoveInsuranceFundStakeInstructionAccounts,
},
ResetFuelSeason {
program_id: solana_pubkey::Pubkey,
data: ResetFuelSeason,
accounts: ResetFuelSeasonInstructionAccounts,
},
ResetPerpMarketAmmOracleTwap {
program_id: solana_pubkey::Pubkey,
data: ResetPerpMarketAmmOracleTwap,
accounts: ResetPerpMarketAmmOracleTwapInstructionAccounts,
},
ResizeRevenueShareEscrowOrders {
program_id: solana_pubkey::Pubkey,
data: ResizeRevenueShareEscrowOrders,
accounts: ResizeRevenueShareEscrowOrdersInstructionAccounts,
},
ResizeSignedMsgUserOrders {
program_id: solana_pubkey::Pubkey,
data: ResizeSignedMsgUserOrders,
accounts: ResizeSignedMsgUserOrdersInstructionAccounts,
},
ResolvePerpBankruptcy {
program_id: solana_pubkey::Pubkey,
data: ResolvePerpBankruptcy,
accounts: ResolvePerpBankruptcyInstructionAccounts,
},
ResolvePerpPnlDeficit {
program_id: solana_pubkey::Pubkey,
data: ResolvePerpPnlDeficit,
accounts: ResolvePerpPnlDeficitInstructionAccounts,
},
ResolveSpotBankruptcy {
program_id: solana_pubkey::Pubkey,
data: ResolveSpotBankruptcy,
accounts: ResolveSpotBankruptcyInstructionAccounts,
},
RevertFill {
program_id: solana_pubkey::Pubkey,
data: RevertFill,
accounts: RevertFillInstructionAccounts,
},
SettleExpiredMarket {
program_id: solana_pubkey::Pubkey,
data: SettleExpiredMarket,
accounts: SettleExpiredMarketInstructionAccounts,
},
SettleExpiredMarketPoolsToRevenuePool {
program_id: solana_pubkey::Pubkey,
data: SettleExpiredMarketPoolsToRevenuePool,
accounts: SettleExpiredMarketPoolsToRevenuePoolInstructionAccounts,
},
SettleFundingPayment {
program_id: solana_pubkey::Pubkey,
data: SettleFundingPayment,
accounts: SettleFundingPaymentInstructionAccounts,
},
SettleMultiplePnls {
program_id: solana_pubkey::Pubkey,
data: SettleMultiplePnls,
accounts: SettleMultiplePnlsInstructionAccounts,
},
SettlePerpToLpPool {
program_id: solana_pubkey::Pubkey,
data: SettlePerpToLpPool,
accounts: SettlePerpToLpPoolInstructionAccounts,
},
SettlePnl {
program_id: solana_pubkey::Pubkey,
data: SettlePnl,
accounts: SettlePnlInstructionAccounts,
},
SettleRevenueToInsuranceFund {
program_id: solana_pubkey::Pubkey,
data: SettleRevenueToInsuranceFund,
accounts: SettleRevenueToInsuranceFundInstructionAccounts,
},
SetUserStatusToBeingLiquidated {
program_id: solana_pubkey::Pubkey,
data: SetUserStatusToBeingLiquidated,
accounts: SetUserStatusToBeingLiquidatedInstructionAccounts,
},
SweepFuel {
program_id: solana_pubkey::Pubkey,
data: SweepFuel,
accounts: SweepFuelInstructionAccounts,
},
TransferDeposit {
program_id: solana_pubkey::Pubkey,
data: TransferDeposit,
accounts: TransferDepositInstructionAccounts,
},
TransferIsolatedPerpPositionDeposit {
program_id: solana_pubkey::Pubkey,
data: TransferIsolatedPerpPositionDeposit,
accounts: TransferIsolatedPerpPositionDepositInstructionAccounts,
},
TransferPerpPosition {
program_id: solana_pubkey::Pubkey,
data: TransferPerpPosition,
accounts: TransferPerpPositionInstructionAccounts,
},
TransferPools {
program_id: solana_pubkey::Pubkey,
data: TransferPools,
accounts: TransferPoolsInstructionAccounts,
},
TransferProtocolIfSharesToRevenuePool {
program_id: solana_pubkey::Pubkey,
data: TransferProtocolIfSharesToRevenuePool,
accounts: TransferProtocolIfSharesToRevenuePoolInstructionAccounts,
},
TriggerOrder {
program_id: solana_pubkey::Pubkey,
data: TriggerOrder,
accounts: TriggerOrderInstructionAccounts,
},
UpdateAdmin {
program_id: solana_pubkey::Pubkey,
data: UpdateAdmin,
accounts: UpdateAdminInstructionAccounts,
},
UpdateAmmCache {
program_id: solana_pubkey::Pubkey,
data: UpdateAmmCache,
accounts: UpdateAmmCacheInstructionAccounts,
},
UpdateAmmConstituentMappingData {
program_id: solana_pubkey::Pubkey,
data: UpdateAmmConstituentMappingData,
accounts: UpdateAmmConstituentMappingDataInstructionAccounts,
},
UpdateAmmJitIntensity {
program_id: solana_pubkey::Pubkey,
data: UpdateAmmJitIntensity,
accounts: UpdateAmmJitIntensityInstructionAccounts,
},
UpdateAmms {
program_id: solana_pubkey::Pubkey,
data: UpdateAmms,
accounts: UpdateAmmsInstructionAccounts,
},
UpdateConstituentCorrelationData {
program_id: solana_pubkey::Pubkey,
data: UpdateConstituentCorrelationData,
accounts: UpdateConstituentCorrelationDataInstructionAccounts,
},
UpdateConstituentOracleInfo {
program_id: solana_pubkey::Pubkey,
data: UpdateConstituentOracleInfo,
accounts: UpdateConstituentOracleInfoInstructionAccounts,
},
UpdateConstituentParams {
program_id: solana_pubkey::Pubkey,
data: UpdateConstituentParams,
accounts: UpdateConstituentParamsInstructionAccounts,
},
UpdateConstituentPausedOperations {
program_id: solana_pubkey::Pubkey,
data: UpdateConstituentPausedOperations,
accounts: UpdateConstituentPausedOperationsInstructionAccounts,
},
UpdateConstituentStatus {
program_id: solana_pubkey::Pubkey,
data: UpdateConstituentStatus,
accounts: UpdateConstituentStatusInstructionAccounts,
},
UpdateDelegateUserGovTokenInsuranceStake {
program_id: solana_pubkey::Pubkey,
data: UpdateDelegateUserGovTokenInsuranceStake,
accounts: UpdateDelegateUserGovTokenInsuranceStakeInstructionAccounts,
},
UpdateDiscountMint {
program_id: solana_pubkey::Pubkey,
data: UpdateDiscountMint,
accounts: UpdateDiscountMintInstructionAccounts,
},
UpdateExchangeStatus {
program_id: solana_pubkey::Pubkey,
data: UpdateExchangeStatus,
accounts: UpdateExchangeStatusInstructionAccounts,
},
UpdateFeatureBitFlagsBuilderCodes {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsBuilderCodes,
accounts: UpdateFeatureBitFlagsBuilderCodesInstructionAccounts,
},
UpdateFeatureBitFlagsMedianTriggerPrice {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsMedianTriggerPrice,
accounts: UpdateFeatureBitFlagsMedianTriggerPriceInstructionAccounts,
},
UpdateFeatureBitFlagsMintRedeemLpPool {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsMintRedeemLpPool,
accounts: UpdateFeatureBitFlagsMintRedeemLpPoolInstructionAccounts,
},
UpdateFeatureBitFlagsMmOracle {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsMmOracle,
accounts: UpdateFeatureBitFlagsMmOracleInstructionAccounts,
},
UpdateFeatureBitFlagsSettleLpPool {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsSettleLpPool,
accounts: UpdateFeatureBitFlagsSettleLpPoolInstructionAccounts,
},
UpdateFeatureBitFlagsSwapLpPool {
program_id: solana_pubkey::Pubkey,
data: UpdateFeatureBitFlagsSwapLpPool,
accounts: UpdateFeatureBitFlagsSwapLpPoolInstructionAccounts,
},
UpdateFundingRate {
program_id: solana_pubkey::Pubkey,
data: UpdateFundingRate,
accounts: UpdateFundingRateInstructionAccounts,
},
UpdateHighLeverageModeConfig {
program_id: solana_pubkey::Pubkey,
data: UpdateHighLeverageModeConfig,
accounts: UpdateHighLeverageModeConfigInstructionAccounts,
},
UpdateIfRebalanceConfig {
program_id: solana_pubkey::Pubkey,
data: UpdateIfRebalanceConfig,
accounts: UpdateIfRebalanceConfigInstructionAccounts,
},
UpdateInitialAmmCacheInfo {
program_id: solana_pubkey::Pubkey,
data: UpdateInitialAmmCacheInfo,
accounts: UpdateInitialAmmCacheInfoInstructionAccounts,
},
UpdateInitialPctToLiquidate {
program_id: solana_pubkey::Pubkey,
data: UpdateInitialPctToLiquidate,
accounts: UpdateInitialPctToLiquidateInstructionAccounts,
},
UpdateInsuranceFundUnstakingPeriod {
program_id: solana_pubkey::Pubkey,
data: UpdateInsuranceFundUnstakingPeriod,
accounts: UpdateInsuranceFundUnstakingPeriodInstructionAccounts,
},
UpdateK {
program_id: solana_pubkey::Pubkey,
data: UpdateK,
accounts: UpdateKInstructionAccounts,
},
UpdateLiquidationDuration {
program_id: solana_pubkey::Pubkey,
data: UpdateLiquidationDuration,
accounts: UpdateLiquidationDurationInstructionAccounts,
},
UpdateLiquidationMarginBufferRatio {
program_id: solana_pubkey::Pubkey,
data: UpdateLiquidationMarginBufferRatio,
accounts: UpdateLiquidationMarginBufferRatioInstructionAccounts,
},
UpdateLpConstituentTargetBase {
program_id: solana_pubkey::Pubkey,
data: UpdateLpConstituentTargetBase,
accounts: UpdateLpConstituentTargetBaseInstructionAccounts,
},
UpdateLpPoolAum {
program_id: solana_pubkey::Pubkey,
data: UpdateLpPoolAum,
accounts: UpdateLpPoolAumInstructionAccounts,
},
UpdateLpPoolParams {
program_id: solana_pubkey::Pubkey,
data: UpdateLpPoolParams,
accounts: UpdateLpPoolParamsInstructionAccounts,
},
UpdateOracleGuardRails {
program_id: solana_pubkey::Pubkey,
data: UpdateOracleGuardRails,
accounts: UpdateOracleGuardRailsInstructionAccounts,
},
UpdatePerpAuctionDuration {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpAuctionDuration,
accounts: UpdatePerpAuctionDurationInstructionAccounts,
},
UpdatePerpBidAskTwap {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpBidAskTwap,
accounts: UpdatePerpBidAskTwapInstructionAccounts,
},
UpdatePerpFeeStructure {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpFeeStructure,
accounts: UpdatePerpFeeStructureInstructionAccounts,
},
UpdatePerpMarketAmmOracleTwap {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketAmmOracleTwap,
accounts: UpdatePerpMarketAmmOracleTwapInstructionAccounts,
},
UpdatePerpMarketAmmSpreadAdjustment {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketAmmSpreadAdjustment,
accounts: UpdatePerpMarketAmmSpreadAdjustmentInstructionAccounts,
},
UpdatePerpMarketAmmSummaryStats {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketAmmSummaryStats,
accounts: UpdatePerpMarketAmmSummaryStatsInstructionAccounts,
},
UpdatePerpMarketBaseSpread {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketBaseSpread,
accounts: UpdatePerpMarketBaseSpreadInstructionAccounts,
},
UpdatePerpMarketConcentrationCoef {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketConcentrationCoef,
accounts: UpdatePerpMarketConcentrationCoefInstructionAccounts,
},
UpdatePerpMarketConfig {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketConfig,
accounts: UpdatePerpMarketConfigInstructionAccounts,
},
UpdatePerpMarketContractTier {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketContractTier,
accounts: UpdatePerpMarketContractTierInstructionAccounts,
},
UpdatePerpMarketCurveUpdateIntensity {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketCurveUpdateIntensity,
accounts: UpdatePerpMarketCurveUpdateIntensityInstructionAccounts,
},
UpdatePerpMarketExpiry {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketExpiry,
accounts: UpdatePerpMarketExpiryInstructionAccounts,
},
UpdatePerpMarketFeeAdjustment {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketFeeAdjustment,
accounts: UpdatePerpMarketFeeAdjustmentInstructionAccounts,
},
UpdatePerpMarketFundingPeriod {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketFundingPeriod,
accounts: UpdatePerpMarketFundingPeriodInstructionAccounts,
},
UpdatePerpMarketHighLeverageMarginRatio {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketHighLeverageMarginRatio,
accounts: UpdatePerpMarketHighLeverageMarginRatioInstructionAccounts,
},
UpdatePerpMarketImfFactor {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketImfFactor,
accounts: UpdatePerpMarketImfFactorInstructionAccounts,
},
UpdatePerpMarketLiquidationFee {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketLiquidationFee,
accounts: UpdatePerpMarketLiquidationFeeInstructionAccounts,
},
UpdatePerpMarketLpPoolFeeTransferScalar {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketLpPoolFeeTransferScalar,
accounts: UpdatePerpMarketLpPoolFeeTransferScalarInstructionAccounts,
},
UpdatePerpMarketLpPoolId {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketLpPoolId,
accounts: UpdatePerpMarketLpPoolIdInstructionAccounts,
},
UpdatePerpMarketLpPoolPausedOperations {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketLpPoolPausedOperations,
accounts: UpdatePerpMarketLpPoolPausedOperationsInstructionAccounts,
},
UpdatePerpMarketLpPoolStatus {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketLpPoolStatus,
accounts: UpdatePerpMarketLpPoolStatusInstructionAccounts,
},
UpdatePerpMarketMarginRatio {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMarginRatio,
accounts: UpdatePerpMarketMarginRatioInstructionAccounts,
},
UpdatePerpMarketMaxFillReserveFraction {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMaxFillReserveFraction,
accounts: UpdatePerpMarketMaxFillReserveFractionInstructionAccounts,
},
UpdatePerpMarketMaxImbalances {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMaxImbalances,
accounts: UpdatePerpMarketMaxImbalancesInstructionAccounts,
},
UpdatePerpMarketMaxOpenInterest {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMaxOpenInterest,
accounts: UpdatePerpMarketMaxOpenInterestInstructionAccounts,
},
UpdatePerpMarketMaxSlippageRatio {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMaxSlippageRatio,
accounts: UpdatePerpMarketMaxSlippageRatioInstructionAccounts,
},
UpdatePerpMarketMaxSpread {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMaxSpread,
accounts: UpdatePerpMarketMaxSpreadInstructionAccounts,
},
UpdatePerpMarketMinOrderSize {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketMinOrderSize,
accounts: UpdatePerpMarketMinOrderSizeInstructionAccounts,
},
UpdatePerpMarketName {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketName,
accounts: UpdatePerpMarketNameInstructionAccounts,
},
UpdatePerpMarketNumberOfUsers {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketNumberOfUsers,
accounts: UpdatePerpMarketNumberOfUsersInstructionAccounts,
},
UpdatePerpMarketOracle {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketOracle,
accounts: UpdatePerpMarketOracleInstructionAccounts,
},
UpdatePerpMarketOracleLowRiskSlotDelayOverride {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketOracleLowRiskSlotDelayOverride,
accounts: UpdatePerpMarketOracleLowRiskSlotDelayOverrideInstructionAccounts,
},
UpdatePerpMarketOracleSlotDelayOverride {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketOracleSlotDelayOverride,
accounts: UpdatePerpMarketOracleSlotDelayOverrideInstructionAccounts,
},
UpdatePerpMarketPausedOperations {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketPausedOperations,
accounts: UpdatePerpMarketPausedOperationsInstructionAccounts,
},
UpdatePerpMarketPnlPool {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketPnlPool,
accounts: UpdatePerpMarketPnlPoolInstructionAccounts,
},
UpdatePerpMarketProtectedMakerParams {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketProtectedMakerParams,
accounts: UpdatePerpMarketProtectedMakerParamsInstructionAccounts,
},
UpdatePerpMarketReferencePriceOffsetDeadbandPct {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketReferencePriceOffsetDeadbandPct,
accounts: UpdatePerpMarketReferencePriceOffsetDeadbandPctInstructionAccounts,
},
UpdatePerpMarketStatus {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketStatus,
accounts: UpdatePerpMarketStatusInstructionAccounts,
},
UpdatePerpMarketStepSizeAndTickSize {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketStepSizeAndTickSize,
accounts: UpdatePerpMarketStepSizeAndTickSizeInstructionAccounts,
},
UpdatePerpMarketUnrealizedAssetWeight {
program_id: solana_pubkey::Pubkey,
data: UpdatePerpMarketUnrealizedAssetWeight,
accounts: UpdatePerpMarketUnrealizedAssetWeightInstructionAccounts,
},
UpdatePrelaunchOracle {
program_id: solana_pubkey::Pubkey,
data: UpdatePrelaunchOracle,
accounts: UpdatePrelaunchOracleInstructionAccounts,
},
UpdatePrelaunchOracleParams {
program_id: solana_pubkey::Pubkey,
data: UpdatePrelaunchOracleParams,
accounts: UpdatePrelaunchOracleParamsInstructionAccounts,
},
UpdateProtectedMakerModeConfig {
program_id: solana_pubkey::Pubkey,
data: UpdateProtectedMakerModeConfig,
accounts: UpdateProtectedMakerModeConfigInstructionAccounts,
},
UpdatePythPullOracle {
program_id: solana_pubkey::Pubkey,
data: UpdatePythPullOracle,
accounts: UpdatePythPullOracleInstructionAccounts,
},
UpdateSerumFulfillmentConfigStatus {
program_id: solana_pubkey::Pubkey,
data: UpdateSerumFulfillmentConfigStatus,
accounts: UpdateSerumFulfillmentConfigStatusInstructionAccounts,
},
UpdateSpotAuctionDuration {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotAuctionDuration,
accounts: UpdateSpotAuctionDurationInstructionAccounts,
},
UpdateSpotFeeStructure {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotFeeStructure,
accounts: UpdateSpotFeeStructureInstructionAccounts,
},
UpdateSpotMarketAssetTier {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketAssetTier,
accounts: UpdateSpotMarketAssetTierInstructionAccounts,
},
UpdateSpotMarketBorrowRate {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketBorrowRate,
accounts: UpdateSpotMarketBorrowRateInstructionAccounts,
},
UpdateSpotMarketCumulativeInterest {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketCumulativeInterest,
accounts: UpdateSpotMarketCumulativeInterestInstructionAccounts,
},
UpdateSpotMarketExpiry {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketExpiry,
accounts: UpdateSpotMarketExpiryInstructionAccounts,
},
UpdateSpotMarketFeeAdjustment {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketFeeAdjustment,
accounts: UpdateSpotMarketFeeAdjustmentInstructionAccounts,
},
UpdateSpotMarketIfFactor {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketIfFactor,
accounts: UpdateSpotMarketIfFactorInstructionAccounts,
},
UpdateSpotMarketIfPausedOperations {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketIfPausedOperations,
accounts: UpdateSpotMarketIfPausedOperationsInstructionAccounts,
},
UpdateSpotMarketLiquidationFee {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketLiquidationFee,
accounts: UpdateSpotMarketLiquidationFeeInstructionAccounts,
},
UpdateSpotMarketMarginWeights {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketMarginWeights,
accounts: UpdateSpotMarketMarginWeightsInstructionAccounts,
},
UpdateSpotMarketMaxTokenBorrows {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketMaxTokenBorrows,
accounts: UpdateSpotMarketMaxTokenBorrowsInstructionAccounts,
},
UpdateSpotMarketMaxTokenDeposits {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketMaxTokenDeposits,
accounts: UpdateSpotMarketMaxTokenDepositsInstructionAccounts,
},
UpdateSpotMarketMinOrderSize {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketMinOrderSize,
accounts: UpdateSpotMarketMinOrderSizeInstructionAccounts,
},
UpdateSpotMarketName {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketName,
accounts: UpdateSpotMarketNameInstructionAccounts,
},
UpdateSpotMarketOracle {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketOracle,
accounts: UpdateSpotMarketOracleInstructionAccounts,
},
UpdateSpotMarketOrdersEnabled {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketOrdersEnabled,
accounts: UpdateSpotMarketOrdersEnabledInstructionAccounts,
},
UpdateSpotMarketPausedOperations {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketPausedOperations,
accounts: UpdateSpotMarketPausedOperationsInstructionAccounts,
},
UpdateSpotMarketPoolId {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketPoolId,
accounts: UpdateSpotMarketPoolIdInstructionAccounts,
},
UpdateSpotMarketRevenueSettlePeriod {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketRevenueSettlePeriod,
accounts: UpdateSpotMarketRevenueSettlePeriodInstructionAccounts,
},
UpdateSpotMarketScaleInitialAssetWeightStart {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketScaleInitialAssetWeightStart,
accounts: UpdateSpotMarketScaleInitialAssetWeightStartInstructionAccounts,
},
UpdateSpotMarketStatus {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketStatus,
accounts: UpdateSpotMarketStatusInstructionAccounts,
},
UpdateSpotMarketStepSizeAndTickSize {
program_id: solana_pubkey::Pubkey,
data: UpdateSpotMarketStepSizeAndTickSize,
accounts: UpdateSpotMarketStepSizeAndTickSizeInstructionAccounts,
},
UpdateStateMaxInitializeUserFee {
program_id: solana_pubkey::Pubkey,
data: UpdateStateMaxInitializeUserFee,
accounts: UpdateStateMaxInitializeUserFeeInstructionAccounts,
},
UpdateStateMaxNumberOfSubAccounts {
program_id: solana_pubkey::Pubkey,
data: UpdateStateMaxNumberOfSubAccounts,
accounts: UpdateStateMaxNumberOfSubAccountsInstructionAccounts,
},
UpdateStateSettlementDuration {
program_id: solana_pubkey::Pubkey,
data: UpdateStateSettlementDuration,
accounts: UpdateStateSettlementDurationInstructionAccounts,
},
UpdateUserCustomMarginRatio {
program_id: solana_pubkey::Pubkey,
data: UpdateUserCustomMarginRatio,
accounts: UpdateUserCustomMarginRatioInstructionAccounts,
},
UpdateUserDelegate {
program_id: solana_pubkey::Pubkey,
data: UpdateUserDelegate,
accounts: UpdateUserDelegateInstructionAccounts,
},
UpdateUserGovTokenInsuranceStake {
program_id: solana_pubkey::Pubkey,
data: UpdateUserGovTokenInsuranceStake,
accounts: UpdateUserGovTokenInsuranceStakeInstructionAccounts,
},
UpdateUserIdle {
program_id: solana_pubkey::Pubkey,
data: UpdateUserIdle,
accounts: UpdateUserIdleInstructionAccounts,
},
UpdateUserMarginTradingEnabled {
program_id: solana_pubkey::Pubkey,
data: UpdateUserMarginTradingEnabled,
accounts: UpdateUserMarginTradingEnabledInstructionAccounts,
},
UpdateUserName {
program_id: solana_pubkey::Pubkey,
data: UpdateUserName,
accounts: UpdateUserNameInstructionAccounts,
},
UpdateUserPerpPositionCustomMarginRatio {
program_id: solana_pubkey::Pubkey,
data: UpdateUserPerpPositionCustomMarginRatio,
accounts: UpdateUserPerpPositionCustomMarginRatioInstructionAccounts,
},
UpdateUserPoolId {
program_id: solana_pubkey::Pubkey,
data: UpdateUserPoolId,
accounts: UpdateUserPoolIdInstructionAccounts,
},
UpdateUserProtectedMakerOrders {
program_id: solana_pubkey::Pubkey,
data: UpdateUserProtectedMakerOrders,
accounts: UpdateUserProtectedMakerOrdersInstructionAccounts,
},
UpdateUserQuoteAssetInsuranceStake {
program_id: solana_pubkey::Pubkey,
data: UpdateUserQuoteAssetInsuranceStake,
accounts: UpdateUserQuoteAssetInsuranceStakeInstructionAccounts,
},
UpdateUserReduceOnly {
program_id: solana_pubkey::Pubkey,
data: UpdateUserReduceOnly,
accounts: UpdateUserReduceOnlyInstructionAccounts,
},
UpdateUserStatsReferrerStatus {
program_id: solana_pubkey::Pubkey,
data: UpdateUserStatsReferrerStatus,
accounts: UpdateUserStatsReferrerStatusInstructionAccounts,
},
UpdateWithdrawGuardThreshold {
program_id: solana_pubkey::Pubkey,
data: UpdateWithdrawGuardThreshold,
accounts: UpdateWithdrawGuardThresholdInstructionAccounts,
},
ViewLpPoolAddLiquidityFees {
program_id: solana_pubkey::Pubkey,
data: ViewLpPoolAddLiquidityFees,
accounts: ViewLpPoolAddLiquidityFeesInstructionAccounts,
},
ViewLpPoolRemoveLiquidityFees {
program_id: solana_pubkey::Pubkey,
data: ViewLpPoolRemoveLiquidityFees,
accounts: ViewLpPoolRemoveLiquidityFeesInstructionAccounts,
},
ViewLpPoolSwapFees {
program_id: solana_pubkey::Pubkey,
data: ViewLpPoolSwapFees,
accounts: ViewLpPoolSwapFeesInstructionAccounts,
},
Withdraw {
program_id: solana_pubkey::Pubkey,
data: Withdraw,
accounts: WithdrawInstructionAccounts,
},
WithdrawFromIsolatedPerpPosition {
program_id: solana_pubkey::Pubkey,
data: WithdrawFromIsolatedPerpPosition,
accounts: WithdrawFromIsolatedPerpPositionInstructionAccounts,
},
WithdrawFromProgramVault {
program_id: solana_pubkey::Pubkey,
data: WithdrawFromProgramVault,
accounts: WithdrawFromProgramVaultInstructionAccounts,
},
ZeroMmOracleFields {
program_id: solana_pubkey::Pubkey,
data: ZeroMmOracleFields,
accounts: ZeroMmOracleFieldsInstructionAccounts,
},
CpiEvent {
program_id: solana_pubkey::Pubkey,
data: CpiEvent,
accounts: CpiEventInstructionAccounts,
},
}
impl carbon_core::instruction::InstructionDecoder<'_> for DriftV2Decoder {
type InstructionType = DriftV2Instruction;
fn decode_instruction(
&self,
instruction: &solana_instruction::Instruction,
) -> Option<Self::InstructionType> {
if instruction.program_id != PROGRAM_ID {
return None;
}
carbon_core::try_decode_instructions!(
instruction,
PROGRAM_ID,
DriftV2Instruction::AddAmmConstituentMappingData => AddAmmConstituentMappingData,
DriftV2Instruction::AddInsuranceFundStake => AddInsuranceFundStake,
DriftV2Instruction::AddMarketToAmmCache => AddMarketToAmmCache,
DriftV2Instruction::AdminDeposit => AdminDeposit,
DriftV2Instruction::AdminUpdateUserStatsPausedOperations => AdminUpdateUserStatsPausedOperations,
DriftV2Instruction::AdminWithdrawFromInsuranceFundVault => AdminWithdrawFromInsuranceFundVault,
DriftV2Instruction::BeginInsuranceFundSwap => BeginInsuranceFundSwap,
DriftV2Instruction::BeginLpSwap => BeginLpSwap,
DriftV2Instruction::BeginSwap => BeginSwap,
DriftV2Instruction::CancelOrder => CancelOrder,
DriftV2Instruction::CancelOrderByUserId => CancelOrderByUserId,
DriftV2Instruction::CancelOrders => CancelOrders,
DriftV2Instruction::CancelOrdersByIds => CancelOrdersByIds,
DriftV2Instruction::CancelRequestRemoveInsuranceFundStake => CancelRequestRemoveInsuranceFundStake,
DriftV2Instruction::ChangeApprovedBuilder => ChangeApprovedBuilder,
DriftV2Instruction::ChangeSignedMsgWsDelegateStatus => ChangeSignedMsgWsDelegateStatus,
DriftV2Instruction::DeleteAmmCache => DeleteAmmCache,
DriftV2Instruction::DeleteInitializedPerpMarket => DeleteInitializedPerpMarket,
DriftV2Instruction::DeleteInitializedSpotMarket => DeleteInitializedSpotMarket,
DriftV2Instruction::DeleteOpenbookV2FulfillmentConfig => DeleteOpenbookV2FulfillmentConfig,
DriftV2Instruction::DeletePrelaunchOracle => DeletePrelaunchOracle,
DriftV2Instruction::DeleteSerumFulfillmentConfig => DeleteSerumFulfillmentConfig,
DriftV2Instruction::DeleteSignedMsgUserOrders => DeleteSignedMsgUserOrders,
DriftV2Instruction::DeleteUser => DeleteUser,
DriftV2Instruction::Deposit => Deposit,
DriftV2Instruction::DepositIntoInsuranceFundStake => DepositIntoInsuranceFundStake,
DriftV2Instruction::DepositIntoIsolatedPerpPosition => DepositIntoIsolatedPerpPosition,
DriftV2Instruction::DepositIntoPerpMarketFeePool => DepositIntoPerpMarketFeePool,
DriftV2Instruction::DepositIntoSpotMarketRevenuePool => DepositIntoSpotMarketRevenuePool,
DriftV2Instruction::DepositIntoSpotMarketVault => DepositIntoSpotMarketVault,
DriftV2Instruction::DepositToProgramVault => DepositToProgramVault,
DriftV2Instruction::DisableUserHighLeverageMode => DisableUserHighLeverageMode,
DriftV2Instruction::EnableUserHighLeverageMode => EnableUserHighLeverageMode,
DriftV2Instruction::EndInsuranceFundSwap => EndInsuranceFundSwap,
DriftV2Instruction::EndLpSwap => EndLpSwap,
DriftV2Instruction::EndSwap => EndSwap,
DriftV2Instruction::FillPerpOrder => FillPerpOrder,
DriftV2Instruction::FillSpotOrder => FillSpotOrder,
DriftV2Instruction::ForceCancelOrders => ForceCancelOrders,
DriftV2Instruction::ForceDeleteUser => ForceDeleteUser,
DriftV2Instruction::Initialize => Initialize,
DriftV2Instruction::InitializeAmmCache => InitializeAmmCache,
DriftV2Instruction::InitializeConstituent => InitializeConstituent,
DriftV2Instruction::InitializeFuelOverflow => InitializeFuelOverflow,
DriftV2Instruction::InitializeHighLeverageModeConfig => InitializeHighLeverageModeConfig,
DriftV2Instruction::InitializeIfRebalanceConfig => InitializeIfRebalanceConfig,
DriftV2Instruction::InitializeInsuranceFundStake => InitializeInsuranceFundStake,
DriftV2Instruction::InitializeLpPool => InitializeLpPool,
DriftV2Instruction::InitializeOpenbookV2FulfillmentConfig => InitializeOpenbookV2FulfillmentConfig,
DriftV2Instruction::InitializePerpMarket => InitializePerpMarket,
DriftV2Instruction::InitializePhoenixFulfillmentConfig => InitializePhoenixFulfillmentConfig,
DriftV2Instruction::InitializePredictionMarket => InitializePredictionMarket,
DriftV2Instruction::InitializePrelaunchOracle => InitializePrelaunchOracle,
DriftV2Instruction::InitializeProtectedMakerModeConfig => InitializeProtectedMakerModeConfig,
DriftV2Instruction::InitializePythLazerOracle => InitializePythLazerOracle,
DriftV2Instruction::InitializePythPullOracle => InitializePythPullOracle,
DriftV2Instruction::InitializeReferrerName => InitializeReferrerName,
DriftV2Instruction::InitializeRevenueShare => InitializeRevenueShare,
DriftV2Instruction::InitializeRevenueShareEscrow => InitializeRevenueShareEscrow,
DriftV2Instruction::InitializeSerumFulfillmentConfig => InitializeSerumFulfillmentConfig,
DriftV2Instruction::InitializeSignedMsgUserOrders => InitializeSignedMsgUserOrders,
DriftV2Instruction::InitializeSignedMsgWsDelegates => InitializeSignedMsgWsDelegates,
DriftV2Instruction::InitializeSpotMarket => InitializeSpotMarket,
DriftV2Instruction::InitializeUser => InitializeUser,
DriftV2Instruction::InitializeUserStats => InitializeUserStats,
DriftV2Instruction::LiquidateBorrowForPerpPnl => LiquidateBorrowForPerpPnl,
DriftV2Instruction::LiquidatePerp => LiquidatePerp,
DriftV2Instruction::LiquidatePerpPnlForDeposit => LiquidatePerpPnlForDeposit,
DriftV2Instruction::LiquidatePerpWithFill => LiquidatePerpWithFill,
DriftV2Instruction::LiquidateSpot => LiquidateSpot,
DriftV2Instruction::LiquidateSpotWithSwapBegin => LiquidateSpotWithSwapBegin,
DriftV2Instruction::LiquidateSpotWithSwapEnd => LiquidateSpotWithSwapEnd,
DriftV2Instruction::LogUserBalances => LogUserBalances,
DriftV2Instruction::LpPoolAddLiquidity => LpPoolAddLiquidity,
DriftV2Instruction::LpPoolRemoveLiquidity => LpPoolRemoveLiquidity,
DriftV2Instruction::LpPoolSwap => LpPoolSwap,
DriftV2Instruction::ModifyOrder => ModifyOrder,
DriftV2Instruction::ModifyOrderByUserId => ModifyOrderByUserId,
DriftV2Instruction::MoveAmmPrice => MoveAmmPrice,
DriftV2Instruction::OpenbookV2FulfillmentConfigStatus => OpenbookV2FulfillmentConfigStatus,
DriftV2Instruction::OverrideAmmCacheInfo => OverrideAmmCacheInfo,
DriftV2Instruction::PauseSpotMarketDepositWithdraw => PauseSpotMarketDepositWithdraw,
DriftV2Instruction::PhoenixFulfillmentConfigStatus => PhoenixFulfillmentConfigStatus,
DriftV2Instruction::PlaceAndMakePerpOrder => PlaceAndMakePerpOrder,
DriftV2Instruction::PlaceAndMakeSignedMsgPerpOrder => PlaceAndMakeSignedMsgPerpOrder,
DriftV2Instruction::PlaceAndMakeSpotOrder => PlaceAndMakeSpotOrder,
DriftV2Instruction::PlaceAndTakePerpOrder => PlaceAndTakePerpOrder,
DriftV2Instruction::PlaceAndTakeSpotOrder => PlaceAndTakeSpotOrder,
DriftV2Instruction::PlaceOrders => PlaceOrders,
DriftV2Instruction::PlacePerpOrder => PlacePerpOrder,
DriftV2Instruction::PlaceScaleOrders => PlaceScaleOrders,
DriftV2Instruction::PlaceSignedMsgTakerOrder => PlaceSignedMsgTakerOrder,
DriftV2Instruction::PlaceSpotOrder => PlaceSpotOrder,
DriftV2Instruction::PostMultiPythPullOracleUpdatesAtomic => PostMultiPythPullOracleUpdatesAtomic,
DriftV2Instruction::PostPythLazerOracleUpdate => PostPythLazerOracleUpdate,
DriftV2Instruction::PostPythPullOracleUpdateAtomic => PostPythPullOracleUpdateAtomic,
DriftV2Instruction::RecenterPerpMarketAmm => RecenterPerpMarketAmm,
DriftV2Instruction::RecenterPerpMarketAmmCrank => RecenterPerpMarketAmmCrank,
DriftV2Instruction::ReclaimRent => ReclaimRent,
DriftV2Instruction::RemoveAmmConstituentMappingData => RemoveAmmConstituentMappingData,
DriftV2Instruction::RemoveInsuranceFundStake => RemoveInsuranceFundStake,
DriftV2Instruction::RepegAmmCurve => RepegAmmCurve,
DriftV2Instruction::RequestRemoveInsuranceFundStake => RequestRemoveInsuranceFundStake,
DriftV2Instruction::ResetFuelSeason => ResetFuelSeason,
DriftV2Instruction::ResetPerpMarketAmmOracleTwap => ResetPerpMarketAmmOracleTwap,
DriftV2Instruction::ResizeRevenueShareEscrowOrders => ResizeRevenueShareEscrowOrders,
DriftV2Instruction::ResizeSignedMsgUserOrders => ResizeSignedMsgUserOrders,
DriftV2Instruction::ResolvePerpBankruptcy => ResolvePerpBankruptcy,
DriftV2Instruction::ResolvePerpPnlDeficit => ResolvePerpPnlDeficit,
DriftV2Instruction::ResolveSpotBankruptcy => ResolveSpotBankruptcy,
DriftV2Instruction::RevertFill => RevertFill,
DriftV2Instruction::SettleExpiredMarket => SettleExpiredMarket,
DriftV2Instruction::SettleExpiredMarketPoolsToRevenuePool => SettleExpiredMarketPoolsToRevenuePool,
DriftV2Instruction::SettleFundingPayment => SettleFundingPayment,
DriftV2Instruction::SettleMultiplePnls => SettleMultiplePnls,
DriftV2Instruction::SettlePerpToLpPool => SettlePerpToLpPool,
DriftV2Instruction::SettlePnl => SettlePnl,
DriftV2Instruction::SettleRevenueToInsuranceFund => SettleRevenueToInsuranceFund,
DriftV2Instruction::SetUserStatusToBeingLiquidated => SetUserStatusToBeingLiquidated,
DriftV2Instruction::SweepFuel => SweepFuel,
DriftV2Instruction::TransferDeposit => TransferDeposit,
DriftV2Instruction::TransferIsolatedPerpPositionDeposit => TransferIsolatedPerpPositionDeposit,
DriftV2Instruction::TransferPerpPosition => TransferPerpPosition,
DriftV2Instruction::TransferPools => TransferPools,
DriftV2Instruction::TransferProtocolIfSharesToRevenuePool => TransferProtocolIfSharesToRevenuePool,
DriftV2Instruction::TriggerOrder => TriggerOrder,
DriftV2Instruction::UpdateAdmin => UpdateAdmin,
DriftV2Instruction::UpdateAmmCache => UpdateAmmCache,
DriftV2Instruction::UpdateAmmConstituentMappingData => UpdateAmmConstituentMappingData,
DriftV2Instruction::UpdateAmmJitIntensity => UpdateAmmJitIntensity,
DriftV2Instruction::UpdateAmms => UpdateAmms,
DriftV2Instruction::UpdateConstituentCorrelationData => UpdateConstituentCorrelationData,
DriftV2Instruction::UpdateConstituentOracleInfo => UpdateConstituentOracleInfo,
DriftV2Instruction::UpdateConstituentParams => UpdateConstituentParams,
DriftV2Instruction::UpdateConstituentPausedOperations => UpdateConstituentPausedOperations,
DriftV2Instruction::UpdateConstituentStatus => UpdateConstituentStatus,
DriftV2Instruction::UpdateDelegateUserGovTokenInsuranceStake => UpdateDelegateUserGovTokenInsuranceStake,
DriftV2Instruction::UpdateDiscountMint => UpdateDiscountMint,
DriftV2Instruction::UpdateExchangeStatus => UpdateExchangeStatus,
DriftV2Instruction::UpdateFeatureBitFlagsBuilderCodes => UpdateFeatureBitFlagsBuilderCodes,
DriftV2Instruction::UpdateFeatureBitFlagsMedianTriggerPrice => UpdateFeatureBitFlagsMedianTriggerPrice,
DriftV2Instruction::UpdateFeatureBitFlagsMintRedeemLpPool => UpdateFeatureBitFlagsMintRedeemLpPool,
DriftV2Instruction::UpdateFeatureBitFlagsMmOracle => UpdateFeatureBitFlagsMmOracle,
DriftV2Instruction::UpdateFeatureBitFlagsSettleLpPool => UpdateFeatureBitFlagsSettleLpPool,
DriftV2Instruction::UpdateFeatureBitFlagsSwapLpPool => UpdateFeatureBitFlagsSwapLpPool,
DriftV2Instruction::UpdateFundingRate => UpdateFundingRate,
DriftV2Instruction::UpdateHighLeverageModeConfig => UpdateHighLeverageModeConfig,
DriftV2Instruction::UpdateIfRebalanceConfig => UpdateIfRebalanceConfig,
DriftV2Instruction::UpdateInitialAmmCacheInfo => UpdateInitialAmmCacheInfo,
DriftV2Instruction::UpdateInitialPctToLiquidate => UpdateInitialPctToLiquidate,
DriftV2Instruction::UpdateInsuranceFundUnstakingPeriod => UpdateInsuranceFundUnstakingPeriod,
DriftV2Instruction::UpdateK => UpdateK,
DriftV2Instruction::UpdateLiquidationDuration => UpdateLiquidationDuration,
DriftV2Instruction::UpdateLiquidationMarginBufferRatio => UpdateLiquidationMarginBufferRatio,
DriftV2Instruction::UpdateLpConstituentTargetBase => UpdateLpConstituentTargetBase,
DriftV2Instruction::UpdateLpPoolAum => UpdateLpPoolAum,
DriftV2Instruction::UpdateLpPoolParams => UpdateLpPoolParams,
DriftV2Instruction::UpdateOracleGuardRails => UpdateOracleGuardRails,
DriftV2Instruction::UpdatePerpAuctionDuration => UpdatePerpAuctionDuration,
DriftV2Instruction::UpdatePerpBidAskTwap => UpdatePerpBidAskTwap,
DriftV2Instruction::UpdatePerpFeeStructure => UpdatePerpFeeStructure,
DriftV2Instruction::UpdatePerpMarketAmmOracleTwap => UpdatePerpMarketAmmOracleTwap,
DriftV2Instruction::UpdatePerpMarketAmmSpreadAdjustment => UpdatePerpMarketAmmSpreadAdjustment,
DriftV2Instruction::UpdatePerpMarketAmmSummaryStats => UpdatePerpMarketAmmSummaryStats,
DriftV2Instruction::UpdatePerpMarketBaseSpread => UpdatePerpMarketBaseSpread,
DriftV2Instruction::UpdatePerpMarketConcentrationCoef => UpdatePerpMarketConcentrationCoef,
DriftV2Instruction::UpdatePerpMarketConfig => UpdatePerpMarketConfig,
DriftV2Instruction::UpdatePerpMarketContractTier => UpdatePerpMarketContractTier,
DriftV2Instruction::UpdatePerpMarketCurveUpdateIntensity => UpdatePerpMarketCurveUpdateIntensity,
DriftV2Instruction::UpdatePerpMarketExpiry => UpdatePerpMarketExpiry,
DriftV2Instruction::UpdatePerpMarketFeeAdjustment => UpdatePerpMarketFeeAdjustment,
DriftV2Instruction::UpdatePerpMarketFundingPeriod => UpdatePerpMarketFundingPeriod,
DriftV2Instruction::UpdatePerpMarketHighLeverageMarginRatio => UpdatePerpMarketHighLeverageMarginRatio,
DriftV2Instruction::UpdatePerpMarketImfFactor => UpdatePerpMarketImfFactor,
DriftV2Instruction::UpdatePerpMarketLiquidationFee => UpdatePerpMarketLiquidationFee,
DriftV2Instruction::UpdatePerpMarketLpPoolFeeTransferScalar => UpdatePerpMarketLpPoolFeeTransferScalar,
DriftV2Instruction::UpdatePerpMarketLpPoolId => UpdatePerpMarketLpPoolId,
DriftV2Instruction::UpdatePerpMarketLpPoolPausedOperations => UpdatePerpMarketLpPoolPausedOperations,
DriftV2Instruction::UpdatePerpMarketLpPoolStatus => UpdatePerpMarketLpPoolStatus,
DriftV2Instruction::UpdatePerpMarketMarginRatio => UpdatePerpMarketMarginRatio,
DriftV2Instruction::UpdatePerpMarketMaxFillReserveFraction => UpdatePerpMarketMaxFillReserveFraction,
DriftV2Instruction::UpdatePerpMarketMaxImbalances => UpdatePerpMarketMaxImbalances,
DriftV2Instruction::UpdatePerpMarketMaxOpenInterest => UpdatePerpMarketMaxOpenInterest,
DriftV2Instruction::UpdatePerpMarketMaxSlippageRatio => UpdatePerpMarketMaxSlippageRatio,
DriftV2Instruction::UpdatePerpMarketMaxSpread => UpdatePerpMarketMaxSpread,
DriftV2Instruction::UpdatePerpMarketMinOrderSize => UpdatePerpMarketMinOrderSize,
DriftV2Instruction::UpdatePerpMarketName => UpdatePerpMarketName,
DriftV2Instruction::UpdatePerpMarketNumberOfUsers => UpdatePerpMarketNumberOfUsers,
DriftV2Instruction::UpdatePerpMarketOracle => UpdatePerpMarketOracle,
DriftV2Instruction::UpdatePerpMarketOracleLowRiskSlotDelayOverride => UpdatePerpMarketOracleLowRiskSlotDelayOverride,
DriftV2Instruction::UpdatePerpMarketOracleSlotDelayOverride => UpdatePerpMarketOracleSlotDelayOverride,
DriftV2Instruction::UpdatePerpMarketPausedOperations => UpdatePerpMarketPausedOperations,
DriftV2Instruction::UpdatePerpMarketPnlPool => UpdatePerpMarketPnlPool,
DriftV2Instruction::UpdatePerpMarketProtectedMakerParams => UpdatePerpMarketProtectedMakerParams,
DriftV2Instruction::UpdatePerpMarketReferencePriceOffsetDeadbandPct => UpdatePerpMarketReferencePriceOffsetDeadbandPct,
DriftV2Instruction::UpdatePerpMarketStatus => UpdatePerpMarketStatus,
DriftV2Instruction::UpdatePerpMarketStepSizeAndTickSize => UpdatePerpMarketStepSizeAndTickSize,
DriftV2Instruction::UpdatePerpMarketUnrealizedAssetWeight => UpdatePerpMarketUnrealizedAssetWeight,
DriftV2Instruction::UpdatePrelaunchOracle => UpdatePrelaunchOracle,
DriftV2Instruction::UpdatePrelaunchOracleParams => UpdatePrelaunchOracleParams,
DriftV2Instruction::UpdateProtectedMakerModeConfig => UpdateProtectedMakerModeConfig,
DriftV2Instruction::UpdatePythPullOracle => UpdatePythPullOracle,
DriftV2Instruction::UpdateSerumFulfillmentConfigStatus => UpdateSerumFulfillmentConfigStatus,
DriftV2Instruction::UpdateSpotAuctionDuration => UpdateSpotAuctionDuration,
DriftV2Instruction::UpdateSpotFeeStructure => UpdateSpotFeeStructure,
DriftV2Instruction::UpdateSpotMarketAssetTier => UpdateSpotMarketAssetTier,
DriftV2Instruction::UpdateSpotMarketBorrowRate => UpdateSpotMarketBorrowRate,
DriftV2Instruction::UpdateSpotMarketCumulativeInterest => UpdateSpotMarketCumulativeInterest,
DriftV2Instruction::UpdateSpotMarketExpiry => UpdateSpotMarketExpiry,
DriftV2Instruction::UpdateSpotMarketFeeAdjustment => UpdateSpotMarketFeeAdjustment,
DriftV2Instruction::UpdateSpotMarketIfFactor => UpdateSpotMarketIfFactor,
DriftV2Instruction::UpdateSpotMarketIfPausedOperations => UpdateSpotMarketIfPausedOperations,
DriftV2Instruction::UpdateSpotMarketLiquidationFee => UpdateSpotMarketLiquidationFee,
DriftV2Instruction::UpdateSpotMarketMarginWeights => UpdateSpotMarketMarginWeights,
DriftV2Instruction::UpdateSpotMarketMaxTokenBorrows => UpdateSpotMarketMaxTokenBorrows,
DriftV2Instruction::UpdateSpotMarketMaxTokenDeposits => UpdateSpotMarketMaxTokenDeposits,
DriftV2Instruction::UpdateSpotMarketMinOrderSize => UpdateSpotMarketMinOrderSize,
DriftV2Instruction::UpdateSpotMarketName => UpdateSpotMarketName,
DriftV2Instruction::UpdateSpotMarketOracle => UpdateSpotMarketOracle,
DriftV2Instruction::UpdateSpotMarketOrdersEnabled => UpdateSpotMarketOrdersEnabled,
DriftV2Instruction::UpdateSpotMarketPausedOperations => UpdateSpotMarketPausedOperations,
DriftV2Instruction::UpdateSpotMarketPoolId => UpdateSpotMarketPoolId,
DriftV2Instruction::UpdateSpotMarketRevenueSettlePeriod => UpdateSpotMarketRevenueSettlePeriod,
DriftV2Instruction::UpdateSpotMarketScaleInitialAssetWeightStart => UpdateSpotMarketScaleInitialAssetWeightStart,
DriftV2Instruction::UpdateSpotMarketStatus => UpdateSpotMarketStatus,
DriftV2Instruction::UpdateSpotMarketStepSizeAndTickSize => UpdateSpotMarketStepSizeAndTickSize,
DriftV2Instruction::UpdateStateMaxInitializeUserFee => UpdateStateMaxInitializeUserFee,
DriftV2Instruction::UpdateStateMaxNumberOfSubAccounts => UpdateStateMaxNumberOfSubAccounts,
DriftV2Instruction::UpdateStateSettlementDuration => UpdateStateSettlementDuration,
DriftV2Instruction::UpdateUserCustomMarginRatio => UpdateUserCustomMarginRatio,
DriftV2Instruction::UpdateUserDelegate => UpdateUserDelegate,
DriftV2Instruction::UpdateUserGovTokenInsuranceStake => UpdateUserGovTokenInsuranceStake,
DriftV2Instruction::UpdateUserIdle => UpdateUserIdle,
DriftV2Instruction::UpdateUserMarginTradingEnabled => UpdateUserMarginTradingEnabled,
DriftV2Instruction::UpdateUserName => UpdateUserName,
DriftV2Instruction::UpdateUserPerpPositionCustomMarginRatio => UpdateUserPerpPositionCustomMarginRatio,
DriftV2Instruction::UpdateUserPoolId => UpdateUserPoolId,
DriftV2Instruction::UpdateUserProtectedMakerOrders => UpdateUserProtectedMakerOrders,
DriftV2Instruction::UpdateUserQuoteAssetInsuranceStake => UpdateUserQuoteAssetInsuranceStake,
DriftV2Instruction::UpdateUserReduceOnly => UpdateUserReduceOnly,
DriftV2Instruction::UpdateUserStatsReferrerStatus => UpdateUserStatsReferrerStatus,
DriftV2Instruction::UpdateWithdrawGuardThreshold => UpdateWithdrawGuardThreshold,
DriftV2Instruction::ViewLpPoolAddLiquidityFees => ViewLpPoolAddLiquidityFees,
DriftV2Instruction::ViewLpPoolRemoveLiquidityFees => ViewLpPoolRemoveLiquidityFees,
DriftV2Instruction::ViewLpPoolSwapFees => ViewLpPoolSwapFees,
DriftV2Instruction::Withdraw => Withdraw,
DriftV2Instruction::WithdrawFromIsolatedPerpPosition => WithdrawFromIsolatedPerpPosition,
DriftV2Instruction::WithdrawFromProgramVault => WithdrawFromProgramVault,
DriftV2Instruction::ZeroMmOracleFields => ZeroMmOracleFields,
DriftV2Instruction::CpiEvent => CpiEvent,
)
}
}