{ "version": "0.3.0", "name": "gfx_ssl_v2", "instructions": [ { "name": "crankPriceHistories", "accounts": [ { "name": "poolRegistry", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "internalSwap", "accounts": [ { "name": "poolRegistry", "isMut": false, "isSigner": false }, { "name": "pair", "isMut": true, "isSigner": false }, { "name": "sslAMainToken", "isMut": true, "isSigner": false }, { "name": "sslBMainToken", "isMut": true, "isSigner": false }, { "name": "sslASecondaryToken", "isMut": true, "isSigner": false }, { "name": "sslBSecondaryToken", "isMut": true, "isSigner": false }, { "name": "tokenAPriceHistory", "isMut": true, "isSigner": false }, { "name": "tokenAOracle", "isMut": false, "isSigner": false }, { "name": "tokenBPriceHistory", "isMut": true, "isSigner": false }, { "name": "tokenBOracle", "isMut": false, "isSigner": false }, { "name": "sslPoolASigner", "isMut": false, "isSigner": false }, { "name": "sslPoolBSigner", "isMut": false, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "claimFees", "accounts": [ { "name": "poolRegistry", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": true, "isSigner": true }, { "name": "sslFeeVault", "isMut": true, "isSigner": false }, { "name": "ownerAta", "isMut": true, "isSigner": false }, { "name": "liquidityAccount", "isMut": true, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "createLiquidityAccount", "accounts": [ { "name": "poolRegistry", "isMut": false, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "liquidityAccount", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": true, "isSigner": true }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "closeLiquidityAccount", "accounts": [ { "name": "owner", "isMut": true, "isSigner": true }, { "name": "rentRecipient", "isMut": true, "isSigner": false }, { "name": "liquidityAccount", "isMut": true, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "deposit", "accounts": [ { "name": "liquidityAccount", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "sslPoolSigner", "isMut": false, "isSigner": false }, { "name": "poolVault", "isMut": true, "isSigner": false }, { "name": "sslFeeVault", "isMut": true, "isSigner": false }, { "name": "poolRegistry", "isMut": true, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "withdraw", "accounts": [ { "name": "liquidityAccount", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true }, { "name": "userAta", "isMut": true, "isSigner": false }, { "name": "sslPoolSigner", "isMut": false, "isSigner": false }, { "name": "poolVault", "isMut": true, "isSigner": false }, { "name": "sslFeeVault", "isMut": true, "isSigner": false }, { "name": "poolRegistry", "isMut": true, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "swap", "accounts": [ { "name": "pair", "isMut": true, "isSigner": false }, { "name": "poolRegistry", "isMut": true, "isSigner": false }, { "name": "userWallet", "isMut": false, "isSigner": false }, { "name": "userWallet", "isMut": false, "isSigner": true }, { "name": "sslPoolInSigner", "isMut": false, "isSigner": false }, { "name": "sslPoolOutSigner", "isMut": false, "isSigner": false }, { "name": "userAtaIn", "isMut": true, "isSigner": false }, { "name": "userAtaOut", "isMut": true, "isSigner": false }, { "name": "sslOutMainVault", "isMut": true, "isSigner": false }, { "name": "sslOutSecondaryVault", "isMut": true, "isSigner": false }, { "name": "sslInMainVault", "isMut": true, "isSigner": false }, { "name": "sslInSecondaryVault", "isMut": true, "isSigner": false }, { "name": "sslOutFeeVault", "isMut": true, "isSigner": false }, { "name": "sslOutFeeDestination", "isMut": true, "isSigner": false }, { "name": "outputTokenPriceHistory", "isMut": true, "isSigner": false }, { "name": "outputTokenOracle", "isMut": false, "isSigner": false }, { "name": "inputTokenPriceHistory", "isMut": true, "isSigner": false }, { "name": "inputTokenOracle", "isMut": false, "isSigner": false }, { "name": "eventEmitter", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "amountIn", "type": "u64" }, { "name": "minOut", "type": "u64" } ] } ], "accounts": [ { "name": "EventEmitter", "type": { "kind": "struct", "fields": [ { "name": "eventId", "type": "i64" } ] } }, { "name": "LiquidityAccount", "type": { "kind": "struct", "fields": [ { "name": "poolRegistry", "type": "publicKey" }, { "name": "mint", "type": "publicKey" }, { "name": "owner", "type": "publicKey" }, { "name": "amountDeposited", "type": "u64" }, { "name": "lastObservedTap", "type": "u64" }, { "name": "lastClaimed", "type": "i64" }, { "name": "totalEarned", "type": "u64" }, { "name": "createdAt", "type": "i64" }, { "name": "lastDepositAt", "type": "u64" }, { "name": "lastObsRewardsPerShare", "type": { "array": [ "u8", 16 ] } }, { "name": "space", "type": { "array": [ "u8", 104 ] } } ] } }, { "name": "HistoricalDecimal", "type": { "kind": "struct", "fields": [ { "name": "num", "type": "i64" }, { "name": "scale", "type": "u32" }, { "name": "pad0", "type": { "array": [ "u8", 4 ] } } ] } }, { "name": "HistoricalPrice", "type": { "kind": "struct", "fields": [ { "name": "price", "type": { "defined": "HistoricalDecimal" } }, { "name": "slot", "type": "u64" } ] } }, { "name": "OraclePriceHistory", "type": { "kind": "struct", "fields": [ { "name": "oracleType", "type": "u8" }, { "name": "minimumElapsedSlots", "type": "u8" }, { "name": "maxSlotPriceStaleness", "type": "u8" }, { "name": "backupOracleType", "type": "u8" }, { "name": "backupOracle2Type", "type": "u8" }, { "name": "pad0", "type": { "array": [ "u8", 3 ] } }, { "name": "poolRegistry", "type": "publicKey" }, { "name": "oracleAddress", "type": "publicKey" }, { "name": "mint", "type": "publicKey" }, { "name": "numUpdates", "type": "u64" }, { "name": "backupOracle", "type": "publicKey" }, { "name": "latestBackupOraclePrice", "type": { "defined": "HistoricalPrice" } }, { "name": "backupOracle2", "type": "publicKey" }, { "name": "latestBackupOracle2Price", "type": { "defined": "HistoricalPrice" } }, { "name": "space", "type": { "array": [ "u8", 16 ] } }, { "name": "priceHistory", "type": { "array": [ { "defined": "HistoricalPrice" }, 256 ] } } ] } }, { "name": "Pair", "type": { "kind": "struct", "fields": [ { "name": "poolRegistry", "type": "publicKey" }, { "name": "mints", "type": { "defined": "(Pubkey,Pubkey)" } }, { "name": "feeCollector", "type": { "defined": "(Pubkey,Pubkey)" } }, { "name": "normalRouteFeeRates", "type": { "defined": "(u16,u16)" } }, { "name": "totalFeesGeneratedNative", "type": { "defined": "([u8;16],[u8;16])" } }, { "name": "totalHistoricalVolume", "type": { "array": [ "u8", 16 ] } }, { "name": "totalInternallySwapped", "type": { "defined": "([u8;16],[u8;16])" } }, { "name": "preferredRouteFeeRates", "type": { "defined": "(u16,u16)" } }, { "name": "space", "type": { "array": [ "u8", 124 ] } } ] } }, { "name": "SSLPool", "type": { "kind": "struct", "fields": [ { "name": "status", "type": "u8" }, { "name": "assetType", "type": "u8" }, { "name": "pad0", "type": { "array": [ "u8", 6 ] } }, { "name": "mint", "type": "publicKey" }, { "name": "mintDecimals", "type": "u8" }, { "name": "bump", "type": "u8" }, { "name": "pad1", "type": { "array": [ "u8", 6 ] } }, { "name": "totalAccumulatedLpReward", "type": "u64" }, { "name": "totalLiquidityDeposits", "type": "u64" }, { "name": "oraclePriceHistories", "type": { "array": [ "publicKey", 3 ] } }, { "name": "mathParams", "type": { "defined": "SSLMathParams" } }, { "name": "rewardsPerShare", "type": { "array": [ "u8", 16 ] } }, { "name": "space", "type": { "array": [ "u8", 48 ] } } ] } }, { "name": "PoolRegistry", "type": { "kind": "struct", "fields": [ { "name": "admin", "type": "publicKey" }, { "name": "seed", "type": "publicKey" }, { "name": "suspendAdmin", "type": "publicKey" }, { "name": "bump", "type": "u8" }, { "name": "pricingAlgo", "type": "u8" }, { "name": "pad0", "type": { "array": [ "u8", 6 ] } }, { "name": "numEntries", "type": "u32" }, { "name": "pad1", "type": { "array": [ "u8", 4 ] } }, { "name": "categoricalPoolTokenRatios", "type": { "array": [ "u16", 16 ] } }, { "name": "space", "type": { "array": [ "u8", 96 ] } }, { "name": "entries", "type": { "array": [ { "defined": "SSLPool" }, 32 ] } } ] } } ], "types": [ { "name": "ConfigPairParams", "type": { "kind": "struct", "fields": [ { "name": "mintOneNormalRouteFeeRate", "type": { "option": "u16" } }, { "name": "mintTwoNormalRouteFeeRate", "type": { "option": "u16" } }, { "name": "mintOnePreferredRouteFeeRate", "type": { "option": "u16" } }, { "name": "mintTwoPreferredRouteFeeRate", "type": { "option": "u16" } } ] } }, { "name": "SSLMathConfig", "type": { "kind": "struct", "fields": [ { "name": "meanWindow", "type": { "option": "u8" } }, { "name": "stdWindow", "type": { "option": "u8" } }, { "name": "fixedPriceDistance", "type": { "option": "u16" } }, { "name": "minimumPriceDistance", "type": { "option": "u16" } }, { "name": "stdWeight", "type": { "option": "u32" } }, { "name": "latestPriceWeight", "type": { "option": "u16" } }, { "name": "checkPriceGapCount", "type": { "option": "u16" } } ] } }, { "name": "SSLMathParams", "type": { "kind": "struct", "fields": [ { "name": "meanWindow", "type": "u8" }, { "name": "stdWindow", "type": "u8" }, { "name": "fixedPriceDistance", "type": "u16" }, { "name": "minimumPriceDistance", "type": "u16" }, { "name": "deprecated0", "type": "u16" }, { "name": "latestPriceWeight", "type": "u16" }, { "name": "checkPriceGapCount", "type": "u16" }, { "name": "pad0", "type": { "array": [ "u8", 4 ] } }, { "name": "stdWeight", "type": "u32" }, { "name": "pad1", "type": { "array": [ "u8", 4 ] } }, { "name": "space", "type": { "array": [ "u8", 32 ] } } ] } }, { "name": "MaxPoolTokenRatio", "type": { "kind": "struct", "fields": [ { "name": "inputToken", "type": { "defined": "AssetType" } }, { "name": "outputToken", "type": { "defined": "AssetType" } }, { "name": "poolTokenRatio", "type": "u16" } ] } }, { "name": "PoolRegistryConfig", "type": { "kind": "struct", "fields": [ { "name": "newAdmin", "type": { "option": "publicKey" } }, { "name": "newSuspendAdmin", "type": { "option": "publicKey" } }, { "name": "maxPoolTokenRatios", "type": { "vec": { "defined": "MaxPoolTokenRatio" } } }, { "name": "pricingAlgo", "type": { "option": { "defined": "PricingAlgo" } } } ] } }, { "name": "OracleType", "type": { "kind": "enum", "variants": [ { "name": "Uninitialized" }, { "name": "Pyth" }, { "name": "Switchboardv2" }, { "name": "Invalid" } ] } }, { "name": "AssetType", "type": { "kind": "enum", "variants": [ { "name": "Uninitialized" }, { "name": "BlueChip" }, { "name": "Volatile" }, { "name": "Stable" }, { "name": "Invalid" } ] } }, { "name": "ConfigSSLPoolStatus", "type": { "kind": "enum", "variants": [ { "name": "Active" }, { "name": "Suspended" }, { "name": "Locked" } ] } }, { "name": "PricingAlgo", "type": { "kind": "enum", "variants": [ { "name": "Version1" }, { "name": "Version2" }, { "name": "Version3" }, { "name": "Invalid" } ] } }, { "name": "SSLPoolStatus", "type": { "kind": "enum", "variants": [ { "name": "Uninitialized" }, { "name": "Active" }, { "name": "Suspended" }, { "name": "Locked" }, { "name": "Invalid" } ] } } ] }