Files
solana-streamer/idl/meteora_damm_v2.json
T
Wood da550e0c3a fix: correct parameter order for buy_exact_sol_in and align Raydium CPMM field names with IDL
This commit addresses two critical issues:

1. PumpFun buy_exact_sol_in Parameter Order Fix
   - Fixed incorrect parameter parsing in buy_exact_sol_in instruction
   - Created dedicated parse_buy_exact_sol_in_instruction function
   - Correct order: spendable_sol_in (SOL) first, min_tokens_out (token) second
   - Previous bug: reused parse_buy_instruction which has reversed order
   - Impact: Fixes ~4-5% of PumpFun trades that were being parsed incorrectly
   - Issue reported by community: SOL and token amounts were swapped

2. Raydium CPMM Field Naming Alignment
   - Updated PoolState struct field names to match IDL specification exactly
   - Changed token0_vault -> token_0_vault (and similar for all token fields)
   - Changed mint0_decimals -> mint_0_decimals
   - Changed protocol_fees_token0 -> protocol_fees_token_0
   - Ensures consistency with official IDL from solana-program-idls repo
   - Improves code maintainability and readability

3. IDL Files Sync
   - Added latest IDL files from https://github.com/0xfnzero/solana-program-idls
   - Includes: pumpfun, pump_amm, raydium_cpmm, raydium_clmm, raydium_pool_v4
   - Also added: meteora_amm, meteora_damm_v2, meteora_dlmm, orca_whirlpool, raydium_launchpad
   - All IDL files stored in idl/ directory for reference

Files Modified:
- src/streaming/event_parser/protocols/pumpfun/parser.rs
- src/streaming/event_parser/protocols/raydium_cpmm/types.rs
- src/streaming/event_parser/protocols/raydium_cpmm/events.rs
- src/streaming/event_parser/protocols/raydium_cpmm/parser.rs

Testing:
-  Compiles successfully (cargo build --release)
-  All field name updates verified
-  Parameter order matches IDL specification

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 16:47:55 +08:00

7672 lines
156 KiB
JSON

{
"address": "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG",
"metadata": {
"name": "cp_amm",
"version": "0.1.7",
"spec": "0.1.0",
"description": "Created with Anchor"
},
"instructions": [
{
"name": "add_liquidity",
"discriminator": [
181,
157,
89,
67,
143,
182,
52,
72
],
"accounts": [
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "token_a_account",
"docs": [
"The user token a account"
],
"writable": true
},
{
"name": "token_b_account",
"docs": [
"The user token b account"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "AddLiquidityParameters"
}
}
}
]
},
{
"name": "claim_partner_fee",
"discriminator": [
97,
206,
39,
105,
94,
94,
126,
148
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true
},
{
"name": "token_a_account",
"docs": [
"The treasury token a account"
],
"writable": true
},
{
"name": "token_b_account",
"docs": [
"The treasury token b account"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "partner",
"signer": true,
"relations": [
"pool"
]
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "max_amount_a",
"type": "u64"
},
{
"name": "max_amount_b",
"type": "u64"
}
]
},
{
"name": "claim_position_fee",
"discriminator": [
180,
38,
154,
17,
133,
33,
162,
211
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "token_a_account",
"docs": [
"The user token a account"
],
"writable": true
},
{
"name": "token_b_account",
"docs": [
"The user token b account"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "claim_protocol_fee",
"discriminator": [
165,
228,
133,
48,
99,
249,
255,
33
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "token_a_account",
"writable": true
},
{
"name": "token_b_account",
"writable": true
},
{
"name": "operator",
"docs": [
"Claim fee operator"
]
},
{
"name": "signer",
"docs": [
"Operator"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "max_amount_a",
"type": "u64"
},
{
"name": "max_amount_b",
"type": "u64"
}
]
},
{
"name": "claim_reward",
"discriminator": [
149,
95,
181,
242,
94,
90,
158,
162
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "reward_vault",
"docs": [
"The vault token account for reward token"
],
"writable": true
},
{
"name": "reward_mint"
},
{
"name": "user_token_account",
"writable": true
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "token_program"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
},
{
"name": "skip_reward",
"type": "u8"
}
]
},
{
"name": "close_config",
"discriminator": [
145,
9,
72,
157,
95,
125,
61,
85
],
"accounts": [
{
"name": "config",
"writable": true
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "rent_receiver",
"writable": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "close_operator_account",
"discriminator": [
171,
9,
213,
74,
120,
23,
3,
29
],
"accounts": [
{
"name": "operator",
"writable": true
},
{
"name": "signer",
"signer": true
},
{
"name": "rent_receiver",
"writable": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "close_position",
"discriminator": [
123,
134,
81,
0,
49,
68,
98,
98
],
"accounts": [
{
"name": "position_nft_mint",
"docs": [
"position_nft_mint"
],
"writable": true
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
],
"writable": true
},
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "rent_receiver",
"writable": true
},
{
"name": "owner",
"docs": [
"Owner of position"
],
"signer": true
},
{
"name": "token_program",
"docs": [
"Program to create NFT mint/token account and transfer for token22 account"
],
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "close_token_badge",
"discriminator": [
108,
146,
86,
110,
179,
254,
10,
104
],
"accounts": [
{
"name": "token_badge",
"writable": true
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "rent_receiver",
"writable": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "create_config",
"docs": [
"OPERATOR FUNCTIONS /////"
],
"discriminator": [
201,
207,
243,
114,
75,
111,
47,
189
],
"accounts": [
{
"name": "config",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
99,
111,
110,
102,
105,
103
]
},
{
"kind": "arg",
"path": "index"
}
]
}
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "index",
"type": "u64"
},
{
"name": "config_parameters",
"type": {
"defined": {
"name": "StaticConfigParameters"
}
}
}
]
},
{
"name": "create_dynamic_config",
"discriminator": [
81,
251,
122,
78,
66,
57,
208,
82
],
"accounts": [
{
"name": "config",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
99,
111,
110,
102,
105,
103
]
},
{
"kind": "arg",
"path": "index"
}
]
}
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "index",
"type": "u64"
},
{
"name": "config_parameters",
"type": {
"defined": {
"name": "DynamicConfigParameters"
}
}
}
]
},
{
"name": "create_operator_account",
"docs": [
"ADMIN FUNCTIONS /////"
],
"discriminator": [
221,
64,
246,
149,
240,
153,
229,
163
],
"accounts": [
{
"name": "operator",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
111,
112,
101,
114,
97,
116,
111,
114
]
},
{
"kind": "account",
"path": "whitelisted_address"
}
]
}
},
{
"name": "whitelisted_address"
},
{
"name": "signer",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "permission",
"type": "u128"
}
]
},
{
"name": "create_position",
"discriminator": [
48,
215,
197,
153,
96,
203,
180,
133
],
"accounts": [
{
"name": "owner"
},
{
"name": "position_nft_mint",
"docs": [
"position_nft_mint"
],
"writable": true,
"signer": true
},
{
"name": "position_nft_account",
"docs": [
"position nft account"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110,
95,
110,
102,
116,
95,
97,
99,
99,
111,
117,
110,
116
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "pool",
"writable": true
},
{
"name": "position",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "payer",
"docs": [
"Address paying to create the position. Can be anyone"
],
"writable": true,
"signer": true
},
{
"name": "token_program",
"docs": [
"Program to create NFT mint/token account and transfer for token22 account"
],
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "create_token_badge",
"discriminator": [
88,
206,
0,
91,
60,
175,
151,
118
],
"accounts": [
{
"name": "token_badge",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
98,
97,
100,
103,
101
]
},
{
"kind": "account",
"path": "token_mint"
}
]
}
},
{
"name": "token_mint"
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": []
},
{
"name": "dummy_ix",
"discriminator": [
234,
95,
176,
185,
7,
42,
35,
159
],
"accounts": [
{
"name": "pod_aligned_fee_time_scheduler"
},
{
"name": "pod_aligned_fee_rate_limiter"
},
{
"name": "pod_aligned_fee_market_cap_scheduler"
}
],
"args": [
{
"name": "_ixs",
"type": {
"defined": {
"name": "DummyParams"
}
}
}
]
},
{
"name": "fund_reward",
"discriminator": [
188,
50,
249,
165,
93,
151,
38,
63
],
"accounts": [
{
"name": "pool",
"writable": true
},
{
"name": "reward_vault",
"writable": true
},
{
"name": "reward_mint"
},
{
"name": "funder_token_account",
"writable": true
},
{
"name": "funder",
"signer": true
},
{
"name": "token_program"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "carry_forward",
"type": "bool"
}
]
},
{
"name": "initialize_customizable_pool",
"discriminator": [
20,
161,
241,
24,
189,
221,
180,
2
],
"accounts": [
{
"name": "creator"
},
{
"name": "position_nft_mint",
"docs": [
"position_nft_mint"
],
"writable": true,
"signer": true
},
{
"name": "position_nft_account",
"docs": [
"position nft account"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110,
95,
110,
102,
116,
95,
97,
99,
99,
111,
117,
110,
116
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "payer",
"docs": [
"Address paying to create the pool. Can be anyone"
],
"writable": true,
"signer": true
},
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"docs": [
"Initialize an account to store the pool state"
],
"writable": true
},
{
"name": "position",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "token_a_mint",
"docs": [
"Token a mint"
]
},
{
"name": "token_b_mint",
"docs": [
"Token b mint"
]
},
{
"name": "token_a_vault",
"docs": [
"Token a vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_a_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "token_b_vault",
"docs": [
"Token b vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_b_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "payer_token_a",
"docs": [
"payer token a account"
],
"writable": true
},
{
"name": "payer_token_b",
"docs": [
"creator token b account"
],
"writable": true
},
{
"name": "token_a_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_b_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_2022_program",
"docs": [
"Program to create NFT mint/token account and transfer for token22 account"
],
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "InitializeCustomizablePoolParameters"
}
}
}
]
},
{
"name": "initialize_pool",
"docs": [
"USER FUNCTIONS ////"
],
"discriminator": [
95,
180,
10,
172,
84,
174,
232,
40
],
"accounts": [
{
"name": "creator"
},
{
"name": "position_nft_mint",
"docs": [
"position_nft_mint"
],
"writable": true,
"signer": true
},
{
"name": "position_nft_account",
"docs": [
"position nft account"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110,
95,
110,
102,
116,
95,
97,
99,
99,
111,
117,
110,
116
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "payer",
"docs": [
"Address paying to create the pool. Can be anyone"
],
"writable": true,
"signer": true
},
{
"name": "config",
"docs": [
"Which config the pool belongs to."
]
},
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"docs": [
"Initialize an account to store the pool state"
],
"writable": true
},
{
"name": "position",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "token_a_mint",
"docs": [
"Token a mint"
]
},
{
"name": "token_b_mint",
"docs": [
"Token b mint"
]
},
{
"name": "token_a_vault",
"docs": [
"Token a vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_a_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "token_b_vault",
"docs": [
"Token b vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_b_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "payer_token_a",
"docs": [
"payer token a account"
],
"writable": true
},
{
"name": "payer_token_b",
"docs": [
"creator token b account"
],
"writable": true
},
{
"name": "token_a_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_b_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_2022_program",
"docs": [
"Program to create NFT mint/token account and transfer for token22 account"
],
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "InitializePoolParameters"
}
}
}
]
},
{
"name": "initialize_pool_with_dynamic_config",
"discriminator": [
149,
82,
72,
197,
253,
252,
68,
15
],
"accounts": [
{
"name": "creator"
},
{
"name": "position_nft_mint",
"docs": [
"position_nft_mint"
],
"writable": true,
"signer": true
},
{
"name": "position_nft_account",
"docs": [
"position nft account"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110,
95,
110,
102,
116,
95,
97,
99,
99,
111,
117,
110,
116
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "payer",
"docs": [
"Address paying to create the pool. Can be anyone"
],
"writable": true,
"signer": true
},
{
"name": "pool_creator_authority",
"signer": true,
"relations": [
"config"
]
},
{
"name": "config",
"docs": [
"Which config the pool belongs to."
]
},
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"docs": [
"Initialize an account to store the pool state"
],
"writable": true
},
{
"name": "position",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
112,
111,
115,
105,
116,
105,
111,
110
]
},
{
"kind": "account",
"path": "position_nft_mint"
}
]
}
},
{
"name": "token_a_mint",
"docs": [
"Token a mint"
]
},
{
"name": "token_b_mint",
"docs": [
"Token b mint"
]
},
{
"name": "token_a_vault",
"docs": [
"Token a vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_a_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "token_b_vault",
"docs": [
"Token b vault for the pool"
],
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
116,
111,
107,
101,
110,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "token_b_mint"
},
{
"kind": "account",
"path": "pool"
}
]
}
},
{
"name": "payer_token_a",
"docs": [
"payer token a account"
],
"writable": true
},
{
"name": "payer_token_b",
"docs": [
"creator token b account"
],
"writable": true
},
{
"name": "token_a_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_b_program",
"docs": [
"Program to create mint account and mint tokens"
]
},
{
"name": "token_2022_program",
"docs": [
"Program to create NFT mint/token account and transfer for token22 account"
],
"address": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "InitializeCustomizablePoolParameters"
}
}
}
]
},
{
"name": "initialize_reward",
"discriminator": [
95,
135,
192,
196,
242,
129,
230,
68
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true
},
{
"name": "reward_vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
114,
101,
119,
97,
114,
100,
95,
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "pool"
},
{
"kind": "arg",
"path": "reward_index"
}
]
}
},
{
"name": "reward_mint"
},
{
"name": "signer",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "token_program"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
},
{
"name": "reward_duration",
"type": "u64"
},
{
"name": "funder",
"type": "pubkey"
}
]
},
{
"name": "lock_position",
"discriminator": [
227,
62,
2,
252,
247,
10,
171,
185
],
"accounts": [
{
"name": "pool",
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "vesting",
"writable": true,
"signer": true
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "VestingParameters"
}
}
}
]
},
{
"name": "permanent_lock_position",
"discriminator": [
165,
176,
125,
6,
231,
171,
186,
213
],
"accounts": [
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "permanent_lock_liquidity",
"type": "u128"
}
]
},
{
"name": "refresh_vesting",
"discriminator": [
9,
94,
216,
14,
116,
204,
247,
0
],
"accounts": [
{
"name": "pool",
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner"
}
],
"args": []
},
{
"name": "remove_all_liquidity",
"discriminator": [
10,
51,
61,
35,
112,
105,
24,
85
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "token_a_account",
"docs": [
"The user token a account"
],
"writable": true
},
{
"name": "token_b_account",
"docs": [
"The user token b account"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "token_a_amount_threshold",
"type": "u64"
},
{
"name": "token_b_amount_threshold",
"type": "u64"
}
]
},
{
"name": "remove_liquidity",
"discriminator": [
80,
85,
209,
72,
24,
206,
177,
108
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true,
"relations": [
"position"
]
},
{
"name": "position",
"writable": true
},
{
"name": "token_a_account",
"docs": [
"The user token a account"
],
"writable": true
},
{
"name": "token_b_account",
"docs": [
"The user token b account"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
],
"relations": [
"pool"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
],
"relations": [
"pool"
]
},
{
"name": "position_nft_account",
"docs": [
"The token account for nft"
]
},
{
"name": "owner",
"docs": [
"owner of position"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "RemoveLiquidityParameters"
}
}
}
]
},
{
"name": "set_pool_status",
"discriminator": [
112,
87,
135,
223,
83,
204,
132,
53
],
"accounts": [
{
"name": "pool",
"writable": true
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "status",
"type": "u8"
}
]
},
{
"name": "split_position",
"discriminator": [
172,
241,
221,
138,
161,
29,
253,
42
],
"accounts": [
{
"name": "pool",
"writable": true,
"relations": [
"first_position",
"second_position"
]
},
{
"name": "first_position",
"docs": [
"The first position"
],
"writable": true
},
{
"name": "first_position_nft_account",
"docs": [
"The token account for position nft"
]
},
{
"name": "second_position",
"docs": [
"The second position"
],
"writable": true
},
{
"name": "second_position_nft_account",
"docs": [
"The token account for position nft"
]
},
{
"name": "first_owner",
"docs": [
"Owner of first position"
],
"signer": true
},
{
"name": "second_owner",
"docs": [
"Owner of second position"
],
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "SplitPositionParameters"
}
}
}
]
},
{
"name": "split_position2",
"discriminator": [
221,
147,
228,
207,
140,
212,
17,
119
],
"accounts": [
{
"name": "pool",
"writable": true,
"relations": [
"first_position",
"second_position"
]
},
{
"name": "first_position",
"docs": [
"The first position"
],
"writable": true
},
{
"name": "first_position_nft_account",
"docs": [
"The token account for position nft"
]
},
{
"name": "second_position",
"docs": [
"The second position"
],
"writable": true
},
{
"name": "second_position_nft_account",
"docs": [
"The token account for position nft"
]
},
{
"name": "first_owner",
"docs": [
"Owner of first position"
],
"signer": true
},
{
"name": "second_owner",
"docs": [
"Owner of second position"
],
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "numerator",
"type": "u32"
}
]
},
{
"name": "swap",
"discriminator": [
248,
198,
158,
145,
225,
117,
135,
200
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"docs": [
"Pool account"
],
"writable": true
},
{
"name": "input_token_account",
"docs": [
"The user token account for input token"
],
"writable": true
},
{
"name": "output_token_account",
"docs": [
"The user token account for output token"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
]
},
{
"name": "payer",
"docs": [
"The user performing the swap"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "referral_token_account",
"docs": [
"referral token account"
],
"writable": true,
"optional": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "_params",
"type": {
"defined": {
"name": "SwapParameters"
}
}
}
]
},
{
"name": "swap2",
"discriminator": [
65,
75,
63,
76,
235,
91,
91,
136
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"docs": [
"Pool account"
],
"writable": true
},
{
"name": "input_token_account",
"docs": [
"The user token account for input token"
],
"writable": true
},
{
"name": "output_token_account",
"docs": [
"The user token account for output token"
],
"writable": true
},
{
"name": "token_a_vault",
"docs": [
"The vault token account for input token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_b_vault",
"docs": [
"The vault token account for output token"
],
"writable": true,
"relations": [
"pool"
]
},
{
"name": "token_a_mint",
"docs": [
"The mint of token a"
]
},
{
"name": "token_b_mint",
"docs": [
"The mint of token b"
]
},
{
"name": "payer",
"docs": [
"The user performing the swap"
],
"signer": true
},
{
"name": "token_a_program",
"docs": [
"Token a program"
]
},
{
"name": "token_b_program",
"docs": [
"Token b program"
]
},
{
"name": "referral_token_account",
"docs": [
"referral token account"
],
"writable": true,
"optional": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "_params",
"type": {
"defined": {
"name": "SwapParameters2"
}
}
}
]
},
{
"name": "update_pool_fees",
"discriminator": [
118,
217,
203,
179,
60,
8,
70,
89
],
"accounts": [
{
"name": "pool",
"writable": true
},
{
"name": "operator"
},
{
"name": "signer",
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "params",
"type": {
"defined": {
"name": "UpdatePoolFeesParameters"
}
}
}
]
},
{
"name": "update_reward_duration",
"discriminator": [
138,
174,
196,
169,
213,
235,
254,
107
],
"accounts": [
{
"name": "pool",
"writable": true
},
{
"name": "signer",
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
},
{
"name": "new_duration",
"type": "u64"
}
]
},
{
"name": "update_reward_funder",
"discriminator": [
211,
28,
48,
32,
215,
160,
35,
23
],
"accounts": [
{
"name": "pool",
"writable": true
},
{
"name": "signer",
"signer": true
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
},
{
"name": "new_funder",
"type": "pubkey"
}
]
},
{
"name": "withdraw_ineligible_reward",
"discriminator": [
148,
206,
42,
195,
247,
49,
103,
8
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true
},
{
"name": "reward_vault",
"writable": true
},
{
"name": "reward_mint"
},
{
"name": "funder_token_account",
"writable": true
},
{
"name": "funder",
"signer": true
},
{
"name": "token_program"
},
{
"name": "event_authority",
"pda": {
"seeds": [
{
"kind": "const",
"value": [
95,
95,
101,
118,
101,
110,
116,
95,
97,
117,
116,
104,
111,
114,
105,
116,
121
]
}
]
}
},
{
"name": "program"
}
],
"args": [
{
"name": "reward_index",
"type": "u8"
}
]
},
{
"name": "zap_protocol_fee",
"discriminator": [
213,
155,
187,
34,
56,
182,
91,
240
],
"accounts": [
{
"name": "pool_authority",
"address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"
},
{
"name": "pool",
"writable": true
},
{
"name": "token_vault",
"writable": true
},
{
"name": "token_mint"
},
{
"name": "receiver_token",
"writable": true
},
{
"name": "operator",
"docs": [
"zap claim fee operator"
]
},
{
"name": "signer",
"docs": [
"Operator"
],
"signer": true
},
{
"name": "token_program",
"docs": [
"Token program"
]
},
{
"name": "sysvar_instructions",
"address": "Sysvar1nstructions1111111111111111111111111"
}
],
"args": [
{
"name": "max_amount",
"type": "u64"
}
]
}
],
"accounts": [
{
"name": "Config",
"discriminator": [
155,
12,
170,
224,
30,
250,
204,
130
]
},
{
"name": "Operator",
"discriminator": [
219,
31,
188,
145,
69,
139,
204,
117
]
},
{
"name": "PodAlignedFeeMarketCapScheduler",
"discriminator": [
251,
130,
208,
253,
245,
27,
145,
203
]
},
{
"name": "PodAlignedFeeRateLimiter",
"discriminator": [
160,
219,
8,
251,
179,
7,
16,
117
]
},
{
"name": "PodAlignedFeeTimeScheduler",
"discriminator": [
239,
132,
138,
213,
67,
154,
130,
70
]
},
{
"name": "Pool",
"discriminator": [
241,
154,
109,
4,
17,
177,
109,
188
]
},
{
"name": "Position",
"discriminator": [
170,
188,
143,
228,
122,
64,
247,
208
]
},
{
"name": "TokenBadge",
"discriminator": [
116,
219,
204,
229,
249,
116,
255,
150
]
},
{
"name": "Vesting",
"discriminator": [
100,
149,
66,
138,
95,
200,
128,
241
]
}
],
"events": [
{
"name": "EvtClaimPartnerFee",
"discriminator": [
118,
99,
77,
10,
226,
1,
1,
87
]
},
{
"name": "EvtClaimPositionFee",
"discriminator": [
198,
182,
183,
52,
97,
12,
49,
56
]
},
{
"name": "EvtClaimProtocolFee",
"discriminator": [
186,
244,
75,
251,
188,
13,
25,
33
]
},
{
"name": "EvtClaimReward",
"discriminator": [
218,
86,
147,
200,
235,
188,
215,
231
]
},
{
"name": "EvtCloseConfig",
"discriminator": [
36,
30,
239,
45,
58,
132,
14,
5
]
},
{
"name": "EvtClosePosition",
"discriminator": [
20,
145,
144,
68,
143,
142,
214,
178
]
},
{
"name": "EvtCreateConfig",
"discriminator": [
131,
207,
180,
174,
180,
73,
165,
54
]
},
{
"name": "EvtCreateDynamicConfig",
"discriminator": [
231,
197,
13,
164,
248,
213,
133,
152
]
},
{
"name": "EvtCreatePosition",
"discriminator": [
156,
15,
119,
198,
29,
181,
221,
55
]
},
{
"name": "EvtCreateTokenBadge",
"discriminator": [
141,
120,
134,
116,
34,
28,
114,
160
]
},
{
"name": "EvtFundReward",
"discriminator": [
104,
233,
237,
122,
199,
191,
121,
85
]
},
{
"name": "EvtInitializePool",
"discriminator": [
228,
50,
246,
85,
203,
66,
134,
37
]
},
{
"name": "EvtInitializeReward",
"discriminator": [
129,
91,
188,
3,
246,
52,
185,
249
]
},
{
"name": "EvtLiquidityChange",
"discriminator": [
197,
171,
78,
127,
224,
211,
87,
13
]
},
{
"name": "EvtLockPosition",
"discriminator": [
168,
63,
108,
83,
219,
82,
2,
200
]
},
{
"name": "EvtPermanentLockPosition",
"discriminator": [
145,
143,
162,
218,
218,
80,
67,
11
]
},
{
"name": "EvtSetPoolStatus",
"discriminator": [
100,
213,
74,
3,
95,
91,
228,
146
]
},
{
"name": "EvtSplitPosition2",
"discriminator": [
165,
32,
203,
174,
72,
100,
233,
103
]
},
{
"name": "EvtSwap2",
"discriminator": [
189,
66,
51,
168,
38,
80,
117,
153
]
},
{
"name": "EvtUpdatePoolFees",
"discriminator": [
76,
165,
246,
102,
102,
217,
156,
44
]
},
{
"name": "EvtUpdateRewardDuration",
"discriminator": [
149,
135,
65,
231,
129,
153,
65,
57
]
},
{
"name": "EvtUpdateRewardFunder",
"discriminator": [
76,
154,
208,
13,
40,
115,
246,
146
]
},
{
"name": "EvtWithdrawIneligibleReward",
"discriminator": [
248,
215,
184,
78,
31,
180,
179,
168
]
}
],
"errors": [
{
"code": 6000,
"name": "MathOverflow",
"msg": "Math operation overflow"
},
{
"code": 6001,
"name": "InvalidFee",
"msg": "Invalid fee setup"
},
{
"code": 6002,
"name": "ExceededSlippage",
"msg": "Exceeded slippage tolerance"
},
{
"code": 6003,
"name": "PoolDisabled",
"msg": "Pool disabled"
},
{
"code": 6004,
"name": "ExceedMaxFeeBps",
"msg": "Exceeded max fee bps"
},
{
"code": 6005,
"name": "InvalidAdmin",
"msg": "Invalid admin"
},
{
"code": 6006,
"name": "AmountIsZero",
"msg": "Amount is zero"
},
{
"code": 6007,
"name": "TypeCastFailed",
"msg": "Type cast error"
},
{
"code": 6008,
"name": "UnableToModifyActivationPoint",
"msg": "Unable to modify activation point"
},
{
"code": 6009,
"name": "InvalidAuthorityToCreateThePool",
"msg": "Invalid authority to create the pool"
},
{
"code": 6010,
"name": "InvalidActivationType",
"msg": "Invalid activation type"
},
{
"code": 6011,
"name": "InvalidActivationPoint",
"msg": "Invalid activation point"
},
{
"code": 6012,
"name": "InvalidQuoteMint",
"msg": "Quote token must be SOL,USDC"
},
{
"code": 6013,
"name": "InvalidFeeCurve",
"msg": "Invalid fee curve"
},
{
"code": 6014,
"name": "InvalidPriceRange",
"msg": "Invalid Price Range"
},
{
"code": 6015,
"name": "PriceRangeViolation",
"msg": "Trade is over price range"
},
{
"code": 6016,
"name": "InvalidParameters",
"msg": "Invalid parameters"
},
{
"code": 6017,
"name": "InvalidCollectFeeMode",
"msg": "Invalid collect fee mode"
},
{
"code": 6018,
"name": "InvalidInput",
"msg": "Invalid input"
},
{
"code": 6019,
"name": "CannotCreateTokenBadgeOnSupportedMint",
"msg": "Cannot create token badge on supported mint"
},
{
"code": 6020,
"name": "InvalidTokenBadge",
"msg": "Invalid token badge"
},
{
"code": 6021,
"name": "InvalidMinimumLiquidity",
"msg": "Invalid minimum liquidity"
},
{
"code": 6022,
"name": "InvalidVestingInfo",
"msg": "Invalid vesting information"
},
{
"code": 6023,
"name": "InsufficientLiquidity",
"msg": "Insufficient liquidity"
},
{
"code": 6024,
"name": "InvalidVestingAccount",
"msg": "Invalid vesting account"
},
{
"code": 6025,
"name": "InvalidPoolStatus",
"msg": "Invalid pool status"
},
{
"code": 6026,
"name": "UnsupportNativeMintToken2022",
"msg": "Unsupported native mint token2022"
},
{
"code": 6027,
"name": "InvalidRewardIndex",
"msg": "Invalid reward index"
},
{
"code": 6028,
"name": "InvalidRewardDuration",
"msg": "Invalid reward duration"
},
{
"code": 6029,
"name": "RewardInitialized",
"msg": "Reward already initialized"
},
{
"code": 6030,
"name": "RewardUninitialized",
"msg": "Reward not initialized"
},
{
"code": 6031,
"name": "InvalidRewardVault",
"msg": "Invalid reward vault"
},
{
"code": 6032,
"name": "MustWithdrawnIneligibleReward",
"msg": "Must withdraw ineligible reward"
},
{
"code": 6033,
"name": "IdenticalRewardDuration",
"msg": "Reward duration is the same"
},
{
"code": 6034,
"name": "RewardCampaignInProgress",
"msg": "Reward campaign in progress"
},
{
"code": 6035,
"name": "IdenticalFunder",
"msg": "Identical funder"
},
{
"code": 6036,
"name": "InvalidFunder",
"msg": "Invalid funder"
},
{
"code": 6037,
"name": "RewardNotEnded",
"msg": "Reward not ended"
},
{
"code": 6038,
"name": "FeeInverseIsIncorrect",
"msg": "Fee inverse is incorrect"
},
{
"code": 6039,
"name": "PositionIsNotEmpty",
"msg": "Position is not empty"
},
{
"code": 6040,
"name": "InvalidPoolCreatorAuthority",
"msg": "Invalid pool creator authority"
},
{
"code": 6041,
"name": "InvalidConfigType",
"msg": "Invalid config type"
},
{
"code": 6042,
"name": "InvalidPoolCreator",
"msg": "Invalid pool creator"
},
{
"code": 6043,
"name": "RewardVaultFrozenSkipRequired",
"msg": "Reward vault is frozen, must skip reward to proceed"
},
{
"code": 6044,
"name": "InvalidSplitPositionParameters",
"msg": "Invalid parameters for split position"
},
{
"code": 6045,
"name": "UnsupportPositionHasVestingLock",
"msg": "Unsupported split position has vesting lock"
},
{
"code": 6046,
"name": "SamePosition",
"msg": "Same position"
},
{
"code": 6047,
"name": "InvalidBaseFeeMode",
"msg": "Invalid base fee mode"
},
{
"code": 6048,
"name": "InvalidFeeRateLimiter",
"msg": "Invalid fee rate limiter"
},
{
"code": 6049,
"name": "FailToValidateSingleSwapInstruction",
"msg": "Fail to validate single swap instruction in rate limiter"
},
{
"code": 6050,
"name": "InvalidFeeTimeScheduler",
"msg": "Invalid fee scheduler"
},
{
"code": 6051,
"name": "UndeterminedError",
"msg": "Undetermined error"
},
{
"code": 6052,
"name": "InvalidPoolVersion",
"msg": "Invalid pool version"
},
{
"code": 6053,
"name": "InvalidAuthority",
"msg": "Invalid authority to do that action"
},
{
"code": 6054,
"name": "InvalidPermission",
"msg": "Invalid permission"
},
{
"code": 6055,
"name": "InvalidFeeMarketCapScheduler",
"msg": "Invalid fee market cap scheduler"
},
{
"code": 6056,
"name": "CannotUpdateBaseFee",
"msg": "Cannot update base fee"
},
{
"code": 6057,
"name": "InvalidDynamicFeeParameters",
"msg": "Invalid dynamic fee parameters"
},
{
"code": 6058,
"name": "InvalidUpdatePoolFeesParameters",
"msg": "Invalid update pool fees parameters"
},
{
"code": 6059,
"name": "MissingOperatorAccount",
"msg": "Missing operator account"
},
{
"code": 6060,
"name": "IncorrectATA",
"msg": "Incorrect ATA"
},
{
"code": 6061,
"name": "InvalidZapOutParameters",
"msg": "Invalid zap out parameters"
},
{
"code": 6062,
"name": "InvalidWithdrawProtocolFeeZapAccounts",
"msg": "Invalid withdraw protocol fee zap accounts"
},
{
"code": 6063,
"name": "MintRestrictedFromZap",
"msg": "SOL,USDC protocol fee cannot be withdrawn via zap"
},
{
"code": 6064,
"name": "CpiDisabled",
"msg": "CPI disabled"
},
{
"code": 6065,
"name": "MissingZapOutInstruction",
"msg": "Missing zap out instruction"
},
{
"code": 6066,
"name": "InvalidZapAccounts",
"msg": "Invalid zap accounts"
}
],
"types": [
{
"name": "AddLiquidityParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "liquidity_delta",
"docs": [
"delta liquidity"
],
"type": "u128"
},
{
"name": "token_a_amount_threshold",
"docs": [
"maximum token a amount"
],
"type": "u64"
},
{
"name": "token_b_amount_threshold",
"docs": [
"maximum token b amount"
],
"type": "u64"
}
]
}
},
{
"name": "BaseFeeInfo",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "data",
"type": {
"array": [
"u8",
32
]
}
}
]
}
},
{
"name": "BaseFeeParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "data",
"type": {
"array": [
"u8",
30
]
}
}
]
}
},
{
"name": "BaseFeeStruct",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "base_fee_info",
"type": {
"defined": {
"name": "BaseFeeInfo"
}
}
},
{
"name": "padding_1",
"type": "u64"
}
]
}
},
{
"name": "BorshFeeMarketCapScheduler",
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "number_of_period",
"type": "u16"
},
{
"name": "sqrt_price_step_bps",
"type": "u32"
},
{
"name": "scheduler_expiration_duration",
"type": "u32"
},
{
"name": "reduction_factor",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
3
]
}
}
]
}
},
{
"name": "BorshFeeRateLimiter",
"docs": [
"we denote reference_amount = x0, cliff_fee_numerator = c, fee_increment = i",
"if input_amount <= x0, then fee = input_amount * c",
"",
"if input_amount > x0, then input_amount = x0 + (a * x0 + b)",
"if a < max_index",
"then fee = x0 * c + x0 * (c + i) + .... + x0 * (c + i*a) + b * (c + i * (a+1))",
"then fee = x0 * (c + c*a + i*a*(a+1)/2) + b * (c + i * (a+1))",
"",
"if a >= max_index",
"if a = max_index + d, input_amount = x0 + max_index * x0 + (d * x0 + b)",
"then fee = x0 * (c + c*max_index + i*max_index*(max_index+1)/2) + (d * x0 + b) * MAX_FEE"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "fee_increment_bps",
"type": "u16"
},
{
"name": "max_limiter_duration",
"type": "u32"
},
{
"name": "max_fee_bps",
"type": "u32"
},
{
"name": "reference_amount",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
3
]
}
}
]
}
},
{
"name": "BorshFeeTimeScheduler",
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "number_of_period",
"type": "u16"
},
{
"name": "period_frequency",
"type": "u64"
},
{
"name": "reduction_factor",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
3
]
}
}
]
}
},
{
"name": "Config",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "vault_config_key",
"docs": [
"Vault config key"
],
"type": "pubkey"
},
{
"name": "pool_creator_authority",
"docs": [
"Only pool_creator_authority can use the current config to initialize new pool. When it's Pubkey::default, it's a public config."
],
"type": "pubkey"
},
{
"name": "pool_fees",
"docs": [
"Pool fee"
],
"type": {
"defined": {
"name": "PoolFeesConfig"
}
}
},
{
"name": "activation_type",
"docs": [
"Activation type"
],
"type": "u8"
},
{
"name": "collect_fee_mode",
"docs": [
"Collect fee mode"
],
"type": "u8"
},
{
"name": "config_type",
"docs": [
"Config type mode, 0 for static, 1 for dynamic"
],
"type": "u8"
},
{
"name": "_padding_0",
"docs": [
"padding 0"
],
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "index",
"docs": [
"config index"
],
"type": "u64"
},
{
"name": "sqrt_min_price",
"docs": [
"sqrt min price"
],
"type": "u128"
},
{
"name": "sqrt_max_price",
"docs": [
"sqrt max price"
],
"type": "u128"
},
{
"name": "_padding_1",
"docs": [
"Fee curve point",
"Padding for further use"
],
"type": {
"array": [
"u64",
10
]
}
}
]
}
},
{
"name": "DummyParams",
"type": {
"kind": "struct",
"fields": [
{
"name": "borsh_fee_time_scheduler_params",
"type": {
"defined": {
"name": "BorshFeeTimeScheduler"
}
}
},
{
"name": "borsh_fee_rate_limiter_params",
"type": {
"defined": {
"name": "BorshFeeRateLimiter"
}
}
},
{
"name": "borsh_fee_market_cap_scheduler_params",
"type": {
"defined": {
"name": "BorshFeeMarketCapScheduler"
}
}
}
]
}
},
{
"name": "DynamicConfigParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool_creator_authority",
"type": "pubkey"
}
]
}
},
{
"name": "DynamicFeeConfig",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "max_volatility_accumulator",
"type": "u32"
},
{
"name": "variable_fee_control",
"type": "u32"
},
{
"name": "bin_step",
"type": "u16"
},
{
"name": "filter_period",
"type": "u16"
},
{
"name": "decay_period",
"type": "u16"
},
{
"name": "reduction_factor",
"type": "u16"
},
{
"name": "padding_1",
"type": {
"array": [
"u8",
8
]
}
},
{
"name": "bin_step_u128",
"type": "u128"
}
]
}
},
{
"name": "DynamicFeeParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "bin_step",
"type": "u16"
},
{
"name": "bin_step_u128",
"type": "u128"
},
{
"name": "filter_period",
"type": "u16"
},
{
"name": "decay_period",
"type": "u16"
},
{
"name": "reduction_factor",
"type": "u16"
},
{
"name": "max_volatility_accumulator",
"type": "u32"
},
{
"name": "variable_fee_control",
"type": "u32"
}
]
}
},
{
"name": "DynamicFeeStruct",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
7
]
}
},
{
"name": "max_volatility_accumulator",
"type": "u32"
},
{
"name": "variable_fee_control",
"type": "u32"
},
{
"name": "bin_step",
"type": "u16"
},
{
"name": "filter_period",
"type": "u16"
},
{
"name": "decay_period",
"type": "u16"
},
{
"name": "reduction_factor",
"type": "u16"
},
{
"name": "last_update_timestamp",
"type": "u64"
},
{
"name": "bin_step_u128",
"type": "u128"
},
{
"name": "sqrt_price_reference",
"type": "u128"
},
{
"name": "volatility_accumulator",
"type": "u128"
},
{
"name": "volatility_reference",
"type": "u128"
}
]
}
},
{
"name": "EvtClaimPartnerFee",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "token_a_amount",
"type": "u64"
},
{
"name": "token_b_amount",
"type": "u64"
}
]
}
},
{
"name": "EvtClaimPositionFee",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "fee_a_claimed",
"type": "u64"
},
{
"name": "fee_b_claimed",
"type": "u64"
}
]
}
},
{
"name": "EvtClaimProtocolFee",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "token_a_amount",
"type": "u64"
},
{
"name": "token_b_amount",
"type": "u64"
}
]
}
},
{
"name": "EvtClaimReward",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "mint_reward",
"type": "pubkey"
},
{
"name": "reward_index",
"type": "u8"
},
{
"name": "total_reward",
"type": "u64"
}
]
}
},
{
"name": "EvtCloseConfig",
"docs": [
"Close config"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "config",
"docs": [
"Config pubkey"
],
"type": "pubkey"
},
{
"name": "admin",
"docs": [
"admin pk"
],
"type": "pubkey"
}
]
}
},
{
"name": "EvtClosePosition",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "position_nft_mint",
"type": "pubkey"
}
]
}
},
{
"name": "EvtCreateConfig",
"docs": [
"Create static config"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "pool_fees",
"type": {
"defined": {
"name": "PoolFeeParameters"
}
}
},
{
"name": "vault_config_key",
"type": "pubkey"
},
{
"name": "pool_creator_authority",
"type": "pubkey"
},
{
"name": "activation_type",
"type": "u8"
},
{
"name": "sqrt_min_price",
"type": "u128"
},
{
"name": "sqrt_max_price",
"type": "u128"
},
{
"name": "collect_fee_mode",
"type": "u8"
},
{
"name": "index",
"type": "u64"
},
{
"name": "config",
"type": "pubkey"
}
]
}
},
{
"name": "EvtCreateDynamicConfig",
"docs": [
"Create dynamic config"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "config",
"type": "pubkey"
},
{
"name": "pool_creator_authority",
"type": "pubkey"
},
{
"name": "index",
"type": "u64"
}
]
}
},
{
"name": "EvtCreatePosition",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "position_nft_mint",
"type": "pubkey"
}
]
}
},
{
"name": "EvtCreateTokenBadge",
"docs": [
"Create token badge"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "token_mint",
"type": "pubkey"
}
]
}
},
{
"name": "EvtFundReward",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "funder",
"type": "pubkey"
},
{
"name": "mint_reward",
"type": "pubkey"
},
{
"name": "reward_index",
"type": "u8"
},
{
"name": "amount",
"type": "u64"
},
{
"name": "transfer_fee_excluded_amount_in",
"type": "u64"
},
{
"name": "reward_duration_end",
"type": "u64"
},
{
"name": "pre_reward_rate",
"type": "u128"
},
{
"name": "post_reward_rate",
"type": "u128"
}
]
}
},
{
"name": "EvtInitializePool",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "token_a_mint",
"type": "pubkey"
},
{
"name": "token_b_mint",
"type": "pubkey"
},
{
"name": "creator",
"type": "pubkey"
},
{
"name": "payer",
"type": "pubkey"
},
{
"name": "alpha_vault",
"type": "pubkey"
},
{
"name": "pool_fees",
"type": {
"defined": {
"name": "PoolFeeParameters"
}
}
},
{
"name": "sqrt_min_price",
"type": "u128"
},
{
"name": "sqrt_max_price",
"type": "u128"
},
{
"name": "activation_type",
"type": "u8"
},
{
"name": "collect_fee_mode",
"type": "u8"
},
{
"name": "liquidity",
"type": "u128"
},
{
"name": "sqrt_price",
"type": "u128"
},
{
"name": "activation_point",
"type": "u64"
},
{
"name": "token_a_flag",
"type": "u8"
},
{
"name": "token_b_flag",
"type": "u8"
},
{
"name": "token_a_amount",
"type": "u64"
},
{
"name": "token_b_amount",
"type": "u64"
},
{
"name": "total_amount_a",
"type": "u64"
},
{
"name": "total_amount_b",
"type": "u64"
},
{
"name": "pool_type",
"type": "u8"
}
]
}
},
{
"name": "EvtInitializeReward",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "reward_mint",
"type": "pubkey"
},
{
"name": "funder",
"type": "pubkey"
},
{
"name": "creator",
"type": "pubkey"
},
{
"name": "reward_index",
"type": "u8"
},
{
"name": "reward_duration",
"type": "u64"
}
]
}
},
{
"name": "EvtLiquidityChange",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "token_a_amount",
"type": "u64"
},
{
"name": "token_b_amount",
"type": "u64"
},
{
"name": "transfer_fee_included_token_a_amount",
"type": "u64"
},
{
"name": "transfer_fee_included_token_b_amount",
"type": "u64"
},
{
"name": "reserve_a_amount",
"type": "u64"
},
{
"name": "reserve_b_amount",
"type": "u64"
},
{
"name": "liquidity_delta",
"type": "u128"
},
{
"name": "token_a_amount_threshold",
"type": "u64"
},
{
"name": "token_b_amount_threshold",
"type": "u64"
},
{
"name": "change_type",
"type": "u8"
}
]
}
},
{
"name": "EvtLockPosition",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "owner",
"type": "pubkey"
},
{
"name": "vesting",
"type": "pubkey"
},
{
"name": "cliff_point",
"type": "u64"
},
{
"name": "period_frequency",
"type": "u64"
},
{
"name": "cliff_unlock_liquidity",
"type": "u128"
},
{
"name": "liquidity_per_period",
"type": "u128"
},
{
"name": "number_of_period",
"type": "u16"
}
]
}
},
{
"name": "EvtPermanentLockPosition",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "position",
"type": "pubkey"
},
{
"name": "lock_liquidity_amount",
"type": "u128"
},
{
"name": "total_permanent_locked_liquidity",
"type": "u128"
}
]
}
},
{
"name": "EvtSetPoolStatus",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "status",
"type": "u8"
}
]
}
},
{
"name": "EvtSplitPosition2",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "first_owner",
"type": "pubkey"
},
{
"name": "second_owner",
"type": "pubkey"
},
{
"name": "first_position",
"type": "pubkey"
},
{
"name": "second_position",
"type": "pubkey"
},
{
"name": "current_sqrt_price",
"type": "u128"
},
{
"name": "amount_splits",
"type": {
"defined": {
"name": "SplitAmountInfo"
}
}
},
{
"name": "first_position_info",
"type": {
"defined": {
"name": "SplitPositionInfo"
}
}
},
{
"name": "second_position_info",
"type": {
"defined": {
"name": "SplitPositionInfo"
}
}
},
{
"name": "split_position_parameters",
"type": {
"defined": {
"name": "SplitPositionParameters2"
}
}
}
]
}
},
{
"name": "EvtSwap2",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "trade_direction",
"type": "u8"
},
{
"name": "collect_fee_mode",
"type": "u8"
},
{
"name": "has_referral",
"type": "bool"
},
{
"name": "params",
"type": {
"defined": {
"name": "SwapParameters2"
}
}
},
{
"name": "swap_result",
"type": {
"defined": {
"name": "SwapResult2"
}
}
},
{
"name": "included_transfer_fee_amount_in",
"type": "u64"
},
{
"name": "included_transfer_fee_amount_out",
"type": "u64"
},
{
"name": "excluded_transfer_fee_amount_out",
"type": "u64"
},
{
"name": "current_timestamp",
"type": "u64"
},
{
"name": "reserve_a_amount",
"type": "u64"
},
{
"name": "reserve_b_amount",
"type": "u64"
}
]
}
},
{
"name": "EvtUpdatePoolFees",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "operator",
"type": "pubkey"
},
{
"name": "params",
"type": {
"defined": {
"name": "UpdatePoolFeesParameters"
}
}
}
]
}
},
{
"name": "EvtUpdateRewardDuration",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "reward_index",
"type": "u8"
},
{
"name": "old_reward_duration",
"type": "u64"
},
{
"name": "new_reward_duration",
"type": "u64"
}
]
}
},
{
"name": "EvtUpdateRewardFunder",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "reward_index",
"type": "u8"
},
{
"name": "old_funder",
"type": "pubkey"
},
{
"name": "new_funder",
"type": "pubkey"
}
]
}
},
{
"name": "EvtWithdrawIneligibleReward",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "reward_mint",
"type": "pubkey"
},
{
"name": "amount",
"type": "u64"
}
]
}
},
{
"name": "InitializeCustomizablePoolParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool_fees",
"docs": [
"pool fees"
],
"type": {
"defined": {
"name": "PoolFeeParameters"
}
}
},
{
"name": "sqrt_min_price",
"docs": [
"sqrt min price"
],
"type": "u128"
},
{
"name": "sqrt_max_price",
"docs": [
"sqrt max price"
],
"type": "u128"
},
{
"name": "has_alpha_vault",
"docs": [
"has alpha vault"
],
"type": "bool"
},
{
"name": "liquidity",
"docs": [
"initialize liquidity"
],
"type": "u128"
},
{
"name": "sqrt_price",
"docs": [
"The init price of the pool as a sqrt(token_b/token_a) Q64.64 value. Market cap fee scheduler minimum price will be derived from this value"
],
"type": "u128"
},
{
"name": "activation_type",
"docs": [
"activation type"
],
"type": "u8"
},
{
"name": "collect_fee_mode",
"docs": [
"collect fee mode"
],
"type": "u8"
},
{
"name": "activation_point",
"docs": [
"activation point"
],
"type": {
"option": "u64"
}
}
]
}
},
{
"name": "InitializePoolParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "liquidity",
"docs": [
"initialize liquidity"
],
"type": "u128"
},
{
"name": "sqrt_price",
"docs": [
"The init price of the pool as a sqrt(token_b/token_a) Q64.64 value"
],
"type": "u128"
},
{
"name": "activation_point",
"docs": [
"activation point"
],
"type": {
"option": "u64"
}
}
]
}
},
{
"name": "Operator",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "whitelisted_address",
"type": "pubkey"
},
{
"name": "permission",
"type": "u128"
},
{
"name": "padding",
"type": {
"array": [
"u64",
2
]
}
}
]
}
},
{
"name": "PodAlignedFeeMarketCapScheduler",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "number_of_period",
"type": "u16"
},
{
"name": "sqrt_price_step_bps",
"type": "u32"
},
{
"name": "scheduler_expiration_duration",
"type": "u32"
},
{
"name": "reduction_factor",
"type": "u64"
}
]
}
},
{
"name": "PodAlignedFeeRateLimiter",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "fee_increment_bps",
"type": "u16"
},
{
"name": "max_limiter_duration",
"type": "u32"
},
{
"name": "max_fee_bps",
"type": "u32"
},
{
"name": "reference_amount",
"type": "u64"
}
]
}
},
{
"name": "PodAlignedFeeTimeScheduler",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"type": "u64"
},
{
"name": "base_fee_mode",
"type": "u8"
},
{
"name": "padding",
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "number_of_period",
"type": "u16"
},
{
"name": "period_frequency",
"type": "u64"
},
{
"name": "reduction_factor",
"type": "u64"
}
]
}
},
{
"name": "Pool",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "pool_fees",
"docs": [
"Pool fee"
],
"type": {
"defined": {
"name": "PoolFeesStruct"
}
}
},
{
"name": "token_a_mint",
"docs": [
"token a mint"
],
"type": "pubkey"
},
{
"name": "token_b_mint",
"docs": [
"token b mint"
],
"type": "pubkey"
},
{
"name": "token_a_vault",
"docs": [
"token a vault"
],
"type": "pubkey"
},
{
"name": "token_b_vault",
"docs": [
"token b vault"
],
"type": "pubkey"
},
{
"name": "whitelisted_vault",
"docs": [
"Whitelisted vault to be able to buy pool before activation_point"
],
"type": "pubkey"
},
{
"name": "partner",
"docs": [
"partner"
],
"type": "pubkey"
},
{
"name": "liquidity",
"docs": [
"liquidity share"
],
"type": "u128"
},
{
"name": "_padding",
"docs": [
"padding, previous reserve amount, be careful to use that field"
],
"type": "u128"
},
{
"name": "protocol_a_fee",
"docs": [
"protocol a fee"
],
"type": "u64"
},
{
"name": "protocol_b_fee",
"docs": [
"protocol b fee"
],
"type": "u64"
},
{
"name": "partner_a_fee",
"docs": [
"partner a fee"
],
"type": "u64"
},
{
"name": "partner_b_fee",
"docs": [
"partner b fee"
],
"type": "u64"
},
{
"name": "sqrt_min_price",
"docs": [
"min price"
],
"type": "u128"
},
{
"name": "sqrt_max_price",
"docs": [
"max price"
],
"type": "u128"
},
{
"name": "sqrt_price",
"docs": [
"current price"
],
"type": "u128"
},
{
"name": "activation_point",
"docs": [
"Activation point, can be slot or timestamp"
],
"type": "u64"
},
{
"name": "activation_type",
"docs": [
"Activation type, 0 means by slot, 1 means by timestamp"
],
"type": "u8"
},
{
"name": "pool_status",
"docs": [
"pool status, 0: enable, 1 disable"
],
"type": "u8"
},
{
"name": "token_a_flag",
"docs": [
"token a flag"
],
"type": "u8"
},
{
"name": "token_b_flag",
"docs": [
"token b flag"
],
"type": "u8"
},
{
"name": "collect_fee_mode",
"docs": [
"0 is collect fee in both token, 1 only collect fee only in token b"
],
"type": "u8"
},
{
"name": "pool_type",
"docs": [
"pool type"
],
"type": "u8"
},
{
"name": "version",
"docs": [
"pool version, 0: max_fee is still capped at 50%, 1: max_fee is capped at 99%"
],
"type": "u8"
},
{
"name": "_padding_0",
"docs": [
"padding"
],
"type": "u8"
},
{
"name": "fee_a_per_liquidity",
"docs": [
"cumulative"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "fee_b_per_liquidity",
"docs": [
"cumulative"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "permanent_lock_liquidity",
"type": "u128"
},
{
"name": "metrics",
"docs": [
"metrics"
],
"type": {
"defined": {
"name": "PoolMetrics"
}
}
},
{
"name": "creator",
"docs": [
"pool creator"
],
"type": "pubkey"
},
{
"name": "_padding_1",
"docs": [
"Padding for further use"
],
"type": {
"array": [
"u64",
6
]
}
},
{
"name": "reward_infos",
"docs": [
"Farming reward information"
],
"type": {
"array": [
{
"defined": {
"name": "RewardInfo"
}
},
2
]
}
}
]
}
},
{
"name": "PoolFeeParameters",
"docs": [
"Information regarding fee charges"
],
"type": {
"kind": "struct",
"fields": [
{
"name": "base_fee",
"docs": [
"Base fee"
],
"type": {
"defined": {
"name": "BaseFeeParameters"
}
}
},
{
"name": "dynamic_fee",
"docs": [
"dynamic fee"
],
"type": {
"option": {
"defined": {
"name": "DynamicFeeParameters"
}
}
}
}
]
}
},
{
"name": "PoolFeesConfig",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "base_fee",
"type": {
"defined": {
"name": "BaseFeeInfo"
}
}
},
{
"name": "dynamic_fee",
"type": {
"defined": {
"name": "DynamicFeeConfig"
}
}
},
{
"name": "protocol_fee_percent",
"type": "u8"
},
{
"name": "partner_fee_percent",
"type": "u8"
},
{
"name": "referral_fee_percent",
"type": "u8"
},
{
"name": "padding_0",
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "padding_1",
"type": {
"array": [
"u64",
5
]
}
}
]
}
},
{
"name": "PoolFeesStruct",
"docs": [
"Information regarding fee charges",
"trading_fee = amount * trade_fee_numerator / denominator",
"protocol_fee = trading_fee * protocol_fee_percentage / 100",
"referral_fee = protocol_fee * referral_percentage / 100",
"partner_fee = (protocol_fee - referral_fee) * partner_fee_percentage / denominator"
],
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "base_fee",
"docs": [
"Trade fees are extra token amounts that are held inside the token",
"accounts during a trade, making the value of liquidity tokens rise.",
"Trade fee numerator"
],
"type": {
"defined": {
"name": "BaseFeeStruct"
}
}
},
{
"name": "protocol_fee_percent",
"docs": [
"Protocol trading fees are extra token amounts that are held inside the token",
"accounts during a trade, with the equivalent in pool tokens minted to",
"the protocol of the program.",
"Protocol trade fee numerator"
],
"type": "u8"
},
{
"name": "partner_fee_percent",
"docs": [
"partner fee"
],
"type": "u8"
},
{
"name": "referral_fee_percent",
"docs": [
"referral fee"
],
"type": "u8"
},
{
"name": "padding_0",
"docs": [
"padding"
],
"type": {
"array": [
"u8",
5
]
}
},
{
"name": "dynamic_fee",
"docs": [
"dynamic fee"
],
"type": {
"defined": {
"name": "DynamicFeeStruct"
}
}
},
{
"name": "init_sqrt_price",
"type": "u128"
}
]
}
},
{
"name": "PoolMetrics",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "total_lp_a_fee",
"type": "u128"
},
{
"name": "total_lp_b_fee",
"type": "u128"
},
{
"name": "total_protocol_a_fee",
"type": "u64"
},
{
"name": "total_protocol_b_fee",
"type": "u64"
},
{
"name": "total_partner_a_fee",
"type": "u64"
},
{
"name": "total_partner_b_fee",
"type": "u64"
},
{
"name": "total_position",
"type": "u64"
},
{
"name": "padding",
"type": "u64"
}
]
}
},
{
"name": "Position",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "pool",
"type": "pubkey"
},
{
"name": "nft_mint",
"docs": [
"nft mint"
],
"type": "pubkey"
},
{
"name": "fee_a_per_token_checkpoint",
"docs": [
"fee a checkpoint"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "fee_b_per_token_checkpoint",
"docs": [
"fee b checkpoint"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "fee_a_pending",
"docs": [
"fee a pending"
],
"type": "u64"
},
{
"name": "fee_b_pending",
"docs": [
"fee b pending"
],
"type": "u64"
},
{
"name": "unlocked_liquidity",
"docs": [
"unlock liquidity"
],
"type": "u128"
},
{
"name": "vested_liquidity",
"docs": [
"vesting liquidity"
],
"type": "u128"
},
{
"name": "permanent_locked_liquidity",
"docs": [
"permanent locked liquidity"
],
"type": "u128"
},
{
"name": "metrics",
"docs": [
"metrics"
],
"type": {
"defined": {
"name": "PositionMetrics"
}
}
},
{
"name": "reward_infos",
"docs": [
"Farming reward information"
],
"type": {
"array": [
{
"defined": {
"name": "UserRewardInfo"
}
},
2
]
}
},
{
"name": "padding",
"docs": [
"padding for future usage"
],
"type": {
"array": [
"u128",
6
]
}
}
]
}
},
{
"name": "PositionMetrics",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "total_claimed_a_fee",
"type": "u64"
},
{
"name": "total_claimed_b_fee",
"type": "u64"
}
]
}
},
{
"name": "RemoveLiquidityParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "liquidity_delta",
"docs": [
"delta liquidity"
],
"type": "u128"
},
{
"name": "token_a_amount_threshold",
"docs": [
"minimum token a amount"
],
"type": "u64"
},
{
"name": "token_b_amount_threshold",
"docs": [
"minimum token b amount"
],
"type": "u64"
}
]
}
},
{
"name": "RewardInfo",
"docs": [
"Stores the state relevant for tracking liquidity mining rewards"
],
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "initialized",
"docs": [
"Indicates if the reward has been initialized"
],
"type": "u8"
},
{
"name": "reward_token_flag",
"docs": [
"reward token flag"
],
"type": "u8"
},
{
"name": "_padding_0",
"docs": [
"padding"
],
"type": {
"array": [
"u8",
6
]
}
},
{
"name": "_padding_1",
"docs": [
"Padding to ensure `reward_rate: u128` is 16-byte aligned"
],
"type": {
"array": [
"u8",
8
]
}
},
{
"name": "mint",
"docs": [
"Reward token mint."
],
"type": "pubkey"
},
{
"name": "vault",
"docs": [
"Reward vault token account."
],
"type": "pubkey"
},
{
"name": "funder",
"docs": [
"Authority account that allows to fund rewards"
],
"type": "pubkey"
},
{
"name": "reward_duration",
"docs": [
"reward duration"
],
"type": "u64"
},
{
"name": "reward_duration_end",
"docs": [
"reward duration end"
],
"type": "u64"
},
{
"name": "reward_rate",
"docs": [
"reward rate"
],
"type": "u128"
},
{
"name": "reward_per_token_stored",
"docs": [
"Reward per token stored"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "last_update_time",
"docs": [
"The last time reward states were updated."
],
"type": "u64"
},
{
"name": "cumulative_seconds_with_empty_liquidity_reward",
"docs": [
"Accumulated seconds when the farm distributed rewards but the bin was empty.",
"These rewards will be carried over to the next reward time window."
],
"type": "u64"
}
]
}
},
{
"name": "SplitAmountInfo",
"type": {
"kind": "struct",
"fields": [
{
"name": "permanent_locked_liquidity",
"type": "u128"
},
{
"name": "unlocked_liquidity",
"type": "u128"
},
{
"name": "fee_a",
"type": "u64"
},
{
"name": "fee_b",
"type": "u64"
},
{
"name": "reward_0",
"type": "u64"
},
{
"name": "reward_1",
"type": "u64"
}
]
}
},
{
"name": "SplitPositionInfo",
"type": {
"kind": "struct",
"fields": [
{
"name": "liquidity",
"type": "u128"
},
{
"name": "fee_a",
"type": "u64"
},
{
"name": "fee_b",
"type": "u64"
},
{
"name": "reward_0",
"type": "u64"
},
{
"name": "reward_1",
"type": "u64"
}
]
}
},
{
"name": "SplitPositionParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "unlocked_liquidity_percentage",
"docs": [
"Percentage of unlocked liquidity to split to the second position"
],
"type": "u8"
},
{
"name": "permanent_locked_liquidity_percentage",
"docs": [
"Percentage of permanent locked liquidity to split to the second position"
],
"type": "u8"
},
{
"name": "fee_a_percentage",
"docs": [
"Percentage of fee A pending to split to the second position"
],
"type": "u8"
},
{
"name": "fee_b_percentage",
"docs": [
"Percentage of fee B pending to split to the second position"
],
"type": "u8"
},
{
"name": "reward_0_percentage",
"docs": [
"Percentage of reward 0 pending to split to the second position"
],
"type": "u8"
},
{
"name": "reward_1_percentage",
"docs": [
"Percentage of reward 1 pending to split to the second position"
],
"type": "u8"
},
{
"name": "padding",
"docs": [
"padding for future"
],
"type": {
"array": [
"u8",
16
]
}
}
]
}
},
{
"name": "SplitPositionParameters2",
"type": {
"kind": "struct",
"fields": [
{
"name": "unlocked_liquidity_numerator",
"type": "u32"
},
{
"name": "permanent_locked_liquidity_numerator",
"type": "u32"
},
{
"name": "fee_a_numerator",
"type": "u32"
},
{
"name": "fee_b_numerator",
"type": "u32"
},
{
"name": "reward_0_numerator",
"type": "u32"
},
{
"name": "reward_1_numerator",
"type": "u32"
}
]
}
},
{
"name": "StaticConfigParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "pool_fees",
"type": {
"defined": {
"name": "PoolFeeParameters"
}
}
},
{
"name": "sqrt_min_price",
"type": "u128"
},
{
"name": "sqrt_max_price",
"type": "u128"
},
{
"name": "vault_config_key",
"type": "pubkey"
},
{
"name": "pool_creator_authority",
"type": "pubkey"
},
{
"name": "activation_type",
"type": "u8"
},
{
"name": "collect_fee_mode",
"type": "u8"
}
]
}
},
{
"name": "SwapParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount_in",
"type": "u64"
},
{
"name": "minimum_amount_out",
"type": "u64"
}
]
}
},
{
"name": "SwapParameters2",
"type": {
"kind": "struct",
"fields": [
{
"name": "amount_0",
"docs": [
"When it's exact in, partial fill, this will be amount_in. When it's exact out, this will be amount_out"
],
"type": "u64"
},
{
"name": "amount_1",
"docs": [
"When it's exact in, partial fill, this will be minimum_amount_out. When it's exact out, this will be maximum_amount_in"
],
"type": "u64"
},
{
"name": "swap_mode",
"docs": [
"Swap mode, refer [SwapMode]"
],
"type": "u8"
}
]
}
},
{
"name": "SwapResult2",
"type": {
"kind": "struct",
"fields": [
{
"name": "included_fee_input_amount",
"type": "u64"
},
{
"name": "excluded_fee_input_amount",
"type": "u64"
},
{
"name": "amount_left",
"type": "u64"
},
{
"name": "output_amount",
"type": "u64"
},
{
"name": "next_sqrt_price",
"type": "u128"
},
{
"name": "trading_fee",
"type": "u64"
},
{
"name": "protocol_fee",
"type": "u64"
},
{
"name": "partner_fee",
"type": "u64"
},
{
"name": "referral_fee",
"type": "u64"
}
]
}
},
{
"name": "TokenBadge",
"docs": [
"Parameter that set by the protocol"
],
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "token_mint",
"docs": [
"token mint"
],
"type": "pubkey"
},
{
"name": "_padding",
"docs": [
"Reserve"
],
"type": {
"array": [
"u8",
128
]
}
}
]
}
},
{
"name": "UpdatePoolFeesParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_fee_numerator",
"docs": [
"Base fee update mode:",
"- None: skip base fee update",
"- Some: update new cliff_fee_numerator if base fee is static"
],
"type": {
"option": "u64"
}
},
{
"name": "dynamic_fee",
"docs": [
"Dynamic fee update mode:",
"- None: skip dynamic fee update",
"- Some(with default value): disable dynamic fee",
"- Some(with non default value): enable dynamic fee if disabled or update dynamic fee if enabled"
],
"type": {
"option": {
"defined": {
"name": "DynamicFeeParameters"
}
}
}
}
]
}
},
{
"name": "UserRewardInfo",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "reward_per_token_checkpoint",
"docs": [
"The latest update reward checkpoint"
],
"type": {
"array": [
"u8",
32
]
}
},
{
"name": "reward_pendings",
"docs": [
"Current pending rewards"
],
"type": "u64"
},
{
"name": "total_claimed_rewards",
"docs": [
"Total claimed rewards"
],
"type": "u64"
}
]
}
},
{
"name": "Vesting",
"serialization": "bytemuck",
"repr": {
"kind": "c"
},
"type": {
"kind": "struct",
"fields": [
{
"name": "position",
"type": "pubkey"
},
{
"name": "cliff_point",
"type": "u64"
},
{
"name": "period_frequency",
"type": "u64"
},
{
"name": "cliff_unlock_liquidity",
"type": "u128"
},
{
"name": "liquidity_per_period",
"type": "u128"
},
{
"name": "total_released_liquidity",
"type": "u128"
},
{
"name": "number_of_period",
"type": "u16"
},
{
"name": "padding",
"type": {
"array": [
"u8",
14
]
}
},
{
"name": "padding2",
"type": {
"array": [
"u128",
4
]
}
}
]
}
},
{
"name": "VestingParameters",
"type": {
"kind": "struct",
"fields": [
{
"name": "cliff_point",
"type": {
"option": "u64"
}
},
{
"name": "period_frequency",
"type": "u64"
},
{
"name": "cliff_unlock_liquidity",
"type": "u128"
},
{
"name": "liquidity_per_period",
"type": "u128"
},
{
"name": "number_of_period",
"type": "u16"
}
]
}
}
],
"constants": [
{
"name": "BIN_STEP_BPS_DEFAULT",
"type": "u16",
"value": "1"
},
{
"name": "BIN_STEP_U128_DEFAULT_LE_BYTES",
"type": {
"array": [
"u8",
16
]
},
"value": "[203, 16, 199, 186, 184, 141, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0]"
},
{
"name": "CUSTOMIZABLE_POOL_PREFIX",
"type": "bytes",
"value": "[99, 112, 111, 111, 108]"
},
{
"name": "FEE_DENOMINATOR",
"docs": [
"Default fee denominator. DO NOT simply update it as it will break logic that depends on it as default value."
],
"type": "u64",
"value": "1000000000"
},
{
"name": "MAX_BASIS_POINT",
"docs": [
"Max basis point. 100% in pct"
],
"type": "u64",
"value": "10000"
},
{
"name": "MAX_SQRT_PRICE_LE_BYTES",
"type": {
"array": [
"u8",
16
]
},
"value": "[155, 87, 105, 78, 169, 26, 92, 132, 177, 196, 254, 255, 0, 0, 0, 0]"
},
{
"name": "MIN_SQRT_PRICE_LE_BYTES",
"type": {
"array": [
"u8",
16
]
},
"value": "[80, 59, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]"
},
{
"name": "POOL_AUTHORITY_PREFIX",
"type": "bytes",
"value": "[112, 111, 111, 108, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121]"
},
{
"name": "POOL_PREFIX",
"type": "bytes",
"value": "[112, 111, 111, 108]"
},
{
"name": "POSITION_NFT_ACCOUNT_PREFIX",
"type": "bytes",
"value": "[112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, 97, 99, 99, 111, 117, 110, 116]"
},
{
"name": "POSITION_PREFIX",
"type": "bytes",
"value": "[112, 111, 115, 105, 116, 105, 111, 110]"
},
{
"name": "SPLIT_POSITION_DENOMINATOR",
"type": "u32",
"value": "1000000000"
},
{
"name": "TOKEN_VAULT_PREFIX",
"type": "bytes",
"value": "[116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116]"
}
]
}