{
  "presets": [
    {
      "slug": "pumpfun",
      "name": "Pump.fun",
      "category": "Launchpad",
      "program": "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P",
      "has_idl": true,
      "instructions": [
        "add_quote_control_mint",
        "add_quote_mint",
        "admin_cto",
        "admin_set_idl_authority",
        "admin_update_token_incentives",
        "buy",
        "buy_exact_quote_in_v2",
        "buy_exact_quote_in_v3",
        "buy_exact_sol_in",
        "buy_v2",
        "buy_v3",
        "claim_cashback",
        "claim_cashback_v2",
        "claim_token_incentives",
        "close_user_volume_accumulator",
        "collect_creator_fee",
        "collect_creator_fee_v2",
        "create",
        "create_v2",
        "distribute_creator_fees",
        "distribute_creator_fees_v2",
        "distribute_fee_to_holders",
        "extend_account",
        "get_minimum_distributable_fee",
        "init_user_volume_accumulator",
        "initialize",
        "initialize_quote_control",
        "migrate",
        "migrate_bonding_curve_creator",
        "migrate_v2",
        "multi_hop_curve_swap",
        "remove_quote_control_mint",
        "remove_quote_mint",
        "sell",
        "sell_v2",
        "sell_v3",
        "set_creator",
        "set_max_curve_depth",
        "set_mayhem_virtual_params",
        "set_metaplex_creator",
        "set_params",
        "set_quote_control_admin",
        "set_quote_control_mint_reserves",
        "set_quote_control_reserves_admin",
        "set_reserved_fee_recipients",
        "set_virtual_quote_reserves",
        "sweep_creator_fee",
        "sweep_protocol_fee",
        "sync_user_volume_accumulator",
        "toggle_cashback_enabled",
        "toggle_create_v2",
        "toggle_mayhem_mode",
        "update_buyback_config",
        "update_creator_fee_config",
        "update_global_authority",
        "update_holder_reward_config"
      ],
      "events": [
        "AddQuoteControlMintEvent",
        "AdminCtoEvent",
        "AdminSetIdlAuthorityEvent",
        "AdminUpdateTokenIncentivesEvent",
        "ClaimCashbackEvent",
        "ClaimTokenIncentivesEvent",
        "CloseUserVolumeAccumulatorEvent",
        "CollectCreatorFeeEvent",
        "CompleteEvent",
        "CompletePumpAmmMigrationEvent",
        "CreateEvent",
        "DistributeCreatorFeesEvent",
        "DistributeFeeToHoldersEvent",
        "ExtendAccountEvent",
        "InitUserVolumeAccumulatorEvent",
        "MigrateBondingCurveCreatorEvent",
        "MinimumDistributableFeeEvent",
        "PostCompleteBuyEvent",
        "RemoveQuoteControlMintEvent",
        "ReservedFeeRecipientsEvent",
        "SetCreatorEvent",
        "SetMetaplexCreatorEvent",
        "SetParamsEvent",
        "SetQuoteControlAdminEvent",
        "SetQuoteControlMintReservesEvent",
        "SetQuoteControlReservesAdminEvent",
        "SweepBondingCurveFeeEvent",
        "SyncUserVolumeAccumulatorEvent",
        "TradeEvent",
        "UpdateCreatorFeeConfigEvent",
        "UpdateGlobalAuthorityEvent",
        "UpdateMayhemVirtualParamsEvent"
      ],
      "notes": "The SOL a trade moved is in ev-trade_event; buy and sell hold only the limits."
    },
    {
      "slug": "raydium-launchpad",
      "name": "Raydium LaunchLab",
      "category": "Launchpad",
      "program": "LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj",
      "has_idl": true,
      "instructions": [
        "buy_exact_in",
        "buy_exact_out",
        "claim_creator_fee",
        "claim_platform_fee",
        "claim_platform_fee_from_vault",
        "claim_vested_token",
        "close_platform_allow_config",
        "close_platform_curve_rule",
        "collect_excess_lamports",
        "collect_fee",
        "collect_migrate_fee",
        "create_config",
        "create_platform_allow_config",
        "create_platform_config",
        "create_platform_curve_rule",
        "create_platform_vesting_account",
        "create_vesting_account",
        "initialize",
        "initialize_v2",
        "initialize_with_token_2022",
        "migrate_to_amm",
        "migrate_to_cpswap",
        "remove_platform_curve_rule",
        "sell_exact_in",
        "sell_exact_out",
        "update_config",
        "update_platform_config",
        "update_platform_curve_rule"
      ],
      "events": [
        "ClaimVestedEvent",
        "CreateVestingEvent",
        "PoolCreateEvent",
        "TradeEvent"
      ],
      "notes": null
    },
    {
      "slug": "meteora-dbc",
      "name": "Meteora Dynamic Bonding Curve",
      "category": "Launchpad",
      "program": "dbcij3LWUppWqq96dh6gJWwBifmcGfLSB5D4DuSMaqN",
      "has_idl": true,
      "instructions": [
        "claim_creator_trading_fee",
        "claim_creator_trading_fee2",
        "claim_partner_pool_creation_fee",
        "claim_protocol_fee2",
        "claim_protocol_pool_creation_fee",
        "claim_trading_fee",
        "claim_trading_fee2",
        "close_claim_protocol_fee_operator",
        "close_operator_account",
        "close_token_badge",
        "create_config",
        "create_config2",
        "create_config_with_transfer_hook",
        "create_locker",
        "create_operator_account",
        "create_partner_metadata",
        "create_token_badge",
        "create_virtual_pool_metadata",
        "creator_withdraw_surplus",
        "initialize_virtual_pool_with_spl_token",
        "initialize_virtual_pool_with_token2022",
        "initialize_virtual_pool_with_token2022_transfer_hook",
        "migrate_meteora_damm",
        "migrate_meteora_damm_claim_lp_token",
        "migrate_meteora_damm_lock_lp_token",
        "migration_damm_v2",
        "migration_damm_v2_create_metadata",
        "migration_meteora_damm_create_metadata",
        "partner_withdraw_surplus",
        "swap",
        "swap2",
        "swap2_with_transfer_hook",
        "transfer_pool_creator",
        "withdraw_leftover",
        "withdraw_migration_fee"
      ],
      "events": [
        "EvtClaimCreatorTradingFee",
        "EvtClaimPoolCreationFee",
        "EvtClaimProtocolFee2",
        "EvtClaimTradingFee",
        "EvtCloseClaimFeeOperator",
        "EvtCloseTokenBadge",
        "EvtCreateClaimFeeOperator",
        "EvtCreateConfig3",
        "EvtCreateConfigV2",
        "EvtCreateConfigV2WithTransferHook",
        "EvtCreateMeteoraMigrationMetadata",
        "EvtCreateTokenBadge",
        "EvtCreatorWithdrawSurplus",
        "EvtCurveComplete",
        "EvtCurveCompleteWithTransferHook",
        "EvtInitializePool",
        "EvtInitializePoolWithTransferHook",
        "EvtPartnerClaimPoolCreationFee",
        "EvtPartnerMetadata",
        "EvtPartnerWithdrawSurplus",
        "EvtSwap",
        "EvtSwap2",
        "EvtSwap2WithTransferHook",
        "EvtSwap3",
        "EvtSwap3WithTransferHook",
        "EvtUpdatePoolCreator",
        "EvtVirtualPoolMetadata",
        "EvtWithdrawLeftover",
        "EvtWithdrawMigrationFee"
      ],
      "notes": null
    },
    {
      "slug": "pump-swap",
      "name": "PumpSwap",
      "category": "DEX",
      "program": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA",
      "has_idl": true,
      "instructions": [
        "admin_cto_pool",
        "admin_update_token_incentives",
        "boost_buy_and_burn",
        "buy",
        "buy_exact_quote_in",
        "buy_exact_quote_in_v2",
        "buy_v2",
        "claim_cashback",
        "claim_token_incentives",
        "close_user_volume_accumulator",
        "collect_coin_creator_fee",
        "create_config",
        "create_pool",
        "deposit",
        "disable",
        "extend_account",
        "init_boost",
        "init_user_volume_accumulator",
        "migrate_pool_coin_creator",
        "multi_hop_swap",
        "sell",
        "sell_v2",
        "set_boost_authority",
        "set_coin_creator",
        "set_reserved_fee_recipients",
        "sweep_creator_fee",
        "sweep_protocol_fee",
        "sync_user_volume_accumulator",
        "toggle_boost",
        "toggle_cashback_enabled",
        "toggle_mayhem_mode",
        "transfer_creator_fees_to_pump",
        "transfer_creator_fees_to_pump_v2",
        "update_admin",
        "update_buyback_config",
        "update_creator_fee_config",
        "update_fee_config",
        "withdraw"
      ],
      "events": [
        "AdminCtoPoolEvent",
        "AdminUpdateTokenIncentivesEvent",
        "BoostBuyAndBurnEvent",
        "BuyEvent",
        "ClaimCashbackEvent",
        "ClaimTokenIncentivesEvent",
        "CloseUserVolumeAccumulatorEvent",
        "CollectCoinCreatorFeeEvent",
        "CreateConfigEvent",
        "CreatePoolEvent",
        "DepositEvent",
        "DisableEvent",
        "ExtendAccountEvent",
        "InitBoostEvent",
        "InitUserVolumeAccumulatorEvent",
        "MigratePoolCoinCreatorEvent",
        "ReservedFeeRecipientsEvent",
        "SellEvent",
        "SetBondingCurveCoinCreatorEvent",
        "SetBoostAuthorityEvent",
        "SetMetaplexCoinCreatorEvent",
        "SweepPoolFeeEvent",
        "SyncUserVolumeAccumulatorEvent",
        "UpdateAdminEvent",
        "UpdateCreatorFeeConfigEvent",
        "UpdateFeeConfigEvent",
        "WithdrawEvent"
      ],
      "notes": null
    },
    {
      "slug": "raydium-clmm",
      "name": "Raydium CLMM",
      "category": "DEX",
      "program": "CAMMCzo5YL8w4VFF8KVHrK22GGUsp5VTaW7grrKgrWqK",
      "has_idl": true,
      "instructions": [
        "close_limit_order",
        "close_position",
        "close_protocol_position",
        "collect_fund_fee",
        "collect_protocol_fee",
        "collect_remaining_rewards",
        "create_amm_config",
        "create_customizable_pool",
        "create_dynamic_fee_config",
        "create_operation_account",
        "create_pool",
        "create_support_mint_associated",
        "decrease_limit_order",
        "decrease_liquidity",
        "decrease_liquidity_v2",
        "increase_limit_order",
        "increase_liquidity",
        "increase_liquidity_v2",
        "initialize_reward",
        "open_limit_order",
        "open_position",
        "open_position_v2",
        "open_position_with_token22_nft",
        "set_reward_params",
        "settle_limit_order",
        "swap",
        "swap_router_base_in",
        "swap_v2",
        "transfer_reward_owner",
        "update_amm_config",
        "update_dynamic_fee_config",
        "update_operation_account",
        "update_pool_status",
        "update_reward_infos"
      ],
      "events": [
        "CollectPersonalFeeEvent",
        "CollectProtocolFeeEvent",
        "ConfigChangeEvent",
        "CreatePersonalPositionEvent",
        "DecreaseLimitOrderEvent",
        "DecreaseLiquidityEvent",
        "IncreaseLimitOrderEvent",
        "IncreaseLiquidityEvent",
        "LiquidityCalculateEvent",
        "LiquidityChangeEvent",
        "OpenLimitOrderEvent",
        "PoolCreatedEvent",
        "SettleLimitOrderEvent",
        "SwapEvent",
        "UpdateRewardInfosEvent"
      ],
      "notes": "The program now adds trade_fee_0 and trade_fee_1 to SwapEvent. The published IDL does not have them, so they are not decoded."
    },
    {
      "slug": "raydium-cpmm",
      "name": "Raydium CPMM",
      "category": "DEX",
      "program": "CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C",
      "has_idl": true,
      "instructions": [
        "close_permission_pda",
        "collect_creator_fee",
        "collect_fund_fee",
        "collect_protocol_fee",
        "create_amm_config",
        "create_permission_pda",
        "deposit",
        "initialize",
        "initialize_with_permission",
        "swap_base_input",
        "swap_base_output",
        "update_amm_config",
        "update_pool_status",
        "withdraw"
      ],
      "events": [
        "LpChangeEvent",
        "SwapEvent"
      ],
      "notes": null
    },
    {
      "slug": "meteora-dlmm",
      "name": "Meteora DLMM",
      "category": "DEX",
      "program": "LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo",
      "has_idl": true,
      "instructions": [
        "add_liquidity",
        "add_liquidity2",
        "add_liquidity_by_strategy",
        "add_liquidity_by_strategy2",
        "add_liquidity_by_strategy_one_side",
        "add_liquidity_by_weight",
        "add_liquidity_by_weight2",
        "add_liquidity_one_side",
        "add_liquidity_one_side_precise",
        "add_liquidity_one_side_precise2",
        "cancel_limit_order",
        "claim_fee",
        "claim_fee2",
        "claim_reward",
        "claim_reward2",
        "close_bin_array",
        "close_claim_fee_operator_account",
        "close_limit_order_if_empty",
        "close_operator_account",
        "close_position",
        "close_position2",
        "close_position_if_empty",
        "close_preset_parameter",
        "close_preset_parameter2",
        "close_token_badge",
        "create_operator_account",
        "decrease_position_length",
        "for_idl_type_generation_do_not_call",
        "fund_reward",
        "go_to_a_bin",
        "increase_oracle_length",
        "increase_position_length",
        "increase_position_length2",
        "initialize_bin_array",
        "initialize_bin_array_bitmap_extension",
        "initialize_customizable_permissionless_lb_pair",
        "initialize_customizable_permissionless_lb_pair2",
        "initialize_lb_pair",
        "initialize_lb_pair2",
        "initialize_permission_lb_pair",
        "initialize_position",
        "initialize_position2",
        "initialize_position_by_operator",
        "initialize_position_pda",
        "initialize_preset_parameter",
        "initialize_reward",
        "initialize_token_badge",
        "place_limit_order",
        "rebalance_liquidity",
        "remove_all_liquidity",
        "remove_liquidity",
        "remove_liquidity2",
        "remove_liquidity_by_range",
        "remove_liquidity_by_range2",
        "set_activation_point",
        "set_pair_status",
        "set_pair_status_permissionless",
        "set_permissionless_operation_bits",
        "set_pre_activation_duration",
        "set_pre_activation_swap_address",
        "swap",
        "swap2",
        "swap_exact_out",
        "swap_exact_out2",
        "swap_with_price_impact",
        "swap_with_price_impact2",
        "update_base_fee_parameters",
        "update_dynamic_fee_parameters",
        "update_fees_and_reward2",
        "update_fees_and_rewards",
        "update_position_operator",
        "update_reward_duration",
        "update_reward_funder",
        "withdraw_ineligible_reward",
        "withdraw_protocol_fee",
        "zap_protocol_fee"
      ],
      "events": [
        "AddLiquidity",
        "CancelLimitOrderEvt",
        "ClaimFee",
        "ClaimFee2",
        "ClaimReward",
        "ClaimReward2",
        "CloseLimitOrderEvt",
        "CompositionFee",
        "DecreasePositionLength",
        "DynamicFeeParameterUpdate",
        "FeeParameterUpdate",
        "FundReward",
        "GoToABin",
        "IncreaseObservation",
        "IncreasePositionLength",
        "InitializeReward",
        "LbPairCreate",
        "PlaceLimitOrderEvt",
        "PositionClose",
        "PositionCreate",
        "Rebalancing",
        "RemoveLiquidity",
        "SetPositionPermissionlessOperationBitsEvt",
        "Swap",
        "Swap2Evt",
        "UpdatePositionLockReleasePoint",
        "UpdatePositionOperator",
        "UpdateRewardDuration",
        "UpdateRewardFunder",
        "WithdrawIneligibleReward"
      ],
      "notes": null
    },
    {
      "slug": "meteora-damm-v2",
      "name": "Meteora DAMM v2",
      "category": "DEX",
      "program": "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG",
      "has_idl": true,
      "instructions": [
        "add_liquidity",
        "claim_position_fee",
        "claim_protocol_fee2",
        "claim_reward",
        "close_config",
        "close_operator_account",
        "close_position",
        "close_token_badge",
        "create_config",
        "create_dynamic_config",
        "create_operator_account",
        "create_position",
        "create_token_badge",
        "dummy_ix",
        "fix_config_fee_params",
        "fix_pool_fee_params",
        "fix_pool_layout_version",
        "fund_reward",
        "initialize_customizable_pool",
        "initialize_pool",
        "initialize_pool_with_dynamic_config",
        "initialize_reward",
        "lock_inner_position",
        "lock_position",
        "permanent_lock_position",
        "refresh_vesting",
        "remove_all_liquidity",
        "remove_liquidity",
        "set_pool_status",
        "split_position",
        "split_position2",
        "swap",
        "swap2",
        "update_delegate_permission",
        "update_pool_fees",
        "update_reward_duration",
        "update_reward_funder",
        "withdraw_dead_liquidity_reward",
        "withdraw_ineligible_reward"
      ],
      "events": [
        "EvtClaimPositionFee",
        "EvtClaimProtocolFee2",
        "EvtClaimReward",
        "EvtCloseConfig",
        "EvtClosePosition",
        "EvtCreateConfig",
        "EvtCreateDynamicConfig",
        "EvtCreatePosition",
        "EvtCreateTokenBadge",
        "EvtFundReward",
        "EvtInitializePool",
        "EvtInitializeReward",
        "EvtLiquidityChange",
        "EvtLockPosition",
        "EvtPermanentLockPosition",
        "EvtSetPoolStatus",
        "EvtSplitPosition2",
        "EvtSplitPosition3",
        "EvtSwap2",
        "EvtUpdateDelegatePermission",
        "EvtUpdatePoolFees",
        "EvtUpdateRewardDuration",
        "EvtUpdateRewardFunder",
        "EvtWithdrawDeadLiquidityReward",
        "EvtWithdrawIneligibleReward"
      ],
      "notes": null
    },
    {
      "slug": "orca-whirlpool",
      "name": "Orca Whirlpool",
      "category": "DEX",
      "program": "whirLbMiicVdio4qvUfM5KAg6Ct8VwpYzGff3uctyCc",
      "has_idl": true,
      "instructions": [
        "close_bundled_position",
        "close_position",
        "close_position_with_token_extensions",
        "collect_fees",
        "collect_fees_v2",
        "collect_protocol_fees",
        "collect_protocol_fees_v2",
        "collect_reward",
        "collect_reward_v2",
        "decrease_liquidity",
        "decrease_liquidity_v2",
        "delete_position_bundle",
        "delete_token_badge",
        "idl_include",
        "increase_liquidity",
        "increase_liquidity_by_token_amounts_v2",
        "increase_liquidity_v2",
        "initialize_adaptive_fee_tier",
        "initialize_config",
        "initialize_config_extension",
        "initialize_dynamic_tick_array",
        "initialize_fee_tier",
        "initialize_pool",
        "initialize_pool_v2",
        "initialize_pool_with_adaptive_fee",
        "initialize_position_bundle",
        "initialize_position_bundle_with_metadata",
        "initialize_reward",
        "initialize_reward_v2",
        "initialize_tick_array",
        "initialize_token_badge",
        "lock_position",
        "migrate_repurpose_reward_authority_space",
        "open_bundled_position",
        "open_position",
        "open_position_with_metadata",
        "open_position_with_token_extensions",
        "reposition_liquidity_v2",
        "reset_position_range",
        "set_adaptive_fee_constants",
        "set_collect_protocol_fees_authority",
        "set_config_extension_authority",
        "set_config_feature_flag",
        "set_default_base_fee_rate",
        "set_default_fee_rate",
        "set_default_protocol_fee_rate",
        "set_delegated_fee_authority",
        "set_fee_authority",
        "set_fee_rate",
        "set_fee_rate_by_delegated_fee_authority",
        "set_initialize_pool_authority",
        "set_preset_adaptive_fee_constants",
        "set_protocol_fee_rate",
        "set_reward_authority",
        "set_reward_authority_by_super_authority",
        "set_reward_emissions",
        "set_reward_emissions_super_authority",
        "set_reward_emissions_v2",
        "set_token_badge_attribute",
        "set_token_badge_authority",
        "swap",
        "swap_v2",
        "transfer_locked_position",
        "two_hop_swap",
        "two_hop_swap_v2",
        "update_fees_and_rewards"
      ],
      "events": [
        "LiquidityDecreased",
        "LiquidityIncreased",
        "LiquidityRepositioned",
        "PoolInitialized",
        "PositionOpened",
        "Traded"
      ],
      "notes": null
    },
    {
      "slug": "raydium-amm-v4",
      "name": "Raydium AMM v4",
      "category": "DEX",
      "program": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8",
      "has_idl": false,
      "instructions": [],
      "events": [],
      "notes": null
    },
    {
      "slug": "jupiter-v6",
      "name": "Jupiter Swap v6",
      "category": "Aggregator",
      "program": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4",
      "has_idl": true,
      "instructions": [
        "claim",
        "claim_token",
        "close_token",
        "withdraw_token_account_excess_lamports",
        "create_idempotent_associated_token_account",
        "create_token_ledger",
        "create_token_account",
        "close_wsol_token_account",
        "exact_out_route",
        "route",
        "route_with_token_ledger",
        "set_token_ledger",
        "shared_accounts_exact_out_route",
        "shared_accounts_route",
        "shared_accounts_route_with_token_ledger",
        "exact_out_route_v2",
        "route_v2",
        "shared_accounts_exact_out_route_v2",
        "shared_accounts_route_v2"
      ],
      "events": [
        "FeeEvent",
        "SwapEvent",
        "SwapsEvent",
        "CandidateSwapResults",
        "CandidateSwapQuoteError",
        "BestSwapOutAmountViolation"
      ],
      "notes": null
    },
    {
      "slug": "jupiter-perpetuals",
      "name": "Jupiter Perpetuals",
      "category": "Perpetuals",
      "program": "PERPHjGBqRHArX4DySjwM6UJHiR3sWAatqfdBS2qQJu",
      "has_idl": true,
      "instructions": [
        "init",
        "addPool",
        "addCustody",
        "setCustodyConfig",
        "setPoolConfig",
        "setPerpetualsConfig",
        "transferAdmin",
        "withdrawFees2",
        "createTokenMetadata",
        "createTokenLedger",
        "reallocCustody",
        "reallocPool",
        "createAndDelegateStakeAccount",
        "unstake",
        "withdrawStake",
        "redeemStake",
        "operatorSetCustodyConfig",
        "operatorSetPoolConfig",
        "testInit",
        "setTestTime",
        "setTokenLedger",
        "swap2",
        "swapWithTokenLedger",
        "instantIncreasePositionPreSwap",
        "addLiquidity2",
        "removeLiquidity2",
        "createIncreasePositionMarketRequest",
        "createDecreasePositionRequest2",
        "createDecreasePositionMarketRequest",
        "updateDecreasePositionRequest2",
        "closePositionRequest2",
        "closePositionRequest3",
        "increasePosition4",
        "increasePositionPreSwap",
        "increasePositionWithInternalSwap",
        "decreasePosition4",
        "decreasePositionWithInternalSwap",
        "decreasePositionWithTpsl",
        "decreasePositionWithTpslAndInternalSwap",
        "liquidateFullPosition4",
        "refreshAssetsUnderManagement",
        "setMaxGlobalSizes",
        "instantCreateTpsl",
        "instantCreateLimitOrder",
        "instantIncreasePosition",
        "instantDecreasePosition",
        "instantDecreasePosition2",
        "instantUpdateLimitOrder",
        "instantUpdateTpsl",
        "getAddLiquidityAmountAndFee2",
        "getRemoveLiquidityAmountAndFee2",
        "getAssetsUnderManagement2",
        "borrowFromCustody",
        "repayToCustody",
        "depositCollateralForBorrows",
        "withdrawCollateralForBorrows",
        "liquidateBorrowPosition",
        "partialLiquidateBorrowPosition",
        "closeBorrowPosition"
      ],
      "events": [
        "CreatePositionRequestEvent",
        "InstantCreateTpslEvent",
        "InstantUpdateTpslEvent",
        "ClosePositionRequestEvent",
        "IncreasePositionEvent",
        "IncreasePositionPreSwapEvent",
        "DecreasePositionEvent",
        "DecreasePositionPostSwapEvent",
        "LiquidateFullPositionEvent",
        "PoolSwapEvent",
        "PoolSwapExactOutEvent",
        "AddLiquidityEvent",
        "RemoveLiquidityEvent",
        "InstantCreateLimitOrderEvent",
        "InstantIncreasePositionEvent",
        "InstantDecreasePositionEvent",
        "DepositCollateralEvent",
        "WithdrawCollateralEvent",
        "BorrowFromCustodyEvent",
        "RepayToCustodyEvent",
        "LiquidateBorrowPositionEvent",
        "RedeemStakeEvent",
        "WithdrawStakeEvent",
        "DelegateStakeEvent",
        "WithdrawFeesEvent"
      ],
      "notes": null
    },
    {
      "slug": "kamino-lending",
      "name": "Kamino Lending",
      "category": "Lending",
      "program": "KLend2g3cP87fffoy8q1mQqGKjrxjC8boSyAYavgmjD",
      "has_idl": true,
      "instructions": [
        "initLendingMarket",
        "updateLendingMarket",
        "updateLendingMarketOwner",
        "initReserve",
        "cloneReserveConfig",
        "initFarmsForReserve",
        "updateReserveConfig",
        "redeemFees",
        "withdrawProtocolFee",
        "seedDepositOnInitReserve",
        "topupReserveRewards",
        "socializeLoss",
        "socializeLossV2",
        "markObligationForDeleveraging",
        "refreshReserve",
        "refreshReservesBatch",
        "calculateCtokenExchangeRate",
        "depositReserveLiquidity",
        "redeemReserveCollateral",
        "initObligation",
        "initObligationFarmsForReserve",
        "refreshObligationFarmsForReserve",
        "refreshObligation",
        "depositObligationCollateral",
        "depositObligationCollateralV2",
        "withdrawObligationCollateral",
        "withdrawObligationCollateralV2",
        "borrowObligationLiquidity",
        "borrowObligationLiquidityV2",
        "repayObligationLiquidity",
        "repayObligationLiquidityV2",
        "repayAndWithdrawAndRedeem",
        "depositAndWithdraw",
        "depositReserveLiquidityAndObligationCollateral",
        "depositReserveLiquidityAndObligationCollateralV2",
        "withdrawObligationCollateralAndRedeemReserveCollateral",
        "withdrawObligationCollateralAndRedeemReserveCollateralV2",
        "liquidateObligationAndRedeemReserveCollateral",
        "liquidateObligationAndRedeemReserveCollateralV2",
        "flashRepayReserveLiquidity",
        "flashBorrowReserveLiquidity",
        "requestElevationGroup",
        "initReferrerTokenState",
        "initUserMetadata",
        "withdrawReferrerFees",
        "initReferrerStateAndShortUrl",
        "deleteReferrerStateAndShortUrl",
        "setObligationOrder",
        "setBorrowOrder",
        "setBorrowOrderV2",
        "updateObligationConfig",
        "rolloverFixedTermBorrow",
        "fillBorrowOrder",
        "fillBorrowOrderV2",
        "initiateObligationOwnershipTransfer",
        "approveObligationOwnershipTransfer",
        "acceptObligationOwnership",
        "abortObligationOwnershipTransfer",
        "enqueueToWithdraw",
        "withdrawQueuedLiquidity",
        "recoverInvalidTicketCollateral",
        "cancelWithdrawTicket",
        "initGlobalConfig",
        "updateGlobalConfig",
        "updateGlobalConfigAdmin",
        "idlMissingTypes"
      ],
      "events": [
        "BorrowOrderCancelEvent",
        "BorrowOrderFullFillEvent",
        "BorrowOrderPartialFillEvent",
        "BorrowOrderPlaceEvent",
        "BorrowOrderUpdateEvent"
      ],
      "notes": null
    },
    {
      "slug": "marginfi-v2",
      "name": "marginfi v2",
      "category": "Lending",
      "program": "MFv2hWf31Z9kbCa1snEPYctwafyhdvnV7FZnsebVacA",
      "has_idl": true,
      "instructions": [
        "admin_close_account",
        "config_group_fee",
        "configure_bank_rate_limits",
        "configure_deleverage_withdrawal_limit",
        "configure_group_rate_limits",
        "disable_staked_oracles",
        "drift_claim_bad_debt",
        "drift_deposit",
        "drift_harvest_reward",
        "drift_init_user",
        "drift_withdraw",
        "edit_fee_state_premium",
        "edit_global_fee_state",
        "edit_staked_settings",
        "enable_staked_oracle_onramp",
        "end_deleverage",
        "end_liquidation",
        "init_bank_metadata",
        "init_global_fee_state",
        "init_staked_settings",
        "juplend_deposit",
        "juplend_init_position",
        "juplend_withdraw",
        "kamino_deposit",
        "kamino_harvest_reward",
        "kamino_init_obligation",
        "kamino_withdraw",
        "lending_account_borrow",
        "lending_account_close_balance",
        "lending_account_deposit",
        "lending_account_end_flashloan",
        "lending_account_liquidate",
        "lending_account_pulse_health",
        "lending_account_repay",
        "lending_account_start_flashloan",
        "lending_account_withdraw",
        "lending_pool_accrue_bank_interest",
        "lending_pool_add_bank",
        "lending_pool_add_bank_drift",
        "lending_pool_add_bank_juplend",
        "lending_pool_add_bank_kamino",
        "lending_pool_add_bank_permissionless",
        "lending_pool_add_bank_solend",
        "lending_pool_add_bank_with_seed",
        "lending_pool_backfill_bank_is_t22_flag",
        "lending_pool_backfill_staked_bank_validator_vote_account",
        "lending_pool_clear_circuit_breaker",
        "lending_pool_clone_bank",
        "lending_pool_clone_emode",
        "lending_pool_close_bank",
        "lending_pool_collect_bank_fees",
        "lending_pool_collect_bank_premium_fees",
        "lending_pool_configure_bank",
        "lending_pool_configure_bank_emode",
        "lending_pool_configure_bank_gov",
        "lending_pool_configure_bank_interest_only",
        "lending_pool_configure_bank_limits_only",
        "lending_pool_configure_bank_oracle",
        "lending_pool_configure_bank_oracle_scope",
        "lending_pool_configure_bank_premium",
        "lending_pool_configure_group_premium",
        "lending_pool_emissions_deposit",
        "lending_pool_force_tokenless_repay_complete",
        "lending_pool_handle_bankruptcy",
        "lending_pool_init_same_asset_emode_registry",
        "lending_pool_pulse_bank_price_cache",
        "lending_pool_resize_bank_account",
        "lending_pool_resize_group_account",
        "lending_pool_set_bank_same_asset_emode_eligibility",
        "lending_pool_set_oracle_price",
        "lending_pool_update_fees_destination_account",
        "lending_pool_withdraw_fees",
        "lending_pool_withdraw_fees_permissionless",
        "lending_pool_withdraw_insurance",
        "marginfi_account_close",
        "marginfi_account_close_liq_record",
        "marginfi_account_close_order",
        "marginfi_account_close_rebalance_order",
        "marginfi_account_end_execute_order",
        "marginfi_account_end_rebalance",
        "marginfi_account_init_liq_record",
        "marginfi_account_initialize",
        "marginfi_account_initialize_pda",
        "marginfi_account_keeper_close_order",
        "marginfi_account_place_order",
        "marginfi_account_place_rebalance_order",
        "marginfi_account_set_freeze",
        "marginfi_account_set_keeper_close_flags",
        "marginfi_account_settle_rebalance_tip",
        "marginfi_account_start_execute_order",
        "marginfi_account_start_rebalance",
        "marginfi_account_tag_liq_record",
        "marginfi_account_top_up_rebalance_fee_pool",
        "marginfi_account_update_emissions_destination_account",
        "marginfi_account_update_rebalance_order",
        "marginfi_account_withdraw_rebalance_fee_pool",
        "marginfi_group_configure",
        "marginfi_group_configure_gov",
        "marginfi_group_initialize",
        "marginfi_group_set_governance_admin",
        "monitor_archive_initialize",
        "monitor_archive_upsert_batch",
        "panic_pause",
        "panic_unpause",
        "panic_unpause_permissionless",
        "propagate_fee_state",
        "propagate_kamino_market_emergency",
        "propagate_staked_settings",
        "purge_deleverage_balance",
        "resize_global_fee_state",
        "solend_deposit",
        "solend_init_obligation",
        "solend_withdraw",
        "start_deleverage",
        "start_liquidation",
        "super_admin_deposit",
        "super_admin_withdraw",
        "sync_indexer_flags",
        "transfer_to_new_account",
        "transfer_to_new_account_pda",
        "update_deleverage_withdrawals",
        "update_group_rate_limiter",
        "write_bank_metadata",
        "write_bank_metadata_pre_init"
      ],
      "events": [
        "AdminCloseAccountEvent",
        "CircuitBreakerAutoBrokenEvent",
        "CircuitBreakerClearedEvent",
        "CircuitBreakerTrippedEvent",
        "DeleverageEvent",
        "DeleverageWithdrawFlowEvent",
        "DriftClaimBadDebtEvent",
        "EditStakedSettingsEvent",
        "HealthPulseEvent",
        "KeeperCloseOrderEvent",
        "KeeperCloseRebalanceOrderEvent",
        "LendingAccountBorrowEvent",
        "LendingAccountDepositEvent",
        "LendingAccountLiquidateEvent",
        "LendingAccountPremiumSettledEvent",
        "LendingAccountRepayEvent",
        "LendingAccountWithdrawEvent",
        "LendingPoolBankAccrueInterestEvent",
        "LendingPoolBankCollectFeesEvent",
        "LendingPoolBankConfigureEvent",
        "LendingPoolBankConfigureFrozenEvent",
        "LendingPoolBankConfigureOracleEvent",
        "LendingPoolBankCreateEvent",
        "LendingPoolBankHandleBankruptcyEvent",
        "LendingPoolBankPremiumConfigureEvent",
        "LendingPoolBankSetOraclePriceEvent",
        "LendingPoolBankSetSameAssetEmodeEligibilityEvent",
        "LendingPoolGroupPremiumConfigureEvent",
        "LendingPoolPremiumFeesCollectedEvent",
        "LendingPoolSuperAdminDepositEvent",
        "LendingPoolSuperAdminWithdrawEvent",
        "LiquidationReceiverEvent",
        "LiquidationTagEvent",
        "MarginfiAccountCloseOrderEvent",
        "MarginfiAccountCloseRebalanceOrderEvent",
        "MarginfiAccountCreateEvent",
        "MarginfiAccountFreezeEvent",
        "MarginfiAccountPlaceOrderEvent",
        "MarginfiAccountPlaceRebalanceOrderEvent",
        "MarginfiAccountTransferToNewAccount",
        "MarginfiAccountUpdateRebalanceOrderEvent",
        "MarginfiGroupConfigureEvent",
        "MarginfiGroupCreateEvent",
        "RateLimitFlowEvent",
        "RebalanceExecutedEvent",
        "RebalanceFeePoolTopUpEvent",
        "RebalanceFeePoolWithdrawEvent",
        "RebalanceTipSettledEvent",
        "SetGovernanceAdminEvent",
        "SetKeeperCloseFlagsEvent"
      ],
      "notes": null
    },
    {
      "slug": "openbook-v2",
      "name": "OpenBook v2",
      "category": "Order book",
      "program": "opnb2LAfJYbRMAHHvqjCwQxanZn7ReEHp1k81EohpZb",
      "has_idl": true,
      "instructions": [
        "createMarket",
        "closeMarket",
        "createOpenOrdersIndexer",
        "closeOpenOrdersIndexer",
        "createOpenOrdersAccount",
        "closeOpenOrdersAccount",
        "placeOrder",
        "editOrder",
        "editOrderPegged",
        "placeOrders",
        "cancelAllAndPlaceOrders",
        "placeOrderPegged",
        "placeTakeOrder",
        "consumeEvents",
        "consumeGivenEvents",
        "cancelOrder",
        "cancelOrderByClientOrderId",
        "cancelAllOrders",
        "deposit",
        "refill",
        "settleFunds",
        "settleFundsExpired",
        "sweepFees",
        "setDelegate",
        "setMarketExpired",
        "pruneOrders",
        "stubOracleCreate",
        "stubOracleClose",
        "stubOracleSet"
      ],
      "events": [
        "DepositLog",
        "FillLog",
        "MarketMetaDataLog",
        "TotalOrderFillEvent",
        "SetDelegateLog",
        "SettleFundsLog",
        "SweepFeesLog",
        "OpenOrdersPositionLog"
      ],
      "notes": null
    },
    {
      "slug": "phoenix",
      "name": "Phoenix",
      "category": "Order book",
      "program": "PhoeNiXZ8ByJGLkxNfZRnkUfjvmuYqLR89jjFHGqdXY",
      "has_idl": false,
      "instructions": [],
      "events": [],
      "notes": null
    },
    {
      "slug": "jupiter-dca",
      "name": "Jupiter DCA",
      "category": "Limit order and DCA",
      "program": "DCA265Vj8a9CEuX1eb1LWRnDT7uK6q1xMipnNyatn23M",
      "has_idl": true,
      "instructions": [
        "openDca",
        "openDcaV2",
        "closeDca",
        "withdraw",
        "deposit",
        "withdrawFees",
        "initiateFlashFill",
        "fulfillFlashFill",
        "initiateDlmmFill",
        "fulfillDlmmFill",
        "transfer",
        "endAndClose"
      ],
      "events": [
        "CollectedFee",
        "Filled",
        "Opened",
        "Closed",
        "Withdraw",
        "Deposit"
      ],
      "notes": null
    },
    {
      "slug": "jupiter-limit-order-v2",
      "name": "Jupiter Limit Order v2",
      "category": "Limit order and DCA",
      "program": "j1o2qRpjcyUwEvwtcfhEQefh773ZgjxcVRry7LDqg5X",
      "has_idl": true,
      "instructions": [
        "cancel_dust_order",
        "cancel_order",
        "fill_order",
        "flash_fill_order",
        "initialize_order",
        "pre_flash_fill_order",
        "update_fee",
        "withdraw_fee"
      ],
      "events": [
        "CancelDustOrderEvent",
        "CancelOrderEvent",
        "CreateOrderEvent",
        "TradeEvent"
      ],
      "notes": "The program is newer than its IDL: the last 9 bytes of initialize_order and the last 8 bytes of CreateOrderEvent are not decoded."
    },
    {
      "slug": "spl-token",
      "name": "SPL Token",
      "category": "Core",
      "program": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
      "has_idl": false,
      "instructions": [],
      "events": [],
      "notes": null
    },
    {
      "slug": "token-2022",
      "name": "Token-2022",
      "category": "Core",
      "program": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb",
      "has_idl": false,
      "instructions": [],
      "events": [],
      "notes": null
    },
    {
      "slug": "metaplex-token-metadata",
      "name": "Metaplex Token Metadata",
      "category": "NFT",
      "program": "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
      "has_idl": false,
      "instructions": [],
      "events": [],
      "notes": null
    }
  ]
}