diff --git a/src/idl/jupiter.ts b/src/idl/jupiter.ts index bcc970f..560a584 100644 --- a/src/idl/jupiter.ts +++ b/src/idl/jupiter.ts @@ -1,2755 +1,2811 @@ export type Jupiter = { - version: "0.1.0"; - name: "jupiter"; - instructions: [ + "version": "0.1.0", + "name": "jupiter", + "instructions": [ { - name: "route"; - docs: ["route_plan Topologically sorted trade DAG"]; - accounts: [ - { - name: "tokenProgram"; - isMut: false; - isSigner: false; - }, - { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; - }, + "name": "route", + "docs": [ + "route_plan Topologically sorted trade DAG" + ], + "accounts": [ { - name: "userSourceTokenAccount"; - isMut: false; - isSigner: false; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userDestinationTokenAccount"; - isMut: false; - isSigner: false; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "destinationTokenAccount"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "eventAuthority"; - isMut: false; - isSigner: false; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "program"; - isMut: false; - isSigner: false; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true } - ]; - args: [ + ], + "args": [ { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "inAmount"; - type: "u64"; + "name": "inAmount", + "type": "u64" }, { - name: "quotedOutAmount"; - type: "u64"; + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "routeWithTokenLedger"; - accounts: [ - { - name: "tokenProgram"; - isMut: false; - isSigner: false; - }, + "name": "routeWithTokenLedger", + "accounts": [ { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userSourceTokenAccount"; - isMut: false; - isSigner: false; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "userDestinationTokenAccount"; - isMut: false; - isSigner: false; + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "tokenLedger"; - isMut: false; - isSigner: false; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "eventAuthority"; - isMut: false; - isSigner: false; - }, - { - name: "program"; - isMut: false; - isSigner: false; + "name": "tokenLedger", + "isMut": false, + "isSigner": false } - ]; - args: [ + ], + "args": [ { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "quotedOutAmount"; - type: "u64"; + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "sharedAccountsRoute"; - docs: [ + "name": "sharedAccountsRoute", + "docs": [ "Route by using program owned token accounts and open orders accounts." - ]; - accounts: [ - { - name: "tokenProgram"; - isMut: false; - isSigner: false; - }, - { - name: "programAuthority"; - isMut: false; - isSigner: false; - }, + ], + "accounts": [ { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "sourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "programSourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "programDestinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint"; - isMut: false; - isSigner: false; + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "token2022Program"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "eventAuthority"; - isMut: false; - isSigner: false; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "program"; - isMut: false; - isSigner: false; + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" }, { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "inAmount"; - type: "u64"; + "name": "inAmount", + "type": "u64" }, { - name: "quotedOutAmount"; - type: "u64"; + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "sharedAccountsRouteWithTokenLedger"; - accounts: [ + "name": "sharedAccountsRouteWithTokenLedger", + "accounts": [ { - name: "tokenProgram"; - isMut: false; - isSigner: false; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "programAuthority"; - isMut: false; - isSigner: false; + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "sourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programSourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programDestinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint"; - isMut: false; - isSigner: false; + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "token2022Program"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true }, { - name: "tokenLedger"; - isMut: false; - isSigner: false; - }, - { - name: "eventAuthority"; - isMut: false; - isSigner: false; - }, - { - name: "program"; - isMut: false; - isSigner: false; + "name": "tokenLedger", + "isMut": false, + "isSigner": false } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" }, { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "quotedOutAmount"; - type: "u64"; + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "exactOutRoute"; - accounts: [ + "name": "exactOutRoute", + "accounts": [ { - name: "tokenProgram"; - isMut: false; - isSigner: false; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "userSourceTokenAccount"; - isMut: false; - isSigner: false; + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "userDestinationTokenAccount"; - isMut: false; - isSigner: false; + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "sourceMint"; - isMut: false; - isSigner: false; + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "token2022Program"; - isMut: false; - isSigner: false; - isOptional: true; - }, - { - name: "eventAuthority"; - isMut: false; - isSigner: false; - }, - { - name: "program"; - isMut: false; - isSigner: false; + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true } - ]; - args: [ + ], + "args": [ { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "outAmount"; - type: "u64"; + "name": "outAmount", + "type": "u64" }, { - name: "quotedInAmount"; - type: "u64"; + "name": "quotedInAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "sharedAccountsExactOutRoute"; - docs: [ + "name": "sharedAccountsExactOutRoute", + "docs": [ "Route by using program owned token accounts and open orders accounts." - ]; - accounts: [ - { - name: "tokenProgram"; - isMut: false; - isSigner: false; - }, - { - name: "programAuthority"; - isMut: false; - isSigner: false; - }, + ], + "accounts": [ { - name: "userTransferAuthority"; - isMut: false; - isSigner: true; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "sourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "programSourceTokenAccount"; - isMut: true; - isSigner: false; + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "programDestinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint"; - isMut: false; - isSigner: false; + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint"; - isMut: false; - isSigner: false; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "platformFeeAccount"; - isMut: true; - isSigner: false; - isOptional: true; + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "token2022Program"; - isMut: false; - isSigner: false; - isOptional: true; + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "eventAuthority"; - isMut: false; - isSigner: false; + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "program"; - isMut: false; - isSigner: false; + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" }, { - name: "routePlan"; - type: { - vec: { - defined: "RoutePlanStep"; - }; - }; + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "outAmount"; - type: "u64"; + "name": "outAmount", + "type": "u64" }, { - name: "quotedInAmount"; - type: "u64"; + "name": "quotedInAmount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps"; - type: "u8"; + "name": "platformFeeBps", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "setTokenLedger"; - accounts: [ + "name": "setTokenLedger", + "accounts": [ { - name: "tokenLedger"; - isMut: true; - isSigner: false; + "name": "tokenLedger", + "isMut": true, + "isSigner": false }, { - name: "tokenAccount"; - isMut: false; - isSigner: false; + "name": "tokenAccount", + "isMut": false, + "isSigner": false } - ]; - args: []; + ], + "args": [] }, { - name: "createOpenOrders"; - accounts: [ + "name": "createOpenOrders", + "accounts": [ { - name: "openOrders"; - isMut: true; - isSigner: false; + "name": "openOrders", + "isMut": true, + "isSigner": false }, { - name: "payer"; - isMut: true; - isSigner: true; + "name": "payer", + "isMut": true, + "isSigner": true + }, + { + "name": "dexProgram", + "isMut": false, + "isSigner": false + }, + { + "name": "systemProgram", + "isMut": false, + "isSigner": false + }, + { + "name": "rent", + "isMut": false, + "isSigner": false + }, + { + "name": "market", + "isMut": false, + "isSigner": false + } + ], + "args": [] + }, + { + "name": "createTokenAccount", + "accounts": [ + { + "name": "tokenAccount", + "isMut": true, + "isSigner": false }, { - name: "dexProgram"; - isMut: false; - isSigner: false; + "name": "user", + "isMut": true, + "isSigner": true }, { - name: "systemProgram"; - isMut: false; - isSigner: false; + "name": "mint", + "isMut": false, + "isSigner": false }, { - name: "rent"; - isMut: false; - isSigner: false; + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "market"; - isMut: false; - isSigner: false; + "name": "systemProgram", + "isMut": false, + "isSigner": false } - ]; - args: []; + ], + "args": [ + { + "name": "bump", + "type": "u8" + } + ] }, { - name: "createProgramOpenOrders"; - accounts: [ + "name": "createProgramOpenOrders", + "accounts": [ { - name: "openOrders"; - isMut: true; - isSigner: false; + "name": "openOrders", + "isMut": true, + "isSigner": false }, { - name: "payer"; - isMut: true; - isSigner: true; + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "programAuthority"; - isMut: false; - isSigner: false; + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "dexProgram"; - isMut: false; - isSigner: false; + "name": "dexProgram", + "isMut": false, + "isSigner": false }, { - name: "systemProgram"; - isMut: false; - isSigner: false; + "name": "systemProgram", + "isMut": false, + "isSigner": false }, { - name: "rent"; - isMut: false; - isSigner: false; + "name": "rent", + "isMut": false, + "isSigner": false }, { - name: "market"; - isMut: false; - isSigner: false; + "name": "market", + "isMut": false, + "isSigner": false } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" } - ]; + ] }, { - name: "claim"; - accounts: [ + "name": "claim", + "accounts": [ { - name: "wallet"; - isMut: true; - isSigner: false; + "name": "wallet", + "isMut": true, + "isSigner": false }, { - name: "programAuthority"; - isMut: true; - isSigner: false; + "name": "programAuthority", + "isMut": true, + "isSigner": false }, { - name: "systemProgram"; - isMut: false; - isSigner: false; + "name": "systemProgram", + "isMut": false, + "isSigner": false } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "claimToken"; - accounts: [ + "name": "claimToken", + "accounts": [ { - name: "payer"; - isMut: true; - isSigner: true; + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "wallet"; - isMut: false; - isSigner: false; + "name": "wallet", + "isMut": false, + "isSigner": false }, { - name: "programAuthority"; - isMut: false; - isSigner: false; + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "programTokenAccount"; - isMut: true; - isSigner: false; + "name": "programTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount"; - isMut: true; - isSigner: false; + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "mint"; - isMut: false; - isSigner: false; + "name": "mint", + "isMut": false, + "isSigner": false }, { - name: "associatedTokenTokenProgram"; - isMut: false; - isSigner: false; + "name": "associatedTokenTokenProgram", + "isMut": false, + "isSigner": false }, { - name: "associatedTokenProgram"; - isMut: false; - isSigner: false; + "name": "associatedTokenProgram", + "isMut": false, + "isSigner": false }, { - name: "systemProgram"; - isMut: false; - isSigner: false; + "name": "systemProgram", + "isMut": false, + "isSigner": false } - ]; - args: [ + ], + "args": [ { - name: "id"; - type: "u8"; + "name": "id", + "type": "u8" } - ]; - returns: "u64"; + ], + "returns": "u64" }, { - name: "createTokenLedger"; - accounts: [ + "name": "createTokenLedger", + "accounts": [ { - name: "tokenLedger"; - isMut: true; - isSigner: true; + "name": "tokenLedger", + "isMut": true, + "isSigner": true }, { - name: "payer"; - isMut: true; - isSigner: true; + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "systemProgram"; - isMut: false; - isSigner: false; + "name": "systemProgram", + "isMut": false, + "isSigner": false } - ]; - args: []; + ], + "args": [] } - ]; - accounts: [ + ], + "accounts": [ { - name: "tokenLedger"; - type: { - kind: "struct"; - fields: [ + "name": "TokenLedger", + "type": { + "kind": "struct", + "fields": [ { - name: "tokenAccount"; - type: "publicKey"; + "name": "tokenAccount", + "type": "publicKey" }, { - name: "amount"; - type: "u64"; + "name": "amount", + "type": "u64" } - ]; - }; + ] + } } - ]; - types: [ + ], + "types": [ { - name: "AmountWithSlippage"; - type: { - kind: "struct"; - fields: [ + "name": "AmountWithSlippage", + "type": { + "kind": "struct", + "fields": [ { - name: "amount"; - type: "u64"; + "name": "amount", + "type": "u64" }, { - name: "slippageBps"; - type: "u16"; + "name": "slippageBps", + "type": "u16" } - ]; - }; + ] + } }, { - name: "RoutePlanStep"; - type: { - kind: "struct"; - fields: [ + "name": "RoutePlanStep", + "type": { + "kind": "struct", + "fields": [ { - name: "swap"; - type: { - defined: "Swap"; - }; + "name": "swap", + "type": { + "defined": "Swap" + } }, { - name: "percent"; - type: "u8"; + "name": "percent", + "type": "u8" }, { - name: "inputIndex"; - type: "u8"; + "name": "inputIndex", + "type": "u8" }, { - name: "outputIndex"; - type: "u8"; + "name": "outputIndex", + "type": "u8" } - ]; - }; + ] + } }, { - name: "Side"; - type: { - kind: "enum"; - variants: [ + "name": "PlatformFeeType", + "type": { + "kind": "enum", + "variants": [ { - name: "Bid"; + "name": "SourceMint", + "fields": [ + { + "name": "mint", + "type": "publicKey" + } + ] }, { - name: "Ask"; + "name": "DestinationMint", + "fields": [ + { + "name": "mint", + "type": "publicKey" + } + ] + }, + { + "name": "Zero" + } + ] + } + }, + { + "name": "Side", + "type": { + "kind": "enum", + "variants": [ + { + "name": "Bid" + }, + { + "name": "Ask" } - ]; - }; + ] + } }, { - name: "Swap"; - type: { - kind: "enum"; - variants: [ + "name": "Swap", + "type": { + "kind": "enum", + "variants": [ { - name: "Saber"; + "name": "Saber" }, { - name: "SaberAddDecimalsDeposit"; + "name": "SaberAddDecimalsDeposit" }, { - name: "SaberAddDecimalsWithdraw"; + "name": "SaberAddDecimalsWithdraw" }, { - name: "TokenSwap"; + "name": "TokenSwap" }, { - name: "Sencha"; + "name": "Sencha" }, { - name: "Step"; + "name": "Step" }, { - name: "Cropper"; + "name": "Cropper" }, { - name: "Raydium"; + "name": "Raydium" }, { - name: "Crema"; - fields: [ + "name": "Crema", + "fields": [ { - name: "aToB"; - type: "bool"; + "name": "aToB", + "type": "bool" } - ]; + ] }, { - name: "Lifinity"; + "name": "Lifinity" }, { - name: "Mercurial"; + "name": "Mercurial" }, { - name: "Cykura"; + "name": "Cykura" }, { - name: "Serum"; - fields: [ + "name": "Serum", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "MarinadeDeposit"; + "name": "MarinadeDeposit" }, { - name: "MarinadeUnstake"; + "name": "MarinadeUnstake" }, { - name: "Aldrin"; - fields: [ + "name": "Aldrin", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "AldrinV2"; - fields: [ + "name": "AldrinV2", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "Whirlpool"; - fields: [ + "name": "Whirlpool", + "fields": [ { - name: "aToB"; - type: "bool"; + "name": "aToB", + "type": "bool" } - ]; + ] }, { - name: "Invariant"; - fields: [ + "name": "Invariant", + "fields": [ { - name: "xToY"; - type: "bool"; + "name": "xToY", + "type": "bool" } - ]; + ] }, { - name: "Meteora"; + "name": "Meteora" }, { - name: "GooseFX"; + "name": "GooseFX" }, { - name: "DeltaFi"; - fields: [ + "name": "DeltaFi", + "fields": [ { - name: "stable"; - type: "bool"; + "name": "stable", + "type": "bool" } - ]; + ] }, { - name: "Balansol"; + "name": "Balansol" }, { - name: "MarcoPolo"; - fields: [ + "name": "MarcoPolo", + "fields": [ { - name: "xToY"; - type: "bool"; + "name": "xToY", + "type": "bool" } - ]; + ] }, { - name: "Dradex"; - fields: [ + "name": "Dradex", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "LifinityV2"; + "name": "LifinityV2" }, { - name: "RaydiumClmm"; + "name": "RaydiumClmm" }, { - name: "Openbook"; - fields: [ + "name": "Openbook", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "Phoenix"; - fields: [ + "name": "Phoenix", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "Symmetry"; - fields: [ + "name": "Symmetry", + "fields": [ { - name: "fromTokenId"; - type: "u64"; + "name": "fromTokenId", + "type": "u64" }, { - name: "toTokenId"; - type: "u64"; + "name": "toTokenId", + "type": "u64" } - ]; + ] }, { - name: "TokenSwapV2"; + "name": "TokenSwapV2" }, { - name: "HeliumTreasuryManagementRedeemV0"; + "name": "HeliumTreasuryManagementRedeemV0" }, { - name: "StakeDexStakeWrappedSol"; + "name": "StakeDexStakeWrappedSol" }, { - name: "StakeDexSwapViaStake"; - fields: [ + "name": "StakeDexSwapViaStake", + "fields": [ { - name: "bridgeStakeSeed"; - type: "u32"; + "name": "bridgeStakeSeed", + "type": "u32" } - ]; + ] }, { - name: "GooseFXV2"; + "name": "GooseFXV2" }, { - name: "Perps"; + "name": "Perps" }, { - name: "PerpsAddLiquidity"; + "name": "PerpsAddLiquidity" }, { - name: "PerpsRemoveLiquidity"; + "name": "PerpsRemoveLiquidity" }, { - name: "MeteoraDlmm"; + "name": "MeteoraDlmm" }, { - name: "OpenBookV2"; - fields: [ + "name": "OpenBookV2", + "fields": [ { - name: "side"; - type: { - defined: "Side"; - }; + "name": "side", + "type": { + "defined": "Side" + } } - ]; + ] }, { - name: "RaydiumClmmV2"; + "name": "RaydiumClmmV2" }, { - name: "StakeDexPrefundWithdrawStakeAndDepositStake"; - fields: [ + "name": "StakeDexPrefundWithdrawStakeAndDepositStake", + "fields": [ { - name: "bridgeStakeSeed"; - type: "u32"; + "name": "bridgeStakeSeed", + "type": "u32" } - ]; + ] }, { - name: "Clone"; - fields: [ + "name": "Clone", + "fields": [ { - name: "poolIndex"; - type: "u8"; + "name": "poolIndex", + "type": "u8" }, { - name: "quantityIsInput"; - type: "bool"; + "name": "quantityIsInput", + "type": "bool" }, { - name: "quantityIsCollateral"; - type: "bool"; + "name": "quantityIsCollateral", + "type": "bool" } - ]; + ] }, { - name: "SanctumS"; - fields: [ + "name": "SanctumS", + "fields": [ { - name: "srcLstValueCalcAccs"; - type: "u8"; + "name": "srcLstValueCalcAccs", + "type": "u8" }, { - name: "dstLstValueCalcAccs"; - type: "u8"; + "name": "dstLstValueCalcAccs", + "type": "u8" }, { - name: "srcLstIndex"; - type: "u32"; + "name": "srcLstIndex", + "type": "u32" }, { - name: "dstLstIndex"; - type: "u32"; + "name": "dstLstIndex", + "type": "u32" } - ]; + ] }, { - name: "SanctumSAddLiquidity"; - fields: [ + "name": "SanctumSAddLiquidity", + "fields": [ { - name: "lstValueCalcAccs"; - type: "u8"; + "name": "lstValueCalcAccs", + "type": "u8" }, { - name: "lstIndex"; - type: "u32"; + "name": "lstIndex", + "type": "u32" } - ]; + ] }, { - name: "SanctumSRemoveLiquidity"; - fields: [ + "name": "SanctumSRemoveLiquidity", + "fields": [ { - name: "lstValueCalcAccs"; - type: "u8"; + "name": "lstValueCalcAccs", + "type": "u8" }, { - name: "lstIndex"; - type: "u32"; + "name": "lstIndex", + "type": "u32" } - ]; + ] }, { - name: "RaydiumCP"; + "name": "RaydiumCP" }, { - name: "WhirlpoolSwapV2"; - fields: [ + "name": "WhirlpoolSwapV2", + "fields": [ { - name: "aToB"; - type: "bool"; + "name": "aToB", + "type": "bool" }, { - name: "remainingAccountsInfo"; - type: { - option: { - defined: "RemainingAccountsInfo"; - }; - }; + "name": "remainingAccountsInfo", + "type": { + "option": { + "defined": "RemainingAccountsInfo" + } + } } - ]; + ] + }, + { + "name": "OneIntro" + }, + { + "name": "PumpdotfunWrappedBuy" + }, + { + "name": "PumpdotfunWrappedSell" + }, + { + "name": "PerpsV2" + }, + { + "name": "PerpsV2AddLiquidity" + }, + { + "name": "PerpsV2RemoveLiquidity" + }, + { + "name": "MoonshotWrappedBuy" }, { - name: "OneIntro"; + "name": "MoonshotWrappedSell" } - ]; - }; + ] + } }, { - name: "RemainingAccountsSlice"; - type: { - kind: "struct"; - fields: [ + "name": "RemainingAccountsSlice", + "type": { + "kind": "struct", + "fields": [ { - name: "accountsType"; - type: { - defined: "AccountsType"; - }; + "name": "accountsType", + "type": { + "defined": "AccountsType" + } }, { - name: "length"; - type: "u8"; + "name": "length", + "type": "u8" } - ]; - }; + ] + } }, { - name: "RemainingAccountsInfo"; - type: { - kind: "struct"; - fields: [ + "name": "RemainingAccountsInfo", + "type": { + "kind": "struct", + "fields": [ { - name: "slices"; - type: { - vec: { - defined: "RemainingAccountsSlice"; - }; - }; + "name": "slices", + "type": { + "vec": { + "defined": "RemainingAccountsSlice" + } + } } - ]; - }; + ] + } }, { - name: "AccountsType"; - type: { - kind: "enum"; - variants: [ + "name": "AccountsType", + "type": { + "kind": "enum", + "variants": [ { - name: "TransferHookA"; + "name": "TransferHookA" }, { - name: "TransferHookB"; + "name": "TransferHookB" } - ]; - }; + ] + } } - ]; - events: [ + ], + "events": [ { - name: "SwapEvent"; - fields: [ + "name": "SwapEvent", + "fields": [ { - name: "amm"; - type: "publicKey"; - index: false; + "name": "amm", + "type": "publicKey", + "index": false }, { - name: "inputMint"; - type: "publicKey"; - index: false; + "name": "inputMint", + "type": "publicKey", + "index": false }, { - name: "inputAmount"; - type: "u64"; - index: false; + "name": "inputAmount", + "type": "u64", + "index": false }, { - name: "outputMint"; - type: "publicKey"; - index: false; + "name": "outputMint", + "type": "publicKey", + "index": false }, { - name: "outputAmount"; - type: "u64"; - index: false; + "name": "outputAmount", + "type": "u64", + "index": false } - ]; + ] }, { - name: "FeeEvent"; - fields: [ + "name": "FeeEvent", + "fields": [ { - name: "account"; - type: "publicKey"; - index: false; + "name": "account", + "type": "publicKey", + "index": false }, { - name: "mint"; - type: "publicKey"; - index: false; + "name": "mint", + "type": "publicKey", + "index": false }, { - name: "amount"; - type: "u64"; - index: false; + "name": "amount", + "type": "u64", + "index": false } - ]; + ] } - ]; - errors: [ + ], + "errors": [ { - code: 6000; - name: "EmptyRoute"; - msg: "Empty route"; + "code": 6000, + "name": "EmptyRoute", + "msg": "Empty route" }, { - code: 6001; - name: "SlippageToleranceExceeded"; - msg: "Slippage tolerance exceeded"; + "code": 6001, + "name": "SlippageToleranceExceeded", + "msg": "Slippage tolerance exceeded" }, { - code: 6002; - name: "InvalidCalculation"; - msg: "Invalid calculation"; + "code": 6002, + "name": "InvalidCalculation", + "msg": "Invalid calculation" }, { - code: 6003; - name: "MissingPlatformFeeAccount"; - msg: "Missing platform fee account"; + "code": 6003, + "name": "MissingPlatformFeeAccount", + "msg": "Missing platform fee account" }, { - code: 6004; - name: "InvalidSlippage"; - msg: "Invalid slippage"; + "code": 6004, + "name": "InvalidSlippage", + "msg": "Invalid slippage" }, { - code: 6005; - name: "NotEnoughPercent"; - msg: "Not enough percent to 100"; + "code": 6005, + "name": "NotEnoughPercent", + "msg": "Not enough percent to 100" }, { - code: 6006; - name: "InvalidInputIndex"; - msg: "Token input index is invalid"; + "code": 6006, + "name": "InvalidInputIndex", + "msg": "Token input index is invalid" }, { - code: 6007; - name: "InvalidOutputIndex"; - msg: "Token output index is invalid"; + "code": 6007, + "name": "InvalidOutputIndex", + "msg": "Token output index is invalid" }, { - code: 6008; - name: "NotEnoughAccountKeys"; - msg: "Not Enough Account keys"; + "code": 6008, + "name": "NotEnoughAccountKeys", + "msg": "Not Enough Account keys" }, { - code: 6009; - name: "NonZeroMinimumOutAmountNotSupported"; - msg: "Non zero minimum out amount not supported"; + "code": 6009, + "name": "NonZeroMinimumOutAmountNotSupported", + "msg": "Non zero minimum out amount not supported" }, { - code: 6010; - name: "InvalidRoutePlan"; - msg: "Invalid route plan"; + "code": 6010, + "name": "InvalidRoutePlan", + "msg": "Invalid route plan" }, { - code: 6011; - name: "InvalidReferralAuthority"; - msg: "Invalid referral authority"; + "code": 6011, + "name": "InvalidReferralAuthority", + "msg": "Invalid referral authority" }, { - code: 6012; - name: "LedgerTokenAccountDoesNotMatch"; - msg: "Token account doesn't match the ledger"; + "code": 6012, + "name": "LedgerTokenAccountDoesNotMatch", + "msg": "Token account doesn't match the ledger" }, { - code: 6013; - name: "InvalidTokenLedger"; - msg: "Invalid token ledger"; + "code": 6013, + "name": "InvalidTokenLedger", + "msg": "Invalid token ledger" }, { - code: 6014; - name: "IncorrectTokenProgramID"; - msg: "Token program ID is invalid"; + "code": 6014, + "name": "IncorrectTokenProgramID", + "msg": "Token program ID is invalid" }, { - code: 6015; - name: "TokenProgramNotProvided"; - msg: "Token program not provided"; + "code": 6015, + "name": "TokenProgramNotProvided", + "msg": "Token program not provided" }, { - code: 6016; - name: "SwapNotSupported"; - msg: "Swap not supported"; + "code": 6016, + "name": "SwapNotSupported", + "msg": "Swap not supported" }, { - code: 6017; - name: "ExactOutAmountNotMatched"; - msg: "Exact out amount doesn't match"; + "code": 6017, + "name": "ExactOutAmountNotMatched", + "msg": "Exact out amount doesn't match" }, { - code: 6018; - name: "SourceAndDestinationMintCannotBeTheSame"; - msg: "Source mint and destination mint cannot the same"; + "code": 6018, + "name": "SourceAndDestinationMintCannotBeTheSame", + "msg": "Source mint and destination mint cannot the same" } - ]; + ] }; export const IDL: Jupiter = { - version: "0.1.0", - name: "jupiter", - instructions: [ + "version": "0.1.0", + "name": "jupiter", + "instructions": [ { - name: "route", - docs: ["route_plan Topologically sorted trade DAG"], - accounts: [ - { - name: "tokenProgram", - isMut: false, - isSigner: false, - }, - { - name: "userTransferAuthority", - isMut: false, - isSigner: true, - }, + "name": "route", + "docs": [ + "route_plan Topologically sorted trade DAG" + ], + "accounts": [ { - name: "userSourceTokenAccount", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userDestinationTokenAccount", - isMut: false, - isSigner: false, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "destinationTokenAccount", - isMut: false, - isSigner: false, - isOptional: true, + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "eventAuthority", - isMut: false, - isSigner: false, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true + } ], - args: [ + "args": [ { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "inAmount", - type: "u64", + "name": "inAmount", + "type": "u64" }, { - name: "quotedOutAmount", - type: "u64", + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "routeWithTokenLedger", - accounts: [ - { - name: "tokenProgram", - isMut: false, - isSigner: false, - }, - { - name: "userTransferAuthority", - isMut: false, - isSigner: true, - }, + "name": "routeWithTokenLedger", + "accounts": [ { - name: "userSourceTokenAccount", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userDestinationTokenAccount", - isMut: false, - isSigner: false, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "destinationTokenAccount", - isMut: false, - isSigner: false, - isOptional: true, + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "tokenLedger", - isMut: false, - isSigner: false, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "eventAuthority", - isMut: false, - isSigner: false, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "tokenLedger", + "isMut": false, + "isSigner": false + } ], - args: [ + "args": [ { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "quotedOutAmount", - type: "u64", + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "sharedAccountsRoute", - docs: [ - "Route by using program owned token accounts and open orders accounts.", + "name": "sharedAccountsRoute", + "docs": [ + "Route by using program owned token accounts and open orders accounts." ], - accounts: [ - { - name: "tokenProgram", - isMut: false, - isSigner: false, - }, + "accounts": [ { - name: "programAuthority", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userTransferAuthority", - isMut: false, - isSigner: true, + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "sourceTokenAccount", - isMut: true, - isSigner: false, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "programSourceTokenAccount", - isMut: true, - isSigner: false, + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programDestinationTokenAccount", - isMut: true, - isSigner: false, + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount", - isMut: true, - isSigner: false, + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint", - isMut: false, - isSigner: false, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "token2022Program", - isMut: false, - isSigner: false, - isOptional: true, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "eventAuthority", - isMut: false, - isSigner: false, - }, - { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true + } ], - args: [ + "args": [ { - name: "id", - type: "u8", + "name": "id", + "type": "u8" }, { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "inAmount", - type: "u64", + "name": "inAmount", + "type": "u64" }, { - name: "quotedOutAmount", - type: "u64", + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "sharedAccountsRouteWithTokenLedger", - accounts: [ + "name": "sharedAccountsRouteWithTokenLedger", + "accounts": [ { - name: "tokenProgram", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "programAuthority", - isMut: false, - isSigner: false, + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "userTransferAuthority", - isMut: false, - isSigner: true, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "sourceTokenAccount", - isMut: true, - isSigner: false, + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programSourceTokenAccount", - isMut: true, - isSigner: false, + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programDestinationTokenAccount", - isMut: true, - isSigner: false, + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount", - isMut: true, - isSigner: false, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint", - isMut: false, - isSigner: false, + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "token2022Program", - isMut: false, - isSigner: false, - isOptional: true, + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true }, { - name: "tokenLedger", - isMut: false, - isSigner: false, - }, - { - name: "eventAuthority", - isMut: false, - isSigner: false, - }, - { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "tokenLedger", + "isMut": false, + "isSigner": false + } ], - args: [ + "args": [ { - name: "id", - type: "u8", + "name": "id", + "type": "u8" }, { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "quotedOutAmount", - type: "u64", + "name": "quotedOutAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "exactOutRoute", - accounts: [ - { - name: "tokenProgram", - isMut: false, - isSigner: false, - }, - { - name: "userTransferAuthority", - isMut: false, - isSigner: true, - }, + "name": "exactOutRoute", + "accounts": [ { - name: "userSourceTokenAccount", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userDestinationTokenAccount", - isMut: false, - isSigner: false, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "destinationTokenAccount", - isMut: false, - isSigner: false, - isOptional: true, + "name": "userSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint", - isMut: false, - isSigner: false, + "name": "userDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "token2022Program", - isMut: false, - isSigner: false, - isOptional: true, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "eventAuthority", - isMut: false, - isSigner: false, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true + } ], - args: [ + "args": [ { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "outAmount", - type: "u64", + "name": "outAmount", + "type": "u64" }, { - name: "quotedInAmount", - type: "u64", + "name": "quotedInAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "sharedAccountsExactOutRoute", - docs: [ - "Route by using program owned token accounts and open orders accounts.", + "name": "sharedAccountsExactOutRoute", + "docs": [ + "Route by using program owned token accounts and open orders accounts." ], - accounts: [ - { - name: "tokenProgram", - isMut: false, - isSigner: false, - }, + "accounts": [ { - name: "programAuthority", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false }, { - name: "userTransferAuthority", - isMut: false, - isSigner: true, + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "sourceTokenAccount", - isMut: true, - isSigner: false, + "name": "userTransferAuthority", + "isMut": false, + "isSigner": true }, { - name: "programSourceTokenAccount", - isMut: true, - isSigner: false, + "name": "sourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "programDestinationTokenAccount", - isMut: true, - isSigner: false, + "name": "programSourceTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount", - isMut: true, - isSigner: false, + "name": "programDestinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "sourceMint", - isMut: false, - isSigner: false, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationMint", - isMut: false, - isSigner: false, + "name": "sourceMint", + "isMut": false, + "isSigner": false }, { - name: "platformFeeAccount", - isMut: true, - isSigner: false, - isOptional: true, + "name": "destinationMint", + "isMut": false, + "isSigner": false }, { - name: "token2022Program", - isMut: false, - isSigner: false, - isOptional: true, + "name": "platformFeeAccount", + "isMut": true, + "isSigner": false, + "isOptional": true }, { - name: "eventAuthority", - isMut: false, - isSigner: false, - }, - { - name: "program", - isMut: false, - isSigner: false, - }, + "name": "token2022Program", + "isMut": false, + "isSigner": false, + "isOptional": true + } ], - args: [ + "args": [ { - name: "id", - type: "u8", + "name": "id", + "type": "u8" }, { - name: "routePlan", - type: { - vec: { - defined: "RoutePlanStep", - }, - }, + "name": "routePlan", + "type": { + "vec": { + "defined": "RoutePlanStep" + } + } }, { - name: "outAmount", - type: "u64", + "name": "outAmount", + "type": "u64" }, { - name: "quotedInAmount", - type: "u64", + "name": "quotedInAmount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", + "name": "slippageBps", + "type": "u16" }, { - name: "platformFeeBps", - type: "u8", - }, + "name": "platformFeeBps", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "setTokenLedger", - accounts: [ + "name": "setTokenLedger", + "accounts": [ { - name: "tokenLedger", - isMut: true, - isSigner: false, + "name": "tokenLedger", + "isMut": true, + "isSigner": false }, { - name: "tokenAccount", - isMut: false, - isSigner: false, - }, + "name": "tokenAccount", + "isMut": false, + "isSigner": false + } ], - args: [], + "args": [] }, { - name: "createOpenOrders", - accounts: [ + "name": "createOpenOrders", + "accounts": [ { - name: "openOrders", - isMut: true, - isSigner: false, + "name": "openOrders", + "isMut": true, + "isSigner": false }, { - name: "payer", - isMut: true, - isSigner: true, + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "dexProgram", - isMut: false, - isSigner: false, + "name": "dexProgram", + "isMut": false, + "isSigner": false }, { - name: "systemProgram", - isMut: false, - isSigner: false, + "name": "systemProgram", + "isMut": false, + "isSigner": false }, { - name: "rent", - isMut: false, - isSigner: false, + "name": "rent", + "isMut": false, + "isSigner": false }, { - name: "market", - isMut: false, - isSigner: false, - }, + "name": "market", + "isMut": false, + "isSigner": false + } ], - args: [], + "args": [] }, { - name: "createProgramOpenOrders", - accounts: [ + "name": "createTokenAccount", + "accounts": [ + { + "name": "tokenAccount", + "isMut": true, + "isSigner": false + }, { - name: "openOrders", - isMut: true, - isSigner: false, + "name": "user", + "isMut": true, + "isSigner": true }, { - name: "payer", - isMut: true, - isSigner: true, + "name": "mint", + "isMut": false, + "isSigner": false }, { - name: "programAuthority", - isMut: false, - isSigner: false, + "name": "tokenProgram", + "isMut": false, + "isSigner": false + }, + { + "name": "systemProgram", + "isMut": false, + "isSigner": false + } + ], + "args": [ + { + "name": "bump", + "type": "u8" + } + ] + }, + { + "name": "createProgramOpenOrders", + "accounts": [ + { + "name": "openOrders", + "isMut": true, + "isSigner": false }, { - name: "dexProgram", - isMut: false, - isSigner: false, + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "systemProgram", - isMut: false, - isSigner: false, + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "rent", - isMut: false, - isSigner: false, + "name": "dexProgram", + "isMut": false, + "isSigner": false }, { - name: "market", - isMut: false, - isSigner: false, + "name": "systemProgram", + "isMut": false, + "isSigner": false }, - ], - args: [ { - name: "id", - type: "u8", + "name": "rent", + "isMut": false, + "isSigner": false }, + { + "name": "market", + "isMut": false, + "isSigner": false + } ], + "args": [ + { + "name": "id", + "type": "u8" + } + ] }, { - name: "claim", - accounts: [ + "name": "claim", + "accounts": [ { - name: "wallet", - isMut: true, - isSigner: false, + "name": "wallet", + "isMut": true, + "isSigner": false }, { - name: "programAuthority", - isMut: true, - isSigner: false, + "name": "programAuthority", + "isMut": true, + "isSigner": false }, { - name: "systemProgram", - isMut: false, - isSigner: false, - }, + "name": "systemProgram", + "isMut": false, + "isSigner": false + } ], - args: [ + "args": [ { - name: "id", - type: "u8", - }, + "name": "id", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "claimToken", - accounts: [ + "name": "claimToken", + "accounts": [ { - name: "payer", - isMut: true, - isSigner: true, + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "wallet", - isMut: false, - isSigner: false, + "name": "wallet", + "isMut": false, + "isSigner": false }, { - name: "programAuthority", - isMut: false, - isSigner: false, + "name": "programAuthority", + "isMut": false, + "isSigner": false }, { - name: "programTokenAccount", - isMut: true, - isSigner: false, + "name": "programTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "destinationTokenAccount", - isMut: true, - isSigner: false, + "name": "destinationTokenAccount", + "isMut": true, + "isSigner": false }, { - name: "mint", - isMut: false, - isSigner: false, + "name": "mint", + "isMut": false, + "isSigner": false }, { - name: "associatedTokenTokenProgram", - isMut: false, - isSigner: false, + "name": "associatedTokenTokenProgram", + "isMut": false, + "isSigner": false }, { - name: "associatedTokenProgram", - isMut: false, - isSigner: false, + "name": "associatedTokenProgram", + "isMut": false, + "isSigner": false }, { - name: "systemProgram", - isMut: false, - isSigner: false, - }, + "name": "systemProgram", + "isMut": false, + "isSigner": false + } ], - args: [ + "args": [ { - name: "id", - type: "u8", - }, + "name": "id", + "type": "u8" + } ], - returns: "u64", + "returns": "u64" }, { - name: "createTokenLedger", - accounts: [ + "name": "createTokenLedger", + "accounts": [ { - name: "tokenLedger", - isMut: true, - isSigner: true, + "name": "tokenLedger", + "isMut": true, + "isSigner": true }, { - name: "payer", - isMut: true, - isSigner: true, + "name": "payer", + "isMut": true, + "isSigner": true }, { - name: "systemProgram", - isMut: false, - isSigner: false, - }, + "name": "systemProgram", + "isMut": false, + "isSigner": false + } ], - args: [], - }, + "args": [] + } ], - accounts: [ + "accounts": [ { - name: "tokenLedger", - type: { - kind: "struct", - fields: [ + "name": "TokenLedger", + "type": { + "kind": "struct", + "fields": [ { - name: "tokenAccount", - type: "publicKey", + "name": "tokenAccount", + "type": "publicKey" }, { - name: "amount", - type: "u64", - }, - ], - }, - }, + "name": "amount", + "type": "u64" + } + ] + } + } ], - types: [ + "types": [ { - name: "AmountWithSlippage", - type: { - kind: "struct", - fields: [ + "name": "AmountWithSlippage", + "type": { + "kind": "struct", + "fields": [ { - name: "amount", - type: "u64", + "name": "amount", + "type": "u64" }, { - name: "slippageBps", - type: "u16", - }, - ], - }, + "name": "slippageBps", + "type": "u16" + } + ] + } }, { - name: "RoutePlanStep", - type: { - kind: "struct", - fields: [ + "name": "RoutePlanStep", + "type": { + "kind": "struct", + "fields": [ { - name: "swap", - type: { - defined: "Swap", - }, + "name": "swap", + "type": { + "defined": "Swap" + } }, { - name: "percent", - type: "u8", + "name": "percent", + "type": "u8" }, { - name: "inputIndex", - type: "u8", + "name": "inputIndex", + "type": "u8" }, { - name: "outputIndex", - type: "u8", - }, - ], - }, + "name": "outputIndex", + "type": "u8" + } + ] + } }, { - name: "Side", - type: { - kind: "enum", - variants: [ + "name": "PlatformFeeType", + "type": { + "kind": "enum", + "variants": [ { - name: "Bid", + "name": "SourceMint", + "fields": [ + { + "name": "mint", + "type": "publicKey" + } + ] + }, + { + "name": "DestinationMint", + "fields": [ + { + "name": "mint", + "type": "publicKey" + } + ] }, { - name: "Ask", + "name": "Zero" + } + ] + } + }, + { + "name": "Side", + "type": { + "kind": "enum", + "variants": [ + { + "name": "Bid" }, - ], - }, + { + "name": "Ask" + } + ] + } }, { - name: "Swap", - type: { - kind: "enum", - variants: [ + "name": "Swap", + "type": { + "kind": "enum", + "variants": [ { - name: "Saber", + "name": "Saber" }, { - name: "SaberAddDecimalsDeposit", + "name": "SaberAddDecimalsDeposit" }, { - name: "SaberAddDecimalsWithdraw", + "name": "SaberAddDecimalsWithdraw" }, { - name: "TokenSwap", + "name": "TokenSwap" }, { - name: "Sencha", + "name": "Sencha" }, { - name: "Step", + "name": "Step" }, { - name: "Cropper", + "name": "Cropper" }, { - name: "Raydium", + "name": "Raydium" }, { - name: "Crema", - fields: [ + "name": "Crema", + "fields": [ { - name: "aToB", - type: "bool", - }, - ], + "name": "aToB", + "type": "bool" + } + ] }, { - name: "Lifinity", + "name": "Lifinity" }, { - name: "Mercurial", + "name": "Mercurial" }, { - name: "Cykura", + "name": "Cykura" }, { - name: "Serum", - fields: [ + "name": "Serum", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "MarinadeDeposit", + "name": "MarinadeDeposit" }, { - name: "MarinadeUnstake", + "name": "MarinadeUnstake" }, { - name: "Aldrin", - fields: [ + "name": "Aldrin", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "AldrinV2", - fields: [ + "name": "AldrinV2", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "Whirlpool", - fields: [ + "name": "Whirlpool", + "fields": [ { - name: "aToB", - type: "bool", - }, - ], + "name": "aToB", + "type": "bool" + } + ] }, { - name: "Invariant", - fields: [ + "name": "Invariant", + "fields": [ { - name: "xToY", - type: "bool", - }, - ], + "name": "xToY", + "type": "bool" + } + ] }, { - name: "Meteora", + "name": "Meteora" }, { - name: "GooseFX", + "name": "GooseFX" }, { - name: "DeltaFi", - fields: [ + "name": "DeltaFi", + "fields": [ { - name: "stable", - type: "bool", - }, - ], + "name": "stable", + "type": "bool" + } + ] }, { - name: "Balansol", + "name": "Balansol" }, { - name: "MarcoPolo", - fields: [ + "name": "MarcoPolo", + "fields": [ { - name: "xToY", - type: "bool", - }, - ], + "name": "xToY", + "type": "bool" + } + ] }, { - name: "Dradex", - fields: [ + "name": "Dradex", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "LifinityV2", + "name": "LifinityV2" }, { - name: "RaydiumClmm", + "name": "RaydiumClmm" }, { - name: "Openbook", - fields: [ + "name": "Openbook", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "Phoenix", - fields: [ + "name": "Phoenix", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "Symmetry", - fields: [ + "name": "Symmetry", + "fields": [ { - name: "fromTokenId", - type: "u64", + "name": "fromTokenId", + "type": "u64" }, { - name: "toTokenId", - type: "u64", - }, - ], + "name": "toTokenId", + "type": "u64" + } + ] }, { - name: "TokenSwapV2", + "name": "TokenSwapV2" }, { - name: "HeliumTreasuryManagementRedeemV0", + "name": "HeliumTreasuryManagementRedeemV0" }, { - name: "StakeDexStakeWrappedSol", + "name": "StakeDexStakeWrappedSol" }, { - name: "StakeDexSwapViaStake", - fields: [ + "name": "StakeDexSwapViaStake", + "fields": [ { - name: "bridgeStakeSeed", - type: "u32", - }, - ], + "name": "bridgeStakeSeed", + "type": "u32" + } + ] }, { - name: "GooseFXV2", + "name": "GooseFXV2" }, { - name: "Perps", + "name": "Perps" }, { - name: "PerpsAddLiquidity", + "name": "PerpsAddLiquidity" }, { - name: "PerpsRemoveLiquidity", + "name": "PerpsRemoveLiquidity" }, { - name: "MeteoraDlmm", + "name": "MeteoraDlmm" }, { - name: "OpenBookV2", - fields: [ + "name": "OpenBookV2", + "fields": [ { - name: "side", - type: { - defined: "Side", - }, - }, - ], + "name": "side", + "type": { + "defined": "Side" + } + } + ] }, { - name: "RaydiumClmmV2", + "name": "RaydiumClmmV2" }, { - name: "StakeDexPrefundWithdrawStakeAndDepositStake", - fields: [ + "name": "StakeDexPrefundWithdrawStakeAndDepositStake", + "fields": [ { - name: "bridgeStakeSeed", - type: "u32", - }, - ], + "name": "bridgeStakeSeed", + "type": "u32" + } + ] }, { - name: "Clone", - fields: [ + "name": "Clone", + "fields": [ { - name: "poolIndex", - type: "u8", + "name": "poolIndex", + "type": "u8" }, { - name: "quantityIsInput", - type: "bool", + "name": "quantityIsInput", + "type": "bool" }, { - name: "quantityIsCollateral", - type: "bool", - }, - ], + "name": "quantityIsCollateral", + "type": "bool" + } + ] }, { - name: "SanctumS", - fields: [ + "name": "SanctumS", + "fields": [ { - name: "srcLstValueCalcAccs", - type: "u8", + "name": "srcLstValueCalcAccs", + "type": "u8" }, { - name: "dstLstValueCalcAccs", - type: "u8", + "name": "dstLstValueCalcAccs", + "type": "u8" }, { - name: "srcLstIndex", - type: "u32", + "name": "srcLstIndex", + "type": "u32" }, { - name: "dstLstIndex", - type: "u32", - }, - ], + "name": "dstLstIndex", + "type": "u32" + } + ] }, { - name: "SanctumSAddLiquidity", - fields: [ + "name": "SanctumSAddLiquidity", + "fields": [ { - name: "lstValueCalcAccs", - type: "u8", + "name": "lstValueCalcAccs", + "type": "u8" }, { - name: "lstIndex", - type: "u32", - }, - ], + "name": "lstIndex", + "type": "u32" + } + ] }, { - name: "SanctumSRemoveLiquidity", - fields: [ + "name": "SanctumSRemoveLiquidity", + "fields": [ { - name: "lstValueCalcAccs", - type: "u8", + "name": "lstValueCalcAccs", + "type": "u8" }, { - name: "lstIndex", - type: "u32", - }, - ], + "name": "lstIndex", + "type": "u32" + } + ] }, { - name: "RaydiumCP", + "name": "RaydiumCP" }, { - name: "WhirlpoolSwapV2", - fields: [ + "name": "WhirlpoolSwapV2", + "fields": [ { - name: "aToB", - type: "bool", + "name": "aToB", + "type": "bool" }, { - name: "remainingAccountsInfo", - type: { - option: { - defined: "RemainingAccountsInfo", - }, - }, - }, - ], + "name": "remainingAccountsInfo", + "type": { + "option": { + "defined": "RemainingAccountsInfo" + } + } + } + ] }, { - name: "OneIntro", + "name": "OneIntro" + }, + { + "name": "PumpdotfunWrappedBuy" + }, + { + "name": "PumpdotfunWrappedSell" + }, + { + "name": "PerpsV2" }, - ], - }, - }, - { - name: "RemainingAccountsSlice", - type: { - kind: "struct", - fields: [ { - name: "accountsType", - type: { - defined: "AccountsType", - }, + "name": "PerpsV2AddLiquidity" }, { - name: "length", - type: "u8", + "name": "PerpsV2RemoveLiquidity" }, - ], - }, + { + "name": "MoonshotWrappedBuy" + }, + { + "name": "MoonshotWrappedSell" + } + ] + } }, { - name: "RemainingAccountsInfo", - type: { - kind: "struct", - fields: [ + "name": "RemainingAccountsSlice", + "type": { + "kind": "struct", + "fields": [ { - name: "slices", - type: { - vec: { - defined: "RemainingAccountsSlice", - }, - }, + "name": "accountsType", + "type": { + "defined": "AccountsType" + } }, - ], - }, + { + "name": "length", + "type": "u8" + } + ] + } }, { - name: "AccountsType", - type: { - kind: "enum", - variants: [ + "name": "RemainingAccountsInfo", + "type": { + "kind": "struct", + "fields": [ { - name: "TransferHookA", - }, + "name": "slices", + "type": { + "vec": { + "defined": "RemainingAccountsSlice" + } + } + } + ] + } + }, + { + "name": "AccountsType", + "type": { + "kind": "enum", + "variants": [ { - name: "TransferHookB", + "name": "TransferHookA" }, - ], - }, - }, + { + "name": "TransferHookB" + } + ] + } + } ], - events: [ + "events": [ { - name: "SwapEvent", - fields: [ + "name": "SwapEvent", + "fields": [ { - name: "amm", - type: "publicKey", - index: false, + "name": "amm", + "type": "publicKey", + "index": false }, { - name: "inputMint", - type: "publicKey", - index: false, + "name": "inputMint", + "type": "publicKey", + "index": false }, { - name: "inputAmount", - type: "u64", - index: false, + "name": "inputAmount", + "type": "u64", + "index": false }, { - name: "outputMint", - type: "publicKey", - index: false, + "name": "outputMint", + "type": "publicKey", + "index": false }, { - name: "outputAmount", - type: "u64", - index: false, - }, - ], + "name": "outputAmount", + "type": "u64", + "index": false + } + ] }, { - name: "FeeEvent", - fields: [ + "name": "FeeEvent", + "fields": [ { - name: "account", - type: "publicKey", - index: false, + "name": "account", + "type": "publicKey", + "index": false }, { - name: "mint", - type: "publicKey", - index: false, + "name": "mint", + "type": "publicKey", + "index": false }, { - name: "amount", - type: "u64", - index: false, - }, - ], - }, + "name": "amount", + "type": "u64", + "index": false + } + ] + } ], - errors: [ + "errors": [ { - code: 6000, - name: "EmptyRoute", - msg: "Empty route", + "code": 6000, + "name": "EmptyRoute", + "msg": "Empty route" }, { - code: 6001, - name: "SlippageToleranceExceeded", - msg: "Slippage tolerance exceeded", + "code": 6001, + "name": "SlippageToleranceExceeded", + "msg": "Slippage tolerance exceeded" }, { - code: 6002, - name: "InvalidCalculation", - msg: "Invalid calculation", + "code": 6002, + "name": "InvalidCalculation", + "msg": "Invalid calculation" }, { - code: 6003, - name: "MissingPlatformFeeAccount", - msg: "Missing platform fee account", + "code": 6003, + "name": "MissingPlatformFeeAccount", + "msg": "Missing platform fee account" }, { - code: 6004, - name: "InvalidSlippage", - msg: "Invalid slippage", + "code": 6004, + "name": "InvalidSlippage", + "msg": "Invalid slippage" }, { - code: 6005, - name: "NotEnoughPercent", - msg: "Not enough percent to 100", + "code": 6005, + "name": "NotEnoughPercent", + "msg": "Not enough percent to 100" }, { - code: 6006, - name: "InvalidInputIndex", - msg: "Token input index is invalid", + "code": 6006, + "name": "InvalidInputIndex", + "msg": "Token input index is invalid" }, { - code: 6007, - name: "InvalidOutputIndex", - msg: "Token output index is invalid", + "code": 6007, + "name": "InvalidOutputIndex", + "msg": "Token output index is invalid" }, { - code: 6008, - name: "NotEnoughAccountKeys", - msg: "Not Enough Account keys", + "code": 6008, + "name": "NotEnoughAccountKeys", + "msg": "Not Enough Account keys" }, { - code: 6009, - name: "NonZeroMinimumOutAmountNotSupported", - msg: "Non zero minimum out amount not supported", + "code": 6009, + "name": "NonZeroMinimumOutAmountNotSupported", + "msg": "Non zero minimum out amount not supported" }, { - code: 6010, - name: "InvalidRoutePlan", - msg: "Invalid route plan", + "code": 6010, + "name": "InvalidRoutePlan", + "msg": "Invalid route plan" }, { - code: 6011, - name: "InvalidReferralAuthority", - msg: "Invalid referral authority", + "code": 6011, + "name": "InvalidReferralAuthority", + "msg": "Invalid referral authority" }, { - code: 6012, - name: "LedgerTokenAccountDoesNotMatch", - msg: "Token account doesn't match the ledger", + "code": 6012, + "name": "LedgerTokenAccountDoesNotMatch", + "msg": "Token account doesn't match the ledger" }, { - code: 6013, - name: "InvalidTokenLedger", - msg: "Invalid token ledger", + "code": 6013, + "name": "InvalidTokenLedger", + "msg": "Invalid token ledger" }, { - code: 6014, - name: "IncorrectTokenProgramID", - msg: "Token program ID is invalid", + "code": 6014, + "name": "IncorrectTokenProgramID", + "msg": "Token program ID is invalid" }, { - code: 6015, - name: "TokenProgramNotProvided", - msg: "Token program not provided", + "code": 6015, + "name": "TokenProgramNotProvided", + "msg": "Token program not provided" }, { - code: 6016, - name: "SwapNotSupported", - msg: "Swap not supported", + "code": 6016, + "name": "SwapNotSupported", + "msg": "Swap not supported" }, { - code: 6017, - name: "ExactOutAmountNotMatched", - msg: "Exact out amount doesn't match", + "code": 6017, + "name": "ExactOutAmountNotMatched", + "msg": "Exact out amount doesn't match" }, { - code: 6018, - name: "SourceAndDestinationMintCannotBeTheSame", - msg: "Source mint and destination mint cannot the same", - }, - ], + "code": 6018, + "name": "SourceAndDestinationMintCannotBeTheSame", + "msg": "Source mint and destination mint cannot the same" + } + ] }; diff --git a/src/tests/index.test.ts b/src/tests/index.test.ts index fd1c721..33c06ee 100644 --- a/src/tests/index.test.ts +++ b/src/tests/index.test.ts @@ -92,6 +92,12 @@ describe("instruction parser", () => { "5SnGKXqNQ6zYGfNHQwHWwRtbxnYHUHLbANXgpvCLuXD1LA5paStRBcuXwu2T5eM9xsVWFQTzeUNwPWx6UAQhUb2t"; await compare(currentSignature); }); + + test("transaction with extra 'createTokenAccount' instruction", async () => { + currentSignature = + "5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr"; + await compare(currentSignature); + }); }); async function compare(signature: string) { diff --git a/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/account-EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v.json b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/account-EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v.json new file mode 100644 index 0000000..3dc3b5b --- /dev/null +++ b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/account-EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","result":{"context":{"apiVersion":"1.18.22","slot":287826017},"value":{"data":["AQAAAJj+huiNm+Lqi8HMpIeLKYjCQPUrhCS/tA7Rot3LXhmbYWaN1K87CgAGAQEAAABicKqKWcWUBbRShshncubNEm6bil06OFNtN/e0FOi2Zw==","base64"],"executable":false,"lamports":318766773082,"owner":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","rentEpoch":18446744073709552000,"space":82}},"id":"8c124a50-ee3f-4d4b-a501-b3ebb8414e46"} \ No newline at end of file diff --git a/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/swap-result-0.json b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/swap-result-0.json new file mode 100644 index 0000000..d1d6ac2 --- /dev/null +++ b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/swap-result-0.json @@ -0,0 +1,21 @@ +{ + "parsedEvents": [ + { + "data": { + "amm": "LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo", + "inputMint": "So11111111111111111111111111111111111111112", + "inputAmount": "39600000", + "outputMint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "outputAmount": "5300650" + }, + "name": "ParsedSwapEvent" + } + ], + "initialPositions": [ + 0 + ], + "finalPositions": [ + 0 + ], + "exactOutAmount": "5300650" +} \ No newline at end of file diff --git a/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/tx-5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr.json b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/tx-5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr.json new file mode 100644 index 0000000..3118649 --- /dev/null +++ b/src/tests/snapshot/5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr/tx-5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","result":{"blockTime":1725486366,"meta":{"computeUnitsConsumed":94417,"err":null,"fee":8214,"innerInstructions":[{"index":3,"instructions":[{"parsed":{"info":{"account":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","space":165},"type":"allocate"},"program":"system","programId":"11111111111111111111111111111111","stackHeight":2},{"parsed":{"info":{"account":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","owner":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"},"type":"assign"},"program":"system","programId":"11111111111111111111111111111111","stackHeight":2},{"parsed":{"info":{"account":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","mint":"So11111111111111111111111111111111111111112","owner":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6"},"type":"initializeAccount3"},"program":"spl-token","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","stackHeight":2}]},{"index":4,"instructions":[{"accounts":["HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","H7j5NPopj3tQvDg4N8CxwtYciTn3e8AEV6wSVrxpyDUc","HbYjRzx7teCxqW3unpXBEcNHhfVZvW2vW9MQ99TkizWt","DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","FCmjr2U3TiE6zyY9VEACLnTZL8ga62pHLunH7i3kJWV","So11111111111111111111111111111111111111112","EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","EgEYXef2FCoEYLHJJW74dMbom1atLXo6KwPuA6mSATYA","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","D1ZN9Wj1fRSUQfCjhvnu1hqDMT7hzjzBBpi12nVniYD6","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","B3ajJ3hZ6e8fSJwNzqL4u5ZdQQRoTuBuaQdaq2jFoyVC","EjJEbngWEfsGwmCJbXHspBXFjWB2xxAyD46gA2nSmwiG","5Qp2sJk9DLoG1yjgvDYASmvuWnKJ4LPJW3UVw4hF9Mjx"],"data":"PgQWtn8ozix6dAyzoAJo8Vu8YuakJDbAX","programId":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","stackHeight":2},{"parsed":{"info":{"authority":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","destination":"H7j5NPopj3tQvDg4N8CxwtYciTn3e8AEV6wSVrxpyDUc","mint":"So11111111111111111111111111111111111111112","source":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","tokenAmount":{"amount":"39600000","decimals":9,"uiAmount":0.0396,"uiAmountString":"0.0396"}},"type":"transferChecked"},"program":"spl-token","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","stackHeight":3},{"parsed":{"info":{"authority":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","destination":"FCmjr2U3TiE6zyY9VEACLnTZL8ga62pHLunH7i3kJWV","mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","source":"HbYjRzx7teCxqW3unpXBEcNHhfVZvW2vW9MQ99TkizWt","tokenAmount":{"amount":"5300650","decimals":6,"uiAmount":5.30065,"uiAmountString":"5.30065"}},"type":"transferChecked"},"program":"spl-token","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","stackHeight":3},{"accounts":["D1ZN9Wj1fRSUQfCjhvnu1hqDMT7hzjzBBpi12nVniYD6"],"data":"yCGxBopjnVNQkNP5usq1PpVPviYoH78qx2JCYWGFStt5m6D1u8ivt7uHmx9UpdgBTTHmLVS89mzV4Wsrwoj7iemijtZ79rv1JserktF9bx6nvjnPgSvvdfv9kmC6xKtG8CahrqRq8zFgfD4Qequ5gJMNZeXACpjT1bHCEVWoedU8k7GdZCmHD3nHCUKxbHvh9GNgDM","programId":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","stackHeight":3},{"accounts":["D8cy77BBepLMngZx6ZukaTff5hCt1HrWyKk3Hnd9oitf"],"data":"QMqFu4fYGGeUEysFnenhAvBobXTzswhLdvQq6s8axxcbKUPRksm2543pJNNNHVd1VJ58FCg7NVh9cMuPYiMKNyfUpUXSDci9arMkqVwgC1zp93MBPVXcU5WQ9aYNQePAVcozzZV8dPJLeKPMsMW5FXVmqd5koeZeYDsDfd6L43wBGij","programId":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","stackHeight":2}]}],"logMessages":["Program ComputeBudget111111111111111111111111111111 invoke [1]","Program ComputeBudget111111111111111111111111111111 success","Program ComputeBudget111111111111111111111111111111 invoke [1]","Program ComputeBudget111111111111111111111111111111 success","Program 11111111111111111111111111111111 invoke [1]","Program 11111111111111111111111111111111 success","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 invoke [1]","Program 11111111111111111111111111111111 invoke [2]","Program 11111111111111111111111111111111 success","Program 11111111111111111111111111111111 invoke [2]","Program 11111111111111111111111111111111 success","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [2]","Program log: Instruction: InitializeAccount3","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 3158 of 108888 compute units","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 consumed 11005 of 116572 compute units","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 success","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 invoke [1]","Program log: Instruction: Route","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo invoke [2]","Program log: Instruction: Swap","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [3]","Program log: Instruction: TransferChecked","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 6238 of 53637 compute units","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [3]","Program log: Instruction: TransferChecked","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 6200 of 43966 compute units","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo invoke [3]","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo consumed 2136 of 34335 compute units","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo success","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo consumed 58889 of 89521 compute units","Program LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo success","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 invoke [2]","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 consumed 471 of 28187 compute units","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 success","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 consumed 80047 of 105567 compute units","Program return: JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 quFQAAAAAAA=","Program JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4 success","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA invoke [1]","Program log: Instruction: CloseAccount","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA consumed 2915 of 25520 compute units","Program TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA success"],"postBalances":[23034631,2039280,71437440,71437440,0,71437440,1,1,1141440,934087680,0,23385600,703701234699,7182720,2039280,1141440,611666907716,0,318766773082],"postTokenBalances":[{"accountIndex":1,"mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","owner":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"31347112","decimals":6,"uiAmount":31.347112,"uiAmountString":"31.347112"}},{"accountIndex":12,"mint":"So11111111111111111111111111111111111111112","owner":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"703699195419","decimals":9,"uiAmount":703.699195419,"uiAmountString":"703.699195419"}},{"accountIndex":14,"mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","owner":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"12953363479","decimals":6,"uiAmount":12953.363479,"uiAmountString":"12953.363479"}}],"preBalances":[62642845,2039280,71437440,71437440,0,71437440,1,1,1141440,934087680,0,23385600,703661634699,7182720,2039280,1141440,611666907716,0,318766773082],"preTokenBalances":[{"accountIndex":1,"mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","owner":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"26046462","decimals":6,"uiAmount":26.046462,"uiAmountString":"26.046462"}},{"accountIndex":12,"mint":"So11111111111111111111111111111111111111112","owner":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"703659595419","decimals":9,"uiAmount":703.659595419,"uiAmountString":"703.659595419"}},{"accountIndex":14,"mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","owner":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","uiTokenAmount":{"amount":"12958664129","decimals":6,"uiAmount":12958.664129,"uiAmountString":"12958.664129"}}],"rewards":[],"status":{"Ok":null}},"slot":287824122,"transaction":{"message":{"accountKeys":[{"pubkey":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","signer":true,"source":"transaction","writable":true},{"pubkey":"FCmjr2U3TiE6zyY9VEACLnTZL8ga62pHLunH7i3kJWV","signer":false,"source":"transaction","writable":true},{"pubkey":"5Qp2sJk9DLoG1yjgvDYASmvuWnKJ4LPJW3UVw4hF9Mjx","signer":false,"source":"transaction","writable":true},{"pubkey":"B3ajJ3hZ6e8fSJwNzqL4u5ZdQQRoTuBuaQdaq2jFoyVC","signer":false,"source":"transaction","writable":true},{"pubkey":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","signer":false,"source":"transaction","writable":true},{"pubkey":"EjJEbngWEfsGwmCJbXHspBXFjWB2xxAyD46gA2nSmwiG","signer":false,"source":"transaction","writable":true},{"pubkey":"11111111111111111111111111111111","signer":false,"source":"transaction","writable":false},{"pubkey":"ComputeBudget111111111111111111111111111111","signer":false,"source":"transaction","writable":false},{"pubkey":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","signer":false,"source":"transaction","writable":false},{"pubkey":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","signer":false,"source":"transaction","writable":false},{"pubkey":"D8cy77BBepLMngZx6ZukaTff5hCt1HrWyKk3Hnd9oitf","signer":false,"source":"transaction","writable":false},{"pubkey":"EgEYXef2FCoEYLHJJW74dMbom1atLXo6KwPuA6mSATYA","signer":false,"source":"lookupTable","writable":true},{"pubkey":"H7j5NPopj3tQvDg4N8CxwtYciTn3e8AEV6wSVrxpyDUc","signer":false,"source":"lookupTable","writable":true},{"pubkey":"HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","signer":false,"source":"lookupTable","writable":true},{"pubkey":"HbYjRzx7teCxqW3unpXBEcNHhfVZvW2vW9MQ99TkizWt","signer":false,"source":"lookupTable","writable":true},{"pubkey":"LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","signer":false,"source":"lookupTable","writable":false},{"pubkey":"So11111111111111111111111111111111111111112","signer":false,"source":"lookupTable","writable":false},{"pubkey":"D1ZN9Wj1fRSUQfCjhvnu1hqDMT7hzjzBBpi12nVniYD6","signer":false,"source":"lookupTable","writable":false},{"pubkey":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","signer":false,"source":"lookupTable","writable":false}],"addressTableLookups":[{"accountKey":"8kejqRVs9JsHrXtUvVwqHsXkgAnd34WceNDieRQyJ1w4","readonlyIndexes":[214,112,212,209],"writableIndexes":[206,210,215,211]}],"instructions":[{"accounts":[],"data":"EshocT","programId":"ComputeBudget111111111111111111111111111111","stackHeight":null},{"accounts":[],"data":"3QuJX3xtkQ5M","programId":"ComputeBudget111111111111111111111111111111","stackHeight":null},{"parsed":{"info":{"destination":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","lamports":41639280,"source":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6"},"type":"transfer"},"program":"system","programId":"11111111111111111111111111111111","stackHeight":null},{"accounts":["DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","So11111111111111111111111111111111111111112","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","11111111111111111111111111111111"],"data":"2tDqDdUmhLW1t","programId":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","stackHeight":null},{"accounts":["TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","FCmjr2U3TiE6zyY9VEACLnTZL8ga62pHLunH7i3kJWV","JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","D8cy77BBepLMngZx6ZukaTff5hCt1HrWyKk3Hnd9oitf","JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","HTvjzsfX3yU6BUodCjZ5vZkUrAxMDTrBs3CJaq43ashR","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","H7j5NPopj3tQvDg4N8CxwtYciTn3e8AEV6wSVrxpyDUc","HbYjRzx7teCxqW3unpXBEcNHhfVZvW2vW9MQ99TkizWt","DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","FCmjr2U3TiE6zyY9VEACLnTZL8ga62pHLunH7i3kJWV","So11111111111111111111111111111111111111112","EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","EgEYXef2FCoEYLHJJW74dMbom1atLXo6KwPuA6mSATYA","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","D1ZN9Wj1fRSUQfCjhvnu1hqDMT7hzjzBBpi12nVniYD6","LBUZKhRxPF3XUpBCjp4YzTKgLccjZhTSDM9YuVaPwxo","B3ajJ3hZ6e8fSJwNzqL4u5ZdQQRoTuBuaQdaq2jFoyVC","EjJEbngWEfsGwmCJbXHspBXFjWB2xxAyD46gA2nSmwiG","5Qp2sJk9DLoG1yjgvDYASmvuWnKJ4LPJW3UVw4hF9Mjx","JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4"],"data":"PrpFmsY4d26dKbdKMofnJ9BFwn6eHNVpsQuzyCpc8ixmyjx3","programId":"JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4","stackHeight":null},{"parsed":{"info":{"account":"DNWmbNYEa6G9PACfpbKgXenpmybAPxqg8vsCJmupBxty","destination":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6","owner":"3qAnC3L6xDoTbaL74jLKzQNyhRJc2YJGL7Uu5fxiu9W6"},"type":"closeAccount"},"program":"spl-token","programId":"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA","stackHeight":null}],"recentBlockhash":"B331zYA4HspL9Fd5Vbpd4BTDv2FpEyRUmgswwFvnQxua"},"signatures":["5SPdWfQrAf8xky2CU9nycbc7MYEcJvmuKYwG2vUJ5BEfzSFK38RTvkqMHA5TuZV5fpaw65LoKVfGfKWmVTi71DHr"]},"version":0},"id":"c1c91be9-03e2-4763-82ba-8f2d0df55067"} \ No newline at end of file