From 4dc4814b917b282c98f80f2a07370bfdf02fb8b7 Mon Sep 17 00:00:00 2001 From: bangyro <229454856+bangyro@users.noreply.github.com> Date: Tue, 23 Dec 2025 18:05:26 +0800 Subject: [PATCH 1/4] Fix: dammv2 fee by market cap (#40) * feat: bump damm-v2 to 0.1.6 * fix: type expected by calculate_transfer_fee_excluded_amount * feat: market cap fee mode * fix: use rev instead of branch * fix: take sqrt_price from pool instead of passing in * fix damm v2 no-entrypoint package * update damm v2 package * feat: update damm_v2 artifacts * fix: update damm_v2 tests --------- Co-authored-by: Andrew Nguyen --- .github/workflows/ci.yml | 3 +- Cargo.lock | 40 +- idls/damm_v2.json | 3960 +++++------------ programs/zap/Cargo.toml | 3 +- ...ix_zap_in_dlmm_for_initialized_position.rs | 22 +- ..._zap_in_dlmm_for_uninitialized_position.rs | 22 +- programs/zap/src/utils/damm_v2_utils.rs | 32 +- tests/common/damm_v2.ts | 105 +- tests/common/idl/damm_v2.ts | 1011 +++-- tests/fixtures/damm_v2.so | Bin 1343368 -> 1387872 bytes tests/test_zapin/zapin_dammv2.test.ts | 166 +- 11 files changed, 2089 insertions(+), 3275 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a9dfbe1..0a53fa0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,8 +4,7 @@ on: pull_request: branches: - main - - release_0.2.0 - - zap_in + - release_0.2.1 env: SOLANA_CLI_VERSION: 2.1.0 diff --git a/Cargo.lock b/Cargo.lock index 7538b16..ebe94d9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -729,8 +729,8 @@ checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "cp-amm" -version = "0.1.5" -source = "git+https://github.com/MeteoraAg/damm-v2?rev=689a3264484799d833c505523f4ff4e4990690aa#689a3264484799d833c505523f4ff4e4990690aa" +version = "0.1.6" +source = "git+https://github.com/MeteoraAg/damm-v2?rev=d9cef5aaec9cfa1a6d3b0b28d213c87c285127de#d9cef5aaec9cfa1a6d3b0b28d213c87c285127de" dependencies = [ "anchor-lang", "anchor-spl", @@ -739,6 +739,9 @@ dependencies = [ "num", "num-traits", "num_enum", + "pinocchio", + "pinocchio-token", + "pinocchio-token-2022", "ruint", "spl-token-metadata-interface", "static_assertions", @@ -1428,6 +1431,39 @@ dependencies = [ "ucd-trie", ] +[[package]] +name = "pinocchio" +version = "0.9.0" +source = "git+https://github.com/anza-xyz/pinocchio.git?rev=17b0e862c01a868ea07ef81a2f8a9b4a504bdfed#17b0e862c01a868ea07ef81a2f8a9b4a504bdfed" + +[[package]] +name = "pinocchio-pubkey" +version = "0.3.0" +source = "git+https://github.com/anza-xyz/pinocchio.git?rev=17b0e862c01a868ea07ef81a2f8a9b4a504bdfed#17b0e862c01a868ea07ef81a2f8a9b4a504bdfed" +dependencies = [ + "five8_const", + "pinocchio", + "sha2-const-stable", +] + +[[package]] +name = "pinocchio-token" +version = "0.4.0" +source = "git+https://github.com/anza-xyz/pinocchio.git?rev=17b0e862c01a868ea07ef81a2f8a9b4a504bdfed#17b0e862c01a868ea07ef81a2f8a9b4a504bdfed" +dependencies = [ + "pinocchio", + "pinocchio-pubkey", +] + +[[package]] +name = "pinocchio-token-2022" +version = "0.1.0" +source = "git+https://github.com/anza-xyz/pinocchio.git?rev=17b0e862c01a868ea07ef81a2f8a9b4a504bdfed#17b0e862c01a868ea07ef81a2f8a9b4a504bdfed" +dependencies = [ + "pinocchio", + "pinocchio-pubkey", +] + [[package]] name = "polyval" version = "0.6.2" diff --git a/idls/damm_v2.json b/idls/damm_v2.json index a7bf2f7..fee333e 100644 --- a/idls/damm_v2.json +++ b/idls/damm_v2.json @@ -2,30 +2,19 @@ "address": "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG", "metadata": { "name": "cp_amm", - "version": "0.1.5", + "version": "0.1.6", "spec": "0.1.0", "description": "Created with Anchor" }, "instructions": [ { "name": "add_liquidity", - "discriminator": [ - 181, - 157, - 89, - 67, - 143, - 182, - 52, - 72 - ], + "discriminator": [181, 157, 89, 67, 143, 182, 52, 72], "accounts": [ { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -33,80 +22,52 @@ }, { "name": "token_a_account", - "docs": [ - "The user token a account" - ], + "docs": ["The user token a account"], "writable": true }, { "name": "token_b_account", - "docs": [ - "The user token b account" - ], + "docs": ["The user token b account"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -115,23 +76,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -154,16 +100,7 @@ }, { "name": "claim_partner_fee", - "discriminator": [ - 97, - 206, - 39, - 105, - 94, - 94, - 126, - 148 - ], + "discriminator": [97, 206, 39, 105, 94, 94, 126, 148], "accounts": [ { "name": "pool_authority", @@ -175,74 +112,48 @@ }, { "name": "token_a_account", - "docs": [ - "The treasury token a account" - ], + "docs": ["The treasury token a account"], "writable": true }, { "name": "token_b_account", - "docs": [ - "The treasury token b account" - ], + "docs": ["The treasury token b account"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "partner", "signer": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -251,23 +162,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -290,16 +186,7 @@ }, { "name": "claim_position_fee", - "discriminator": [ - 180, - 38, - 154, - 17, - 133, - 33, - 162, - 211 - ], + "discriminator": [180, 38, 154, 17, 133, 33, 162, 211], "accounts": [ { "name": "pool_authority", @@ -307,9 +194,7 @@ }, { "name": "pool", - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -317,80 +202,52 @@ }, { "name": "token_a_account", - "docs": [ - "The user token a account" - ], + "docs": ["The user token a account"], "writable": true }, { "name": "token_b_account", - "docs": [ - "The user token b account" - ], + "docs": ["The user token b account"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -399,23 +256,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -429,16 +271,7 @@ }, { "name": "claim_protocol_fee", - "discriminator": [ - 165, - 228, - 133, - 48, - 99, - 249, - 255, - 33 - ], + "discriminator": [165, 228, 133, 48, 99, 249, 255, 33], "accounts": [ { "name": "pool_authority", @@ -450,85 +283,38 @@ }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "token_a_account", - "docs": [ - "The treasury token a account" - ], + "docs": ["The treasury token a account"], "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ - 48, - 9, - 89, - 123, - 106, - 114, - 131, - 251, - 50, - 173, - 254, - 250, - 10, - 80, - 160, - 84, - 143, - 100, - 81, - 249, - 134, - 112, - 30, - 213, - 50, - 166, - 239, - 78, - 53, - 175, - 188, - 85 + 48, 9, 89, 123, 106, 114, 131, 251, 50, 173, 254, 250, 10, 80, + 160, 84, 143, 100, 81, 249, 134, 112, 30, 213, 50, 166, 239, + 78, 53, 175, 188, 85 ] }, { @@ -543,85 +329,25 @@ "program": { "kind": "const", "value": [ - 140, - 151, - 37, - 143, - 78, - 36, - 137, - 241, - 187, - 61, - 16, - 41, - 20, - 142, - 13, - 131, - 11, - 90, - 19, - 153, - 218, - 255, - 16, - 132, - 4, - 142, - 123, - 216, - 219, - 233, - 248, - 89 + 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, + 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, + 219, 233, 248, 89 ] } } }, { "name": "token_b_account", - "docs": [ - "The treasury token b account" - ], + "docs": ["The treasury token b account"], "writable": true, "pda": { "seeds": [ { "kind": "const", "value": [ - 48, - 9, - 89, - 123, - 106, - 114, - 131, - 251, - 50, - 173, - 254, - 250, - 10, - 80, - 160, - 84, - 143, - 100, - 81, - 249, - 134, - 112, - 30, - 213, - 50, - 166, - 239, - 78, - 53, - 175, - 188, - 85 + 48, 9, 89, 123, 106, 114, 131, 251, 50, 173, 254, 250, 10, 80, + 160, 84, 143, 100, 81, 249, 134, 112, 30, 213, 50, 166, 239, + 78, 53, 175, 188, 85 ] }, { @@ -636,69 +362,30 @@ "program": { "kind": "const", "value": [ - 140, - 151, - 37, - 143, - 78, - 36, - 137, - 241, - 187, - 61, - 16, - 41, - 20, - 142, - 13, - 131, - 11, - 90, - 19, - 153, - 218, - 255, - 16, - 132, - 4, - 142, - 123, - 216, - 219, - 233, - 248, - 89 + 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, + 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, + 219, 233, 248, 89 ] } } }, { - "name": "claim_fee_operator", - "docs": [ - "Claim fee operator" - ] + "name": "operator", + "docs": ["Claim fee operator"] }, { - "name": "operator", - "docs": [ - "Operator" - ], + "name": "whitelisted_address", + "docs": ["Operator"], "signer": true, - "relations": [ - "claim_fee_operator" - ] + "relations": ["operator"] }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -707,23 +394,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -746,16 +418,7 @@ }, { "name": "claim_reward", - "discriminator": [ - 149, - 95, - 181, - 242, - 94, - 90, - 158, - 162 - ], + "discriminator": [149, 95, 181, 242, 94, 90, 158, 162], "accounts": [ { "name": "pool_authority", @@ -764,9 +427,7 @@ { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -774,9 +435,7 @@ }, { "name": "reward_vault", - "docs": [ - "The vault token account for reward token" - ], + "docs": ["The vault token account for reward token"], "writable": true }, { @@ -788,15 +447,11 @@ }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { @@ -809,23 +464,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -847,29 +487,24 @@ ] }, { - "name": "close_claim_fee_operator", - "discriminator": [ - 38, - 134, - 82, - 216, - 95, - 124, - 17, - 99 - ], + "name": "close_config", + "discriminator": [145, 9, 72, 157, 95, 125, 61, 85], "accounts": [ { - "name": "claim_fee_operator", + "name": "config", "writable": true }, { - "name": "rent_receiver", - "writable": true + "name": "operator" }, { - "name": "admin", - "signer": true + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] + }, + { + "name": "rent_receiver", + "writable": true }, { "name": "event_authority", @@ -878,23 +513,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -907,25 +527,15 @@ "args": [] }, { - "name": "close_config", - "discriminator": [ - 145, - 9, - 72, - 157, - 95, - 125, - 61, - 85 - ], + "name": "close_operator_account", + "discriminator": [171, 9, 213, 74, 120, 23, 3, 29], "accounts": [ { - "name": "config", + "name": "operator", "writable": true }, { "name": "admin", - "writable": true, "signer": true }, { @@ -939,23 +549,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -969,37 +564,22 @@ }, { "name": "close_position", - "discriminator": [ - 123, - 134, - 81, - 0, - 49, - 68, - 98, - 98 - ], + "discriminator": [123, 134, 81, 0, 49, 68, 98, 98], "accounts": [ { "name": "position_nft_mint", - "docs": [ - "position_nft_mint" - ], + "docs": ["position_nft_mint"], "writable": true }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ], + "docs": ["The token account for nft"], "writable": true }, { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -1015,9 +595,7 @@ }, { "name": "owner", - "docs": [ - "Owner of position" - ], + "docs": ["Owner of position"], "signer": true }, { @@ -1034,23 +612,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1064,25 +627,19 @@ }, { "name": "close_token_badge", - "discriminator": [ - 108, - 146, - 86, - 110, - 179, - 254, - 10, - 104 - ], + "discriminator": [108, 146, 86, 110, 179, 254, 10, 104], "accounts": [ { "name": "token_badge", "writable": true }, { - "name": "admin", - "writable": true, - "signer": true + "name": "operator" + }, + { + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] }, { "name": "rent_receiver", @@ -1095,23 +652,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1124,42 +666,22 @@ "args": [] }, { - "name": "create_claim_fee_operator", - "discriminator": [ - 169, - 62, - 207, - 107, - 58, - 187, - 162, - 109 - ], + "name": "create_config", + "docs": ["OPERATOR FUNCTIONS /////"], + "discriminator": [201, 207, 243, 114, 75, 111, 47, 189], "accounts": [ { - "name": "claim_fee_operator", + "name": "config", "writable": true, "pda": { "seeds": [ { "kind": "const", - "value": [ - 99, - 102, - 95, - 111, - 112, - 101, - 114, - 97, - 116, - 111, - 114 - ] + "value": [99, 111, 110, 102, 105, 103] }, { - "kind": "account", - "path": "operator" + "kind": "arg", + "path": "index" } ] } @@ -1168,7 +690,12 @@ "name": "operator" }, { - "name": "admin", + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] + }, + { + "name": "payer", "writable": true, "signer": true }, @@ -1183,23 +710,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1209,23 +721,24 @@ "name": "program" } ], - "args": [] + "args": [ + { + "name": "index", + "type": "u64" + }, + { + "name": "config_parameters", + "type": { + "defined": { + "name": "StaticConfigParameters" + } + } + } + ] }, { - "name": "create_config", - "docs": [ - "ADMIN FUNCTIONS /////" - ], - "discriminator": [ - 201, - 207, - 243, - 114, - 75, - 111, - 47, - 189 - ], + "name": "create_dynamic_config", + "discriminator": [81, 251, 122, 78, 66, 57, 208, 82], "accounts": [ { "name": "config", @@ -1234,14 +747,7 @@ "seeds": [ { "kind": "const", - "value": [ - 99, - 111, - 110, - 102, - 105, - 103 - ] + "value": [99, 111, 110, 102, 105, 103] }, { "kind": "arg", @@ -1251,7 +757,15 @@ } }, { - "name": "admin", + "name": "operator" + }, + { + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] + }, + { + "name": "payer", "writable": true, "signer": true }, @@ -1266,23 +780,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1301,50 +800,42 @@ "name": "config_parameters", "type": { "defined": { - "name": "StaticConfigParameters" + "name": "DynamicConfigParameters" } } } ] }, { - "name": "create_dynamic_config", - "discriminator": [ - 81, - 251, - 122, - 78, - 66, - 57, - 208, - 82 - ], + "name": "create_operator_account", + "docs": ["ADMIN FUNCTIONS /////"], + "discriminator": [221, 64, 246, 149, 240, 153, 229, 163], "accounts": [ { - "name": "config", + "name": "operator", "writable": true, "pda": { "seeds": [ { "kind": "const", - "value": [ - 99, - 111, - 110, - 102, - 105, - 103 - ] + "value": [111, 112, 101, 114, 97, 116, 111, 114] }, { - "kind": "arg", - "path": "index" + "kind": "account", + "path": "whitelisted_address" } ] } }, + { + "name": "whitelisted_address" + }, { "name": "admin", + "signer": true + }, + { + "name": "payer", "writable": true, "signer": true }, @@ -1359,23 +850,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1387,74 +863,35 @@ ], "args": [ { - "name": "index", - "type": "u64" - }, - { - "name": "config_parameters", - "type": { - "defined": { - "name": "DynamicConfigParameters" - } - } + "name": "permission", + "type": "u128" } ] }, { "name": "create_position", - "discriminator": [ - 48, - 215, - 197, - 153, - 96, - 203, - 180, - 133 - ], + "discriminator": [48, 215, 197, 153, 96, 203, 180, 133], "accounts": [ { "name": "owner" }, { "name": "position_nft_mint", - "docs": [ - "position_nft_mint" - ], + "docs": ["position_nft_mint"], "writable": true, "signer": true }, { "name": "position_nft_account", - "docs": [ - "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 + 112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, + 97, 99, 99, 111, 117, 110, 116 ] }, { @@ -1475,16 +912,7 @@ "seeds": [ { "kind": "const", - "value": [ - 112, - 111, - 115, - 105, - 116, - 105, - 111, - 110 - ] + "value": [112, 111, 115, 105, 116, 105, 111, 110] }, { "kind": "account", @@ -1499,9 +927,7 @@ }, { "name": "payer", - "docs": [ - "Address paying to create the position. Can be anyone" - ], + "docs": ["Address paying to create the position. Can be anyone"], "writable": true, "signer": true }, @@ -1523,23 +949,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1553,16 +964,7 @@ }, { "name": "create_token_badge", - "discriminator": [ - 88, - 206, - 0, - 91, - 60, - 175, - 151, - 118 - ], + "discriminator": [88, 206, 0, 91, 60, 175, 151, 118], "accounts": [ { "name": "token_badge", @@ -1571,19 +973,7 @@ "seeds": [ { "kind": "const", - "value": [ - 116, - 111, - 107, - 101, - 110, - 95, - 98, - 97, - 100, - 103, - 101 - ] + "value": [116, 111, 107, 101, 110, 95, 98, 97, 100, 103, 101] }, { "kind": "account", @@ -1596,7 +986,15 @@ "name": "token_mint" }, { - "name": "admin", + "name": "operator" + }, + { + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] + }, + { + "name": "payer", "writable": true, "signer": true }, @@ -1611,23 +1009,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1640,17 +1023,33 @@ "args": [] }, { - "name": "fund_reward", - "discriminator": [ - 188, - 50, - 249, - 165, - 93, - 151, - 38, - 63 + "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", @@ -1681,23 +1080,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1724,59 +1108,28 @@ }, { "name": "initialize_customizable_pool", - "discriminator": [ - 20, - 161, - 241, - 24, - 189, - 221, - 180, - 2 - ], + "discriminator": [20, 161, 241, 24, 189, 221, 180, 2], "accounts": [ { "name": "creator" }, { "name": "position_nft_mint", - "docs": [ - "position_nft_mint" - ], + "docs": ["position_nft_mint"], "writable": true, "signer": true }, { "name": "position_nft_account", - "docs": [ - "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 + 112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, + 97, 99, 99, 111, 117, 110, 116 ] }, { @@ -1788,9 +1141,7 @@ }, { "name": "payer", - "docs": [ - "Address paying to create the pool. Can be anyone" - ], + "docs": ["Address paying to create the pool. Can be anyone"], "writable": true, "signer": true }, @@ -1800,9 +1151,7 @@ }, { "name": "pool", - "docs": [ - "Initialize an account to store the pool state" - ], + "docs": ["Initialize an account to store the pool state"], "writable": true }, { @@ -1812,16 +1161,7 @@ "seeds": [ { "kind": "const", - "value": [ - 112, - 111, - 115, - 105, - 116, - 105, - 111, - 110 - ] + "value": [112, 111, 115, 105, 116, 105, 111, 110] }, { "kind": "account", @@ -1832,39 +1172,21 @@ }, { "name": "token_a_mint", - "docs": [ - "Token a mint" - ] + "docs": ["Token a mint"] }, { "name": "token_b_mint", - "docs": [ - "Token b mint" - ] + "docs": ["Token b mint"] }, { "name": "token_a_vault", - "docs": [ - "Token a vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -1879,27 +1201,13 @@ }, { "name": "token_b_vault", - "docs": [ - "Token b vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -1914,29 +1222,21 @@ }, { "name": "payer_token_a", - "docs": [ - "payer token a account" - ], + "docs": ["payer token a account"], "writable": true }, { "name": "payer_token_b", - "docs": [ - "creator token b account" - ], + "docs": ["creator token b account"], "writable": true }, { "name": "token_a_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_b_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_2022_program", @@ -1956,23 +1256,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -1995,62 +1280,29 @@ }, { "name": "initialize_pool", - "docs": [ - "USER FUNCTIONS ////" - ], - "discriminator": [ - 95, - 180, - 10, - 172, - 84, - 174, - 232, - 40 - ], + "docs": ["USER FUNCTIONS ////"], + "discriminator": [95, 180, 10, 172, 84, 174, 232, 40], "accounts": [ { "name": "creator" }, { "name": "position_nft_mint", - "docs": [ - "position_nft_mint" - ], + "docs": ["position_nft_mint"], "writable": true, "signer": true }, { "name": "position_nft_account", - "docs": [ - "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 + 112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, + 97, 99, 99, 111, 117, 110, 116 ] }, { @@ -2062,17 +1314,13 @@ }, { "name": "payer", - "docs": [ - "Address paying to create the pool. Can be anyone" - ], + "docs": ["Address paying to create the pool. Can be anyone"], "writable": true, "signer": true }, { "name": "config", - "docs": [ - "Which config the pool belongs to." - ] + "docs": ["Which config the pool belongs to."] }, { "name": "pool_authority", @@ -2080,9 +1328,7 @@ }, { "name": "pool", - "docs": [ - "Initialize an account to store the pool state" - ], + "docs": ["Initialize an account to store the pool state"], "writable": true }, { @@ -2092,16 +1338,7 @@ "seeds": [ { "kind": "const", - "value": [ - 112, - 111, - 115, - 105, - 116, - 105, - 111, - 110 - ] + "value": [112, 111, 115, 105, 116, 105, 111, 110] }, { "kind": "account", @@ -2112,39 +1349,21 @@ }, { "name": "token_a_mint", - "docs": [ - "Token a mint" - ] + "docs": ["Token a mint"] }, { "name": "token_b_mint", - "docs": [ - "Token b mint" - ] + "docs": ["Token b mint"] }, { "name": "token_a_vault", - "docs": [ - "Token a vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -2159,27 +1378,13 @@ }, { "name": "token_b_vault", - "docs": [ - "Token b vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -2194,29 +1399,21 @@ }, { "name": "payer_token_a", - "docs": [ - "payer token a account" - ], + "docs": ["payer token a account"], "writable": true }, { "name": "payer_token_b", - "docs": [ - "creator token b account" - ], + "docs": ["creator token b account"], "writable": true }, { "name": "token_a_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_b_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_2022_program", @@ -2236,23 +1433,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -2275,59 +1457,28 @@ }, { "name": "initialize_pool_with_dynamic_config", - "discriminator": [ - 149, - 82, - 72, - 197, - 253, - 252, - 68, - 15 - ], + "discriminator": [149, 82, 72, 197, 253, 252, 68, 15], "accounts": [ { "name": "creator" }, { "name": "position_nft_mint", - "docs": [ - "position_nft_mint" - ], + "docs": ["position_nft_mint"], "writable": true, "signer": true }, { "name": "position_nft_account", - "docs": [ - "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 + 112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, + 97, 99, 99, 111, 117, 110, 116 ] }, { @@ -2339,24 +1490,18 @@ }, { "name": "payer", - "docs": [ - "Address paying to create the pool. Can be anyone" - ], + "docs": ["Address paying to create the pool. Can be anyone"], "writable": true, "signer": true }, { "name": "pool_creator_authority", "signer": true, - "relations": [ - "config" - ] + "relations": ["config"] }, { "name": "config", - "docs": [ - "Which config the pool belongs to." - ] + "docs": ["Which config the pool belongs to."] }, { "name": "pool_authority", @@ -2364,9 +1509,7 @@ }, { "name": "pool", - "docs": [ - "Initialize an account to store the pool state" - ], + "docs": ["Initialize an account to store the pool state"], "writable": true }, { @@ -2376,16 +1519,7 @@ "seeds": [ { "kind": "const", - "value": [ - 112, - 111, - 115, - 105, - 116, - 105, - 111, - 110 - ] + "value": [112, 111, 115, 105, 116, 105, 111, 110] }, { "kind": "account", @@ -2396,39 +1530,21 @@ }, { "name": "token_a_mint", - "docs": [ - "Token a mint" - ] + "docs": ["Token a mint"] }, { "name": "token_b_mint", - "docs": [ - "Token b mint" - ] + "docs": ["Token b mint"] }, { "name": "token_a_vault", - "docs": [ - "Token a vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -2443,27 +1559,13 @@ }, { "name": "token_b_vault", - "docs": [ - "Token b vault for the pool" - ], + "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 - ] + "value": [116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116] }, { "kind": "account", @@ -2478,29 +1580,21 @@ }, { "name": "payer_token_a", - "docs": [ - "payer token a account" - ], + "docs": ["payer token a account"], "writable": true }, { "name": "payer_token_b", - "docs": [ - "creator token b account" - ], + "docs": ["creator token b account"], "writable": true }, { "name": "token_a_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_b_program", - "docs": [ - "Program to create mint account and mint tokens" - ] + "docs": ["Program to create mint account and mint tokens"] }, { "name": "token_2022_program", @@ -2520,23 +1614,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -2559,16 +1638,7 @@ }, { "name": "initialize_reward", - "discriminator": [ - 95, - 135, - 192, - 196, - 242, - 129, - 230, - 68 - ], + "discriminator": [95, 135, 192, 196, 242, 129, 230, 68], "accounts": [ { "name": "pool_authority", @@ -2586,18 +1656,7 @@ { "kind": "const", "value": [ - 114, - 101, - 119, - 97, - 114, - 100, - 95, - 118, - 97, - 117, - 108, - 116 + 114, 101, 119, 97, 114, 100, 95, 118, 97, 117, 108, 116 ] }, { @@ -2637,23 +1696,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -2680,22 +1724,11 @@ }, { "name": "lock_position", - "discriminator": [ - 227, - 62, - 2, - 252, - 247, - 10, - 171, - 185 - ], + "discriminator": [227, 62, 2, 252, 247, 10, 171, 185], "accounts": [ { "name": "pool", - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -2708,15 +1741,11 @@ }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { @@ -2735,23 +1764,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -2774,23 +1788,12 @@ }, { "name": "permanent_lock_position", - "discriminator": [ - 165, - 176, - 125, - 6, - 231, - 171, - 186, - 213 - ], + "discriminator": [165, 176, 125, 6, 231, 171, 186, 213], "accounts": [ { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -2798,15 +1801,11 @@ }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { @@ -2816,23 +1815,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -2851,22 +1835,11 @@ }, { "name": "refresh_vesting", - "discriminator": [ - 9, - 94, - 216, - 14, - 116, - 204, - 247, - 0 - ], + "discriminator": [9, 94, 216, 14, 116, 204, 247, 0], "accounts": [ { "name": "pool", - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -2874,9 +1847,7 @@ }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner" @@ -2886,16 +1857,7 @@ }, { "name": "remove_all_liquidity", - "discriminator": [ - 10, - 51, - 61, - 35, - 112, - 105, - 24, - 85 - ], + "discriminator": [10, 51, 61, 35, 112, 105, 24, 85], "accounts": [ { "name": "pool_authority", @@ -2904,9 +1866,7 @@ { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -2914,80 +1874,52 @@ }, { "name": "token_a_account", - "docs": [ - "The user token a account" - ], + "docs": ["The user token a account"], "writable": true }, { "name": "token_b_account", - "docs": [ - "The user token b account" - ], + "docs": ["The user token b account"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -2996,23 +1928,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3035,16 +1952,7 @@ }, { "name": "remove_liquidity", - "discriminator": [ - 80, - 85, - 209, - 72, - 24, - 206, - 177, - 108 - ], + "discriminator": [80, 85, 209, 72, 24, 206, 177, 108], "accounts": [ { "name": "pool_authority", @@ -3053,9 +1961,7 @@ { "name": "pool", "writable": true, - "relations": [ - "position" - ] + "relations": ["position"] }, { "name": "position", @@ -3063,80 +1969,52 @@ }, { "name": "token_a_account", - "docs": [ - "The user token a account" - ], + "docs": ["The user token a account"], "writable": true }, { "name": "token_b_account", - "docs": [ - "The user token b account" - ], + "docs": ["The user token b account"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token a"], + "relations": ["pool"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ], - "relations": [ - "pool" - ] + "docs": ["The mint of token b"], + "relations": ["pool"] }, { "name": "position_nft_account", - "docs": [ - "The token account for nft" - ] + "docs": ["The token account for nft"] }, { "name": "owner", - "docs": [ - "owner of position" - ], + "docs": ["owner of position"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "event_authority", @@ -3145,23 +2023,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3184,24 +2047,19 @@ }, { "name": "set_pool_status", - "discriminator": [ - 112, - 87, - 135, - 223, - 83, - 204, - 132, - 53 - ], + "discriminator": [112, 87, 135, 223, 83, 204, 132, 53], "accounts": [ { "name": "pool", "writable": true }, { - "name": "admin", - "signer": true + "name": "operator" + }, + { + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] }, { "name": "event_authority", @@ -3210,23 +2068,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3245,63 +2088,39 @@ }, { "name": "split_position", - "discriminator": [ - 172, - 241, - 221, - 138, - 161, - 29, - 253, - 42 - ], + "discriminator": [172, 241, 221, 138, 161, 29, 253, 42], "accounts": [ { "name": "pool", "writable": true, - "relations": [ - "first_position", - "second_position" - ] + "relations": ["first_position", "second_position"] }, { "name": "first_position", - "docs": [ - "The first position" - ], + "docs": ["The first position"], "writable": true }, { "name": "first_position_nft_account", - "docs": [ - "The token account for position nft" - ] + "docs": ["The token account for position nft"] }, { "name": "second_position", - "docs": [ - "The second position" - ], + "docs": ["The second position"], "writable": true }, { "name": "second_position_nft_account", - "docs": [ - "The token account for position nft" - ] + "docs": ["The token account for position nft"] }, { "name": "first_owner", - "docs": [ - "Owner of first position" - ], + "docs": ["Owner of first position"], "signer": true }, { "name": "second_owner", - "docs": [ - "Owner of second position" - ], + "docs": ["Owner of second position"], "signer": true }, { @@ -3311,23 +2130,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3350,63 +2154,39 @@ }, { "name": "split_position2", - "discriminator": [ - 221, - 147, - 228, - 207, - 140, - 212, - 17, - 119 - ], + "discriminator": [221, 147, 228, 207, 140, 212, 17, 119], "accounts": [ { "name": "pool", "writable": true, - "relations": [ - "first_position", - "second_position" - ] + "relations": ["first_position", "second_position"] }, { "name": "first_position", - "docs": [ - "The first position" - ], + "docs": ["The first position"], "writable": true }, { "name": "first_position_nft_account", - "docs": [ - "The token account for position nft" - ] + "docs": ["The token account for position nft"] }, { "name": "second_position", - "docs": [ - "The second position" - ], + "docs": ["The second position"], "writable": true }, { "name": "second_position_nft_account", - "docs": [ - "The token account for position nft" - ] + "docs": ["The token account for position nft"] }, { "name": "first_owner", - "docs": [ - "Owner of first position" - ], + "docs": ["Owner of first position"], "signer": true }, { "name": "second_owner", - "docs": [ - "Owner of second position" - ], + "docs": ["Owner of second position"], "signer": true }, { @@ -3416,23 +2196,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3451,16 +2216,7 @@ }, { "name": "swap", - "discriminator": [ - 248, - 198, - 158, - 145, - 225, - 117, - 135, - 200 - ], + "discriminator": [248, 198, 158, 145, 225, 117, 135, 200], "accounts": [ { "name": "pool_authority", @@ -3468,81 +2224,55 @@ }, { "name": "pool", - "docs": [ - "Pool account" - ], + "docs": ["Pool account"], "writable": true }, { "name": "input_token_account", - "docs": [ - "The user token account for input token" - ], + "docs": ["The user token account for input token"], "writable": true }, { "name": "output_token_account", - "docs": [ - "The user token account for output token" - ], + "docs": ["The user token account for output token"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ] + "docs": ["The mint of token a"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ] + "docs": ["The mint of token b"] }, { "name": "payer", - "docs": [ - "The user performing the swap" - ], + "docs": ["The user performing the swap"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "referral_token_account", - "docs": [ - "referral token account" - ], + "docs": ["referral token account"], "writable": true, "optional": true }, @@ -3553,23 +2283,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3581,7 +2296,7 @@ ], "args": [ { - "name": "params", + "name": "_params", "type": { "defined": { "name": "SwapParameters" @@ -3592,16 +2307,7 @@ }, { "name": "swap2", - "discriminator": [ - 65, - 75, - 63, - 76, - 235, - 91, - 91, - 136 - ], + "discriminator": [65, 75, 63, 76, 235, 91, 91, 136], "accounts": [ { "name": "pool_authority", @@ -3609,81 +2315,55 @@ }, { "name": "pool", - "docs": [ - "Pool account" - ], + "docs": ["Pool account"], "writable": true }, { "name": "input_token_account", - "docs": [ - "The user token account for input token" - ], + "docs": ["The user token account for input token"], "writable": true }, { "name": "output_token_account", - "docs": [ - "The user token account for output token" - ], + "docs": ["The user token account for output token"], "writable": true }, { "name": "token_a_vault", - "docs": [ - "The vault token account for input token" - ], + "docs": ["The vault token account for input token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_b_vault", - "docs": [ - "The vault token account for output token" - ], + "docs": ["The vault token account for output token"], "writable": true, - "relations": [ - "pool" - ] + "relations": ["pool"] }, { "name": "token_a_mint", - "docs": [ - "The mint of token a" - ] + "docs": ["The mint of token a"] }, { "name": "token_b_mint", - "docs": [ - "The mint of token b" - ] + "docs": ["The mint of token b"] }, { "name": "payer", - "docs": [ - "The user performing the swap" - ], + "docs": ["The user performing the swap"], "signer": true }, { "name": "token_a_program", - "docs": [ - "Token a program" - ] + "docs": ["Token a program"] }, { "name": "token_b_program", - "docs": [ - "Token b program" - ] + "docs": ["Token b program"] }, { "name": "referral_token_account", - "docs": [ - "referral token account" - ], + "docs": ["referral token account"], "writable": true, "optional": true }, @@ -3694,23 +2374,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3722,7 +2387,7 @@ ], "args": [ { - "name": "params", + "name": "_params", "type": { "defined": { "name": "SwapParameters2" @@ -3732,17 +2397,53 @@ ] }, { - "name": "update_reward_duration", - "discriminator": [ - 138, - 174, - 196, - 169, - 213, - 235, - 254, - 107 + "name": "update_pool_fees", + "discriminator": [118, 217, 203, 179, 60, 8, 70, 89], + "accounts": [ + { + "name": "pool", + "writable": true + }, + { + "name": "operator" + }, + { + "name": "whitelisted_address", + "signer": true, + "relations": ["operator"] + }, + { + "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", @@ -3759,23 +2460,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3798,16 +2484,7 @@ }, { "name": "update_reward_funder", - "discriminator": [ - 211, - 28, - 48, - 32, - 215, - 160, - 35, - 23 - ], + "discriminator": [211, 28, 48, 32, 215, 160, 35, 23], "accounts": [ { "name": "pool", @@ -3824,23 +2501,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3863,16 +2525,7 @@ }, { "name": "withdraw_ineligible_reward", - "discriminator": [ - 148, - 206, - 42, - 195, - 247, - 49, - 103, - 8 - ], + "discriminator": [148, 206, 42, 195, 247, 49, 103, 8], "accounts": [ { "name": "pool_authority", @@ -3907,23 +2560,8 @@ { "kind": "const", "value": [ - 95, - 95, - 101, - 118, - 101, - 110, - 116, - 95, - 97, - 117, - 116, - 104, - 111, - 114, - 105, - 116, - 121 + 95, 95, 101, 118, 101, 110, 116, 95, 97, 117, 116, 104, 111, + 114, 105, 116, 121 ] } ] @@ -3943,435 +2581,134 @@ ], "accounts": [ { - "name": "ClaimFeeOperator", - "discriminator": [ - 166, - 48, - 134, - 86, - 34, - 200, - 188, - 150 - ] + "name": "Config", + "discriminator": [155, 12, 170, 224, 30, 250, 204, 130] }, { - "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 - ] + "discriminator": [241, 154, 109, 4, 17, 177, 109, 188] }, { "name": "Position", - "discriminator": [ - 170, - 188, - 143, - 228, - 122, - 64, - 247, - 208 - ] + "discriminator": [170, 188, 143, 228, 122, 64, 247, 208] }, { "name": "TokenBadge", - "discriminator": [ - 116, - 219, - 204, - 229, - 249, - 116, - 255, - 150 - ] + "discriminator": [116, 219, 204, 229, 249, 116, 255, 150] }, { "name": "Vesting", - "discriminator": [ - 100, - 149, - 66, - 138, - 95, - 200, - 128, - 241 - ] + "discriminator": [100, 149, 66, 138, 95, 200, 128, 241] } ], "events": [ - { - "name": "EvtAddLiquidity", - "discriminator": [ - 175, - 242, - 8, - 157, - 30, - 247, - 185, - 169 - ] - }, { "name": "EvtClaimPartnerFee", - "discriminator": [ - 118, - 99, - 77, - 10, - 226, - 1, - 1, - 87 - ] + "discriminator": [118, 99, 77, 10, 226, 1, 1, 87] }, { "name": "EvtClaimPositionFee", - "discriminator": [ - 198, - 182, - 183, - 52, - 97, - 12, - 49, - 56 - ] + "discriminator": [198, 182, 183, 52, 97, 12, 49, 56] }, { "name": "EvtClaimProtocolFee", - "discriminator": [ - 186, - 244, - 75, - 251, - 188, - 13, - 25, - 33 - ] + "discriminator": [186, 244, 75, 251, 188, 13, 25, 33] }, { "name": "EvtClaimReward", - "discriminator": [ - 218, - 86, - 147, - 200, - 235, - 188, - 215, - 231 - ] - }, - { - "name": "EvtCloseClaimFeeOperator", - "discriminator": [ - 111, - 39, - 37, - 55, - 110, - 216, - 194, - 23 - ] + "discriminator": [218, 86, 147, 200, 235, 188, 215, 231] }, { "name": "EvtCloseConfig", - "discriminator": [ - 36, - 30, - 239, - 45, - 58, - 132, - 14, - 5 - ] + "discriminator": [36, 30, 239, 45, 58, 132, 14, 5] }, { "name": "EvtClosePosition", - "discriminator": [ - 20, - 145, - 144, - 68, - 143, - 142, - 214, - 178 - ] - }, - { - "name": "EvtCreateClaimFeeOperator", - "discriminator": [ - 21, - 6, - 153, - 120, - 68, - 116, - 28, - 177 - ] + "discriminator": [20, 145, 144, 68, 143, 142, 214, 178] }, { "name": "EvtCreateConfig", - "discriminator": [ - 131, - 207, - 180, - 174, - 180, - 73, - 165, - 54 - ] + "discriminator": [131, 207, 180, 174, 180, 73, 165, 54] }, { "name": "EvtCreateDynamicConfig", - "discriminator": [ - 231, - 197, - 13, - 164, - 248, - 213, - 133, - 152 - ] + "discriminator": [231, 197, 13, 164, 248, 213, 133, 152] }, { "name": "EvtCreatePosition", - "discriminator": [ - 156, - 15, - 119, - 198, - 29, - 181, - 221, - 55 - ] + "discriminator": [156, 15, 119, 198, 29, 181, 221, 55] }, { "name": "EvtCreateTokenBadge", - "discriminator": [ - 141, - 120, - 134, - 116, - 34, - 28, - 114, - 160 - ] + "discriminator": [141, 120, 134, 116, 34, 28, 114, 160] }, { "name": "EvtFundReward", - "discriminator": [ - 104, - 233, - 237, - 122, - 199, - 191, - 121, - 85 - ] + "discriminator": [104, 233, 237, 122, 199, 191, 121, 85] }, { "name": "EvtInitializePool", - "discriminator": [ - 228, - 50, - 246, - 85, - 203, - 66, - 134, - 37 - ] + "discriminator": [228, 50, 246, 85, 203, 66, 134, 37] }, { "name": "EvtInitializeReward", - "discriminator": [ - 129, - 91, - 188, - 3, - 246, - 52, - 185, - 249 - ] + "discriminator": [129, 91, 188, 3, 246, 52, 185, 249] }, { "name": "EvtLiquidityChange", - "discriminator": [ - 197, - 171, - 78, - 127, - 224, - 211, - 87, - 13 - ] + "discriminator": [197, 171, 78, 127, 224, 211, 87, 13] }, { "name": "EvtLockPosition", - "discriminator": [ - 168, - 63, - 108, - 83, - 219, - 82, - 2, - 200 - ] + "discriminator": [168, 63, 108, 83, 219, 82, 2, 200] }, { "name": "EvtPermanentLockPosition", - "discriminator": [ - 145, - 143, - 162, - 218, - 218, - 80, - 67, - 11 - ] - }, - { - "name": "EvtRemoveLiquidity", - "discriminator": [ - 87, - 46, - 88, - 98, - 175, - 96, - 34, - 91 - ] + "discriminator": [145, 143, 162, 218, 218, 80, 67, 11] }, { "name": "EvtSetPoolStatus", - "discriminator": [ - 100, - 213, - 74, - 3, - 95, - 91, - 228, - 146 - ] + "discriminator": [100, 213, 74, 3, 95, 91, 228, 146] }, { "name": "EvtSplitPosition2", - "discriminator": [ - 165, - 32, - 203, - 174, - 72, - 100, - 233, - 103 - ] + "discriminator": [165, 32, 203, 174, 72, 100, 233, 103] }, { - "name": "EvtSwap", - "discriminator": [ - 27, - 60, - 21, - 213, - 138, - 170, - 187, - 147 - ] + "name": "EvtSwap2", + "discriminator": [189, 66, 51, 168, 38, 80, 117, 153] }, { - "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 - ] + "discriminator": [149, 135, 65, 231, 129, 153, 65, 57] }, { "name": "EvtUpdateRewardFunder", - "discriminator": [ - 76, - 154, - 208, - 13, - 40, - 115, - 246, - 146 - ] + "discriminator": [76, 154, 208, 13, 40, 115, 246, 146] }, { "name": "EvtWithdrawIneligibleReward", - "discriminator": [ - 248, - 215, - 184, - 78, - 31, - 180, - 179, - 168 - ] + "discriminator": [248, 215, 184, 78, 31, 180, 179, 168] } ], "errors": [ @@ -4627,7 +2964,7 @@ }, { "code": 6050, - "name": "InvalidFeeScheduler", + "name": "InvalidFeeTimeScheduler", "msg": "Invalid fee scheduler" }, { @@ -4639,6 +2976,41 @@ "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" } ], "types": [ @@ -4649,30 +3021,24 @@ "fields": [ { "name": "liquidity_delta", - "docs": [ - "delta liquidity" - ], + "docs": ["delta liquidity"], "type": "u128" }, { "name": "token_a_amount_threshold", - "docs": [ - "maximum token a amount" - ], + "docs": ["maximum token a amount"], "type": "u64" }, { "name": "token_b_amount_threshold", - "docs": [ - "maximum token b amount" - ], + "docs": ["maximum token b amount"], "type": "u64" } ] } }, { - "name": "BaseFeeConfig", + "name": "BaseFeeInfo", "serialization": "bytemuck", "repr": { "kind": "c" @@ -4681,44 +3047,54 @@ "kind": "struct", "fields": [ { - "name": "cliff_fee_numerator", - "type": "u64" - }, - { - "name": "base_fee_mode", - "type": "u8" - }, - { - "name": "padding", + "name": "data", "type": { - "array": [ - "u8", - 5 - ] + "array": ["u8", 32] } - }, + } + ] + } + }, + { + "name": "BaseFeeParameters", + "type": { + "kind": "struct", + "fields": [ { - "name": "first_factor", - "type": "u16" - }, + "name": "data", + "type": { + "array": ["u8", 30] + } + } + ] + } + }, + { + "name": "BaseFeeStruct", + "serialization": "bytemuck", + "repr": { + "kind": "c" + }, + "type": { + "kind": "struct", + "fields": [ { - "name": "second_factor", + "name": "base_fee_info", "type": { - "array": [ - "u8", - 8 - ] + "defined": { + "name": "BaseFeeInfo" + } } }, { - "name": "third_factor", + "name": "padding_1", "type": "u64" } ] } }, { - "name": "BaseFeeParameters", + "name": "BorshFeeMarketCapScheduler", "type": { "kind": "struct", "fields": [ @@ -4727,35 +3103,49 @@ "type": "u64" }, { - "name": "first_factor", + "name": "number_of_period", "type": "u16" }, { - "name": "second_factor", - "type": { - "array": [ - "u8", - 8 - ] - } + "name": "sqrt_price_step_bps", + "type": "u32" + }, + { + "name": "scheduler_expiration_duration", + "type": "u32" }, { - "name": "third_factor", + "name": "reduction_factor", "type": "u64" }, { "name": "base_fee_mode", "type": "u8" + }, + { + "name": "padding", + "type": { + "array": ["u8", 3] + } } ] } }, { - "name": "BaseFeeStruct", - "serialization": "bytemuck", - "repr": { - "kind": "c" - }, + "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": [ @@ -4764,71 +3154,63 @@ "type": "u64" }, { - "name": "base_fee_mode", - "type": "u8" + "name": "fee_increment_bps", + "type": "u16" }, { - "name": "padding_0", - "type": { - "array": [ - "u8", - 5 - ] - } + "name": "max_limiter_duration", + "type": "u32" }, { - "name": "first_factor", - "type": "u16" + "name": "max_fee_bps", + "type": "u32" }, { - "name": "second_factor", - "type": { - "array": [ - "u8", - 8 - ] - } + "name": "reference_amount", + "type": "u64" }, { - "name": "third_factor", - "type": "u64" + "name": "base_fee_mode", + "type": "u8" }, { - "name": "padding_1", - "type": "u64" + "name": "padding", + "type": { + "array": ["u8", 3] + } } ] } }, { - "name": "ClaimFeeOperator", - "docs": [ - "Parameter that set by the protocol" - ], - "serialization": "bytemuck", - "repr": { - "kind": "c" - }, + "name": "BorshFeeTimeScheduler", "type": { "kind": "struct", "fields": [ { - "name": "operator", - "docs": [ - "operator" - ], - "type": "pubkey" + "name": "cliff_fee_numerator", + "type": "u64" }, { - "name": "_padding", - "docs": [ - "Reserve" - ], + "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", - 128 - ] + "array": ["u8", 3] } } ] @@ -4845,9 +3227,7 @@ "fields": [ { "name": "vault_config_key", - "docs": [ - "Vault config key" - ], + "docs": ["Vault config key"], "type": "pubkey" }, { @@ -4859,9 +3239,7 @@ }, { "name": "pool_fees", - "docs": [ - "Pool fee" - ], + "docs": ["Pool fee"], "type": { "defined": { "name": "PoolFeesConfig" @@ -4870,69 +3248,78 @@ }, { "name": "activation_type", - "docs": [ - "Activation type" - ], + "docs": ["Activation type"], "type": "u8" }, { "name": "collect_fee_mode", - "docs": [ - "Collect fee mode" - ], + "docs": ["Collect fee mode"], "type": "u8" }, { "name": "config_type", - "docs": [ - "Config type mode, 0 for static, 1 for dynamic" - ], + "docs": ["Config type mode, 0 for static, 1 for dynamic"], "type": "u8" }, { "name": "_padding_0", - "docs": [ - "padding 0" - ], + "docs": ["padding 0"], "type": { - "array": [ - "u8", - 5 - ] + "array": ["u8", 5] } }, { "name": "index", - "docs": [ - "config index" - ], + "docs": ["config index"], "type": "u64" }, { "name": "sqrt_min_price", - "docs": [ - "sqrt min price" - ], + "docs": ["sqrt min price"], "type": "u128" }, { "name": "sqrt_max_price", - "docs": [ - "sqrt max price" - ], + "docs": ["sqrt max price"], "type": "u128" }, { "name": "_padding_1", - "docs": [ - "Fee curve point", - "Padding for further use" - ], + "docs": ["Fee curve point", "Padding for further use"], "type": { - "array": [ - "u64", - 10 - ] + "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" + } } } ] @@ -4966,10 +3353,7 @@ { "name": "padding", "type": { - "array": [ - "u8", - 7 - ] + "array": ["u8", 7] } }, { @@ -4999,10 +3383,7 @@ { "name": "padding_1", "type": { - "array": [ - "u8", - 8 - ] + "array": ["u8", 8] } }, { @@ -5064,10 +3445,7 @@ { "name": "padding", "type": { - "array": [ - "u8", - 7 - ] + "array": ["u8", 7] } }, { @@ -5117,50 +3495,6 @@ ] } }, - { - "name": "EvtAddLiquidity", - "type": { - "kind": "struct", - "fields": [ - { - "name": "pool", - "type": "pubkey" - }, - { - "name": "position", - "type": "pubkey" - }, - { - "name": "owner", - "type": "pubkey" - }, - { - "name": "params", - "type": { - "defined": { - "name": "AddLiquidityParameters" - } - } - }, - { - "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": "EvtClaimPartnerFee", "type": { @@ -5262,56 +3596,31 @@ } }, { - "name": "EvtCloseClaimFeeOperator", - "docs": [ - "Close claim fee operator" - ], + "name": "EvtCloseConfig", + "docs": ["Close config"], "type": { "kind": "struct", "fields": [ { - "name": "claim_fee_operator", + "name": "config", + "docs": ["Config pubkey"], "type": "pubkey" }, { - "name": "operator", + "name": "admin", + "docs": ["admin pk"], "type": "pubkey" } ] } }, { - "name": "EvtCloseConfig", - "docs": [ - "Close config" - ], + "name": "EvtClosePosition", "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", + "name": "pool", "type": "pubkey" }, { @@ -5329,26 +3638,9 @@ ] } }, - { - "name": "EvtCreateClaimFeeOperator", - "docs": [ - "Create claim fee operator" - ], - "type": { - "kind": "struct", - "fields": [ - { - "name": "operator", - "type": "pubkey" - } - ] - } - }, { "name": "EvtCreateConfig", - "docs": [ - "Create static config" - ], + "docs": ["Create static config"], "type": { "kind": "struct", "fields": [ @@ -5397,9 +3689,7 @@ }, { "name": "EvtCreateDynamicConfig", - "docs": [ - "Create dynamic config" - ], + "docs": ["Create dynamic config"], "type": { "kind": "struct", "fields": [ @@ -5444,9 +3734,7 @@ }, { "name": "EvtCreateTokenBadge", - "docs": [ - "Create token badge" - ], + "docs": ["Create token badge"], "type": { "kind": "struct", "fields": [ @@ -5757,42 +4045,6 @@ ] } }, - { - "name": "EvtRemoveLiquidity", - "type": { - "kind": "struct", - "fields": [ - { - "name": "pool", - "type": "pubkey" - }, - { - "name": "position", - "type": "pubkey" - }, - { - "name": "owner", - "type": "pubkey" - }, - { - "name": "params", - "type": { - "defined": { - "name": "RemoveLiquidityParameters" - } - } - }, - { - "name": "token_a_amount", - "type": "u64" - }, - { - "name": "token_b_amount", - "type": "u64" - } - ] - } - }, { "name": "EvtSetPoolStatus", "type": { @@ -5873,50 +4125,6 @@ ] } }, - { - "name": "EvtSwap", - "type": { - "kind": "struct", - "fields": [ - { - "name": "pool", - "type": "pubkey" - }, - { - "name": "trade_direction", - "type": "u8" - }, - { - "name": "has_referral", - "type": "bool" - }, - { - "name": "params", - "type": { - "defined": { - "name": "SwapParameters" - } - } - }, - { - "name": "swap_result", - "type": { - "defined": { - "name": "SwapResult" - } - } - }, - { - "name": "actual_amount_in", - "type": "u64" - }, - { - "name": "current_timestamp", - "type": "u64" - } - ] - } - }, { "name": "EvtSwap2", "type": { @@ -5981,6 +4189,30 @@ ] } }, + { + "name": "EvtUpdatePoolFees", + "type": { + "kind": "struct", + "fields": [ + { + "name": "pool", + "type": "pubkey" + }, + { + "name": "operator", + "type": "pubkey" + }, + { + "name": "params", + "type": { + "defined": { + "name": "UpdatePoolFeesParameters" + } + } + } + ] + } + }, { "name": "EvtUpdateRewardDuration", "type": { @@ -6056,9 +4288,7 @@ "fields": [ { "name": "pool_fees", - "docs": [ - "pool fees" - ], + "docs": ["pool fees"], "type": { "defined": { "name": "PoolFeeParameters" @@ -6067,58 +4297,44 @@ }, { "name": "sqrt_min_price", - "docs": [ - "sqrt min price" - ], + "docs": ["sqrt min price"], "type": "u128" }, { "name": "sqrt_max_price", - "docs": [ - "sqrt max price" - ], + "docs": ["sqrt max price"], "type": "u128" }, { "name": "has_alpha_vault", - "docs": [ - "has alpha vault" - ], + "docs": ["has alpha vault"], "type": "bool" }, { "name": "liquidity", - "docs": [ - "initialize 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" + "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" - ], + "docs": ["activation type"], "type": "u8" }, { "name": "collect_fee_mode", - "docs": [ - "collect fee mode" - ], + "docs": ["collect fee mode"], "type": "u8" }, { "name": "activation_point", - "docs": [ - "activation point" - ], + "docs": ["activation point"], "type": { "option": "u64" } @@ -6133,9 +4349,7 @@ "fields": [ { "name": "liquidity", - "docs": [ - "initialize liquidity" - ], + "docs": ["initialize liquidity"], "type": "u128" }, { @@ -6147,9 +4361,7 @@ }, { "name": "activation_point", - "docs": [ - "activation point" - ], + "docs": ["activation point"], "type": { "option": "u64" } @@ -6157,6 +4369,154 @@ ] } }, + { + "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", @@ -6168,9 +4528,7 @@ "fields": [ { "name": "pool_fees", - "docs": [ - "Pool fee" - ], + "docs": ["Pool fee"], "type": { "defined": { "name": "PoolFeesStruct" @@ -6179,30 +4537,22 @@ }, { "name": "token_a_mint", - "docs": [ - "token a mint" - ], + "docs": ["token a mint"], "type": "pubkey" }, { "name": "token_b_mint", - "docs": [ - "token b mint" - ], + "docs": ["token b mint"], "type": "pubkey" }, { "name": "token_a_vault", - "docs": [ - "token a vault" - ], + "docs": ["token a vault"], "type": "pubkey" }, { "name": "token_b_vault", - "docs": [ - "token b vault" - ], + "docs": ["token b vault"], "type": "pubkey" }, { @@ -6214,16 +4564,12 @@ }, { "name": "partner", - "docs": [ - "partner" - ], + "docs": ["partner"], "type": "pubkey" }, { "name": "liquidity", - "docs": [ - "liquidity share" - ], + "docs": ["liquidity share"], "type": "u128" }, { @@ -6235,100 +4581,74 @@ }, { "name": "protocol_a_fee", - "docs": [ - "protocol a fee" - ], + "docs": ["protocol a fee"], "type": "u64" }, { "name": "protocol_b_fee", - "docs": [ - "protocol b fee" - ], + "docs": ["protocol b fee"], "type": "u64" }, { "name": "partner_a_fee", - "docs": [ - "partner a fee" - ], + "docs": ["partner a fee"], "type": "u64" }, { "name": "partner_b_fee", - "docs": [ - "partner b fee" - ], + "docs": ["partner b fee"], "type": "u64" }, { "name": "sqrt_min_price", - "docs": [ - "min price" - ], + "docs": ["min price"], "type": "u128" }, { "name": "sqrt_max_price", - "docs": [ - "max price" - ], + "docs": ["max price"], "type": "u128" }, { "name": "sqrt_price", - "docs": [ - "current price" - ], + "docs": ["current price"], "type": "u128" }, { "name": "activation_point", - "docs": [ - "Activation point, can be slot or timestamp" - ], + "docs": ["Activation point, can be slot or timestamp"], "type": "u64" }, { "name": "activation_type", - "docs": [ - "Activation type, 0 means by slot, 1 means by timestamp" - ], + "docs": ["Activation type, 0 means by slot, 1 means by timestamp"], "type": "u8" }, { "name": "pool_status", - "docs": [ - "pool status, 0: enable, 1 disable" - ], + "docs": ["pool status, 0: enable, 1 disable"], "type": "u8" }, { "name": "token_a_flag", - "docs": [ - "token a flag" - ], + "docs": ["token a flag"], "type": "u8" }, { "name": "token_b_flag", - "docs": [ - "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 in token a, 2 only collect fee in token b" + "0 is collect fee in both token, 1 only collect fee only in token b" ], "type": "u8" }, { "name": "pool_type", - "docs": [ - "pool type" - ], + "docs": ["pool type"], "type": "u8" }, { @@ -6340,33 +4660,21 @@ }, { "name": "_padding_0", - "docs": [ - "padding" - ], + "docs": ["padding"], "type": "u8" }, { "name": "fee_a_per_liquidity", - "docs": [ - "cumulative" - ], + "docs": ["cumulative"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { "name": "fee_b_per_liquidity", - "docs": [ - "cumulative" - ], + "docs": ["cumulative"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { @@ -6375,9 +4683,7 @@ }, { "name": "metrics", - "docs": [ - "metrics" - ], + "docs": ["metrics"], "type": { "defined": { "name": "PoolMetrics" @@ -6386,28 +4692,19 @@ }, { "name": "creator", - "docs": [ - "pool creator" - ], + "docs": ["pool creator"], "type": "pubkey" }, { "name": "_padding_1", - "docs": [ - "Padding for further use" - ], + "docs": ["Padding for further use"], "type": { - "array": [ - "u64", - 6 - ] + "array": ["u64", 6] } }, { "name": "reward_infos", - "docs": [ - "Farming reward information" - ], + "docs": ["Farming reward information"], "type": { "array": [ { @@ -6424,40 +4721,22 @@ }, { "name": "PoolFeeParameters", - "docs": [ - "Information regarding fee charges" - ], + "docs": ["Information regarding fee charges"], "type": { "kind": "struct", "fields": [ { "name": "base_fee", - "docs": [ - "Base fee" - ], + "docs": ["Base fee"], "type": { "defined": { "name": "BaseFeeParameters" } } }, - { - "name": "padding", - "docs": [ - "padding" - ], - "type": { - "array": [ - "u8", - 3 - ] - } - }, { "name": "dynamic_fee", - "docs": [ - "dynamic fee" - ], + "docs": ["dynamic fee"], "type": { "option": { "defined": { @@ -6482,7 +4761,7 @@ "name": "base_fee", "type": { "defined": { - "name": "BaseFeeConfig" + "name": "BaseFeeInfo" } } }, @@ -6509,19 +4788,13 @@ { "name": "padding_0", "type": { - "array": [ - "u8", - 5 - ] + "array": ["u8", 5] } }, { "name": "padding_1", "type": { - "array": [ - "u64", - 5 - ] + "array": ["u64", 5] } } ] @@ -6568,35 +4841,24 @@ }, { "name": "partner_fee_percent", - "docs": [ - "partner fee" - ], + "docs": ["partner fee"], "type": "u8" }, { "name": "referral_fee_percent", - "docs": [ - "referral fee" - ], + "docs": ["referral fee"], "type": "u8" }, { "name": "padding_0", - "docs": [ - "padding" - ], + "docs": ["padding"], "type": { - "array": [ - "u8", - 5 - ] + "array": ["u8", 5] } }, { "name": "dynamic_fee", - "docs": [ - "dynamic fee" - ], + "docs": ["dynamic fee"], "type": { "defined": { "name": "DynamicFeeStruct" @@ -6604,16 +4866,8 @@ } }, { - "name": "padding_1", - "docs": [ - "padding" - ], - "type": { - "array": [ - "u64", - 2 - ] - } + "name": "init_sqrt_price", + "type": "u128" } ] } @@ -6677,75 +4931,51 @@ }, { "name": "nft_mint", - "docs": [ - "nft mint" - ], + "docs": ["nft mint"], "type": "pubkey" }, { "name": "fee_a_per_token_checkpoint", - "docs": [ - "fee a checkpoint" - ], + "docs": ["fee a checkpoint"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { "name": "fee_b_per_token_checkpoint", - "docs": [ - "fee b checkpoint" - ], + "docs": ["fee b checkpoint"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { "name": "fee_a_pending", - "docs": [ - "fee a pending" - ], + "docs": ["fee a pending"], "type": "u64" }, { "name": "fee_b_pending", - "docs": [ - "fee b pending" - ], + "docs": ["fee b pending"], "type": "u64" }, { "name": "unlocked_liquidity", - "docs": [ - "unlock liquidity" - ], + "docs": ["unlock liquidity"], "type": "u128" }, { "name": "vested_liquidity", - "docs": [ - "vesting liquidity" - ], + "docs": ["vesting liquidity"], "type": "u128" }, { "name": "permanent_locked_liquidity", - "docs": [ - "permanent locked liquidity" - ], + "docs": ["permanent locked liquidity"], "type": "u128" }, { "name": "metrics", - "docs": [ - "metrics" - ], + "docs": ["metrics"], "type": { "defined": { "name": "PositionMetrics" @@ -6754,9 +4984,7 @@ }, { "name": "reward_infos", - "docs": [ - "Farming reward information" - ], + "docs": ["Farming reward information"], "type": { "array": [ { @@ -6770,14 +4998,9 @@ }, { "name": "padding", - "docs": [ - "padding for future usage" - ], + "docs": ["padding for future usage"], "type": { - "array": [ - "u128", - 6 - ] + "array": ["u128", 6] } } ] @@ -6810,23 +5033,17 @@ "fields": [ { "name": "liquidity_delta", - "docs": [ - "delta liquidity" - ], + "docs": ["delta liquidity"], "type": "u128" }, { "name": "token_a_amount_threshold", - "docs": [ - "minimum token a amount" - ], + "docs": ["minimum token a amount"], "type": "u64" }, { "name": "token_b_amount_threshold", - "docs": [ - "minimum token b amount" - ], + "docs": ["minimum token b amount"], "type": "u64" } ] @@ -6846,28 +5063,19 @@ "fields": [ { "name": "initialized", - "docs": [ - "Indicates if the reward has been initialized" - ], + "docs": ["Indicates if the reward has been initialized"], "type": "u8" }, { "name": "reward_token_flag", - "docs": [ - "reward token flag" - ], + "docs": ["reward token flag"], "type": "u8" }, { "name": "_padding_0", - "docs": [ - "padding" - ], + "docs": ["padding"], "type": { - "array": [ - "u8", - 6 - ] + "array": ["u8", 6] } }, { @@ -6876,71 +5084,49 @@ "Padding to ensure `reward_rate: u128` is 16-byte aligned" ], "type": { - "array": [ - "u8", - 8 - ] + "array": ["u8", 8] } }, { "name": "mint", - "docs": [ - "Reward token mint." - ], + "docs": ["Reward token mint."], "type": "pubkey" }, { "name": "vault", - "docs": [ - "Reward vault token account." - ], + "docs": ["Reward vault token account."], "type": "pubkey" }, { "name": "funder", - "docs": [ - "Authority account that allows to fund rewards" - ], + "docs": ["Authority account that allows to fund rewards"], "type": "pubkey" }, { "name": "reward_duration", - "docs": [ - "reward duration" - ], + "docs": ["reward duration"], "type": "u64" }, { "name": "reward_duration_end", - "docs": [ - "reward duration end" - ], + "docs": ["reward duration end"], "type": "u64" }, { "name": "reward_rate", - "docs": [ - "reward rate" - ], + "docs": ["reward rate"], "type": "u128" }, { "name": "reward_per_token_stored", - "docs": [ - "Reward per token stored" - ], + "docs": ["Reward per token stored"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { "name": "last_update_time", - "docs": [ - "The last time reward states were updated." - ], + "docs": ["The last time reward states were updated."], "type": "u64" }, { @@ -7063,14 +5249,9 @@ }, { "name": "padding", - "docs": [ - "padding for future" - ], + "docs": ["padding for future"], "type": { - "array": [ - "u8", - 16 - ] + "array": ["u8", 16] } } ] @@ -7185,49 +5366,12 @@ }, { "name": "swap_mode", - "docs": [ - "Swap mode, refer [SwapMode]" - ], + "docs": ["Swap mode, refer [SwapMode]"], "type": "u8" } ] } }, - { - "name": "SwapResult", - "docs": [ - "Encodes all results of swapping" - ], - "type": { - "kind": "struct", - "fields": [ - { - "name": "output_amount", - "type": "u64" - }, - { - "name": "next_sqrt_price", - "type": "u128" - }, - { - "name": "lp_fee", - "type": "u64" - }, - { - "name": "protocol_fee", - "type": "u64" - }, - { - "name": "partner_fee", - "type": "u64" - }, - { - "name": "referral_fee", - "type": "u64" - } - ] - } - }, { "name": "SwapResult2", "type": { @@ -7274,9 +5418,7 @@ }, { "name": "TokenBadge", - "docs": [ - "Parameter that set by the protocol" - ], + "docs": ["Parameter that set by the protocol"], "serialization": "bytemuck", "repr": { "kind": "c" @@ -7286,21 +5428,49 @@ "fields": [ { "name": "token_mint", - "docs": [ - "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": [ - "Reserve" + "Base fee update mode:", + "- None: skip base fee update", + "- Some: update new cliff_fee_numerator if base fee is static" ], "type": { - "array": [ - "u8", - 128 - ] + "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" + } + } } } ] @@ -7317,28 +5487,19 @@ "fields": [ { "name": "reward_per_token_checkpoint", - "docs": [ - "The latest update reward checkpoint" - ], + "docs": ["The latest update reward checkpoint"], "type": { - "array": [ - "u8", - 32 - ] + "array": ["u8", 32] } }, { "name": "reward_pendings", - "docs": [ - "Current pending rewards" - ], + "docs": ["Current pending rewards"], "type": "u64" }, { "name": "total_claimed_rewards", - "docs": [ - "Total claimed rewards" - ], + "docs": ["Total claimed rewards"], "type": "u64" } ] @@ -7384,19 +5545,13 @@ { "name": "padding", "type": { - "array": [ - "u8", - 14 - ] + "array": ["u8", 14] } }, { "name": "padding2", "type": { - "array": [ - "u128", - 4 - ] + "array": ["u128", 4] } } ] @@ -7432,5 +5587,82 @@ ] } } + ], + "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]" + } ] -} \ No newline at end of file +} diff --git a/programs/zap/Cargo.toml b/programs/zap/Cargo.toml index 580a97b..c38b181 100644 --- a/programs/zap/Cargo.toml +++ b/programs/zap/Cargo.toml @@ -25,6 +25,5 @@ bytemuck = { workspace = true, features = ["derive", "min_const_generics"] } dlmm = { path = "../../libs/dlmm" } damm-v2 = { git = "https://github.com/MeteoraAg/damm-v2", features = [ "cpi", - "no-entrypoint", -], rev = "689a3264484799d833c505523f4ff4e4990690aa", package="cp-amm" } +], rev = "d9cef5aaec9cfa1a6d3b0b28d213c87c285127de", package="cp-amm" } ruint = "1.3.0" \ No newline at end of file diff --git a/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_initialized_position.rs b/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_initialized_position.rs index e9be5c6..a4e6fd1 100644 --- a/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_initialized_position.rs +++ b/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_initialized_position.rs @@ -86,12 +86,22 @@ pub fn handle_zap_in_dlmm_for_initialized_position<'c: 'info, 'info>( let pre_user_amount_x = accessor::amount(&token_x_account_ai)?; let pre_user_amount_y = accessor::amount(&token_y_account_ai)?; - let amount_x = - calculate_transfer_fee_excluded_amount(&ctx.accounts.token_x_mint, max_deposit_x_amount)? - .amount; - let amount_y = - calculate_transfer_fee_excluded_amount(&ctx.accounts.token_y_mint, max_deposit_y_amount)? - .amount; + let amount_x = calculate_transfer_fee_excluded_amount( + &ctx.accounts + .token_x_mint + .to_account_info() + .try_borrow_data()?, + max_deposit_x_amount, + )? + .amount; + let amount_y = calculate_transfer_fee_excluded_amount( + &ctx.accounts + .token_y_mint + .to_account_info() + .try_borrow_data()?, + max_deposit_y_amount, + )? + .amount; let lb_pair = ctx.accounts.lb_pair.load()?; diff --git a/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_uninitialized_position.rs b/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_uninitialized_position.rs index ce5593d..37af6d3 100644 --- a/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_uninitialized_position.rs +++ b/programs/zap/src/instructions/zap_in_dlmm/ix_zap_in_dlmm_for_uninitialized_position.rs @@ -132,12 +132,22 @@ pub fn handle_zap_in_dlmm_for_uninitialized_position<'c: 'info, 'info>( let lb_pair = ctx.accounts.lb_pair.load()?; let lb_pair_active_id = lb_pair.active_id; - let amount_x = - calculate_transfer_fee_excluded_amount(&ctx.accounts.token_x_mint, max_deposit_x_amount)? - .amount; - let amount_y = - calculate_transfer_fee_excluded_amount(&ctx.accounts.token_y_mint, max_deposit_y_amount)? - .amount; + let amount_x = calculate_transfer_fee_excluded_amount( + &ctx.accounts + .token_x_mint + .to_account_info() + .try_borrow_data()?, + max_deposit_x_amount, + )? + .amount; + let amount_y = calculate_transfer_fee_excluded_amount( + &ctx.accounts + .token_y_mint + .to_account_info() + .try_borrow_data()?, + max_deposit_y_amount, + )? + .amount; let params = ZapInRebalancingParams { amount_x, diff --git a/programs/zap/src/utils/damm_v2_utils.rs b/programs/zap/src/utils/damm_v2_utils.rs index 6db2e11..94820b9 100644 --- a/programs/zap/src/utils/damm_v2_utils.rs +++ b/programs/zap/src/utils/damm_v2_utils.rs @@ -1,6 +1,9 @@ use anchor_lang::prelude::*; use damm_v2::{ - base_fee::{BaseFeeHandler, FeeRateLimiter}, + base_fee::{ + fee_rate_limiter::PodAlignedFeeRateLimiter, BaseFeeEnumReader, BaseFeeHandler, + BaseFeeHandlerBuilder, + }, constants::fee::get_max_fee_numerator, curve::{ get_delta_amount_a_unsigned, get_delta_amount_b_unsigned, get_next_sqrt_price_from_input, @@ -142,6 +145,8 @@ fn calculate_swap_result( current_point, pool.activation_point, trade_direction, + pool.pool_fees.init_sqrt_price, + pool.sqrt_price, )?; let actual_amount_in = if fee_mode.fees_on_input { let FeeOnAmountResult { amount, .. } = pool.pool_fees.get_fee_on_amount( @@ -245,7 +250,7 @@ fn validate_swap_result( } struct FeeHandler { - pub rate_limiter_handler: FeeRateLimiter, // avoid copy + pub rate_limiter_handler: PodAlignedFeeRateLimiter, // avoid copy pub variable_fee_numerator: u128, pub max_fee_numerator: u64, pub total_fee_numerator: u64, @@ -259,6 +264,8 @@ impl FeeHandler { current_point: u64, activation_point: u64, trade_direction: TradeDirection, + init_sqrt_price: u128, + current_sqrt_price: u128, ) -> Result { if self.is_rate_limiter { let base_fee_numerator = self @@ -268,6 +275,8 @@ impl FeeHandler { activation_point, trade_direction, input_amount, + init_sqrt_price, + current_sqrt_price, )?; get_total_fee_numerator( @@ -289,12 +298,19 @@ fn get_fee_handler( let variable_fee_numerator = pool.pool_fees.dynamic_fee.get_variable_fee()?; let max_fee_numerator = get_max_fee_numerator(pool.version)?; - let base_fee_mode = pool.pool_fees.base_fee.base_fee_mode; + let base_fee_mode = pool.pool_fees.base_fee.base_fee_info.get_base_fee_mode()?; match BaseFeeMode::try_from(base_fee_mode) { Ok(value) => { match value { - BaseFeeMode::FeeSchedulerLinear | BaseFeeMode::FeeSchedulerExponential => { - let base_fee_handler = pool.pool_fees.base_fee.get_base_fee_handler()?; + BaseFeeMode::FeeTimeSchedulerLinear + | BaseFeeMode::FeeTimeSchedulerExponential + | BaseFeeMode::FeeMarketCapSchedulerLinear + | BaseFeeMode::FeeMarketCapSchedulerExponential => { + let base_fee_handler = pool + .pool_fees + .base_fee + .base_fee_info + .get_base_fee_handler()?; // fee scheduler doesn't care for amount let base_fee_numerator = base_fee_handler .get_base_fee_numerator_from_included_fee_amount( @@ -302,6 +318,8 @@ fn get_fee_handler( pool.activation_point, trade_direction, 0, + pool.pool_fees.init_sqrt_price, + pool.sqrt_price, )?; let total_fee_numerator = get_total_fee_numerator( @@ -310,7 +328,7 @@ fn get_fee_handler( max_fee_numerator, )?; Ok(FeeHandler { - rate_limiter_handler: FeeRateLimiter::default(), + rate_limiter_handler: PodAlignedFeeRateLimiter::default(), variable_fee_numerator, max_fee_numerator, total_fee_numerator, @@ -318,7 +336,7 @@ fn get_fee_handler( }) } BaseFeeMode::RateLimiter => { - let rate_limiter_handler = pool.pool_fees.base_fee.get_fee_rate_limiter()?; + let rate_limiter_handler = pool.pool_fees.base_fee.to_fee_rate_limiter()?; Ok(FeeHandler { rate_limiter_handler, total_fee_numerator: 0, diff --git a/tests/common/damm_v2.ts b/tests/common/damm_v2.ts index cb7336f..5975c5a 100644 --- a/tests/common/damm_v2.ts +++ b/tests/common/damm_v2.ts @@ -1,6 +1,7 @@ import { AnchorProvider, BN, + BorshCoder, IdlAccounts, IdlTypes, Program, @@ -168,7 +169,7 @@ export async function createDammV2Pool( tokenBMint: PublicKey, amountA?: BN, amountB?: BN, - baseFeeParams?: any + baseFeeParams?: Buffer ): Promise { const program = createDammV2Program(); @@ -217,17 +218,23 @@ export async function createDammV2Pool( liquidityDelta = BN.min(liquidityFromA, liquidityFromB); } + const baseFee = { + data: Array.from( + baseFeeParams ?? + encodeFeeTimeSchedulerParams( + new BN(2_500_000), + 0, + new BN(0), + new BN(0), + BaseFeeMode.FeeTimeSchedulerLinear + ) + ), + }; + const transaction = await program.methods .initializeCustomizablePool({ poolFees: { - baseFee: baseFeeParams ?? { - cliffFeeNumerator: new BN(2_500_000), - firstFactor: 0, - secondFactor: Array.from(new BN(0).toArrayLike(Buffer, "le", 8)), - thirdFactor: new BN(0), - baseFeeMode: 0, - }, - padding: [], + baseFee, dynamicFee: null, }, sqrtMinPrice: MIN_SQRT_PRICE, @@ -510,12 +517,76 @@ export async function swap(params: { .transaction(); } -export function convertToRateLimiterSecondFactor( - maxLimiterDuration: BN, - maxFeeBps: BN -): number[] { - const buffer1 = maxLimiterDuration.toArrayLike(Buffer, "le", 4); - const buffer2 = maxFeeBps.toArrayLike(Buffer, "le", 4); - const buffer = Buffer.concat([buffer1, buffer2]); - return Array.from(buffer); +const FEE_PADDING = Array.from(Buffer.alloc(3)); +const cpAmmCoder = new BorshCoder(CpAmmIDL as CpAmm); + +export enum BaseFeeMode { + FeeTimeSchedulerLinear, + FeeTimeSchedulerExponential, + RateLimiter, + FeeMarketCapSchedulerLinear, + FeeMarketCapSchedulerExponential, +} + +export function encodeFeeTimeSchedulerParams( + cliffFeeNumerator: BN, + numberOfPeriod: number, + periodFrequency: BN, + reductionFactor: BN, + baseFeeMode: BaseFeeMode +): Buffer { + const feeTimeScheduler = { + cliff_fee_numerator: new BN(cliffFeeNumerator.toString()), + number_of_period: numberOfPeriod, + period_frequency: new BN(periodFrequency.toString()), + reduction_factor: new BN(reductionFactor.toString()), + base_fee_mode: baseFeeMode, + padding: FEE_PADDING, + }; + + return cpAmmCoder.types.encode("BorshFeeTimeScheduler", feeTimeScheduler); +} + +export function encodeFeeMarketCapSchedulerParams( + cliffFeeNumerator: BN, + numberOfPeriod: number, + sqrtPriceStepBps: number, + schedulerExpirationDuration: number, + reductionFactor: BN, + baseFeeMode: BaseFeeMode +): Buffer { + const feeMarketCapScheduler = { + cliff_fee_numerator: new BN(cliffFeeNumerator.toString()), + number_of_period: numberOfPeriod, + sqrt_price_step_bps: sqrtPriceStepBps, + scheduler_expiration_duration: schedulerExpirationDuration, + reduction_factor: new BN(reductionFactor.toString()), + base_fee_mode: baseFeeMode, + padding: FEE_PADDING, + }; + + return cpAmmCoder.types.encode( + "BorshFeeMarketCapScheduler", + feeMarketCapScheduler + ); +} + +export function encodeFeeRateLimiterParams( + cliffFeeNumerator: BN, + feeIncrementBps: number, + maxLimiterDuration: number, + maxFeeBps: number, + referenceAmount: BN +): Buffer { + const feeRateLimiter = { + cliff_fee_numerator: new BN(cliffFeeNumerator.toString()), + fee_increment_bps: feeIncrementBps, + max_limiter_duration: maxLimiterDuration, + max_fee_bps: maxFeeBps, + reference_amount: new BN(referenceAmount.toString()), + base_fee_mode: BaseFeeMode.RateLimiter, + padding: FEE_PADDING, + }; + + return cpAmmCoder.types.encode("BorshFeeRateLimiter", feeRateLimiter); } diff --git a/tests/common/idl/damm_v2.ts b/tests/common/idl/damm_v2.ts index 3a1691c..6b90f42 100644 --- a/tests/common/idl/damm_v2.ts +++ b/tests/common/idl/damm_v2.ts @@ -8,7 +8,7 @@ export type CpAmm = { address: "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG"; metadata: { name: "cpAmm"; - version: "0.1.5"; + version: "0.1.6"; spec: "0.1.0"; description: "Created with Anchor"; }; @@ -537,14 +537,14 @@ export type CpAmm = { }; }, { - name: "claimFeeOperator"; + name: "operator"; docs: ["Claim fee operator"]; }, { - name: "operator"; - docs: ["Operator"]; + name: "whitelistedAddress"; + docs: ["operator"]; signer: true; - relations: ["claimFeeOperator"]; + relations: ["operator"]; }, { name: "tokenAProgram"; @@ -684,20 +684,24 @@ export type CpAmm = { ]; }, { - name: "closeClaimFeeOperator"; - discriminator: [38, 134, 82, 216, 95, 124, 17, 99]; + name: "closeConfig"; + discriminator: [145, 9, 72, 157, 95, 125, 61, 85]; accounts: [ { - name: "claimFeeOperator"; + name: "config"; writable: true; }, { - name: "rentReceiver"; - writable: true; + name: "operator"; }, { - name: "admin"; + name: "whitelistedAddress"; signer: true; + relations: ["operator"]; + }, + { + name: "rentReceiver"; + writable: true; }, { name: "eventAuthority"; @@ -735,16 +739,15 @@ export type CpAmm = { args: []; }, { - name: "closeConfig"; - discriminator: [145, 9, 72, 157, 95, 125, 61, 85]; + name: "closeOperatorAccount"; + discriminator: [171, 9, 213, 74, 120, 23, 3, 29]; accounts: [ { - name: "config"; + name: "operator"; writable: true; }, { name: "admin"; - writable: true; signer: true; }, { @@ -873,9 +876,12 @@ export type CpAmm = { writable: true; }, { - name: "admin"; - writable: true; + name: "operator"; + }, + { + name: "whitelistedAddress"; signer: true; + relations: ["operator"]; }, { name: "rentReceiver"; @@ -917,21 +923,22 @@ export type CpAmm = { args: []; }, { - name: "createClaimFeeOperator"; - discriminator: [169, 62, 207, 107, 58, 187, 162, 109]; + name: "createConfig"; + docs: ["OPERATOR FUNCTIONS /////"]; + discriminator: [201, 207, 243, 114, 75, 111, 47, 189]; accounts: [ { - name: "claimFeeOperator"; + name: "config"; writable: true; pda: { seeds: [ { kind: "const"; - value: [99, 102, 95, 111, 112, 101, 114, 97, 116, 111, 114]; + value: [99, 111, 110, 102, 105, 103]; }, { - kind: "account"; - path: "operator"; + kind: "arg"; + path: "index"; } ]; }; @@ -940,7 +947,12 @@ export type CpAmm = { name: "operator"; }, { - name: "admin"; + name: "whitelistedAddress"; + signer: true; + relations: ["operator"]; + }, + { + name: "payer"; writable: true; signer: true; }, @@ -981,12 +993,24 @@ export type CpAmm = { name: "program"; } ]; - args: []; + args: [ + { + name: "index"; + type: "u64"; + }, + { + name: "configParameters"; + type: { + defined: { + name: "staticConfigParameters"; + }; + }; + } + ]; }, { - name: "createConfig"; - docs: ["ADMIN FUNCTIONS /////"]; - discriminator: [201, 207, 243, 114, 75, 111, 47, 189]; + name: "createDynamicConfig"; + discriminator: [81, 251, 122, 78, 66, 57, 208, 82]; accounts: [ { name: "config"; @@ -1005,7 +1029,15 @@ export type CpAmm = { }; }, { - name: "admin"; + name: "operator"; + }, + { + name: "whitelistedAddress"; + signer: true; + relations: ["operator"]; + }, + { + name: "payer"; writable: true; signer: true; }, @@ -1055,34 +1087,42 @@ export type CpAmm = { name: "configParameters"; type: { defined: { - name: "staticConfigParameters"; + name: "dynamicConfigParameters"; }; }; } ]; }, { - name: "createDynamicConfig"; - discriminator: [81, 251, 122, 78, 66, 57, 208, 82]; + name: "createOperatorAccount"; + docs: ["ADMIN FUNCTIONS /////"]; + discriminator: [221, 64, 246, 149, 240, 153, 229, 163]; accounts: [ { - name: "config"; + name: "operator"; writable: true; pda: { seeds: [ { kind: "const"; - value: [99, 111, 110, 102, 105, 103]; + value: [111, 112, 101, 114, 97, 116, 111, 114]; }, { - kind: "arg"; - path: "index"; + kind: "account"; + path: "whitelistedAddress"; } ]; }; }, + { + name: "whitelistedAddress"; + }, { name: "admin"; + signer: true; + }, + { + name: "payer"; writable: true; signer: true; }, @@ -1125,16 +1165,8 @@ export type CpAmm = { ]; args: [ { - name: "index"; - type: "u64"; - }, - { - name: "configParameters"; - type: { - defined: { - name: "dynamicConfigParameters"; - }; - }; + name: "permission"; + type: "u128"; } ]; }, @@ -1289,7 +1321,15 @@ export type CpAmm = { name: "tokenMint"; }, { - name: "admin"; + name: "operator"; + }, + { + name: "whitelistedAddress"; + signer: true; + relations: ["operator"]; + }, + { + name: "payer"; writable: true; signer: true; }, @@ -1332,6 +1372,31 @@ export type CpAmm = { ]; args: []; }, + { + name: "dummyIx"; + discriminator: [234, 95, 176, 185, 7, 42, 35, 159]; + accounts: [ + { + name: "podAlignedFeeTimeScheduler"; + }, + { + name: "podAlignedFeeRateLimiter"; + }, + { + name: "podAlignedFeeMarketCapScheduler"; + } + ]; + args: [ + { + name: "ixs"; + type: { + defined: { + name: "dummyParams"; + }; + }; + } + ]; + }, { name: "fundReward"; discriminator: [188, 50, 249, 165, 93, 151, 38, 63]; @@ -2539,8 +2604,12 @@ export type CpAmm = { writable: true; }, { - name: "admin"; + name: "operator"; + }, + { + name: "whitelistedAddress"; signer: true; + relations: ["operator"]; }, { name: "eventAuthority"; @@ -2952,6 +3021,66 @@ export type CpAmm = { } ]; }, + { + name: "updatePoolFees"; + discriminator: [118, 217, 203, 179, 60, 8, 70, 89]; + accounts: [ + { + name: "pool"; + writable: true; + }, + { + name: "operator"; + }, + { + name: "whitelistedAddress"; + signer: true; + relations: ["operator"]; + }, + { + name: "eventAuthority"; + 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: "updateRewardDuration"; discriminator: [138, 174, 196, 169, 213, 235, 254, 107]; @@ -3136,14 +3265,26 @@ export type CpAmm = { } ]; accounts: [ - { - name: "claimFeeOperator"; - discriminator: [166, 48, 134, 86, 34, 200, 188, 150]; - }, { 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]; @@ -3162,10 +3303,6 @@ export type CpAmm = { } ]; events: [ - { - name: "evtAddLiquidity"; - discriminator: [175, 242, 8, 157, 30, 247, 185, 169]; - }, { name: "evtClaimPartnerFee"; discriminator: [118, 99, 77, 10, 226, 1, 1, 87]; @@ -3182,10 +3319,6 @@ export type CpAmm = { name: "evtClaimReward"; discriminator: [218, 86, 147, 200, 235, 188, 215, 231]; }, - { - name: "evtCloseClaimFeeOperator"; - discriminator: [111, 39, 37, 55, 110, 216, 194, 23]; - }, { name: "evtCloseConfig"; discriminator: [36, 30, 239, 45, 58, 132, 14, 5]; @@ -3194,10 +3327,6 @@ export type CpAmm = { name: "evtClosePosition"; discriminator: [20, 145, 144, 68, 143, 142, 214, 178]; }, - { - name: "evtCreateClaimFeeOperator"; - discriminator: [21, 6, 153, 120, 68, 116, 28, 177]; - }, { name: "evtCreateConfig"; discriminator: [131, 207, 180, 174, 180, 73, 165, 54]; @@ -3238,10 +3367,6 @@ export type CpAmm = { name: "evtPermanentLockPosition"; discriminator: [145, 143, 162, 218, 218, 80, 67, 11]; }, - { - name: "evtRemoveLiquidity"; - discriminator: [87, 46, 88, 98, 175, 96, 34, 91]; - }, { name: "evtSetPoolStatus"; discriminator: [100, 213, 74, 3, 95, 91, 228, 146]; @@ -3250,14 +3375,14 @@ export type CpAmm = { name: "evtSplitPosition2"; discriminator: [165, 32, 203, 174, 72, 100, 233, 103]; }, - { - name: "evtSwap"; - discriminator: [27, 60, 21, 213, 138, 170, 187, 147]; - }, { 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]; @@ -3524,7 +3649,7 @@ export type CpAmm = { }, { code: 6050; - name: "invalidFeeScheduler"; + name: "invalidFeeTimeScheduler"; msg: "Invalid fee scheduler"; }, { @@ -3536,6 +3661,41 @@ export type CpAmm = { 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"; } ]; types: [ @@ -3563,7 +3723,7 @@ export type CpAmm = { }; }, { - name: "baseFeeConfig"; + name: "baseFeeInfo"; serialization: "bytemuck"; repr: { kind: "c"; @@ -3572,32 +3732,10 @@ export type CpAmm = { kind: "struct"; fields: [ { - name: "cliffFeeNumerator"; - type: "u64"; - }, - { - name: "baseFeeMode"; - type: "u8"; - }, - { - name: "padding"; - type: { - array: ["u8", 5]; - }; - }, - { - name: "firstFactor"; - type: "u16"; - }, - { - name: "secondFactor"; + name: "data"; type: { - array: ["u8", 8]; + array: ["u8", 32]; }; - }, - { - name: "thirdFactor"; - type: "u64"; } ]; }; @@ -3608,26 +3746,10 @@ export type CpAmm = { kind: "struct"; fields: [ { - name: "cliffFeeNumerator"; - type: "u64"; - }, - { - name: "firstFactor"; - type: "u16"; - }, - { - name: "secondFactor"; + name: "data"; type: { - array: ["u8", 8]; + array: ["u8", 30]; }; - }, - { - name: "thirdFactor"; - type: "u64"; - }, - { - name: "baseFeeMode"; - type: "u8"; } ]; }; @@ -3642,60 +3764,138 @@ export type CpAmm = { kind: "struct"; fields: [ { - name: "cliffFeeNumerator"; - type: "u64"; + name: "baseFeeInfo"; + type: { + defined: { + name: "baseFeeInfo"; + }; + }; }, { - name: "baseFeeMode"; + name: "padding1"; + type: "u64"; + } + ]; + }; + }, + { + name: "borshFeeMarketCapScheduler"; + type: { + kind: "struct"; + fields: [ + { + name: "cliffFeeNumerator"; + type: "u64"; + }, + { + name: "numberOfPeriod"; + type: "u16"; + }, + { + name: "sqrtPriceStepBps"; + type: "u32"; + }, + { + name: "schedulerExpirationDuration"; + type: "u32"; + }, + { + name: "reductionFactor"; + type: "u64"; + }, + { + name: "baseFeeMode"; type: "u8"; }, { - name: "padding0"; + name: "padding"; type: { - array: ["u8", 5]; + 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: "cliffFeeNumerator"; + type: "u64"; }, { - name: "firstFactor"; + name: "feeIncrementBps"; type: "u16"; }, { - name: "secondFactor"; - type: { - array: ["u8", 8]; - }; + name: "maxLimiterDuration"; + type: "u32"; }, { - name: "thirdFactor"; - type: "u64"; + name: "maxFeeBps"; + type: "u32"; }, { - name: "padding1"; + name: "referenceAmount"; type: "u64"; + }, + { + name: "baseFeeMode"; + type: "u8"; + }, + { + name: "padding"; + type: { + array: ["u8", 3]; + }; } ]; }; }, { - name: "claimFeeOperator"; - docs: ["Parameter that set by the protocol"]; - serialization: "bytemuck"; - repr: { - kind: "c"; - }; + name: "borshFeeTimeScheduler"; type: { kind: "struct"; fields: [ { - name: "operator"; - docs: ["operator"]; - type: "pubkey"; + name: "cliffFeeNumerator"; + type: "u64"; + }, + { + name: "numberOfPeriod"; + type: "u16"; + }, + { + name: "periodFrequency"; + type: "u64"; + }, + { + name: "reductionFactor"; + type: "u64"; + }, + { + name: "baseFeeMode"; + type: "u8"; }, { name: "padding"; - docs: ["Reserve"]; type: { - array: ["u8", 128]; + array: ["u8", 3]; }; } ]; @@ -3778,6 +3978,38 @@ export type CpAmm = { ]; }; }, + { + name: "dummyParams"; + type: { + kind: "struct"; + fields: [ + { + name: "borshFeeTimeSchedulerParams"; + type: { + defined: { + name: "borshFeeTimeScheduler"; + }; + }; + }, + { + name: "borshFeeRateLimiterParams"; + type: { + defined: { + name: "borshFeeRateLimiter"; + }; + }; + }, + { + name: "borshFeeMarketCapSchedulerParams"; + type: { + defined: { + name: "borshFeeMarketCapScheduler"; + }; + }; + } + ]; + }; + }, { name: "dynamicConfigParameters"; type: { @@ -3948,50 +4180,6 @@ export type CpAmm = { ]; }; }, - { - name: "evtAddLiquidity"; - type: { - kind: "struct"; - fields: [ - { - name: "pool"; - type: "pubkey"; - }, - { - name: "position"; - type: "pubkey"; - }, - { - name: "owner"; - type: "pubkey"; - }, - { - name: "params"; - type: { - defined: { - name: "addLiquidityParameters"; - }; - }; - }, - { - name: "tokenAAmount"; - type: "u64"; - }, - { - name: "tokenBAmount"; - type: "u64"; - }, - { - name: "totalAmountA"; - type: "u64"; - }, - { - name: "totalAmountB"; - type: "u64"; - } - ]; - }; - }, { name: "evtClaimPartnerFee"; type: { @@ -4092,23 +4280,6 @@ export type CpAmm = { ]; }; }, - { - name: "evtCloseClaimFeeOperator"; - docs: ["Close claim fee operator"]; - type: { - kind: "struct"; - fields: [ - { - name: "claimFeeOperator"; - type: "pubkey"; - }, - { - name: "operator"; - type: "pubkey"; - } - ]; - }; - }, { name: "evtCloseConfig"; docs: ["Close config"]; @@ -4152,19 +4323,6 @@ export type CpAmm = { ]; }; }, - { - name: "evtCreateClaimFeeOperator"; - docs: ["Create claim fee operator"]; - type: { - kind: "struct"; - fields: [ - { - name: "operator"; - type: "pubkey"; - } - ]; - }; - }, { name: "evtCreateConfig"; docs: ["Create static config"]; @@ -4572,42 +4730,6 @@ export type CpAmm = { ]; }; }, - { - name: "evtRemoveLiquidity"; - type: { - kind: "struct"; - fields: [ - { - name: "pool"; - type: "pubkey"; - }, - { - name: "position"; - type: "pubkey"; - }, - { - name: "owner"; - type: "pubkey"; - }, - { - name: "params"; - type: { - defined: { - name: "removeLiquidityParameters"; - }; - }; - }, - { - name: "tokenAAmount"; - type: "u64"; - }, - { - name: "tokenBAmount"; - type: "u64"; - } - ]; - }; - }, { name: "evtSetPoolStatus"; type: { @@ -4688,50 +4810,6 @@ export type CpAmm = { ]; }; }, - { - name: "evtSwap"; - type: { - kind: "struct"; - fields: [ - { - name: "pool"; - type: "pubkey"; - }, - { - name: "tradeDirection"; - type: "u8"; - }, - { - name: "hasReferral"; - type: "bool"; - }, - { - name: "params"; - type: { - defined: { - name: "swapParameters"; - }; - }; - }, - { - name: "swapResult"; - type: { - defined: { - name: "swapResult"; - }; - }; - }, - { - name: "actualAmountIn"; - type: "u64"; - }, - { - name: "currentTimestamp"; - type: "u64"; - } - ]; - }; - }, { name: "evtSwap2"; type: { @@ -4786,12 +4864,36 @@ export type CpAmm = { type: "u64"; }, { - name: "reserveAAmount"; - type: "u64"; + name: "reserveAAmount"; + type: "u64"; + }, + { + name: "reserveBAmount"; + type: "u64"; + } + ]; + }; + }, + { + name: "evtUpdatePoolFees"; + type: { + kind: "struct"; + fields: [ + { + name: "pool"; + type: "pubkey"; + }, + { + name: "operator"; + type: "pubkey"; }, { - name: "reserveBAmount"; - type: "u64"; + name: "params"; + type: { + defined: { + name: "updatePoolFeesParameters"; + }; + }; } ]; }; @@ -4901,7 +5003,7 @@ export type CpAmm = { { name: "sqrtPrice"; docs: [ - "The init price of the pool as a sqrt(token_b/token_a) Q64.64 value" + "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"; }, @@ -4952,6 +5054,154 @@ export type CpAmm = { ]; }; }, + { + name: "operator"; + serialization: "bytemuck"; + repr: { + kind: "c"; + }; + type: { + kind: "struct"; + fields: [ + { + name: "whitelistedAddress"; + type: "pubkey"; + }, + { + name: "permission"; + type: "u128"; + }, + { + name: "padding"; + type: { + array: ["u64", 2]; + }; + } + ]; + }; + }, + { + name: "podAlignedFeeMarketCapScheduler"; + serialization: "bytemuck"; + repr: { + kind: "c"; + }; + type: { + kind: "struct"; + fields: [ + { + name: "cliffFeeNumerator"; + type: "u64"; + }, + { + name: "baseFeeMode"; + type: "u8"; + }, + { + name: "padding"; + type: { + array: ["u8", 5]; + }; + }, + { + name: "numberOfPeriod"; + type: "u16"; + }, + { + name: "sqrtPriceStepBps"; + type: "u32"; + }, + { + name: "schedulerExpirationDuration"; + type: "u32"; + }, + { + name: "reductionFactor"; + type: "u64"; + } + ]; + }; + }, + { + name: "podAlignedFeeRateLimiter"; + serialization: "bytemuck"; + repr: { + kind: "c"; + }; + type: { + kind: "struct"; + fields: [ + { + name: "cliffFeeNumerator"; + type: "u64"; + }, + { + name: "baseFeeMode"; + type: "u8"; + }, + { + name: "padding"; + type: { + array: ["u8", 5]; + }; + }, + { + name: "feeIncrementBps"; + type: "u16"; + }, + { + name: "maxLimiterDuration"; + type: "u32"; + }, + { + name: "maxFeeBps"; + type: "u32"; + }, + { + name: "referenceAmount"; + type: "u64"; + } + ]; + }; + }, + { + name: "podAlignedFeeTimeScheduler"; + serialization: "bytemuck"; + repr: { + kind: "c"; + }; + type: { + kind: "struct"; + fields: [ + { + name: "cliffFeeNumerator"; + type: "u64"; + }, + { + name: "baseFeeMode"; + type: "u8"; + }, + { + name: "padding"; + type: { + array: ["u8", 5]; + }; + }, + { + name: "numberOfPeriod"; + type: "u16"; + }, + { + name: "periodFrequency"; + type: "u64"; + }, + { + name: "reductionFactor"; + type: "u64"; + } + ]; + }; + }, { name: "pool"; serialization: "bytemuck"; @@ -5077,7 +5327,7 @@ export type CpAmm = { { name: "collectFeeMode"; docs: [ - "0 is collect fee in both token, 1 only collect fee in token a, 2 only collect fee in token b" + "0 is collect fee in both token, 1 only collect fee only in token b" ]; type: "u8"; }, @@ -5169,13 +5419,6 @@ export type CpAmm = { }; }; }, - { - name: "padding"; - docs: ["padding"]; - type: { - array: ["u8", 3]; - }; - }, { name: "dynamicFee"; docs: ["dynamic fee"]; @@ -5203,7 +5446,7 @@ export type CpAmm = { name: "baseFee"; type: { defined: { - name: "baseFeeConfig"; + name: "baseFeeInfo"; }; }; }, @@ -5308,11 +5551,8 @@ export type CpAmm = { }; }, { - name: "padding1"; - docs: ["padding"]; - type: { - array: ["u64", 2]; - }; + name: "initSqrtPrice"; + type: "u128"; } ]; }; @@ -5813,39 +6053,6 @@ export type CpAmm = { ]; }; }, - { - name: "swapResult"; - docs: ["Encodes all results of swapping"]; - type: { - kind: "struct"; - fields: [ - { - name: "outputAmount"; - type: "u64"; - }, - { - name: "nextSqrtPrice"; - type: "u128"; - }, - { - name: "lpFee"; - type: "u64"; - }, - { - name: "protocolFee"; - type: "u64"; - }, - { - name: "partnerFee"; - type: "u64"; - }, - { - name: "referralFee"; - type: "u64"; - } - ]; - }; - }, { name: "swapResult2"; type: { @@ -5915,6 +6122,41 @@ export type CpAmm = { ]; }; }, + { + name: "updatePoolFeesParameters"; + type: { + kind: "struct"; + fields: [ + { + name: "cliffFeeNumerator"; + 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: "dynamicFee"; + 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"; @@ -6027,4 +6269,81 @@ export type CpAmm = { }; } ]; + constants: [ + { + name: "binStepBpsDefault"; + type: "u16"; + value: "1"; + }, + { + name: "binStepU128DefaultLeBytes"; + type: { + array: ["u8", 16]; + }; + value: "[203, 16, 199, 186, 184, 141, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0]"; + }, + { + name: "customizablePoolPrefix"; + type: "bytes"; + value: "[99, 112, 111, 111, 108]"; + }, + { + name: "feeDenominator"; + 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: "maxBasisPoint"; + docs: ["Max basis point. 100% in pct"]; + type: "u64"; + value: "10000"; + }, + { + name: "maxSqrtPriceLeBytes"; + type: { + array: ["u8", 16]; + }; + value: "[155, 87, 105, 78, 169, 26, 92, 132, 177, 196, 254, 255, 0, 0, 0, 0]"; + }, + { + name: "minSqrtPriceLeBytes"; + type: { + array: ["u8", 16]; + }; + value: "[80, 59, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]"; + }, + { + name: "poolAuthorityPrefix"; + type: "bytes"; + value: "[112, 111, 111, 108, 95, 97, 117, 116, 104, 111, 114, 105, 116, 121]"; + }, + { + name: "poolPrefix"; + type: "bytes"; + value: "[112, 111, 111, 108]"; + }, + { + name: "positionNftAccountPrefix"; + type: "bytes"; + value: "[112, 111, 115, 105, 116, 105, 111, 110, 95, 110, 102, 116, 95, 97, 99, 99, 111, 117, 110, 116]"; + }, + { + name: "positionPrefix"; + type: "bytes"; + value: "[112, 111, 115, 105, 116, 105, 111, 110]"; + }, + { + name: "splitPositionDenominator"; + type: "u32"; + value: "1000000000"; + }, + { + name: "tokenVaultPrefix"; + type: "bytes"; + value: "[116, 111, 107, 101, 110, 95, 118, 97, 117, 108, 116]"; + } + ]; }; diff --git a/tests/fixtures/damm_v2.so b/tests/fixtures/damm_v2.so index abd320014908616cf35841dfc68b20d4d9b1ad2a..27ca88a0521f512f4a4c8947b12526e5e6aa4ebe 100755 GIT binary patch delta 289187 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 l)QFB^# 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

aAK0NEmE z$T_k@E*gj9tFj4%_kM9N8fkwe|Kl3s9zl8o5R8kUesrJRpz7{`@lw zFrk9v$8ZhUa=C32ZuA=k)t za-&Lt7P&+A$X#-eJS30ERka4LvNYKuXUREofm|ln(Q<=h45$vdOYW10+NqAz@>r?xl8VohvYF?txIb_?9V^502UQw$T_k@ zE|SaS8o9A9o&Q}b=#abQK6ywUlht~(2G*nVzeNQZa*phfi{vu7PIjvl@W_4gh^*$} zD@v0y@{zB6rAM%>Mr0j|KGkXGB)((<>xr$a%6uE=Bgo zSLG<6$5(Z7gY1$$a-TdRkEagCSBVYq6BEs10$AB*+%oCg;d`axrjp{x4BMja(W#>A#@!s|H69 zv&~0qp*Yt)blGqj9t)Q(d(Yc$^_G`wn{`D&! zUl@FGnGS1PJ@nuM^8Db-a7_JVJM{2abbICCTQyAmApGhW{|jFAfQ|5*R!qV8C)gl) zJ9_da+WK5@lV{W3Jqc~i5AHB%@`aUx+uQhG@aiwX8bQDm*x@aTjB_twKD|P4>k^aq zP7gk!Y+Q>SH+27X@?aT%udDh8idj;iwvJ}Kc5i#MyIQoH>P&79y1la=CYU2SpInSi z?16R<*Ou+CmsmHj=lP21yECKRSpSrm1(r`-E(-xwSOMK% znVdxDQ|R2s(A_lJUMp^yf9-YS0XhB7L-*#R?ak0?3v^{6y4XV7-;Y_(fA5E}fVk|U za~*VhDfxYL`2%!15nT`HjJHDMst!0CM*;1Djm|AVm$yKBd31dVy0#xWd%)CH|Ij=9 z@-*PPcre;6p>vm`d)K19@Se)%z?Qr>I{WDtSowpotbZLS-){nelMkY;N6^FYmc(WN zwS07T)cv)?+ufRcKfGP7v05*z*V|t=XqZ4~JG@z|Y2cFko8o|z@YbfLzOo4OPuc<)lvK`*>@sc}ENRjF|{y!GhR2jT#Q@J^y8-}^e|lSlau&i{G=a^amn zO@mT+r%&U0c&AU}ba}OgQ>T_3E1I%FOAdTeJqW$;cY98GvRG2jeDC% zmtcC0+FPKDG6L^*fAKJ$f^%-(lp|uSNxWA^K-W1=_W5M0x!VAa^u6 zeN1G1#b3HGvc5ncHX`c_^2vEo|Jv^6PecX!5R(Z1-c=8-r(@>asKM;!2dB;b#mx3E znm<2%?!q~}YlD<|e*KHhmvr2l6};s)&+Z1z1!v4%xKbf}XD`pqL(iDI_3Xr^;qL~* z=T7ryXUyGlwznW`A3o1(z9`{2gUy1lc~&1a7gXnNv%+A($7DHWT{j=PAeCyad|qnh F{{s@iHxU2; delta 257100 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�htiw59+!sRpor!eQwQ9j^yV1BmmL(K?Ar&) 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 { let zapProgram: ZapProgram; let svm: LiteSVM; - let tokenMint: PublicKey; let user: Keypair; let admin: Keypair; let tokenAMint: PublicKey; @@ -97,15 +100,55 @@ describe("Zap In damm V2", () => { }); }); - it("zap in with pool has fee scheduler", async () => { - const baseFee = { - cliffFeeNumerator: new BN(500_000_000), // 50 % - firstFactor: 100, // 100 periods - secondFactor: Array.from(new BN(1).toArrayLike(Buffer, "le", 8)), - thirdFactor: new BN(4875000), - baseFeeMode: 0, // fee scheduler Linear mode - }; + it("zap in with pool has fee time scheduler linear", async () => { + const baseFee = encodeFeeTimeSchedulerParams( + new BN(500_000_000), // 50% cliff fee + 100, // 100 periods + new BN(1), // period frequency in slots + new BN(4875000), // 0.4875% reduction per period + BaseFeeMode.FeeTimeSchedulerLinear + ); + warpSlotBy(svm, new BN(10)); + + const pool = await createDammV2Pool( + svm, + admin, + tokenAMint, + tokenBMint, + undefined, + undefined, + baseFee + ); + + const { position, positionNftAccount } = await createDammV2Position( + svm, + user, + pool + ); + + const amountTokenA = new BN(LAMPORTS_PER_SOL); + const amountSwap = amountTokenA.divn(2); + await zapInFullFlow({ + svm, + user, + pool, + position, + positionNftAccount, + inputTokenMint: tokenAMint, + outputTokenMint: tokenBMint, + totalAmount: amountTokenA, + amountSwap, + }); + }); + it("zap in with pool has fee time scheduler exponential", async () => { + const baseFee = encodeFeeTimeSchedulerParams( + new BN(990_000_000), // 99% cliff fee + 10, // 10 periods + new BN(1), // period frequency in slots + new BN(1_000), // 10% decay per period + BaseFeeMode.FeeTimeSchedulerExponential + ); warpSlotBy(svm, new BN(10)); const pool = await createDammV2Pool( @@ -140,18 +183,13 @@ describe("Zap In damm V2", () => { }); it("zap in with pool has rate limiter", async () => { - let maxRateLimiterDuration = new BN(10); - let maxFeeBps = new BN(5000); - const baseFee = { - cliffFeeNumerator: new BN(10_000_000), // 100bps - firstFactor: 10, // 10 bps - secondFactor: convertToRateLimiterSecondFactor( - maxRateLimiterDuration, - maxFeeBps - ), - thirdFactor: new BN(LAMPORTS_PER_SOL), // 1 SOL, - baseFeeMode: 2, // rate limiter mode - }; + const baseFee = encodeFeeRateLimiterParams( + new BN(10_000_000), // 1% cliff fee + 10, // 10 bps fee increment + 10, // max limiter duration + 5000, // 50% max fee + new BN(LAMPORTS_PER_SOL) // reference amount: 1 SOL + ); const pool = await createDammV2Pool( svm, @@ -184,6 +222,88 @@ describe("Zap In damm V2", () => { }); }); + it("zap in with pool has fee market cap scheduler linear", async () => { + const baseFee = encodeFeeMarketCapSchedulerParams( + new BN(50_000_000), // 5% cliff fee + 20, // 20 periods + 50, // 0.5% price step + 5000, // scheduler expires after 5000 slots + new BN(1_000_000), // 0.1% reduction per period + BaseFeeMode.FeeMarketCapSchedulerLinear + ); + + const pool = await createDammV2Pool( + svm, + admin, + tokenAMint, + tokenBMint, + undefined, + undefined, + baseFee + ); + + const { position, positionNftAccount } = await createDammV2Position( + svm, + user, + pool + ); + + const amountTokenA = new BN(LAMPORTS_PER_SOL); + const amountSwap = amountTokenA.divn(2); + await zapInFullFlow({ + svm, + user, + pool, + position, + positionNftAccount, + inputTokenMint: tokenAMint, + outputTokenMint: tokenBMint, + totalAmount: amountTokenA, + amountSwap, + }); + }); + + it("zap in with pool has fee market cap scheduler exponential", async () => { + const baseFee = encodeFeeMarketCapSchedulerParams( + new BN(990_000_000), // 99% cliff fee + 10, // 10 periods + 50, // 0.5% sqrt price step between tiers (in bps) + 1000, // scheduler expires after 1000 slots + new BN(1_000), // 10% decay per period (1000/10000 in bps scale) + BaseFeeMode.FeeMarketCapSchedulerExponential + ); + + const pool = await createDammV2Pool( + svm, + admin, + tokenAMint, + tokenBMint, + undefined, + undefined, + baseFee + ); + + const { position, positionNftAccount } = await createDammV2Position( + svm, + user, + pool + ); + + const amountTokenA = new BN(LAMPORTS_PER_SOL); + const amountSwap = amountTokenA.divn(2); + await zapInFullFlow({ + svm, + user, + pool, + position, + positionNftAccount, + inputTokenMint: tokenAMint, + outputTokenMint: tokenBMint, + totalAmount: amountTokenA, + amountSwap, + }); + }); + it("zap in with pool low liquidity", async () => { const pool = await createDammV2Pool( svm, From 4a48c48a1ad8ea1daec86a0d4f50dda452d7101d Mon Sep 17 00:00:00 2001 From: Andrew Nguyen Date: Mon, 5 Jan 2026 13:09:48 +0700 Subject: [PATCH 2/4] fix fee by market cap damm-v2 --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ac3a85..4fd868b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Breaking Changes +## zap [0.2.1] [PR #15](https://github.com/MeteoraAg/zap-program/pull/41) + +### Fixed +- Fix zap in damm-v2 with new base fee mode + + ## zap [0.2.0] [PR #15](https://github.com/MeteoraAg/zap-program/pull/15) ### Added From f2b9ae23ace90e980022bd322745379d1f2b787d Mon Sep 17 00:00:00 2001 From: bangyro <229454856+bangyro@users.noreply.github.com> Date: Thu, 8 Jan 2026 16:27:16 +0800 Subject: [PATCH 3/4] Feat/bump version 0.2.1 in cargo.toml (#43) * feat: bump cargo version * docs: update pr number * fix: typo --- CHANGELOG.md | 5 +++-- Cargo.lock | 2 +- programs/zap/Cargo.toml | 6 +++--- programs/zap/src/instructions/ix_zap_out.rs | 4 ++-- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4fd868b..7bb0b27 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,13 +21,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Breaking Changes -## zap [0.2.1] [PR #15](https://github.com/MeteoraAg/zap-program/pull/41) +## zap [0.2.1] [PR #41](https://github.com/MeteoraAg/zap-program/pull/41) ### Fixed -- Fix zap in damm-v2 with new base fee mode +- Fix zap in damm-v2 with new base fee mode ## zap [0.2.0] [PR #15](https://github.com/MeteoraAg/zap-program/pull/15) ### Added + New endpoints `initialize_ledger_account`, `close_ledger_account`, `set_ledger_balance`, `update_ledger_balance_after_swap`, `zap_in_damm_v2`, `zap_in_dlmm_for_initialized_position` and `zap_in_dlmm_for_uninitialized_position` that allow user to zap in damm v2 and dlmm easily. Refer `ZAPIN.md` for zap_in examples diff --git a/Cargo.lock b/Cargo.lock index ebe94d9..64060f0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3550,7 +3550,7 @@ dependencies = [ [[package]] name = "zap" -version = "0.2.0" +version = "0.2.1" dependencies = [ "anchor-lang", "anchor-spl", diff --git a/programs/zap/Cargo.toml b/programs/zap/Cargo.toml index c38b181..817e039 100644 --- a/programs/zap/Cargo.toml +++ b/programs/zap/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zap" -version = "0.2.0" +version = "0.2.1" description = "Created with Anchor" edition = "2021" @@ -25,5 +25,5 @@ bytemuck = { workspace = true, features = ["derive", "min_const_generics"] } dlmm = { path = "../../libs/dlmm" } damm-v2 = { git = "https://github.com/MeteoraAg/damm-v2", features = [ "cpi", -], rev = "d9cef5aaec9cfa1a6d3b0b28d213c87c285127de", package="cp-amm" } -ruint = "1.3.0" \ No newline at end of file +], rev = "d9cef5aaec9cfa1a6d3b0b28d213c87c285127de", package = "cp-amm" } +ruint = "1.3.0" diff --git a/programs/zap/src/instructions/ix_zap_out.rs b/programs/zap/src/instructions/ix_zap_out.rs index e737f35..dab7789 100644 --- a/programs/zap/src/instructions/ix_zap_out.rs +++ b/programs/zap/src/instructions/ix_zap_out.rs @@ -82,9 +82,9 @@ pub fn handle_zap_out<'c: 'info, 'info>( ) -> Result<()> { // validate params params.validate()?; - let disciminator = ¶ms.payload_data[..8]; // first 8 bytes is discriminator + let discriminator = ¶ms.payload_data[..8]; // first 8 bytes is discriminator require!( - is_support_amm_program(ctx.accounts.amm_program.key, disciminator), + is_support_amm_program(ctx.accounts.amm_program.key, discriminator), ZapError::AmmIsNotSupported ); let post_user_token_balance = ctx.accounts.user_token_in_account.amount; From 020f3d23b114a662b946c384996a911a26811e60 Mon Sep 17 00:00:00 2001 From: bangyro <229454856+bangyro@users.noreply.github.com> Date: Wed, 14 Jan 2026 19:19:52 +0800 Subject: [PATCH 4/4] Fix: zap in dammv2 missing instructions sysvar (#44) * fix: add remaining accounts * feat: update damm_v2 to 0.1.7 * docs: update changelog --- CHANGELOG.md | 1 + idls/damm_v2.json | 191 ++++++------ .../zap/src/instructions/ix_zap_in_damm_v2.rs | 17 +- programs/zap/src/lib.rs | 4 +- tests/common/endpoints/zapIn.ts | 13 +- tests/common/idl/damm_v2.ts | 287 ++++++------------ tests/common/utils.ts | 1 + tests/fixtures/damm_v2.so | Bin 1387872 -> 1443368 bytes tests/test_zapin/zapin_dammv2.test.ts | 85 +++++- 9 files changed, 306 insertions(+), 293 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7bb0b27..6ca4eb8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Fix zap in damm-v2 with new base fee mode +- Add missing instructions sysvar in remaining accounts for `zap_in_damm_v2` which is used in rate limited DAMM v2 Pool for single swap validation ## zap [0.2.0] [PR #15](https://github.com/MeteoraAg/zap-program/pull/15) diff --git a/idls/damm_v2.json b/idls/damm_v2.json index fee333e..6532516 100644 --- a/idls/damm_v2.json +++ b/idls/damm_v2.json @@ -2,7 +2,7 @@ "address": "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG", "metadata": { "name": "cp_amm", - "version": "0.1.6", + "version": "0.1.7", "spec": "0.1.0", "description": "Created with Anchor" }, @@ -305,79 +305,20 @@ }, { "name": "token_a_account", - "docs": ["The treasury token a account"], - "writable": true, - "pda": { - "seeds": [ - { - "kind": "const", - "value": [ - 48, 9, 89, 123, 106, 114, 131, 251, 50, 173, 254, 250, 10, 80, - 160, 84, 143, 100, 81, 249, 134, 112, 30, 213, 50, 166, 239, - 78, 53, 175, 188, 85 - ] - }, - { - "kind": "account", - "path": "token_a_program" - }, - { - "kind": "account", - "path": "token_a_mint" - } - ], - "program": { - "kind": "const", - "value": [ - 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, - 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, - 219, 233, 248, 89 - ] - } - } + "writable": true }, { "name": "token_b_account", - "docs": ["The treasury token b account"], - "writable": true, - "pda": { - "seeds": [ - { - "kind": "const", - "value": [ - 48, 9, 89, 123, 106, 114, 131, 251, 50, 173, 254, 250, 10, 80, - 160, 84, 143, 100, 81, 249, 134, 112, 30, 213, 50, 166, 239, - 78, 53, 175, 188, 85 - ] - }, - { - "kind": "account", - "path": "token_b_program" - }, - { - "kind": "account", - "path": "token_b_mint" - } - ], - "program": { - "kind": "const", - "value": [ - 140, 151, 37, 143, 78, 36, 137, 241, 187, 61, 16, 41, 20, 142, - 13, 131, 11, 90, 19, 153, 218, 255, 16, 132, 4, 142, 123, 216, - 219, 233, 248, 89 - ] - } - } + "writable": true }, { "name": "operator", "docs": ["Claim fee operator"] }, { - "name": "whitelisted_address", + "name": "signer", "docs": ["Operator"], - "signer": true, - "relations": ["operator"] + "signer": true }, { "name": "token_a_program", @@ -498,9 +439,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "rent_receiver", @@ -535,7 +475,7 @@ "writable": true }, { - "name": "admin", + "name": "signer", "signer": true }, { @@ -637,9 +577,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "rent_receiver", @@ -690,9 +629,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "payer", @@ -760,9 +698,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "payer", @@ -831,7 +768,7 @@ "name": "whitelisted_address" }, { - "name": "admin", + "name": "signer", "signer": true }, { @@ -989,9 +926,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "payer", @@ -2057,9 +1993,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "event_authority", @@ -2408,9 +2343,8 @@ "name": "operator" }, { - "name": "whitelisted_address", - "signer": true, - "relations": ["operator"] + "name": "signer", + "signer": true }, { "name": "event_authority", @@ -2577,6 +2511,54 @@ "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": [ @@ -3011,6 +2993,41 @@ "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": [ diff --git a/programs/zap/src/instructions/ix_zap_in_damm_v2.rs b/programs/zap/src/instructions/ix_zap_in_damm_v2.rs index 06544f8..362970a 100644 --- a/programs/zap/src/instructions/ix_zap_in_damm_v2.rs +++ b/programs/zap/src/instructions/ix_zap_in_damm_v2.rs @@ -67,7 +67,12 @@ pub struct ZapInDammv2Ctx<'info> { } impl<'info> ZapInDammv2Ctx<'info> { - fn swap(&self, amount: u64, trade_direction: TradeDirection) -> Result<()> { + fn swap( + &self, + amount: u64, + trade_direction: TradeDirection, + remaining_accounts: &[AccountInfo<'info>], + ) -> Result<()> { let (input_token_account, output_token_account) = if trade_direction == TradeDirection::AtoB { ( @@ -99,7 +104,8 @@ impl<'info> ZapInDammv2Ctx<'info> { payer: self.owner.to_account_info(), referral_token_account: None, // TODO check whether it should be some(damm_program) }, - ), + ) + .with_remaining_accounts(remaining_accounts.to_vec()), SwapParameters2 { amount_0: amount, amount_1: 0, @@ -140,8 +146,8 @@ impl<'info> ZapInDammv2Ctx<'info> { } } -pub fn handle_zap_in_damm_v2( - ctx: Context, +pub fn handle_zap_in_damm_v2<'c: 'info, 'info>( + ctx: Context<'_, '_, 'c, 'info, ZapInDammv2Ctx<'info>>, pre_sqrt_price: u128, // sqrt price user observe in local max_sqrt_price_change_bps: u32, // max sqrt price change after swap ) -> Result<()> { @@ -216,7 +222,8 @@ pub fn handle_zap_in_damm_v2( return Ok(()); // no need to swap, just return } drop(pool); - ctx.accounts.swap(swap_in_amount, trade_direction)?; + ctx.accounts + .swap(swap_in_amount, trade_direction, &ctx.remaining_accounts)?; } Err(err) => { // if calculation fail, we just skip swap and add liquidity with remaining amount diff --git a/programs/zap/src/lib.rs b/programs/zap/src/lib.rs index e998a23..74e8104 100644 --- a/programs/zap/src/lib.rs +++ b/programs/zap/src/lib.rs @@ -57,8 +57,8 @@ pub mod zap { ) } - pub fn zap_in_damm_v2( - ctx: Context, + pub fn zap_in_damm_v2<'c: 'info, 'info>( + ctx: Context<'_, '_, 'c, 'info, ZapInDammv2Ctx<'info>>, pre_sqrt_price: u128, max_sqrt_price_change_bps: u32, ) -> Result<()> { diff --git a/tests/common/endpoints/zapIn.ts b/tests/common/endpoints/zapIn.ts index 8f6c7f1..869b273 100644 --- a/tests/common/endpoints/zapIn.ts +++ b/tests/common/endpoints/zapIn.ts @@ -4,6 +4,7 @@ import { AccountMeta, PublicKey, SystemProgram, + SYSVAR_INSTRUCTIONS_PUBKEY, Transaction, } from "@solana/web3.js"; import { DAMM_V2_PROGRAM_ID } from "../damm_v2"; @@ -14,15 +15,12 @@ import { deriveLedgerAccount, getDammV2Pool, } from "../pda"; -import { createZapProgram, ZAP_PROGRAM_ID } from "./zapOut"; +import { createZapProgram } from "./zapOut"; import { getAssociatedTokenAddressSync } from "@solana/spl-token"; import { DLMM_PROGRAM_ID_LOCAL, - getBinArrayAccountMetaByBinRange, getLbPairState, MEMO_PROGRAM_ID, - SET_COMPUTE_UNIT_LIMIT_IX, - StrategyType, } from "../dlmm"; export async function zapInDammv2(params: { @@ -87,6 +85,13 @@ export async function zapInDammv2(params: { dammProgram: DAMM_V2_PROGRAM_ID, dammEventAuthority: deriveDammV2EventAuthority(), }) + .remainingAccounts([ + { + isSigner: false, + isWritable: false, + pubkey: SYSVAR_INSTRUCTIONS_PUBKEY, + }, + ]) .transaction(); } diff --git a/tests/common/idl/damm_v2.ts b/tests/common/idl/damm_v2.ts index 6b90f42..df26138 100644 --- a/tests/common/idl/damm_v2.ts +++ b/tests/common/idl/damm_v2.ts @@ -8,7 +8,7 @@ export type CpAmm = { address: "cpamdpZCGKUy5JxQXB4dcpGPiikHawvSWAd6mEn1sGG"; metadata: { name: "cpAmm"; - version: "0.1.6"; + version: "0.1.7"; spec: "0.1.0"; description: "Created with Anchor"; }; @@ -356,195 +356,20 @@ export type CpAmm = { }, { name: "tokenAAccount"; - docs: ["The treasury token a account"]; writable: true; - pda: { - seeds: [ - { - kind: "const"; - value: [ - 48, - 9, - 89, - 123, - 106, - 114, - 131, - 251, - 50, - 173, - 254, - 250, - 10, - 80, - 160, - 84, - 143, - 100, - 81, - 249, - 134, - 112, - 30, - 213, - 50, - 166, - 239, - 78, - 53, - 175, - 188, - 85 - ]; - }, - { - kind: "account"; - path: "tokenAProgram"; - }, - { - kind: "account"; - path: "tokenAMint"; - } - ]; - program: { - kind: "const"; - value: [ - 140, - 151, - 37, - 143, - 78, - 36, - 137, - 241, - 187, - 61, - 16, - 41, - 20, - 142, - 13, - 131, - 11, - 90, - 19, - 153, - 218, - 255, - 16, - 132, - 4, - 142, - 123, - 216, - 219, - 233, - 248, - 89 - ]; - }; - }; }, { name: "tokenBAccount"; - docs: ["The treasury token b account"]; writable: true; - pda: { - seeds: [ - { - kind: "const"; - value: [ - 48, - 9, - 89, - 123, - 106, - 114, - 131, - 251, - 50, - 173, - 254, - 250, - 10, - 80, - 160, - 84, - 143, - 100, - 81, - 249, - 134, - 112, - 30, - 213, - 50, - 166, - 239, - 78, - 53, - 175, - 188, - 85 - ]; - }, - { - kind: "account"; - path: "tokenBProgram"; - }, - { - kind: "account"; - path: "tokenBMint"; - } - ]; - program: { - kind: "const"; - value: [ - 140, - 151, - 37, - 143, - 78, - 36, - 137, - 241, - 187, - 61, - 16, - 41, - 20, - 142, - 13, - 131, - 11, - 90, - 19, - 153, - 218, - 255, - 16, - 132, - 4, - 142, - 123, - 216, - 219, - 233, - 248, - 89 - ]; - }; - }; }, { name: "operator"; docs: ["Claim fee operator"]; }, { - name: "whitelistedAddress"; + name: "signer"; docs: ["operator"]; signer: true; - relations: ["operator"]; }, { name: "tokenAProgram"; @@ -695,9 +520,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "rentReceiver"; @@ -747,7 +571,7 @@ export type CpAmm = { writable: true; }, { - name: "admin"; + name: "signer"; signer: true; }, { @@ -879,9 +703,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "rentReceiver"; @@ -947,9 +770,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "payer"; @@ -1032,9 +854,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "payer"; @@ -1118,7 +939,7 @@ export type CpAmm = { name: "whitelistedAddress"; }, { - name: "admin"; + name: "signer"; signer: true; }, { @@ -1324,9 +1145,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "payer"; @@ -2607,9 +2427,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "eventAuthority"; @@ -3033,9 +2852,8 @@ export type CpAmm = { name: "operator"; }, { - name: "whitelistedAddress"; + name: "signer"; signer: true; - relations: ["operator"]; }, { name: "eventAuthority"; @@ -3262,6 +3080,54 @@ export type CpAmm = { type: "u8"; } ]; + }, + { + name: "zapProtocolFee"; + discriminator: [213, 155, 187, 34, 56, 182, 91, 240]; + accounts: [ + { + name: "poolAuthority"; + address: "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC"; + }, + { + name: "pool"; + writable: true; + }, + { + name: "tokenVault"; + writable: true; + }, + { + name: "tokenMint"; + }, + { + name: "receiverToken"; + writable: true; + }, + { + name: "operator"; + docs: ["zap claim fee operator"]; + }, + { + name: "signer"; + docs: ["operator"]; + signer: true; + }, + { + name: "tokenProgram"; + docs: ["Token program"]; + }, + { + name: "sysvarInstructions"; + address: "Sysvar1nstructions1111111111111111111111111"; + } + ]; + args: [ + { + name: "maxAmount"; + type: "u64"; + } + ]; } ]; accounts: [ @@ -3696,6 +3562,41 @@ export type CpAmm = { 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: [ diff --git a/tests/common/utils.ts b/tests/common/utils.ts index 8cdc070..c1d6dca 100644 --- a/tests/common/utils.ts +++ b/tests/common/utils.ts @@ -36,6 +36,7 @@ export const MAX_SQRT_PRICE = new BN("79226673521066979257578248091"); export const LIQUIDITY_DELTA = new BN("1844674407800459963300003758876517305"); export const INIT_PRICE = new BN("18446744073709551616"); export const LIQUIDITY_DELTA_2 = new BN("18446744078004599633000037588765"); +export const U32_MAX = new BN("4294967295"); export const U64_MAX = new BN("18446744073709551615"); export function createToken( diff --git a/tests/fixtures/damm_v2.so b/tests/fixtures/damm_v2.so index 27ca88a0521f512f4a4c8947b12526e5e6aa4ebe..fe1ed6bc5290c7658c22f7512a86b0fbb615bcd5 100755 GIT binary patch delta 244408 zcmeFa33yaR7BG6NIvo-~l62^h1hTON2n2$%i2@1AA_4{^fJlG{$R5%JkV_*S5D*a& zyh7nJNWvm+h(-Z78aG4-5FH0m5pdja16)RNMEXBV-E^k|g3f&J{qOr;eM;rja_ZEn zb55OFZuPMb2X9_BY(--Hy2M%rhFtpBFpfJCR<`QkJ3X~NCD^eM%lQJLNccZ-8s~?{ z#}{xpI}WWE0a;sr;CkWlsaV8p7&>lZ*cBxtVuOaR7>q3`hRfeaR*n=Mg?w+AwOVG% zW)rNPa#nI5O&!+T?l6ofh!;T*>I}06IEv*v!>pZ-UXC@>>Z|VVSa*}Cy-XAqPjnha zix3#Az2=qH+v0V(m>YS2JT;Pkop$2{FB7vqCF1c9zVEvR22gmFxCd-CQH3vDjK2 zm+DwOy}s4m=WcvpU-c0=6$0ak)SF|Sh#O#6KDx+S>)I`MFS2fqUn`p|u8gc7DdfsU zRz3Gxd18^Z#XUN-bq}Ej>h&baDYu`&~XwB9@!b5EnDa>I?*NYS{m zPouh0j=a(8*7l&hufS@PHbl-DYwd55Wo=CxD>HAj64HmrD+;V)h+=QFcBkL$nh++* z?dDnCGBO>*OX^$WGg4$uW9vv(Bda2#vAmQqdpjzNU8q%qt&(rSow54P5}9AGVMog+WL!Ai{Rh9 zvPecc7Fg!bN|8=PIz+y510jrMgiqW+2w%A#5YChLAhMflAgY{89J3KUoeqeytaaJ1 z$+b6GH@BH3`vaCXBW2zVG{SSQw-Rz-Jg=|Zd08(Z+jE&uhf$gLhfx_9mw9K9bvAc_ zbt>mI`Bo93GP&4PF1C3Pp&CD^vR)@ZHJZ!Ba2W@e>BeP#A6QwO17&_5O?WmArRMG% zO3l4DknmUoD@S&LGRwHk6>)m`L$+{%}u&e_T~ zP%ms{ZLpP_xRnvt)NJLp>a8pYw$hzjx$E4mjL@xI9c(2ETe-PLKU!9Ap+&HT&kKlK zmz}!>sayE^x+-pMDX0?NaBjUlyBfFlHzIC5-EXPmUIlixe+M~sq;+smrkq(|ogLJT zQjhlUPjTA;93Q>DQ1&mdx(%KsyZmZx8{AQvBdrsI7t4{CTeAw5N3_2Vrjq=)s6;D$ z$Ou_B&zd)+jhr*j+A`$tR??u`s#@AnXwB-MDc=O0>woT+d;Rd8J= zxv$V#e%)f3eYus8zg#XEU~S4@Ef0V?4*bY6hkoQZGgYdi(UD13$*`*(cik#gpjMqE z>%g$j#RmyECyM$MBEt*zCgz(|a+PK?TwnV@N-K^yy57LT4K7d-v&zdzRQ$~-l){dE#oO7O;`{cD&o3V@K)BUV%V|&SeUTd9&Xz#UF zuW@VTltGnWj7t#mnn6U+!hS^1aIow^P;nL!^yP3O=rrgV5OhgD>&V0}h|6zGDx|pi zU`cMP=7PFX9DU16=AS}dVNz2g0HRS)Y(@izI? zoXXYHx(Rv5oXUeGZAA2|lcZ5A+As#Gt}|*ivRY1WD0j`VdQDH2N9R~KPd_5B0I0M= z?O76E*NT|6PR^L5wlo*X)~;Ds#^;31+y}?Y%A=)D;rP^)s{1!kO3b`dwwq)vpV`e7 zUU>C*>&VOmN5&*+HMpg#!+%SCYv?U0j*lU}1>nbK*SEIc(!r5#*0)YVJQ(2Sv$Gu? z0Uio*BEYvpykZ)ZgZN8;znq=om_4VyRm)6qL_oRb5MKuAy&*mUc*jFL8tXy45aNd+ z-VX5_W=g|&Gw78#jWl!@jYM!zTLYc|lxqQa)8?c&_5z;n5ch(5qaZdQ_CY)i;)ft! z1+gFEw;(<`Cq+hktYUA16T5ZAa;K0G1Wl)i3DDwVz_`EK9ur z^#xYz1yS-}1F#3;ZR?2z{z-&sO;mPCJd#P?0&{O>$oL-vzZ~*^ui+Ysc7J~Af zdRb<-SDJveV3Ea6UAYD}TN-Q;7R2Q|=lnBEEqVDyMFId%0kiwPpD%@lUJS-EAFHLAaXN zcQy9e!`MENP??&YZW%@FDv&&E+j)&`YzJe3RBneAEynH$9uL1BZlv(Nn^BNk5I%PV z_ugszM!hmGqvWdkt!>1nMqplMk9!i8+|KPAQ`@H*R^5A2F2~d|$|A#JH{j3ZG(W6< zF{E|i7zxF&Jwh#gBPP{XfC3D`KZGJ$Epv+o;maOZmogG{y9j{j8Q!s!Z1_9rnE7S+ zi!@xyF*2YtIOyI9jMY0E5+HbIQa(7q9vYVx9>yb&72kwRi z(`Pd)kE|TxaC|UMs*?-jHj5}#vLvpldT~))tcXzi7R5Dy=<`K!y+se}l2y$ek8{E4 zs^yZn@hbiHxG1%5NnC3o)V?KgZH1c(`NqlZPbRqBLVkDFs<$fBF_dflt#13vE~8O` z$iXe0F_O1>?SA8u+~1tc9-vzz8RH^ zE9yzYh6G2ACX!36oey`EkIbt4`Qc0)6}XP2hXQ*1V^Fmh-1q&U(6@kfWwoF0TAp zN@IHEylu;++~TRM_uLmkb}6xbe!iEyzQpSG!T{H)u(oziwAQ|Gv%Jnz8TleK`TGnj zbLV1W$&)*QCGVD4C;YSIt0k2;?}9eUORQNhZ<9+)D%-rWTv9RrYfvl}=F`{bNu$J? zw|lWXIn9cEV~cA~7`=6-Si9fY=TBFF!2(S19ji z<)L~L!t$fJ-c?46u=(dRO+Z;#g*sEXp*3OY-%hsLyqVDOP#7nFE8^l;&j6p~P51E4 zVfi=c{MfMO|D&5f9oEb*I(=6d9y!I@|7Jp$tzpGuCP>39&pC@)>&HDk2*|$ha+wn< zQ{NioP*H6n>Q;{U;DA%!TwK}aXh$j2iYssa@nV?O)lBg%G#>)a{rJaqmx415=IA1sA^h67xyFWc#7jQBk8l4M`UY7!m{tN{J zP!pJ`?uGwfJRm@qS9!1*2Li0q6bI6oNPNjpe3YJqIP6df@2#8Xs+ zxsadE^=d&n*7J_WREU!e?Wlarc(T$(z-lxjMYa1OCjA<~b~BVRH*hI?*2wO`nut_j zzTbto45K-eZvnBtJ%L7=mYMCf)T39$H23x9F2>T4P;ct}i#KX1{oS-}HmZi)gt zK9Cm|Rx`judXAWAR-{t{Zh1e!o{5xQ`H0q$r)u+xYm*gp(1A=sXe zxrv9+U(V@B$SxqnHj3y0?fD@P@RaZ3j)_i$$7ww3!1jT%cw;EV(~Z6q-)H1POcX*K zB(PL;1=t@GaRSmMTo+fm@CbX5& z8X6cE{S&QL!U+x~^av6P2L?b5Qd)-)gckUh?g?gOyHLKl2N@7MjRVvJYyj)qLYtj& zHI;K3C$KmW;)8<&jQfc=h~3c}1kOD+VLp3o-O+am6li1-7IYe~X%+zh;m-)0x7tvC zO?aF}ArUq%dY&;A@QsV^FF>(?y6ClHJS5l@1qoUtCP2D7`nW_5bQ(_+qH)pfjkc6N zT4tZK-oIoU$`@45X*@>tyu(kCo$+^uObF(~s5L#IXXjBHzn(8peTu5}2zU;`XY6(`UtSCKVC;N^z-ip^2Ys&I<$OSBTZ+&ww}vj8>xKc3utWJ2yT#oI zLf3yG{51*H`h+IvfTpxIRLFKct|=8{3!MgRfk5~ZmI8~Dp+Lfd`u70gaT=_Lejkbw z1hfDcyjg5p{r518&VU~YgJHt)&Ca}!2?@#Hq4RNUvNKmvKB`4;fSm>$EJ83h=}AKT zgJ92e9$25fGk_exoT^!(2&=J)ItvZhvxHmxoe+4lcp5}+c}oZ#5EM%V$3@RD5>cPR$HX0dt3*%99sP-DK(WArP_ZXf{3}CnI}jNh0`QOt z-w}vm{KrLKDyLCHAB$p&g@Lfs==7Hx{1j^bkyZhE4$wZR728JG;-EnZRi9sQYylaK zt!p?F6f%4KsPi!++ckvpaqMvq0ydJkJWeGL&Serw{?9c57gb{!v)*a!s6oIwO#lot z5YS5#@U<8TFcLBfVvzRp5#kF#{&`IrnzGlw4^^M`gve<;O!2tr?#5uKA1*_o9DJf0 zhc49w3S$rv=3|zh+t^koY&0M`m*H6p1e)t6P)E%2(G=rmAqJ;0k$X=6^5!LFz(0U4 zFv{m*(AIlz?I=RvG@hW0anZeumhe}258csSL~}@YM<>b_6bmZnG(Mr0v3&J;wtz@L zd-5AJTvWsa!hFj9Z|Ld*D|$!6KM# z>?b^7>I?q#MRjpkE3ZMad2;I?d7`Qcu4WpCj)O!xzE^GmL9<_(| zDz4}Gb_|W}Y(2ImVPo5d2=J@#>qf@&Y&tbWSPMix=Pv*%AmD6j2WT!ZDs1Rs zUMBqBWVWo{r7Q~OI$i?VOCxhVcf@HlA&l;5Lu3JBcl2JL(F*Ze{M9=4dLR? zX%r9vwsuwbMr|$Pp~(&S&aFkKPoahEqqQiPrCb}jprw3;SzQjTLcp=k0Z#aDVi-Ak zlJIoacycH%5HB!+wZV7wL0Pkc)#gI#<{!<7VHr(-gt79X?2@+{Cr5!d3&Cl;%RTuE z()-13X`)wjTX%~%2 za7>>f#MM_E^?-yw@{Onpj}5p+o0+t%iyKt4`~XqlO+G}6C#PW&rV!p~9(Cpxs?P>B zO-yJXpR6`GOs3P|rI1;~?yfCWwz2l##_hPpXl6x)Ph0sc_LEW0LCgat87#16&A5Vh zxSj>{?hKk(#NbWme5X-Fe}wdmdVWDM_5qgAQAEW`t0ol=YzM@67R7#C)ItcZAbL}} zXFf&X@H3(Q`CJY=gnc>RLc$kZNpxdG3%To|2x!FsgkcDsesHB>*T-p&H%&Sao}$~a z7L*Sm1ijKQLVRReehopC?aC$u-oAS2GKXCvvz&Vt&SG5h{2S^Q%}4amKr#zw)shE9 zp$?{(VJ>nKmlZ%5DXb6v&_{q5C>KPN3w{+bMYd@|Hm=tqRWVu#`j^qhwrEkUTm`j2V|duW8uUOd7ud~a66 z#}h8>ZW2BmV!DZ8Z=Z&)6;=SEpmk?s>5gt>%z&!y=w`-DtN%|89K#O4IpPU86FjuQ zP%-W56!;22E9^xKs@LWVvy#PCHCGwsLtS5P$8ag|XV=&2{Z@HeQd=ugEl_syFKZ?pLC?1o{M{#C(8Nr3| zBhO%!&>i$L7;AgJ^!84VMBMtnT1)x;g0qE9Ot8P`HpxNLS_1Q8((jf-wTcwj$D*KeTf<6bUreuQ)4 z%s`(60+PZANY)6FG=fAzV3x0-F|>Q;)f~~hH*AjCV;$raOP5^_m-eU_uxnyW^T8iZ z+AHNXe^myhLkS4xx;@nzcG6UX>GolXZD82_JZD3ICv-guU>OpK?HgXLz^f2|V9NqZ z-vZdtt-3eRf@eF-2ZLl}&*vJoAert9;65RQB8|wqK+lfQ4=nG!hq4W~lM8sWa_OGH zm3>Ld0IUCcF5w+Mn!21l5E3EKVLj$w%K76#Q4yn`4UUo4jMKLZwRF2P^|AteYUIbm zAqd_{yk;K?IOx&}a+c1pl_u%GA^-fnQ+A#=t7LSUB4hGQXgzE>h1L{m_Y$Kn!LGz#~ z^8j{osfs&lEXAG`6d9ohHCWQyM5iy{7>yd3n1EMbM=h;=JCWq34JHsfqXTh^#sKRl zAH#fW)K5-(hU?(kj0lo>X^V1nXo1@DOhl^hc1qt&2>lQ12B9xYAl+$WnLxGmL`<|#?+>8t!7W?E-c<6>&|U6(nuoIQagJ-B;x1~k%#BQ` zUu&Sb=>X+BK`1Z`g&ttv3glY^`x{VXWb3Q!;FgS{l)~P4ZUA=m8j6hZpy^mK+qNMS zIlb$>&FGIbUCu0L!qW0|{z`V5LmjW$u0} z2Iho)tu#hASY>POsYfl~w>!`tttv3V+l8#GVROja_YiT2H#WcoA?x#j_2vf7FxPVh zn}8TCeKEas4~jTOR;zxeVp4pX72f+bg}Or589WBI{@5&_i*#WZNj-3OZ?is)H!_Xv zH8=n;BzNcrH7BY#;Nf&%L3CXjE03PEOEWkFEh@6YyNK;e)jhNhoNp5r!|SE03;Wp( zwy}`0VFgiohFPZZ!{-JBYu5UzcDsc+JQ6tmm5~Y8L4=Wvqkhx*d(Z4k-F&z zxQCg;U|KrI_AHT|!<5=zJrwBACv5SkabGjOJ0ZYyJK&$*c!s=LnyD~>rbSxb#k9#)63qYvO%#Uw0!rZ`CD!a<#N~Id^sQM(Zw)YvM zF?yO)wqeTydRl~$Z4pfMOnPDFHvwx(TB7eNG$^)7)F#p_=WaNS&!{_9W7q?P1cE(; z!AbE2Dt9jX9tHNjs=jvWL+pGy;v=^o|A6aZ++aB~6e_A#PsL@og7oe3wtM%u< z-s1XrB!$A^w7xHjS9^CyM)@89uxfFqubS300op`VuxxrWwOHtHx9qQ!&Ls{L2e2E! z3W;M5qp!Uja0AjQ#rD!dT|M%EWh6xAgcPwQx*wHpN>ff6kUs^Q_cg zy7@YXeF3=;Jy-2L*&>TX04t5`cH@b9GlM%(q*;UGfcYrW=+W9AAi|j?DZXuLwnG^x zTD6}KOPnOaYH!HZHp9c)SG(dcMJrDV|MaA_z z=G0uzQ*k4^r>@5!tde(7J7Mem`UZaUre}G+u~xs2y|CBQ2>4+bY_G_kMa+#%xxJfe zZrDRDI1R1-dbX&VRqkOtrIIPLXBT^VLVpiBW$4=js@8(|IG?EUOn*khn|J2*tI*CF<9CkHrs53PP$@&?{5#<}SC6OkXYkHXuGf>^+QygR5na4x2J(!W5Yn(^cNn$(na&Rz$|?3FwZ$olU5C9v!-t(1_O5CZDe!q7H4ow%`B@*TBa!0bU;7z( zz3Ny?bd#5LRI_S{wW7IlM~O5?{kia|(wh-oWk!yg6(zbkMs=5JRH37l`d5@_>@}L|nZ1WmjJu3jE)o8JaOlJVnD|KYh=n#G z-Z{BMV0H<&%=oY73QxVp-y312?9sXaAjIImo#T{9PPg|#ZNmI(RMr);vFq5J>Oynd zJ8I+=l7wap#5M8@K2T?$btI@O>xn4)bphXn-fOx8=2yF?cF)Xpx@TpfJp;n&NDexr z*Z1~5Y|6xQccefRs>*GSIJGQYM%5s9VD;{#g?G2f2YAaagLvgM_NhAY;ttVOZHyCX z3B%?FS>sI}b`}eHC#kpMMOI>)w&-W?Vc{v?MKSDl3RO2AZnO3HV+8d@){uIHV24Jq zRU_a@&bu^`VDFsH9A~BLaxC?pyhn&&IJe~dzBv?o`lv~6(H-o;qa1zh7Hux|FQCG- ziZ#07PYL!eJw*p@a1hUgZD7XP zUpu1DwFFAq9u98&qZP9I?wyoVbP6$<>zTveE}b=;O9;JPS`h5LKb_MzCvy7IL|rac zmy6|c$p*v8Q49}1eMZe49g(Q&CW(4=`%orM6wgmqZIVQz+PkoI@DNU&QT>ucX5-`3 zA1rYIKWr&ymU-ebsGK)B{dcu2NemIE)u&0K*JTe=G96^(!+yE#P@7tSaA45NBEI+F zVLG$i_+6c82uCh%uIRmAU#VDnNb4G3t1-)U|LsqM%9(Wg=8!FsrO6rWij*@SN|VzG z_72~{`1wB@#^bu>h#Z|ZmZ5nvfdy-5}SPp-+aK34VxCU0=P5-SaokG7Rg_K zQzK_M+SKyEm2)^=Rv&G3c+`|eBHb~21$@o>lp{qx+e>X}BpRt#21%D(RH%+L5@;3I_h+S&v|D#8mcZ6{@yqY5+h8yE9|2N1wNB&HQ+oF+k zUb*+}>hnr?{>|^Jc^jMw>f8RodF6ud0N$SuPfsaFih8__h-xtVFbu>-CKqnc5ZMJH zL4Dd-s7qJy&^IBXVOnlVMgj+#mh|P^d;cKLhb6I4FBXXjYD6=UF5K$74DfWG08i(k zW}<6a?`*XGTM4CEzM0}GlQp)pnp`B>`j&8ueb;cTrKkW_3uvC4#yiAM&wZ>-o+57A zo@hKpd~oSaW^3dr$|usi$rHHQA|7Nomeg>r&Y#V&dMZ=ADaw?$xo9Up>W5E3?R7kB z3{$tZ7XdZ5rC2QTRjWm!o#U>4@ZI_Z(NL~9tL82eL)4|iL=O_;lUc&;>(Uc-br@kS zP5xTTD^pdP{FR28s?ua$1(@Ybl|D&?`b?F*zBJ1h8Z!>+y> zK2GfRxUSLgDGlpE*B`!_u3VjO@G!WT9{Vns>7s1oTC*|#VK!l{1^<~VGyw&G;O&yD zVeT$WJq+u5-mDyk<6_kdGo1a^fx%)!{ax1rqskdG&TjdjN-Ae7n4$MB6A71c6|X+` zHa9Rzuin)(H*k~Q9@>y>=o3(l+KZ8nCyab`YYVYRJg6G36sDTnL5z*?-k%72v@1ok z+IMh+-Z{rue5YLtFPQZa$!cOpk&DBH12K7iIu!$xM}&KqZq~8ta5fw)Hg2k)t~>0qk=l=Z)406hQHO{{{2=o4MRJpTYT;%GO~)$u_V zJUZ6XnWc)li_2pDIneEjGPa6fht%WWiA0()A}{FzS&yi-|jSm9Wi#-;L+Nw^T$cVfPo3T`vJdxHxtGm(%l+F;>--p zz}DI0d6a7<=dii(*z1JO8phU9?sB;+o^=}Tqv16g&e!lT)o_e>T^+bew3ab_)!D1W zLdOqA4y)%U+w1fcZ5`rP++Rx*qt%Ul#L(D1)MfCkbgbU$C@viZE)k)|fACx=2V#`1 zPCbBY`azoDepGM%LSK`Ho^5V3}!`%`lzpHE=xcmV&l5i*6x4BgtO|(=OSCE2S>=db!{DX8Vk;X z>m}29vbnh>^rvdFS;1^9UqX}3t(p4Z$3E_K8Z1hvY&Jt`Ujti7FzrUcA8;Sw5VW}~ z4&F+HWy*-PGSQaLmh*sSWn_#Q^& z%_t+p-r>8r;o6M2Ao>z2U_U$KHXfvM=Jd|0RlevQTcmv@?W;~#kB*SHJMQ0lR<&O5 z$X4^0JBCS5y1L@DOy_TE;EgZFsLu>deX+!wb&OdRrzz4K-KHm>5=@Ji zK5aLv@Ucm^>w(ZspDSGI@Ldk~pbgvx9%dYZ;qq_PFf91i0F3HCyCkR&IGhPEG_a0g z8mn%Wr8B&tvw9#~q(;lhWNizaYR)^6X{w!1b{5lBR=(&{Z=T)lVK+*OZb`eVNXV;)~=`L!)TYCq` z!&z>;eOX?r{Esf$0C{qlWl2%$+9zsd=a|!3V9nBW&d_q8B&x z`TDM7J<4JOV(X8W$0MXt3RUvYWMsJIfbwp}vXq+*(ka8^YQb@RUMYIwvIs6s*3#2g zOHbA?!q?S1C!f2kZ>V{f<`Qg{Yr>M*B6;s;%i<0 zX$SGgT*r3C1pB1+P7=);J_7ASuniYH3Bxc{;DMi^2cGv^Vc^>}1apIRyo2#y*wU>U zk$;?3%lwgT25OO5szqYXpA-qb@-{O%6MnNwG&1!lHQ~{*pS`Uq8r)kg8d@Z3h{6`? zg})g!Lf1~Q$bTye;gXOY6a`Jlc|`%nCPWlYmCL5hL&d;9mMKLsI7|DMr+KU@PN`Pi zMM~qK6f|ckut&YRG}Nsj1+FkDFlS6qfB&Ucn^v<&Q=@hZi;8?!0XOU>_ zc&V3Ee#`L$Z(7~!aF3td9bGaeEVv?K!h$OzCM>ujvh{w4wgdLy>uFRk5P)9Je`Jrk z^HJFE!gc*GkID=+dzE9X+}>7=Y%Q9?y<1+^pjN`NCQ}?x-#jLpsn{jr@_0~u)_t~7 z=7wEo)r$)tH|`dZ)MN)StiX{%3^MKez%b>4g$Z~&N5R*Bw_aMSp&A_}>ax#vS0;A& zICHvceT2)Q)sChSXiLyEj8yNoh)q=`Psqf&RrV#=wp%nvD{!2m-oe+`6r*343v{3a zX8@n?t{s)EF24zO_i(=|apt?{+OMi-sHUStWSalGpSRfMAK0R-i9soavln^ zf``ay`%K!51f4$irR@6$o_ILwfPili;~xc%jtIg9OiBh@dWpJol<3`ZHZj7!d{rRZ zQE}`8a?mY*q`tu^IWP5Iw1pmUVWCU*R9osb2+uzXeQ?9gl8^d}i~qroc<_p2@?anC z$|4cl;7($LR)q?dMEHtLjVThHGD?{IzGWQi>9jy*P&eR-F7-l@xI@it2Kz%Vjuf$u z_P6q~as2*fCvz4eU9g)O-{&x$k&%dNUg;4H3uH7Lxo$s#f4 zwWipIt<2Dh&Fap}q295{VmNT~iYd5#_k?Uz$L{git9d0Q$6l?rO@YmaQ_EE3RMAVm z@wOT;Rg82U50l)Y-D>Al-lV8k44V|;`Iqfi#l>Qi{BWO2mPdww+ZDVO;o)Za1f70-kt#ocR<2SXzTH?wu-~r3eV5ory^(Rw*0dI(X~y~ z*;!(UocQ+kA-4eIg;o+G-6_`zXKJ@}eX4{a81S9nI} z4^+Lmq9YMI>LbxiO_?ilq-w0z&K1jDE#B4Yu7&>Ap4+?KDh@`-XY=mK>`vv|mk*fE$7*M0Ywzr@_OPOMyoL_LR;o`J!6=zB+3xg%Yzz7tsY z;oj~0?-W}cGAeibyu0C6h+`{UyMUQ|vU)TN_Q`)*B+_ei(4#vzva?FHbO*n*po5RK zP{sE`2V>q;#jD_Q#_efp%PMF#8*n~(r$~_%Z>d?U#eP@Quz_mxvf6o{)|vZ3XTtN1 zH&x^skO`#Uzee#-VK=V`g zs+|uA_+_Ctx1V?b1j+$&quTyWxE&?C&Lc^6|EY@q29ku7ktFT?8%WaRRCV@mVv8#` zOp^NNshw-jVKXko~Jsl6Wwa)c~n?C;d=hz8>(YD zu;(=N=43hO-sdT*O$Cf(6ByA7vDy_Ca_Wfl!8U(&!o%~IyrFil*9d(Z0HKwlc5Z;3 z$#AVV!w`k%U;BpIvN1?mGqr4!NR&fT)TT`^V69rJgPX)zo9<@n%)^k|B1I)^7R9o4 zidwu`wCU0!Ojz(at?+{fJev(K_uxO&iOn#^$d%@ghywXrBQ@_4ut-U7Za?^lfGbtQ zcB{yxU;BiB zH`af+Vtbpd(5U0lEBK&IRXi>3Cx^RxrGVcVX|IMMlHb3kmY;x?#NI}->cYh5+9*4z@?-Eu>YRxMeD7IWLR#!A|6g+c41u% z?g-eSgkV<0s%u|`W0XNT4wriE?$}sW_Z}Hl>mInMXl^{9*1sw`wS1L}u4A{;zGdT< ziIi?%3z(Ym{Hn>ao637l+@J-T3!0TbZGTZR~<)d5wMS=C+$*qb`mja&?CYX zaSU#XsGK+8Uempc9qE@>KfF7}V_9xHxwb=mn$km!)@C&|1)TeSx5Gk&jv+p4tm^F% zjX>AxyjLepcIIPkF`M1tGIED|S&eUWskvz~R*lGoHRPK~s4*+JQTyCMpEuyz6_DWC z70<}&e#ogeMI*;V7=*ho6YhpLUk)||)DagJ-elGSRL|VKG+Q@}Z^7=ozDR>bqtth| z$Ofw4lMzt^!>_>(y^>85SS7=ofx{Sl_a99a4)Np+EieG17T6dz6uFTZh}Gos3H6Lb*BMmKM+j)d7Qb<#{~-WPcucR09arh6I7Vb56s(l zCCxJ3L;d1zVdVEz&+Qz^^=kHz($CjH(^sQMyQo5nlL!szQEhHu<{pmM*@Wv`MKcfR zbenMQP!-`Nhd95AaJW?jp_bd(8)NlkKk4pyI&3mae?f$Z@c~i>`(teHq(cOIC+*>M zkYSX&QdRzKWCQxX0)CoG`Qv0tk3FE+-efj#u%%8ddnawC*k6I|10~Sm&0vR7O~UE; z;T4)HSB-F0&6F3s8k-3^W0q?glk=%9vud}jkA|6cIJedCX6}=I1m9j0d-YZ;-flr! zy~&+xQw3DqE$U;hBdtj;q>l;F=OI*%M+5sbZyx;0#Ul=K(_+=PDWH2lfoo-7=z$BI zgxW0!2^@N-@ex!)k*}dMm<%ewsLe2yv429z+eNF$A}VgAz^OY1dwy{mwSAOe@8p>q zwM2E$5_Owag^k=$VTaS)Wj)84i?k}NV`VPPXNhtK^p0 zuJop^=m<-(6HiZ#gP;f3*ZjKS+nsU<@)6Xq8 zBmXavo1AKL)0G)>@z(6WmYY7np^K86!zmy)SCHJ~lL0d;`e;LTpO%}(T5gWhaMYBW zQ#$>8a&wyVYsd|uMY+*-A|Xn(+Eb^i3+Hg$Q8#0?1&dH`!PP=vF5xlo=?AQ8-xW0D zv>|KE`DRmXu=;8*rKvVpeYM;*)%L0{8%$HztGXMgmo+I(2NFX2oFK+6Z=?io?ak;$ zom&8ZeC`~Ei%mDI!nEPY+CwbH+2=e{Zgsv1}y~{)U|DXU4 z1`b_F03W&>&bPL{90A8ot-x=`IW_j}2Eo;fSpi=9lm)V@+^|`FQzp~o+u*g&myLXG znW}}8@7CM5SH)I&xbJND1yhd%iun@wvLx!#o_=LJO zRn%>MPdX)qKF5Y@R{M)A#8m$y*u*+@%#o~Wo3Kl_vRGuOw=!Y>+FaRLdAB(Ft3#Ed zt}hV@T(27d%ewg-1l#wv@OD`gHZz^eV>2h_!>mxA&K#;pq&RqQrxTO8O5=z6x$tKQ zgM3C*I04u|2*-$nH!%Wi@FVyWHgt7^Q4|-*ESg5`XT<%hxjerA(izL^YpS9AqK1;P=|ZN2_b6q;|raIuqCd2fa|%$dR=nER`tN;a83^8@XDg>319VWbfoso zqhhFUje%7Abpuq3Zx?ExkJ67-UgMj7Jd)-NY}+ zgP+QLCITO(z^4G)h)bm1KPHJ4o-3G zyWj9V0+oeV6p5^wYX8S}r>52i%?@jQmD%wbf2{W0P*CmJu$^D+xuKxeb3?Y)hl&Kr z>IVE>LkM^~c+a`i{Wi`=VLls&>JB3U0Zu1ifYW87Yf0El`t^3z?Q)q=KRkW$UQqF} z6j{GX8PvZBFSVI-7F>ZJqh4Mt;?;;~I0isp^~TTLIF_f_*i;;+7`~OJ@%n#P%wj7# zR2MUKcy~mS`u)nNTHS0Z>q}C0OjCbIQ_q9y=RF|2XHWA0ycYZ7^A1a%hnM9}Y5aGae z2x6-G*sJ1F4QElylP9%cOP~(dhck=EXF8)2?aBTgp<%a`2d11m3138Mm^%sI3lfZdiq6iUUFdOh+z&z*C_Tlco_{?@(Nvg;Q)2jpw16r{x6fBOgAeGxV?EgIx&69cafxwoqrwv z9eDrL*}^8gOhD$Se$%27eW$dNMueT9_X62R@kid-yT-v?=L0-gArC*o>9P}il**N@&xKs@MZeZ8s5d7O&+G{b!^?lbd*Gxr-_+J$g7Y! zM*r3!!s_s0c*tPNLRd1Oays5^52x_gM>bO zzy|F0#aOMAU=4#-Yc^2@(>aX@{KT?`ZKJg$gA??@4t6dil%*uJGt}M`_>2l|2E8nZ zv|foeV-oi`_ziK6#?5WODTjuaP;7tQhD}UR!6C3ehBem@qjD)tdJ_f6Ii$udt|u6E z?$fwhah;8@dG^t5p$dPRkOUQ8%k-pEXVrt3z%4USXDjWO6bbOWj`m0e6sw163y}z3q-L|NkxUKTPNj61tu-rbjXYqp zMtS?zYc>M={L}?BZZ|abmo)CoiYTpdKI+37-G>#r5AaC`1T#+W4e94L3SGR>juUFN zVbcf1=K2ZLhr;-$sE^nM!qZsqi>@!>{3cIOKD@TqmL@Siv!TnzaST?)%{T!Y>1nZSS-=(Ez|71 zjQHt~r-)vrI}MYb+tHj7@Hh=;(CqfjxSUpObffWyknq5eM)j(U8u|D$d)Zf|Qo5&k z)HU?S#3s=cd%Nsmuc!&X5A5x7fM8sn!~K_lnaLE{uZ`f|W<#jy%>vEddlz^)Q=;JI zn5IXdXz-(I8V=lw3<+f^?dlO|u4i?1JGc|bbvNXo=%>sGS}g373(`>}$G!=^BjjTU zI&RQ;2w>^z*Z7Tx25sSugg)_ZHKk5OlrNE3-dVFehhlFFs%?1T4IB)584e#uu@Ntw zqaSsF3?MJG;_UH2Ja|EzzKs~t2ahHSd7Ud^EUnZ8P zQ-!MUR`u**^U-PaB8{C`o=N2 zA>TS)g=TaP6IS(r%ybPOBYbB0Bn=0NJX{2e%B07!(0zJk;^~3gACs zZc>?2K!gF_D5`>=#`#XYlk13A&z!W^FVo?3BC~vgX5?s!oyM`>)!q%Vr=w!)S=Fzy zR_b-UHiI2E=7&r3sY+gXcne*cPr7wjP*Lml*M@~n^xXqhv{b^cwVsPzc^Ap9kHH?C zi(Mz7*Z)IyWlXJ8Ulq=fF>JZ7Bz6tc?8?{ddX(XEUPRlUM4S49q!ie*#DLTyW2$aF zRh4J+W7;nb>2(`y!n0wH1A&JCFNqG-?AIqgRczJ;t2}|@T5R=+kA8y>9m3gDj}o$Z z{puVG63C0l*MIH&H_W`}){>HNVzBNr%RhS+^FMrhVgn$C7m)*2e=y=5OwIZ2?pNUv z%xWzc&>b1*I&c7);52x$Lu}W(zAwjm*0B#}hEwvu;`JRdZ^C<`$+;+bVL+F;m_N9c z^Vup&nyl!V)D=_r<-NW;oD#PnTdulaF5NX$^s{F!PDRVkBXj?TM*oL0M=JVloK{ia zQIH=~Klx==NkIyaMWsHS*C`^pFj+vOjb6iRua2$fu;ANcs>xX_l z1)43{i40x$90x}n-h;}gifDA*KcZL2BaCl3^N5b7e0z#WNwOOnMd`MRnzyABoKm_| zdDCN)ESrW5DuHZ8x7U( zOF2P2q56L+)0)(V^fAfoJ|fY)zCKOjjN*#-!bZIw(KWpoheNBj{SJ(in2st6KGBrs z@J!#b^w{X|J`So*UrIQAO^H7C&YV`pjq&Hi(xEz*_;4(>UabC!%?0nOUjdIvUH7FN zXLABy^1Kiy?*3GEbwst`4mF(K!OW4~rL!P6; zp>-M`t82fM6KzsZm@b42NNJ`X@8L{Le1kBuClP#=>?JtVj(~M_qZZ%>_JBrEl=I=n zBzz6Xvr`3c%Q)$WyWvr)b|~053G?eU6Y+yO2$Pdvr1C|b*{wC(!GsC{oEOH^E=I$f zHH=%Zn7@u-PrEd9auM+kN+^h^MH7PB+TBsVinJ?;w0uTUF^ppS31&~brW(U5ls>Ut zV}d7ZPqU~UFAl~eze@R@c6qw|QO4JfU*_>9zpr8Ln>YFGW;&rIRq!Ui!Ej5SdzwYp zp{GyOvBnYgYonD#E;fBZeeq&MR{zNfRH@2=_V#7}2_9@DEZ!{b2Q=rIF4W2#Ll18Q z*T=QYF7>x(Tn&6+YQPUa#YB`Jqd4d$A7`{3nK-BM4Z}+lxxD_-0sBrS9z0^h_#ibd zsY07yfiRwdL9qQp*qZiHg8yEMjJqI$B_>GB3Thx|{4U{gw{tmjVLHR*4C4|C`)BH{ zYWpQp+kZs7&}B5LnsD7w*^&{1J)sOIE&X6y%5JD)4OiHlZh6yFhS>vP>dkupd?o-J zKw*XlaC8GaFt~;T>mIOA#qGD<%?;dMb`M^tsbd`@>L>O93^?2$Jr7D#F`F@!m%!Fy ziX+i_Fc4I$_o&1YU80O)`&S(%R-ESa^(++l2+-AlxjAqErP$vA{(%tFlVg0-0Mldi zg1D$1tDR>s5D%fW7uJR;Zm=G$$-R(J_)((4x?p}9!KIN!6r1^4UnBWx5i?)wYb0L) zGYho74q+4Q*~t1|It0fE8rsPEKN)@x4uiRo_1Zhc2ZBWjo2iH1A#obss^KJpJsWor zTskC!;EB4&lZRkG!SKLg4u;YpO(`}z*aWdsnjJL3Ls)Cg4!T1(4PmwRT&8>6F^>`G z4+h3`MCkFD^}xpw8NNdxGbjmZ2XV2_ zvVxOiNGJo(i+Y(7&(_Y=+FP|j5zn$^Z*&ZW(c+DcI;5qc=_sRaM-=@&oLkfyOuGSY z;WAJrkZNq=k9G})?#7>(VR=A8!+%+$Zfm_saCn>}%6AD)Ao>-2^I;w=?+~_G-dWtq zRl2Y6CLVQjJB$$y+jjULW4GWzLh(iC3im*O`?>HZ<>T}GWfA;-O5@zPpAdLfsC^gi%c$nkxI@gDeKy`!AXd*v z=?%IXu+_?b2CasAjl#Fh{=cAJ3cgDEBlYUnDpbAt$NvB7brI^d0xkyrU#eb1gX;A( zY_C>Rui?-AMfHLQcVEhNbayNQjHF=M=T$INxljdjpn^5=**}nF8=C^hucg z^F~izDk&nIn2~Yv(TzqZU&H!tgFfi>Xc#>WA5zG^h$oNDto_cA zCr`T!dX3`A#C>>D_VAZ}hDUEuc&?^w_-beZnNxQ}9V1$Oe6O=X z1AF>8x&zm4r>T9glIrhwIXA$Ut~L<0}xS0v!@C(6Zy8K>E&}L zgCe~wP>gU!75|n7PC$Zv-=#n-3Ctk)kS1tx;B|tJX?P(auomjxye zyhFqDNTc#7aP8lDw+n&1^0o)I`g@DdGA53DD+ zOv5FCp9r3<;bN^rB^sU*K<1d`z6m;E5_z#^`DhJK&;$(A@XdjJR3Tr(V*?cg_tEf8 zfguFvYItS1&<%iuBT4CCBAU2 z3ERVd!KHTY*KY;k<4EE8rS;(fqd)UF(iQF0iM{YjQ6nF`;PxIo2KC}TcswS$o;tWs z9CY0q*8J$|&DY3JtgnjShKFk2Sg5h}I{?_WU!rb40FQmGi&t9?z-unc<5jnJ;4znF zscQ8*VwSx35>@YAco-=6J$7Ay3$)r=-BHbZS7h2hTqRe1sCK_A*1ArG{Vv9van+bo zBY%Fp%6t!~(tYeI(=Sn}|AYp^5iPy|qHaL=!62e$s?qzO zQa^+@D3%qgc^``68aNNdGS2$pI2*hQ7npM&j%=#-z6THWY19R>e_gfhBe7GyICcB1 z!y-Y%$A(?aT&OX+!ZTid1)mQ~P=`Mj>4Y!vF}&3CYaKP@h?pnedPN;P0!)}VRndrr2N9{Z&j!4fdYV9Y$=v^4}A)x_pGCS{#0~}KM;oINgGXg#)+3z@n^wtYNqyn2G3qK zt+V~?XJU(xkyF){FJSzqOxgbP7a~ErhK0%XE0?L%uRw`6*H*<}!B+?HJkge~Ko3^d zR+(SJk2mNaYLoZ9uQq)xQe|CB?fx3{W#8p0^&8+r{Va9%8z^6K`Sw}g!q~|Tm1_BS z@ZwcTSPy=FOda`-twoy?@Um8T{vN1z;!nJ+b*8oY;spHY$@OaLN%*mVejulJpM-a< z-iqG7|D@O{YFw+I_n2Dyy+~*oeytwP8bVIqd1ghkcxw=G;CmPvGkW`wAK>j$`Pg_h z??+%&uhDAfkK$~^VnAS(4XrOD-0I*@@SC4)qE)wlgMvg2-M;qU@Ixl@xI>-zwibx# zFYt)bu&33DU*N5(k*e!yc=7*IHTAR@Dib@a-KT+%C-YUeU&UfsGC}SB738YrMAhp* zAZPB0>WlvX|7X9iw)_S-Z%9&Yegk+)lp63G$oLa}wHVXK==`gb)IrQ28l`^5^a7pU zF-i401L@a9shiKhlU(mlPzTRI{gp#hz289xZ|S7={|?X3ZQiCfodx^&!$EHEABk#Y z0P1~FOU(-azRwP-O&GtPsP<#}p<3Hd1mM9f$2=H_G%1_mYkS*!OW8rt%UC{#yi3M3 zSM?%ff)n1OfypKA{g@=xBSK#43V(RU$Wn_VWXA?Ox8l<15c*JfMoF>L_^0|ugfttp zhMhyW>T#AcM^o%HUR7h9^1hgeFQBG=FUDP~rK%GtlYFruGaT-qeR`QRJo?TITyo-O z?6ZyOh!?i&T^vtrdX^^Ki5`Zt^#adnTuBM`O?dm)!N!9G!GDJRy#e6yQNf8BJoVd; z%*5~#+n9*cF$COb&4AcWH|KMC+!hYKGM|!>N9Ab-hriqcooQIP_T51p!47^A!|ws1 zQ;{v&4Wj~~2rqdqh0-SN-}kSSj9&D&jnHWfR3FurN%EV2s-J7iRJpH#N~j~ZW$lYZ z#vf;PRUD%jPK<$W_9u{DZ2j+0uZ~Q0JkbDl%^rqFKQFB-yZD}?+Qam)@fFVh!`zz( z)^vP<wuGuGE%7}wb6+I)AwIv~_mA)UXWrbIIdkTmGiSClXJkV=R@yX;FUM(H zOI`tpta^YE-!zSLgQl0f0uWi1FQF*v^kIb;(Nskqvk9nYpVlhh?;!5R|NV zW`R4M6C2K~nlm`EDmP*+S#jO^i|I<)aPE3^L}b;S46)Z$ysmj$hQ$qWUeCye+-5ag z=tL*@C>AL!V7uO<@K`{#<#E1m%;{Gdxkp=C;y2aex1~zek@(Kt8Nm-`+7JiwOJhi~ zA?t+c(A<^;iRX|!hb{^3%42(iuc^aaTjD2#!e(1i+v%>Z6O0OkJGLa+$#A~(gr`|; zh$=^toyO|)xO)cJ+Yz_g`tQ3AmQnb^be&6C4nj9FpIlNn_0T08@dXESv)5eMpq;O!d_Tak@$FxVIPZ^ ziY*({g(dclI@{rVMdDw30#CQ}F-zaGoYmAqxv7d-a;8Hydy*r}fLr!tlQ@NrF_lPT zhwj^`Uh>c|cR(8ndq)qnZ}~bzavwY&3tButg_F-1`mvhJd%C`%KiM#lg_dTT)^BIc ztKU;|0H8fVY0@qR)9&;$C9p;g*$@t2+!s8XH$X5nu?fSdqlQsyjh1a#C6o)4hL+=6 znt%5N-Zzunw7z-7fix$nG88!wBO6TV5rT+U9su1PxWcE7C{`tpCo=0u?EqiFt3$fh z1fvtaX?O2y$rk3Xm2KVs&ZOjNsv#4^!;HgVcETf#8L-KT1PV>zCnwU@Q7=VJp`sme zw-T-k2VO5+Jzoje0%sCV-jm^uGx4c&x5S&_w7G!|wTFXsZ*7x?V06J(Q9X3R-`WU? zE+mswxd0*Pw1K>Ig(z1NLCVW&mMb=boWBis-0(y45H-Y|e%LKRj0ct|d;~t8B!swS zLX;eE;8r2&;tDz_PeLzH)Ncy;Q&gW+A@%~fDT3lll8DbENcKgfL$^YKFUfM6pzHHr zu4gwAt-jaX4|#qhn1M$zX-R#7@=Jzfrl>|$C5m9hiqG&}C3eQDV?}TfBvvDdq{}Vv zsg9OY9)s1G>IA1-fg&W;An9b-pAb?LkzBk5;%ky3lG7gI{Ye)2?j{7+!UD^pA)yvY zup->bH1I(aEanvxL#y=RTOcoh_*;FSTt>NWTOg}8@wd4CEz>S(dQAd>b;&GPU5EII zXOSa0bkQhlVu z?9Gr*L;ro?W+X;uJ=4yw(>&$s6GrZZcq4L+qQE@mUNvIp&O@)9l>$j)a{LB_2BK&i z2SIWmNfZxaLSPUkT-^)NK_t(LqhA_d&(Tkf5Y>Rhld(6TpaBBB@;L-IBzMFpfvCRk zk%|Jj(iV)3NEDfeyl;fv%D)21mIA@0IILhzOGZ$st?NhB-ClDu0u9VEq;A7ET~*Jy=9)X z3G7?o%uBl!SSB5sR)^>oNcX7Ckllh5h^;B&EzyC^Spl>iiP2KEQZtIM}yCsoC}+#Iz#?B=`?3%wDs2$QJYl|@OH!Sw#1g?7C~4Cq{GP~ zHM;|e7s$mUyso_!A?ib{>$d@r`yojn6N=QZP9#*Y5}DdsrFxM$wj1&~Yn47&ibGh9 zB8cijLaYGTz5zhmZpd7M!|(i-#DSq+sVhPeiy*oyYSWPe;Yn9yPXB=r6Gnnbr!J5l zhQpN85jCP4$rZfAaEV1F?{&}Oo?U_ZC-@X(_aH`+nFWPCND^Dj&He}-8a#4Ey^w&@ zdiEObk$UVkT)OImz>iVXJ1T1C$5emUdI9-8kxi{KAS)b4z(up5C>+`KQ9X!=!0#(6 zLvSyoZ9qLpr{S(G;MN;uUN1)rlOd)z@BG;qTBQ$62cJIwgU~1WLR=s0{9}>bzI{>d zK7S5TeUVo28ESrCT*Q+}IjZtGNf5jnZ+tV6HVi@{Wt;#buKS7KZitH3i1bf1sX{)- zZASWHaKphkS87xTLI;xwMx!-@kw*JP@EL+bS@OT&GnCvRLFZLv7|F9CZ9SJHj`MCY6BY}$aRL(4+@TKJ+AX>6Bf z%fQ$7EC=}hjc4FFyq{!B<6w)8#5eNh%7#(AEyeL+;Cv5vdOn2xt%wos&LS0*PyC5t z%usmLiuhNwIH0ZXjvWVHMA&-6LO&u|N#xn(#acS^eG>M*UZPXh;yhWa)K&93P|`UI zT^Q27sj2ZYXBZbyQm)S-RV7nKzzg=gAY)+D>y&}%r5RXUub>&@S%^bVxbP<%s^hiC z*(5`BoW=)(N{gQ$x*6R$-_kn5l{v(}?w5SwYW|QHTgC&tswu7$JJqXV3rpzOQ+}p71 z1}*zjMh@BF3IEL_^`}@iljxFWMHg&$8sCL+#pjCY3QsoJvsSVWg8%fp45n0#uIo7c z@C{#9frSVZ?uOO~SL2#xx4~6lW)zi?{alK2#rZ+t}U^HgP4^u5N845?kE1HV&7jA``#Kyc7nMBX``HFiEyL?X(FbhbB+o=xG}sE zUH&Mdk6jW&2p=|n4)qq2L-3^}mbYr&Py4jy9g=ACpw1%FJAhM$wmuU#?Mxf=P4p?* z#0sytVP}9z9Y_E^tV}$V$s9MY#blJ-EmnX!;ez2ENiw?O?z{vygY>fzBd3Se_mi9H zBqNv+1?Lwfrbe}Dvsy-JYA$6H9@Ou9;>UQtnbD9->+nycXU&lCiCmL%v0j_YK_EA*~{SMXxm@mLJZE< zyCxCeR=BT^{uy|2n!PQu$~2AZEc9f;^oMC$Q&v413~6x>-gGBF@cxig^=*oUs3URY zBf3kmJe$a`exh?2_+lh_xT%~(?3-zLuG0Xe@d{|gVYq#TRt2T-q+3b6&v%E;3rPa> zNFv@=C_6EfgESN^D7V()7L@&1++;!7RztZzetw0r)>}EsUT`LfRD27{J`CmMZ$P;* zMS0egl02i`-oi85X5|CgW^MHF()5-#`*0QNaf~%}WEsp%seJq}VOOLXOxiR+Hki3W z)pikOgCk9rv0raT&48#>(}rO^1l-rwO0I=ZI+4Lng{)7@26p`p`zt!)-wniAjWdrT zzGW{qB*nm59_#2wE5ezT;RPJ*hU#c;H_{aPE+@;U@UCI5Ga?6 z+&9>ojX}Kb3^enXKFzjnG+bLa}S7`i_4PU~4Uz29! zi!~6OjH``v&gA2C&i=8zI@ymB6>jbKnv9?`SUB~EQopTf23IkrnOwD)xY4D-JW&Ji5p5b8!{FdchhG_O)oI-1j?|{% zIIxQ(wWf4h$m?sqoP{}j*fp4Yv0NpJpXS9~HGCZWScW%0BFjxr#&r6Sl^av1qt^b` zJnV~7g1@fjiJI6HKO*bLGidFwEI-T>H6~4C^|CV&rY*fJ+HyPkn`4j6`k_V!`m$(+ z<@nFys1O#`b#STFmre#!o@!G55X`Ia1v!W5q$=64wm9PF;7Vp__X$?AxeGj8OFF^C z{^-qaV=D3dzs6iY))%G{!;eua@ZeG7@Qq@omgaEzSB?`J!K!t*DxWhs85J(#Fu=Qf!VpqWEG}58`w5hzP*YYCuU>b=L@T7@7`1q@%iZ9W% z6U1!8RQlNCOGwKgv+P!4tMG?UnecaVzC=5lRviVesvCG8w%lw(xAqLMX`I$~N5RUC zq+9z8_7%_W3R-K^ibbj34YmX0CepT{DTVj{;(MJbdpT~! zZ?|Ii!k>91*Hh++uyPaWtJBw-ib=_U@|#Jt+jLq2S5LU$q9mmCP5W1Xe)WXvuxT@C zC8q7g`}DT9RqQNRV%MDj?=J*@c=lc;cQ`kMctY$Kf;Y4%hbIQl`=VLVz&{~*3!a!1 zIY81@+}B>v2l8n+yAQZ!k|?L=x^@-luUJlTdL!~VVy zvYmuDcG1B(3}0<0-RSWE1EWt~yb?lo{14koxz3QZ19t=)u7;u=xVPiB5{h<`Jh3A# z2+!`qZKi<_!G1U59o!e9cH>5$zQPuZ(fcO4f7E}!oQ`wiEL>mS+l_N#3a-)~-05rb z5Tf_If{)I@vhaw<^&!M%A@SC%fUGPM;h3RobRlfrP264dpXXZY_*B*En4)4Gzdca% zRgy0_-ql&Vt>j?zpMx!6p6}DZ`0htA%O0q4`|(VO%$bCDD-gS*UDfOZBua3+p@UnG z!_|L2v0fv=@IxBh1&0uBtp{-D5FTS?#X@{GZs6@mh9}u5G5RC4UluaTT793k9ujkK zb)(U=Cfv&*LF7gu_#7s|UKe{{->{qTjLN$ywj&Lgy#LSxVh-aLYpZ%{(P0uQllxWF z&|LgL&VH@tpFnbvD?1?bBr2ebJD}hsPBqT$0Ob^hr*?pmhPgW+;uNMI-T?`xaHsC^ zBPgKZrX6bVX%Z)R4_fu+>Dlo!xbb*-KZNDszHYa4NXXOXW4>o`<8g@$A!iZvXO+K)Hx*{otOObP->rBa^y=@e-E&qB~?=LWJJit`=UR+rJ9} z!0kue+jR6+i+&{bqW4XBbDL^i!#3U93z^pt_0Q9w;F{K^@ddc!oFNi`0z8Qt?*(}U zTBB-R$40&QOHIE{(E6<4cQyM49&K7lR1#df$$L5V$Kb4&tRYMPM=t}bD>5$wvtamb z6vagBjnsz#8TPxHcN_QBt?I8*s(vSZ{STHv#2w;qRSc)wCD67i_QMhg`ITg``l&Yu za_u(=zWW+wm@}`GKME^lxo8Q5{-yzret%%XsNW#@ z50ue=7Q>T2un(V|2*LMo|M{~xNWX{M&dEI>>OQL5Wj)mN`y>QA!53(#N0N!t2uOH9 z^2is9A>tus$ovSBAHGH(?}qyiiMy3r?7jx<{~~Ts?@x{1-TuU`zwIuh|B1lsFNV-Z zs8mOO1WAux19aT$fjTmv!K`%%uO-a<3zg@nyO8`B>XC}e!R;{u)9aD;9GL#|&16V? zjB13E>SYzNB}jiGu-13M=WkRajXRf6Ba2!WtC5DCA?9z?1#?2xq`yg)Kpw?G*gx2l zBHY#df5;tyc)F|E&u~N`gFy9vPM!#4#Afg*!X7esGlUgk*@2rOj)swF;z+~Zn<1B` ze}pG!MaZj!dl2>#!xo#>^p|*i<^5#ooBLoZL7YW~?uJ}J3??_$K#?HwQy(B=6|u%k z0lHOj_JngpbRmyj;SLe`iAF0?oJ=M@fNW8`LsoBsJR8x6O!*rMZNx_KuOv1k+dl-O zEXI*GcOYFBvq|kcYP2Fo3#5sb+l%GKlfDlj!d6TqKmMZLu@#dA;@Ali?8J28In*yN zwjxJ2sxjq7H$v9Bs0kItV8MIyqBl1vrztilYbQii68%Xao+339JHfe1Vo!FKHF5{G zYV-@ORs9{XRc&2fwd$+`w(7)vHOx^&E06S_A>K)RA|64Ta{9y=EOi$BoIFOCHl50S z0lCg%7TMng;$6g0vZITd>mn)w*}Fi^a}^T>GWRQpa>tZ2T_N3Fw4MW;p9O^v@rY7C z2N<~$d_2Tp@g|BGlh>slq6f*l4VfNdCh3GwJ;g9Gzbj;Vz6R>zH$XM6gNnSG^qOT_g8?i@+(~N1+vOw5b1IovMY-T zPe*$ZOm|F&q5v_9wEGpJYKsx%-}P!%Z4o=y?gej_Mb^1$ZG-%} z*twFC?)9|JwV@u0;jL!^oNevo2{-DY818g}?UkZHuu74i`B zjAAqy*$#pOk)}mAAUhEI)twt^d=TwdkJEU@OAlzqM$o(=_Cnis5YrG_oODAiYA7ZN zsY~0 zwT{)gx#%J&@Cy-pvGdPu&9OoA@2bZ4MI0lBT!)wz$d((GAfzSA%#Ud9zQ9d3!=sjB zs`&nNJX3z_jrN|c#Mb0O5fmj#!DP}L$ZI7U-(D=SwHQM-V2Reqh;C@!;3a`@D?Wg6Duw zJ28tjZp}lvC23OtZtX>*6`)#W0D3kXlu!*&PAI-aE)_sgC`!{Rdx-9UJfu{A*#Yg2 z(2s!6hnjbSksZ-83Eu}u?uc5ytQw1128V9qO!CchNa}`}!YY7UckKCt-iMg( z;vK8=-}UjO&VQ}a$0vZ>N8-C%kZr=TcR?GpAbb9ihO_U-NWlqLA?jnXh-{jtM)kzO zkl4(Dq;N$3e0_Klj`$5;tA<60cLeVWZ|TR(*kkra$nTB1?d8%}#vW_>h*ii3k0HAc zCODUWW#-YLFLvP-KSNlYSXsT*SF9$GaaUC3Q_)8t4Q_&eB=)TM-yteeOmdz|E&jD1 z-7IJ?p^a4(B47UsghpXT6P?PRQcu4zx5)9D&zJni37$E*k3T8pnKvayMHiP7W zs5W{hsP>;xGq%1>A?9=JGL3`O{Le*uK`2yz86<8X;z*nySTt6MgR>hP93pc2*#|>- z2l5$;fR;Uj#G%;umNOuCC@Sv1FGIpGWSDt?S}=?%@RXSlIvhFqZ~&waM={)qw>gH3 z`Q+cHkT(KnQgdt}G)5dR%!2F~98C2F1`j5_-Sq04>D;FD>d05Bt4w3DzyAZDQAo1& zNV4OjkcCGtgA$9#%$*7Gv0{wy7u=6U7G?ND$Y^X#!D=;WwCFE*|Bg=+y~)(5l{ao2 z{X0e+NZisPYAi}x;vz^KTXHD*;h_NAD&v;Xz;U7zNws+;h-b&4AO_r2Q4mq|Y%i-Z zO?3Ls+hP4;VbE3PWt4j(;&|zzPkwR{ulfwit&y$bk&$kSEEnv zIt`-DsDE!G8PPPiCFy+$q9&ncWFIEuho+a*sL42ObX=>0ES83>Prf)6{HJJ;uTMch zH}b(}Dsp1;bcmZOw!&KiSyRP&LVdVBRg5J|Z$ZQ~G1@&lpIU7{Wv5W+hk%8$p#q$r zCN}eRtIxJxwZt1Ne6`OizQbB zpz7LP2*w1Q4$PDZ^h*%KbsL*E_;zy2LO7Km4kdQiA$Yd<5!{&L&`ey1_;xwvPz(N; zE&9OsLx_hRZn)BuCE3s#>dp~sdADWJUigjf7n?Rr)kxDBb@gOFT*rQ^V_x=nZcDBI z-giD^&%vn=Wj`8?;(g99#UO`$7b#OtXyiNm0xBEP8zX(M!)`Agm{L`G^dcmFDW<}W zxnjd|&v?$!_{_vo+p0YaRv>L-`MD1I)ZmG+eoPUg(+({jz~XrP%fga}vh>v?v)3q= zkJfbo;lYHtqMwYWA!xc%@n4~OBg?%4(>e`c8n1{J`0afvHpb{AJKp4i%In1% zPOl`WBC9%F#%(CY7aaEp9(J10pkoQx+|k~b{KTF<456yY4*fs~umi6*@3$Hl|dhFi~-5CG@R^Uh@M&8hv0-2+%As{>3=O|G3Z zxpvg#+Dl`19gW>9-@xv<8oM>$p08zh_fqUecIeo>AyzY`#J3e-k*t%$^$EiVrob zvzpB-xehYL4q+M40UdnORzO=qRG9RKUP*aBbLR0^r=o5QKx`X7mhj5wJ+C;{X*&O2 zXDurq>oiS^XK3-MT6{Z;o17+S@x3&Twm0sh46yn$99SnV6f@!62SPou;4hrx)xvZ8 znTtep00_T_3qBQ18+j833E$(Wi)XB}gu^gzv3Q2$Oa;5|#9`txEOz#wjh9dk=6)wm zgf2^QeT3(tFmkEr+Q02RI)-vA$9VBBfYwwDD~k~a`f$ipROPS|x=Zq|V zi6w)_Gw$O1FekAQn>LY7x~auwt;k{cVwo5#F1X4MNO7iH{z7?Qf*!|D&qg!jhfsbG zzWa9>$G17?-5>P>HaFU`&H8R`T) zRXv!5JA%>YAwNlME}2k@=xc&ePM2A8ihZ>g19fy2+-ro3+K4zq2ec`VGcdz_(T;u8 zR#F+Be}c!g|2%>$z$Hm^JSfX?`m3KtKZmVr`7FC=?Q3S)d6S@MkLU)UuJ|989^?rm zuMp#`rrIY<)n%2u8ZNFBRnct*9@4DB`S6AxAa51UwAqK%_+j=BYTjzm&3dNYy%b<4 z{Y<;sBuG!jnKlK~Zw&&f{{vbTiA7G2b$dw9#y}=gf$kwuYB=iCPeEkLD-3ZJnu<)! z|6Ywq#SKOB(+$X9Cq@XdP(MvvLsopR=B0_D0y&%mZt1vvc2^Bg7n=yA_hd-ifa_Fp z4e~bNvb5g!5S)Ru*YBl19}U?fghsHbqTt1@#hJvq@MSQmZgtX;2kkd%c)i?+?fdZ@ zglxiX)2ev)XA|z%4etgKo3TAZboVC@z@E)wAPJrbcQ%U=PTO^J;8~;j{VDzTs^tuL_o{) zAoQU4#7WYzdQfRNR_RS9K+z!$MKv1%wavrBd*qe-PvD;;rjurQke4GG9e3*hSA>d( zMRynd=Z!N_gdFyYF3{yLiV($b0IPI!YetC4Zf|GWIkCpApAa8?FsB{3Zgr3TJV&?B#>uI>XB)TV_X)$f70BXH^zu zLmxPGM)a&cRoB59KM>gEe>%INI4DTov%`h@b{S~fO+N(TIyw&zLt0Hxea?!x3OT+7 z?pzcL9c^`jQXYQE=Up-Q5_Uy>^0l#i4{Xb&|6w3KxCizniWgi)sl9$u&A%)b z$zI*%LIe@Q;D=ep=lMm&SO z>$rs$xfMchpnh$fs3zW^XGuX5-mKbc-NJ2;foMU03+wxFI^4OXskSM%aoeNHEl9qN z+aCAv1ZK@9yo5?`=GFQcmD`vf)byWmv?D#gQ?q};Ei)&B&fk*V7p1HP9QEl};p<;T z-*>)V>TnO9{EFL?dN2jU-d@dicySkXOg0jkolqP&0Z)FzqYgcslrrFqfnR>t;P4}d z6HxF6o@DCb3@i=DD!tKYD7c5ZiXy~rYOh|ecnT*V|Nd(lSFJQKD;hqAYlRw8t+wDf z&dcMF{{YWH^hn(vs-1)A6Q;yN*hAbfqS&x&+*=;vVN1brD0qk(o_<~PCrV~Ee)v<2 zvx2+oO>mpUL*k>7aPK`rxJk#s=P&F&dMqXkEyY8t^iHvm{OkWP(&2$Y!sFMFvr8HE z_~60r-^iQ4G+_~H!{5J&fmZlbDh5!lWrcpFvLe)jYk!L4twg2Vo4~H01U@fIf@Pv2Q5v^ActbXC`zG@`m>AiFiVuWS)Sd5$D$PEtk3h|NC8In za&m*Nl4SGF>S!`f`XnixHM@z7MpK=SL7Xh*65Ch^QKT61?50 z7yakeX0%F_B^Q`vBl&S++DPH#zi;7*4IW3IJqJcxDVjX{R!y>%G6^aA3qs3FMsj(M z8dqM5kV)6S)I0~tUho#jy;v1eN_!HQQB+7Kn2Y_`6F*!e44l52=GdTA&@Hr<6~ffP{KU z=(*&Pn&5@$Wf-~azoO<>M!;h25@%hn^$6zArftpCJ(QJ~q#N2&BI+8Q+dkSOqx(D!(szkhTS2KLP3cJ5+2bT@uc! zzqFLx1rk(8Eeesc1mT&wr?s?35mF$$gEWP>)>iX7Na+#-Kc$Ogd72>@PIr+Um|Lam zT_na0`>x2o`d66%3m4TrU8PzIaTo*zA4`d3dM!1krxY)Vmt%2s>MglC-N-L}tiJ6U zxb=~u#HI;oAJ!i;Jk@1Lz6QyCu#;D83k7|oEYj?ANa~A9I-)fc_C?;T3Q-F`!IqKQ zE%5+fx+9!aD@IAzg;!NNTq<4V*{k5zUkZLzWq>Zj(W?;GUkW4BT0?Gs)HA(5gX95H zvhY2$94O_y8Ssd*01vnd37;Y0@ogagGbH=J@YUzi8WPY#H4c(|1ff9f8ZG@JpvS59 zL!=I`D$*0}z!k_Eg3Ny-(Y9X!`=KZ$eyt&NsFX|=y$^SWN+EBT7AA2&4?~HYaG6^f z`3+Q~zK}u%;e@(=I7MtPd>!*P#2)?x_9Neh*e^dp^hiYPa7#!YiHJG2fRItxzspw1 z?P3wJEtfcAJqM`SvDhJr!vH84gM;+6(U3b9hnKg)DIABQ>WGKdaVRhQU|F0r{_O>l z$76vj`Mm2OQzn$9(xXgRU|l{Q$735i_XlNSS=!vkj3vIvheR`$aPF_>nx!cD?O1U> zO+#`lzgR*uwC)E{)63EbsMWDLJb#@*tLvxc&Y&}zMol4arj$Tpnn6sOR85^QOIj_6 zoys02XCo3nUEqCxI&_^Q{rV25KmHO+C0*dAZy`}?%v>p^jM`%6Bie0vMdY_g2%95S zhh|?%N8esuVj>oMah?z3>(#~!BzGd*Q@bvbx|LC(aS0A%LwHHz5D5iKq$lr6kZM>A zZS;hbP%%k5PTqe{%}QtYaEYHt1rHm{&|*Tyf9vfzWi6mDW`tK3ysl zl3~OKsg;nVZrvc&5^Z8{2)OT$t_6OE3-yUxz5uD5x89X)DgDi>p7KiPcxx4tFx8 z80YRfT>tBV;LU=olRg2WA#ocHCQR`xQ}8CvHYtca*{1qzN5$#5T(?P-0poT^FUf$> z5VsRMT)jSc)e1)#N4z<<3)NuBE*HF8oA*rF%}3hI-6+k?&VtV#R9`nCe2;XzQ~|50 zY-Sb~c$UZKA~>?EQsCPQFwN3#FG|VjJl?6ts)zPUv&-l#teA8Fi;d-#k;=X4Q#8i6 z*A{XR(d(d9^ZbB(@-yrWVVwOWqUmbZ#sLiuGY zBp=i8J$sB#cM1<{^tV`$M&(LISo#e%GxZF$4@KWpy}ipeN^HW&fSxGQJMlpOyZ3do_9Iu)v;E9J|PHh)~OtZjRUwh}axn4+#o~ zf*){2QnHg<_1U8HSW!1#k?;?!zaR~E+OAU~-Sf}^zZCy=K*oFoR89l511{!E{hUwe z0F}?f6M%DQz2EA8{Owh@Dbv9I>M699wh;!w^WUVV;_^{w zWVsJtlwjt)n=>@?UUm8Jl8eAnE!MhLA{25DDcj)$7jD$6_oTt-4x;OQNhRG}RHabL z6Ue&DxOa=IsWDd}@gY)zR`*7LVSggP^~d?tyK4`6^Pn1dJd$dVc0C~E5zbYff&3S) z3n-Lse{uDh_gGV(+y3IiSHWKh<>TWJ_81xdAIy4;o%D4DmiYct1seU0YhAS3$3jLJ z`!_PvpOy57gRMjdArJ2VEnOnVE7i)yAKCvmA|uSdS|oky2)auC`5EuXM|s!lE^`wFDfMM$=j zLrB|;P+%wH!va4-e0jMH9^lqT3~7&$=uG@R{9Qp-$=wT(SrNH$6GKI=3y${k407rM zB-!J~Z!bWey__wqgs&>eTr%I>Asi6+v7?N)!U*`=K^{*=U4R%zgfsL4q&v!qZ|4k` zMJE|IcaCbZ=q%&rPFLI$m9xtz>w=XxISNKsIas(3gIwj2g(Ubqgm@zj z0?z|hKOAm(%RAozR?jL3s}9FQ_yNvTk!QbasYl;%4zEp^T~U7rPW_HlDMt#q?#N})}ja4>KOkFU07F_qs6aMge5PBR|l^e@-Wn0 zBmCt+5`uFuf6O~X%UgFVgw@1&cnT!fl7r!1O?j%2&GX`O>MUD;laSb24tBbs8}>g= zEnd~~i}||r@@fC$O7#3;C}<<6i}cwiwh-RZR`wt%UqfzN{JIp-9^?agmQ!V2J@->e z;bE1&ejQ}BLuyj6?1Fr|uOYL&9Lga6(_Ze%{&Wb{{y?Zah*VgIH|pd#@+?%1>md7! z#C9GecalR%U?|+_ggrYTRQ2gB7YO9Hxlq&vHO`i~C^~W!oppCbk^2r@!!S4kUBhHw zr?om3%*clLFl5nz?vNaYa$PVFlx`UIn-4MFr}TWxrmV8R;X?Rq zp;Ir}mqL4rmX#lpQf-EWPys;kolTc5fs(8x4ZGj-LBOHKXJP6dCap-^YA zeA!lOMH-MH@>IuBS_`;|CEmuMcDcqW?O73nxo>Nh9y^QMdz$-p)Z*OU+1$6g77t(r z%zb-vc(eSpcz+(Bqgf5j9m3<9Z(TG0YA->KqW~kh4KoGB@y#)ma zEp9=Cx@hHv1#VR9?ag)E!dl_73;m7E3hhRL%% z*E7V>keQi56$?YkD5(2|+)Y>x<}c)t$nrnFkXvD_?r=G<4Hplydw&Mgl)^C|HaBu0kABxHnNvAxoLROPNc+W*FbN?yU91*Pk~6KfOhE2wWMo*RTM0{Tg zq))@Prlf&!I_lA!6bPFxyODWm5Ir5W^xdtHIbHTA_QxQ9I#ytN43rrd7mtB)2F4*- zjhaEVcl0tfWR@HwlBY}6%sKKd0XFUv-0?z|QejF4wZt3E*lWo7Knr{Fkeacj;uRnh zx12YaG!uMNS_b1}WTOULE}XfJFr{tRz8kggntnlNTl7O@Bla+nfqGx0Ka-<}CP>;v zlt`CaEWuUm2zAE^UQKj^;Iv>gy2GwXdnYR1*X*HESGHf49c&Us!rKARxreBj_OpP z*09lIhHvSBfF{*??BG!_NE zD~ssqgZrOLD2o>IMyJkUAv&yvPXh4xzjj605k}9&1;}u?Hdk&!2DOBur80WzpC>mL z`of5LIJ9(E56zQtzdjPXH1*yG1HO_!CQUCw)>k;I*?U0^PQ+y)d3pgN7RXWL`xa`} z0@N_VT=o7Uxso6ZQC}>Uj|=Fo`q)yO#|6NPrE)KvF@!He;LfmqnY@7%y$@kYSm>Yk zA@3Oid4X?F{)>hNEdW=J_OsrykyHS<*r>FVFE~{!{+}EI-!7NCzeBP79ekx1uXbID zD6tY2%Y^JzIIX3dc{Z!%`l4;T0RjsV>7J|Q?quc;NMDUB<$CJ1)pCyDIN{=}PE9*; zOW2w$&nDl01i@=?#`{+M3)dk26?Z_?T5SHF=8#0g%;u1{R!(+Yr~}*GrN>}@C{&fD0EnjB~f(c5tk?d>I~ z;ZV;VxTL<5$(PiL>X{uV7GyvUze~byX0u6-m#^HH>VrK?Z%lxYn)l^#x1g@ zIbgpB!=N0z3xVZo;~Seatd;}WH1y7aCp2`)QH@!+a3ak=go3?@@Ahm6+lPB=tFxhS zAI>o5WkcM4?AueaA@i_25Skv4T}b6_5Ox4d56y-I8V<~cY#M%&4Nnf>^ddYP{13`u zq%#&iD94NMXXB3cF-K2uI3&*`wXz}U5Go<}Y}G9raVDn^p*uoE_S-|W4(rC%4g>#h zFyp2}5dRJ4OFe`aA23{b2#UVJYL^^>;3F8$M>sT`bqLaF7=K7DI3gDc!O2d=t~52%S}X)B6uLHzf)O)?LD`CgtvZr)O(e~|HH zJ{!NEmkUVhEj8+b93hbE2O#SrlHcFMe9NR z+c-w_f?2mwt3K3~IrTmi+{V>JC{+9z3w7Ct?-65j+wX&P8iwqHf}c?en(kBWf01JZ za^wcY-$D94XaKnwI(FCL4N&D*#JivYg#C)GZK_M&1{Z1a@dlvWm6Myd(CPS!b#T#; z!X{G8k2JklL!IR6^KA^lQzq0%RFh1(Siu$Q{e}v|b`Cy*jC<>|LH=F7)|bdp#!0 zTXGjolm67;uK80A$Me^}|3nG7?G6!-UIXpSo1hJC2?dWdULl~CFlnCPfvb)Yf60MX zIAy*GN+%7cdw*#-ReFp#ZG=IO0fe~1Mo)x%ajVtB8@bHD)&S|es zUO%Z-N?zUd>Gg3w?P>^EvdYoZvPvt{&}Tpfx{^fgeZ~m+FR>ecYh31|pMl6RwUKZMV!diQTLUuzoekG50fw2BGvF7 zHHjr0WNn{ni?J7VF8LLbdoINEen>cHXp%4)|Ux=}a{Mi`Yq z@;E?EHY#ZHI-t3l9;hUu!?FN1xPkJ7h&W4B0~;xm?VP6S%C_62W``guXe-dQttS_=%5@W&PSIErnF|>vqa@LQbGU@1Xdz zgg2g0GfsTo5ji2DS9jL==>hYWnkteA-M-C*`yVRfy_f4+dIs%G=+2QnTH{aYq_{e7 z*Jaq3EU4XDD=!4{UQGyVtDqBm9WiE9c{?$}YyNM<_%fLiBfXdoq?Z|z+bIpzfNn|` zfqk}E>?L+b|B!SW;Os~Irby98cvGZN52V8HEBW<~)jbpkx+L$R02zt>^COLrZvzoS zHnY;f!pG|RkChIB;|U#AYQu}3N}x~;>W3>2$l}JTPlR#@-$#2Nls*lP+IfMmQv&=oFzhIrrv`*UTDV{cu-25{(eWdpj!8#G7( z$5Fb}?NBiqX=zYfMk{EgO~v0L<=ijfU`6vwIG9twX9!ZjW;rAdL1ed8gsS3eE zm2Ag3I_Psi9;R$VzZ83hDVNC44b{Xi6no;hR+lXjwvIp~D!{c7C@9bTATCBpAb0(^ zl|bDYU>u1Y3m?y|1U%3gBF2TbYW-2ld%_e`Rj%ym89>L!eSW90#t*B8R%t-pq`Z2A zqS&{I<^_x9|F-wZ?`WR5R-GLq8~n@nGpq9bOqwo_4nIZH3tNP>k8JRS?`z_l7W8MT z%Jwy<7-+_=g-5T@kMrtyH;HWUXYmFoMZs0lPLZn995@mofGl$|(Es1xT2#Nv2X8>M zI^S@m`G=o4&S0)hXjvoj0}avY6j3}6q#0g5n%R#6oOOQKg~$(dm{#LEuoTgO-?!;V z^Hp`7;}_YGBkC%(hw`f6Y2}vWq(^D(qIXNO+OL#$DRV(_ZUr~G6UM={y@Ib`3txYS zHhaBL|54LbhvYcikzIF}@5rX0Ynu6o@i6$AsCX=Cv(p*2*b25CI#xy32OIewH|}M# zyy2GjzAVrCOs7pm7HJ12RjQ+Nb^NJFXjBFUR}#(}d{s9i9$mV@?)vn0eso4$5&l4G zS*FBI$~w51K#zVk%q+*^vY|Q5vk|@&+)9yv8z6T0fYL$RPPZIs$Oir_jcK~J4X+*g zL{{I)B*Qda+lF`MVPy4faB6_)J8UycrmpnpPd4zl#Vdr#Ie>ldg~vEFW68zw4SF^; zmL)SE3r9Ec;~y%n=m&z4z8A_ABdNIdB|fc+USk%v5pAJ=tTG+}LP63I-z_Km0dd3thFtb=h#7^$u6t-&hzspd8EZDvX59V-#OU zKlb_6DM?-R${1y&AZ&on*|Ee&If0{TRKYa{;j8{64nF7?C zs5F8h6O>^>EA{*YTvXs2h*wNX6VGr1qJ*6|%7B;~Vr#JKF`fl=Cn~KP9ANRmnC6H7 z#%rOg^c!onb+hiks)>rP_ou8_FU&-323&=Y7*Sk>9tH&dVj`fZ#cy*?j!+6OZdfcrGVUux;={F4$CZqbVR0j$t<5=@}CPc+6_o~!p zVok^P?K;z>1}Osg&QKbl^N;{_)f8lJ<$Oj;nt7@&a{*4BrzwrdMRe0OMTt=7PFI== zl~)$$U#`oax)us%D2>XkU^&dyZDHOtrB~&d#RX323d~=No}rb>=#*&lOvP8Y45wx) zwS@EV*G#3h<3gSOae?}?5MQ)$W*bQQDh&7xU-Dz_WF|}@$h7>lI?UsM~wq6rAIk^`d5`9Zayx`4vhwUyQNOjSGb&RR2h7} z!uhy9FP;IHyxd`x9#I*LiAwRIca5^fj=9TlR{5}>-~y`?(IiT&4C#qVn6tjxk6pA2 zQ~HDl0bpF91dE4JVgi>bE#Ybpd{3+1U1BSQ!J!384oji8as(qBT4;&mLoR|n99pCt zCo$hc!eS-Z>0D{D8XDAuyu~;no!|{c7&17Pc|Bg{35H2a6n=Mk!4hrWy#%}OxGa0%Tw z1>Dd#JIP&(m&I_U`R6r=TCU`iKi5L=3dA>IEl;1c7P400Mnn2F$Xclsl67m<^i@iz zK>A%%3s=+Ces^4)CnJxC=;WopQ|YZLeR@ML>hQmq$7Ob|=p~T8Mv1YiC$NlqaD2^Q zi`w8W@|JGQ;sp9k3U)+2K93yVj_7>l5;7@?GXG87ME5NFy_paP(?@ zECa=y#+gr(ig0YBGMlVj17Vx6qpVmX!1cKj?yYUYZoYU8WN%WQu-uk)k(FULTm6sS zg6rPJ=*)?3=QQ_#!YwF+wbwz&Rt)_;AaN@Sf6FU)3sT7u>R~pvyz+%S23BoXsuIt!;8xGZU#vPC@2>1n zTpf10`r}YOjXYR`_>s(1&e8oP~roE#hTNUBV#*bGN3v(-=GYJ9gvXt(1-eYaBOfp@C zmMk7CaA>YVCl)t1fBFI{>{mRk*`Ld$DU}Pb*`F_b%n5!hKQcwjrwMd0asYp3 zH@aHEFpdQ%w@1;w&DqwEsG}iyFYfSII-q-ZO2~CXG(z_0VcHP*@1U{>Bv)Gxa(_7Z zxY|~R-*+f(I6X~JuN+c(5R&x;7!RZJDek7%Tp|9j5(O39agBWXm||PWIGQdZ`*Tl! zC_n!lR#K4aUw@;tA`P2C!8fQo>NEqNBRK1u+??u=$}s(iGDqkL<&P@OUUm3st`Kz; zH9$-3DhrNcSDD}n>GVT){Lrcvs)UiQP)I+t#SgyUVvcB62>w>-Qm!{Qu@HTrtBMrZ%uD1M~K6@30tYC!X2ic|T8 z=)RBcX9Q_Ixl$`vrqy`aR9wy-Q))Hmn3&dgXP;%meKrp)xptk3aOkYiq8}E;BK_9Q zd9kd8k}2H4u!*)oXc<{mHL(_EbNIUtg`*rQ|7o#0a?4Cc=i z9bolS#nyf17nCDhCM`lG8`i;rr%Gd(b6jb}*qL)&`I>CRHOmR*4m$R2|6Pd=O%A$1 z!gorpM{fqIHSaB{9a$(F+6XZJKV=kLIH?@=YmF^LJ3_5zEM(!UC*Iu!*nLXzpTb|) z#<##(E2s{s9Z1Rd>hK&+&pjrB@2|x*X%FqK z#hYsB9kqCC9te9-*haRl|!KWJXwV~(w zNGLc{LSu$bpd?-Qlx4TPDPsEHNww*s(wE$Lv7{)_t&-a?+AVKrAn!7L;l-yf8KSNblSD!kk>QtTkoT~C;UO)lNazi$A8YR>=2h-=-FuK;iujcfYD@%0ftm|4n zsMW=DII$=$jz?tkuFHq}!qHT4AISV0H2Q&SgQ9AFbf=UDa274YDzt3{j|#6U4k7qF z)Vq#Dnpf23BR~n_cyp(8FRg1iMF;Mtjt^ZMRLc-*QjbQiVA98g9z!1;c$8jgAva2# z(bJ=1I~%&!Ci^NwgnIX5-JDqBgq~IF_&4F5ulUoVRdx^2qg(cRnfOjme|PWVg=zC6 z*Sh>0b>43JztnQ3fY;*P+@o~i$!mT}9Ne=S-I<^iO-hZU+);APG`$|; zRT4&%W>Msyu48CO7e(eD)`s~yE0?^acO*F=RuJvt^ozDgi4GLXC%R=FQO;H5j{TIw|R;3?ew&rxn1=% zu5>>F0lstEqkKI+I>(RZwTRVn)LO9sa&b!5S{JoOycLZN8MOb2YfTq!G{MjFfyJkb zw#1mP)yi{S(YvC33@@ZVSG&}Vovd?qith(ni78@A#+ye)Hz+H*dz7a>7YFLP!4sdrA2g7t z*;Aj(1H~7k^!K8DH;U(LduhK_s)=o0y4grokGWQ$Axlk)#XcW;jtAH^+g3|L(=~J4 zdo$Nq>v{=#^pzm!qm{>88}t{|VuOwN%!UElZ}jw2dV08?KBK1vBci8Y68SoL(Qcwy z(SvjbQSWAM1w`5 zRhr(>=IPJd;<%`O%-6YV1hY6ZX~+^b)os4c#5g$8I@#jgPH95mi)Gr9DnZFkmlZmn zZ&O(8+mtpP2Dx3Gw)ElMX3cJm1OP_buZz-5tGDH!T7s5^vqZ75rjZL2 zPZ|=j*({bc4 z(R+m8Y_#wE#7Y%vl{dycS2Fm+ySx!gv3gfB`t@_YBD+ZJ{rZWP zU(~Pl53bA5@`u*=Q~L$TC_c32jNS|(%D2{u`DlD_FY(-dwN7lXzTnn<-_gPCv;vdY zi3w^-aDOd5LU+233f2v(b&B@E=-^3ug&ul(nwEY`zfo;`aGaK&yiUv!Q-bGd=@B?> zpa0WjRPY=vBWj(Pai;_eOCky@Wd0yJSbOXgog`EvR1}?)0WY~dvv~~aD#~~@6m_g= zr>AuzVU0fFc@5B?*U_I3*VF!bdYqQFTQ9gmuYg+5wD}n7@;HtpA2t)6#g4f2AI&?< zy8GJuQEP9C-!Ges-}bti_7&2JYLBstKl_zEQSEg#@4H=NLR5S0F`jRvb)#KtmB*!n zf}6f)M1eI+3KQRX2T&J6DHD72R6H1lfpL4?+Dl@-cN6T0T36>KeJ;r%%>N~wm*lCe z-AfG|dkUKa;23+1$K2L<3vMMdihVj!wYkah5+95zm67W+(|dH-T`pw%BGpU}ImlG5 zq}lLn3<9(V*MBQ|Nv8T>5;WXv}Fe$sDVp-;YX;ZYD z1Diqw;y9&?o{1TK8d=IHel)O_Y+*|j@~b7+OdPq%ldQF557tGYF|{C>fcgSYJ5)=q zPItNMcM;_g` zg0t9JJh{AB+C+Er*9uH7ujA_7>gee@Vyty*C@LuLuc!5uh2b^87_VGccJLbbXfH$? zUIRg3k=NjNT3J`_QtPy6(7N4PamP7sHP#E919r69yMo4n)q;?<8?|2-r>|(`a=3XG z0t=TWKx6>LYe@#`=&HSwp}%vK#>3MRt0TlNPPeqi6gd-mY2~;xf&WeR6gzjL1BGIm z>?yikbl?+BF-`UqiV!fJsNYje2ho9wNE^NgG5bYL)~a=)C06J5|JEaMQ+On*-*j-_ za+{q`g;8Hl(>}--HOr@Io(j_>irys;Q*aw0{!~USQ!vX9Dd(bC>}!VdU{>45=->8! z+hr@R0R`kDh+lhC`*m@erB#8&tKRiCYQIB0{}+eF=S^kBY6()wR$MO%NK;HU>xOI1?#F71X6qN^P6?QqnJ*@4LD0MUtXccezhlz?vf3w8ALYkIn&p6;rr z#fXd!Xs4&!Y0skrgpQ0(YN+Rr)APm1ZWpz7fS%#66^IV@5x-vOP56T)D4v({pX6%! zbg8;?d1Gq-`b{X!^A1YWyCWCYx&gYddWqjJ2WZX|Q@g~M4ZJ-rMeymjonEA?rrK&r z@b^%U8FDxq2S3d*Whf2Y16+1Z0o5C1s_g9I^hJSsruH6>q!aK+@*;Wg6feh3Fqk3wcC?qppR8BR0*~8dAaB)rlLT(F@|VLeXz8(SAp) zStuCbJD*mzklTBYTm(B~fse?1TOZqN=F=mwPbU>>x<%)4Et zkPtc8auf~XL)fmDJsyDZP$@c1PI6@GMJFHv#J;dC`b9#(mP zmUNsX=3|oJY7ch~M6{L1_;ee}yV6E6me+3AeqEgMV7IiD$Bli<5t$ey6oLxe624~~ z#3PIY`=zcj@=rnYL=O_nPF~JmD<>2o&dty|Y;-rVs*G-VNu&dB(&lz@UC-@!nQLe} zxG`}m<+hXi!W-YJy}X>=97&O}u>C+26}E@FZk8)~b&#{YD``!brZ*u@Z^B2a)KRWz zq8SIwWvR_vNoGAw6!xpRvfD7NpG>X>^K#))*(X*b+P9tHTwqu2m$T>&^e9G|k&Xgh z812^lKe9Ahe?Mw%(fil%z9Z{-`=Zts)iLVB%BWEpH?-P#TKUqw zqUQkZZSi$Z-O+Ir(pmnHeor^g_ZG3Lus&2=qD^|H{h`i#V_U=EhE_a832 zbx*X`*iCd7r$@A}r>z?6IFiDq!#uY0+T*-d`ix%slIVVJdiRT3H=I^VSoRKhLG@zU z`*ij-xgwh(eBpj#s)cc`OI!bKDS8jBJ|b73GA7BLDi4Auq23UR=qB&v%^FVcc9%P_ z%Ofaeh`ERs@97#Xy0NjgmoD$wbgqY7&2AqLYmT72s5Pr~MRZg9cGQ|>dRp{6d(23* zVdn_NX78z!?Z;KE6$);Or#8y40G>osUYEPjPle{X6}2jddfF{#y=t6%LOteMsw(1f zjX!B+m|PXd3G534Z>oJv*%J!Q=%kz4FD4Q_|B{{_prBZu->?y$)wO<#f3oyh!l;IWrSytH85tQ~JI*46$ zdb@Kr>t=D(+B#x*eTgucUUHX4`cU@Ws5K9!pb)O_c0Db)0E<&k-=tPuxqg$+Z}38bR6pKat_ldEgS_yk$pCp;Cy;V^&BJniu?xSdwr%0A%Oag!SJHa8eu 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%0D;#+gkRFL0NEMKAR~WDpSh9z)JPi)`*k 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 DplSdS delta 203253 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 { ); // zapin - const zapInTx = await zapInDammv2({ svm, user: user.publicKey, @@ -389,7 +389,88 @@ describe("Zap In damm V2", () => { maxSqrtPriceChangeBps: 5000, }); - // close ledge + // close ledger + const closeLedgerTx = await closeLedgerAccount(user.publicKey); + + const finalTx = new Transaction() + .add(initializeLedgerTx) + .add(setLedgerBalanceTx) + .add(updateLedgerBalanceAfterSwapTx) + .add(zapInTx) + .add(closeLedgerTx); + + finalTx.recentBlockhash = svm.latestBlockhash(); + finalTx.sign(user); + + const result = svm.sendTransaction(finalTx); + if (result instanceof FailedTransactionMetadata) { + console.log(result.meta().logs()); + } + expect(result).instanceOf(TransactionMetadata); + }); + + it("zap in without external swap with rate limiter and remaining accounts", async () => { + const baseFee = encodeFeeRateLimiterParams( + new BN(10_000_00), // 1% cliff fee + 1, // 10 bps fee increment + 10, // max limiter duration + 5000, // 50% max fee + new BN(LAMPORTS_PER_SOL) // reference amount: 1 SOL + ); + + const pool = await createDammV2Pool( + svm, + admin, + tokenAMint, + tokenBMint, + new BN(LAMPORTS_PER_SOL), + new BN(LAMPORTS_PER_SOL), + baseFee + ); + + const { position, positionNftAccount } = await createDammV2Position( + svm, + user, + pool + ); + + let poolState = getDammV2Pool(svm, pool); + + const totalAmountB = new BN(LAMPORTS_PER_SOL / 2); // 0.5 SOL + const initializeLedgerTx = await initializeLedgerAccount(user.publicKey); + + // swap BtoA to trigger remaining account validation in dammv2 + const setLedgerBalanceTx = await setLedgerBalance( + user.publicKey, + totalAmountB, + false + ); + + const tokenAAccount = getAssociatedTokenAddressSync( + tokenAMint, + user.publicKey + ); + + const updateLedgerBalanceAfterSwapTx = await updateLedgerBalanceAfterSwap( + user.publicKey, + tokenAAccount, + new BN(0), // no token A + U64_MAX, + false + ); + + // zapin + const zapInTx = await zapInDammv2({ + svm, + user: user.publicKey, + pool, + position, + positionNftAccount, + preSqrtPrice: poolState.sqrtPrice, + maxSqrtPriceChangeBps: U32_MAX.toNumber(), + }); + + // close ledger const closeLedgerTx = await closeLedgerAccount(user.publicKey); const finalTx = new Transaction()