From 93b616a434a6d044144bcc7ac715ba892e15c1da Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Mon, 15 Dec 2025 10:00:19 +0200 Subject: [PATCH 01/15] fix: lock updates --- nssa/program_methods/guest/Cargo.lock | 1 + nssa/test_program_methods/guest/Cargo.lock | 1 + 2 files changed, 2 insertions(+) diff --git a/nssa/program_methods/guest/Cargo.lock b/nssa/program_methods/guest/Cargo.lock index 563e8b9..6ef20ca 100644 --- a/nssa/program_methods/guest/Cargo.lock +++ b/nssa/program_methods/guest/Cargo.lock @@ -1575,6 +1575,7 @@ name = "nssa-core" version = "0.1.0" dependencies = [ "borsh", + "bytemuck", "chacha20", "risc0-zkvm", "serde", diff --git a/nssa/test_program_methods/guest/Cargo.lock b/nssa/test_program_methods/guest/Cargo.lock index 85f566c..e8b8942 100644 --- a/nssa/test_program_methods/guest/Cargo.lock +++ b/nssa/test_program_methods/guest/Cargo.lock @@ -1580,6 +1580,7 @@ name = "nssa-core" version = "0.1.0" dependencies = [ "borsh", + "bytemuck", "chacha20", "risc0-zkvm", "serde", From d4a471e94890dbacc3ba598dc3cc44506c0a6a1f Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Tue, 16 Dec 2025 14:05:34 +0200 Subject: [PATCH 02/15] feat: swaps, add/rem liq --- nssa/core/src/encryption/mod.rs | 2 +- nssa/program_methods/guest/src/bin/amm.rs | 1 + .../privacy_preserving_transaction/circuit.rs | 6 +- nssa/src/state.rs | 69 +-- wallet/src/cli/mod.rs | 8 +- wallet/src/cli/programs/amm.rs | 452 +++++++++++++++ wallet/src/cli/programs/mod.rs | 1 + wallet/src/lib.rs | 2 +- wallet/src/privacy_preserving_tx.rs | 26 +- wallet/src/program_facades/amm.rs | 522 ++++++++++++++++++ wallet/src/program_facades/mod.rs | 1 + 11 files changed, 1035 insertions(+), 55 deletions(-) create mode 100644 wallet/src/cli/programs/amm.rs create mode 100644 wallet/src/program_facades/amm.rs diff --git a/nssa/core/src/encryption/mod.rs b/nssa/core/src/encryption/mod.rs index 8f0c6be..c953d4d 100644 --- a/nssa/core/src/encryption/mod.rs +++ b/nssa/core/src/encryption/mod.rs @@ -16,7 +16,7 @@ use crate::{Commitment, account::Account}; pub type Scalar = [u8; 32]; -#[derive(Serialize, Deserialize, Clone)] +#[derive(Serialize, Deserialize, Clone, Copy)] pub struct SharedSecretKey(pub [u8; 32]); pub struct EncryptionScheme; diff --git a/nssa/program_methods/guest/src/bin/amm.rs b/nssa/program_methods/guest/src/bin/amm.rs index 0882a0d..275defa 100644 --- a/nssa/program_methods/guest/src/bin/amm.rs +++ b/nssa/program_methods/guest/src/bin/amm.rs @@ -55,6 +55,7 @@ use nssa_core::{ // * compute_pool_pda_seed: token definitions for the pool pair // * compute_vault_pda_seed: pool definition id, definition token id, // * compute_liquidity_token_pda_seed: pool definition id +// const POOL_DEFINITION_DATA_SIZE: usize = 225; diff --git a/nssa/src/privacy_preserving_transaction/circuit.rs b/nssa/src/privacy_preserving_transaction/circuit.rs index 95933a3..c8aad62 100644 --- a/nssa/src/privacy_preserving_transaction/circuit.rs +++ b/nssa/src/privacy_preserving_transaction/circuit.rs @@ -216,7 +216,7 @@ mod tests { &Program::serialize_instruction(balance_to_move).unwrap(), &[0, 2], &[0xdeadbeef], - &[(recipient_keys.npk(), shared_secret.clone())], + &[(recipient_keys.npk(), shared_secret)], &[], &Program::authenticated_transfer_program().into(), ) @@ -312,8 +312,8 @@ mod tests { &[1, 2], &[0xdeadbeef1, 0xdeadbeef2], &[ - (sender_keys.npk(), shared_secret_1.clone()), - (recipient_keys.npk(), shared_secret_2.clone()), + (sender_keys.npk(), shared_secret_1), + (recipient_keys.npk(), shared_secret_2), ], &[( sender_keys.nsk, diff --git a/nssa/src/state.rs b/nssa/src/state.rs index ab802c7..bd2ddc0 100644 --- a/nssa/src/state.rs +++ b/nssa/src/state.rs @@ -2094,7 +2094,7 @@ pub mod tests { &visibility_mask, &[0xdeadbeef1, 0xdeadbeef2], &[ - (sender_keys.npk(), shared_secret.clone()), + (sender_keys.npk(), shared_secret), (sender_keys.npk(), shared_secret), ], &private_account_auth, @@ -2288,12 +2288,12 @@ pub mod tests { let mut i: usize = 0; let (token_1, token_2) = loop { if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { - let token_1 = definition_token_a_id.clone(); - let token_2 = definition_token_b_id.clone(); + let token_1 = definition_token_a_id; + let token_2 = definition_token_b_id; break (token_1, token_2); } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { - let token_1 = definition_token_b_id.clone(); - let token_2 = definition_token_a_id.clone(); + let token_1 = definition_token_b_id; + let token_2 = definition_token_a_id; break (token_1, token_2); } @@ -2396,6 +2396,7 @@ pub mod tests { .expect("225 bytes should fit into Data") } + #[allow(unused)] fn parse(data: &[u8]) -> Option { if data.len() != POOL_DEFINITION_DATA_SIZE { None @@ -2531,6 +2532,7 @@ pub mod tests { UserTokenBHoldingNewDef, } + #[allow(clippy::enum_variant_names)] enum IdEnum { PoolDefinitionId, TokenLPDefinitionId, @@ -2543,6 +2545,7 @@ pub mod tests { VaultBId, } + #[allow(clippy::enum_variant_names)] enum PrivateKeysEnum { UserTokenAKey, UserTokenBKey, @@ -2680,9 +2683,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceInit), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::TokenADefinitionAcc => Account { @@ -2692,9 +2693,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::TokenASupply), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::TokenBDefinitionAcc => Account { @@ -2704,9 +2703,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::TokenBSupply), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::TokenLPDefinitionAcc => Account { @@ -2716,9 +2713,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::TokenLPSupply), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::VaultAInit => Account { @@ -2787,9 +2782,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceSwap1), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenAHoldingSwap1 => Account { @@ -2848,9 +2841,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceSwap2), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenAHoldingSwap2 => Account { @@ -2909,9 +2900,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceAdd), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenAHoldingAdd => Account { @@ -2951,9 +2940,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::TokenLPSupplyAdd), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::VaultARemove => Account { @@ -2992,9 +2979,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceRemove), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenAHoldingRemove => Account { @@ -3034,9 +3019,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::TokenLPSupplyRemove), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::TokenLPDefinitionInitInactive => Account { @@ -3046,9 +3029,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: 0, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::VaultAInitInactive => Account { @@ -3085,9 +3066,7 @@ pub mod tests { reserve_b: 0, fees: 0u128, active: false, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenAHoldingNewInit => Account { @@ -3127,9 +3106,7 @@ pub mod tests { account_type: 0u8, name: [1u8; 6], total_supply: helper_balances_constructor(BalancesEnum::VaultABalanceInit), - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::PoolDefinitionNewInit => Account { @@ -3148,9 +3125,7 @@ pub mod tests { reserve_b: helper_balances_constructor(BalancesEnum::VaultBBalanceInit), fees: 0u128, active: true, - }) - .try_into() - .expect("Data too big"), + }), nonce: 0, }, AccountsEnum::UserTokenLPHoldingInitZero => Account { diff --git a/wallet/src/cli/mod.rs b/wallet/src/cli/mod.rs index 61b8697..cf3b2f1 100644 --- a/wallet/src/cli/mod.rs +++ b/wallet/src/cli/mod.rs @@ -11,8 +11,8 @@ use crate::{ chain::ChainSubcommand, config::ConfigSubcommand, programs::{ - native_token_transfer::AuthTransferSubcommand, pinata::PinataProgramAgnosticSubcommand, - token::TokenProgramAgnosticSubcommand, + amm::AmmProgramAgnosticSubcommand, native_token_transfer::AuthTransferSubcommand, + pinata::PinataProgramAgnosticSubcommand, token::TokenProgramAgnosticSubcommand, }, }, helperfunctions::{fetch_config, fetch_persistent_storage, merge_auth_config}, @@ -47,6 +47,9 @@ pub enum Command { /// Token program interaction subcommand #[command(subcommand)] Token(TokenProgramAgnosticSubcommand), + /// AMM program interaction subcommand + #[command(subcommand)] + AMM(AmmProgramAgnosticSubcommand), /// Check the wallet can connect to the node and builtin local programs /// match the remote versions CheckHealth {}, @@ -165,6 +168,7 @@ pub async fn execute_subcommand_with_auth( Command::Token(token_subcommand) => { token_subcommand.handle_subcommand(&mut wallet_core).await? } + Command::AMM(amm_subcommand) => amm_subcommand.handle_subcommand(&mut wallet_core).await?, Command::Config(config_subcommand) => { config_subcommand .handle_subcommand(&mut wallet_core) diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs new file mode 100644 index 0000000..3878c94 --- /dev/null +++ b/wallet/src/cli/programs/amm.rs @@ -0,0 +1,452 @@ +use anyhow::Result; +use clap::Subcommand; + +use crate::{ + PrivacyPreservingAccount, WalletCore, + cli::{SubcommandReturnValue, WalletSubcommand}, + helperfunctions::parse_addr_with_privacy_prefix, + program_facades::amm::AMM, +}; + +/// Represents generic CLI subcommand for a wallet working with amm program +#[derive(Subcommand, Debug, Clone)] +pub enum AmmProgramAgnosticSubcommand { + /// Produce a new token + /// + /// user_holding_a and user_holding_b must be owned. + New { + /// amm_pool - valid 32 byte base58 string with privacy prefix + #[arg(long)] + amm_pool: String, + /// vault_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_a: String, + /// vault_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_b: String, + /// pool_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + pool_lp: String, + /// user_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_a: String, + /// user_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_b: String, + /// user_holding_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_lp: String, + #[arg(long)] + balance_a: u128, + #[arg(long)] + balance_b: u128, + }, + /// Swap with variable privacy + /// + /// The account associated with swapping token must be owned + Swap { + /// amm_pool - valid 32 byte base58 string with privacy prefix + #[arg(long)] + amm_pool: String, + /// vault_holding_1 - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_1: String, + /// vault_holding_2 - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_2: String, + /// user_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_a: String, + /// user_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_b: String, + #[arg(long)] + amount_in: u128, + #[arg(long)] + min_amount_out: u128, + /// token_definition - valid 32 byte base58 string WITHOUT privacy prefix + #[arg(long)] + token_definition: String, + }, + /// Add liquidity with variable privacy + /// + /// user_holding_a and user_holding_b must be owned. + AddLiquidity { + /// amm_pool - valid 32 byte base58 string with privacy prefix + #[arg(long)] + amm_pool: String, + /// vault_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_a: String, + /// vault_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_b: String, + /// pool_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + pool_lp: String, + /// user_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_a: String, + /// user_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_b: String, + /// user_holding_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_lp: String, + #[arg(long)] + min_amount_lp: u128, + #[arg(long)] + max_amount_a: u128, + #[arg(long)] + max_amount_b: u128, + }, + /// Remove liquidity with variable privacy + /// + /// user_holding_lp must be owned. + RemoveLiquidity { + /// amm_pool - valid 32 byte base58 string with privacy prefix + #[arg(long)] + amm_pool: String, + /// vault_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_a: String, + /// vault_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + vault_holding_b: String, + /// pool_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + pool_lp: String, + /// user_holding_a - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_a: String, + /// user_holding_b - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_b: String, + /// user_holding_lp - valid 32 byte base58 string with privacy prefix + #[arg(long)] + user_holding_lp: String, + #[arg(long)] + balance_lp: u128, + #[arg(long)] + max_amount_a: u128, + #[arg(long)] + max_amount_b: u128, + }, +} + +impl WalletSubcommand for AmmProgramAgnosticSubcommand { + async fn handle_subcommand( + self, + wallet_core: &mut WalletCore, + ) -> Result { + match self { + AmmProgramAgnosticSubcommand::New { + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_a, + balance_b, + } => { + let amm_pool = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&amm_pool)?, + )?; + let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_a)?, + )?; + let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_b)?, + )?; + let pool_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&pool_lp)?, + )?; + let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_a)?, + )?; + let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_b)?, + )?; + let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_lp)?, + )?; + + let is_public_tx = [ + &amm_pool, + &vault_holding_a, + &vault_holding_b, + &pool_lp, + &user_holding_a, + &user_holding_b, + &user_holding_lp, + ] + .into_iter() + .all(|acc| acc.is_public()); + + if is_public_tx { + AMM(wallet_core) + .send_new_amm_definition( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_a, + balance_b, + ) + .await?; + Ok(SubcommandReturnValue::Empty) + } else { + AMM(wallet_core) + .send_new_amm_definition_privacy_preserving( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_a, + balance_b, + ) + .await?; + // ToDo: change into correct return value + Ok(SubcommandReturnValue::Empty) + } + } + AmmProgramAgnosticSubcommand::Swap { + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + amount_in, + min_amount_out, + token_definition, + } => { + let amm_pool = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&amm_pool)?, + )?; + let vault_holding_1 = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_1)?, + )?; + let vault_holding_2 = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_2)?, + )?; + let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_a)?, + )?; + let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_b)?, + )?; + + let is_public_tx = [ + &amm_pool, + &vault_holding_1, + &vault_holding_2, + &user_holding_a, + &user_holding_b, + ] + .into_iter() + .all(|acc| acc.is_public()); + + if is_public_tx { + AMM(wallet_core) + .send_swap( + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + amount_in, + min_amount_out, + token_definition.parse()?, + ) + .await?; + Ok(SubcommandReturnValue::Empty) + } else { + AMM(wallet_core) + .send_swap_privacy_preserving( + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + amount_in, + min_amount_out, + token_definition.parse()?, + ) + .await?; + // ToDo: change into correct return value + Ok(SubcommandReturnValue::Empty) + } + } + AmmProgramAgnosticSubcommand::AddLiquidity { + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + min_amount_lp, + max_amount_a, + max_amount_b, + } => { + let amm_pool = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&amm_pool)?, + )?; + let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_a)?, + )?; + let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_b)?, + )?; + let pool_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&pool_lp)?, + )?; + let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_a)?, + )?; + let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_b)?, + )?; + let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_lp)?, + )?; + + let is_public_tx = [ + &amm_pool, + &vault_holding_a, + &vault_holding_b, + &pool_lp, + &user_holding_a, + &user_holding_b, + &user_holding_lp, + ] + .into_iter() + .all(|acc| acc.is_public()); + + if is_public_tx { + AMM(wallet_core) + .send_add_liq( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + min_amount_lp, + max_amount_a, + max_amount_b, + ) + .await?; + Ok(SubcommandReturnValue::Empty) + } else { + AMM(wallet_core) + .send_add_liq_privacy_preserving( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + min_amount_lp, + max_amount_a, + max_amount_b, + ) + .await?; + // ToDo: change into correct return value + Ok(SubcommandReturnValue::Empty) + } + } + AmmProgramAgnosticSubcommand::RemoveLiquidity { + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_lp, + max_amount_a, + max_amount_b, + } => { + let amm_pool = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&amm_pool)?, + )?; + let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_a)?, + )?; + let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&vault_holding_b)?, + )?; + let pool_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&pool_lp)?, + )?; + let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_a)?, + )?; + let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_b)?, + )?; + let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( + parse_addr_with_privacy_prefix(&user_holding_lp)?, + )?; + + let is_public_tx = [ + &amm_pool, + &vault_holding_a, + &vault_holding_b, + &pool_lp, + &user_holding_a, + &user_holding_b, + &user_holding_lp, + ] + .into_iter() + .all(|acc| acc.is_public()); + + if is_public_tx { + AMM(wallet_core) + .send_remove_liq( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_lp, + max_amount_a, + max_amount_b, + ) + .await?; + Ok(SubcommandReturnValue::Empty) + } else { + AMM(wallet_core) + .send_remove_liq_privacy_preserving( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + balance_lp, + max_amount_a, + max_amount_b, + ) + .await?; + // ToDo: change into correct return value + Ok(SubcommandReturnValue::Empty) + } + } + } + } +} diff --git a/wallet/src/cli/programs/mod.rs b/wallet/src/cli/programs/mod.rs index 3ffb7bb..96a4e76 100644 --- a/wallet/src/cli/programs/mod.rs +++ b/wallet/src/cli/programs/mod.rs @@ -1,3 +1,4 @@ +pub mod amm; pub mod native_token_transfer; pub mod pinata; pub mod token; diff --git a/wallet/src/lib.rs b/wallet/src/lib.rs index bc28311..1218d25 100644 --- a/wallet/src/lib.rs +++ b/wallet/src/lib.rs @@ -280,7 +280,7 @@ impl WalletCore { &produce_random_nonces(private_account_keys.len()), &private_account_keys .iter() - .map(|keys| (keys.npk.clone(), keys.ssk.clone())) + .map(|keys| (keys.npk.clone(), keys.ssk)) .collect::>(), &acc_manager.private_account_auth(), &program.to_owned().into(), diff --git a/wallet/src/privacy_preserving_tx.rs b/wallet/src/privacy_preserving_tx.rs index e79bbac..d0d6629 100644 --- a/wallet/src/privacy_preserving_tx.rs +++ b/wallet/src/privacy_preserving_tx.rs @@ -1,3 +1,4 @@ +use anyhow::Result; use common::error::ExecutionFailureKind; use key_protocol::key_management::ephemeral_key_holder::EphemeralKeyHolder; use nssa::{AccountId, PrivateKey}; @@ -7,8 +8,9 @@ use nssa_core::{ encryption::{EphemeralPublicKey, IncomingViewingPublicKey}, }; -use crate::WalletCore; +use crate::{WalletCore, helperfunctions::AccountPrivacyKind}; +#[derive(Clone)] pub enum PrivacyPreservingAccount { Public(AccountId), PrivateOwned(AccountId), @@ -18,6 +20,28 @@ pub enum PrivacyPreservingAccount { }, } +impl PrivacyPreservingAccount { + pub fn parse_with_privacy(input: (String, AccountPrivacyKind)) -> Result { + let acc_id: AccountId = input.0.parse()?; + + match input.1 { + AccountPrivacyKind::Public => Ok(Self::Public(acc_id)), + AccountPrivacyKind::Private => Ok(Self::PrivateOwned(acc_id)), + } + } + + pub fn is_public(&self) -> bool { + matches!(&self, Self::Public(_)) + } + + pub fn is_private(&self) -> bool { + matches!( + &self, + Self::PrivateOwned(_) | Self::PrivateForeign { npk: _, ipk: _ } + ) + } +} + pub struct PrivateAccountKeys { pub npk: NullifierPublicKey, pub ssk: SharedSecretKey, diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs new file mode 100644 index 0000000..13e4940 --- /dev/null +++ b/wallet/src/program_facades/amm.rs @@ -0,0 +1,522 @@ +use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxResponse}; +use nssa::{AccountId, program::Program}; +use nssa_core::{SharedSecretKey, program::InstructionData}; +use serde::Serialize; + +use crate::{PrivacyPreservingAccount, WalletCore}; + +struct OrphanHack65BytesInput([u8; 65]); + +impl Serialize for OrphanHack65BytesInput { + fn serialize(&self, serializer: S) -> Result + where + S: serde::Serializer, + { + serializer.serialize_bytes(&self.0) + } +} + +struct OrphanHack49BytesInput([u8; 49]); + +impl Serialize for OrphanHack49BytesInput { + fn serialize(&self, serializer: S) -> Result + where + S: serde::Serializer, + { + serializer.serialize_bytes(&self.0) + } +} + +pub struct AMM<'w>(pub &'w WalletCore); + +impl AMM<'_> { + #[allow(clippy::too_many_arguments)] + pub async fn send_new_amm_definition( + &self, + _amm_pool: PrivacyPreservingAccount, + _vault_holding_a: PrivacyPreservingAccount, + _vault_holding_b: PrivacyPreservingAccount, + _pool_lp: PrivacyPreservingAccount, + _user_holding_a: PrivacyPreservingAccount, + _user_holding_b: PrivacyPreservingAccount, + _user_holding_lp: PrivacyPreservingAccount, + _balance_a: u128, + _balance_b: u128, + ) -> Result { + todo!() + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_new_amm_definition_privacy_preserving( + &self, + _amm_pool: PrivacyPreservingAccount, + _vault_holding_a: PrivacyPreservingAccount, + _vault_holding_b: PrivacyPreservingAccount, + _pool_lp: PrivacyPreservingAccount, + _user_holding_a: PrivacyPreservingAccount, + _user_holding_b: PrivacyPreservingAccount, + _user_holding_lp: PrivacyPreservingAccount, + _balance_a: u128, + _balance_b: u128, + ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { + todo!() + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_swap( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_1: PrivacyPreservingAccount, + vault_holding_2: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + amount_in: u128, + min_amount_out: u128, + token_definition_id: AccountId, + ) -> Result { + let (instruction, program) = + amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); + + match ( + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + ) { + ( + PrivacyPreservingAccount::Public(amm_pool), + PrivacyPreservingAccount::Public(vault_holding_1), + PrivacyPreservingAccount::Public(vault_holding_2), + PrivacyPreservingAccount::Public(user_holding_a), + PrivacyPreservingAccount::Public(user_holding_b), + ) => { + let account_ids = vec![ + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + ]; + + // ToDo: Correct authorization + // ToDo: Also correct instruction serialization + + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + vec![], + instruction, + ) + .unwrap(); + + let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) + } + _ => unreachable!(), + } + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_swap_privacy_preserving( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_1: PrivacyPreservingAccount, + vault_holding_2: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + amount_in: u128, + min_amount_out: u128, + token_definition_id: AccountId, + ) -> Result<(SendTxResponse, [Option; 5]), ExecutionFailureKind> { + let (instruction_data, program) = + amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); + + self.0 + .send_privacy_preserving_tx( + vec![ + amm_pool.clone(), + vault_holding_1.clone(), + vault_holding_2.clone(), + user_holding_a.clone(), + user_holding_b.clone(), + ], + &instruction_data, + &program, + ) + .await + .map(|(resp, secrets)| { + let mut secrets = secrets.into_iter(); + let mut secrets_res = [None; 5]; + + for acc_id in [ + amm_pool, + vault_holding_1, + vault_holding_2, + user_holding_a, + user_holding_b, + ] + .iter() + .enumerate() + { + if acc_id.1.is_private() { + let secret = secrets.next().expect("expected next secret"); + + secrets_res[acc_id.0] = Some(secret); + } + } + + (resp, secrets_res) + }) + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_add_liq( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_a: PrivacyPreservingAccount, + vault_holding_b: PrivacyPreservingAccount, + pool_lp: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + user_holding_lp: PrivacyPreservingAccount, + min_amount_lp: u128, + max_amount_a: u128, + max_amount_b: u128, + ) -> Result { + let (instruction, program) = + amm_program_preparation_add_liq(min_amount_lp, max_amount_a, max_amount_b); + + match ( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ) { + ( + PrivacyPreservingAccount::Public(amm_pool), + PrivacyPreservingAccount::Public(vault_holding_a), + PrivacyPreservingAccount::Public(vault_holding_b), + PrivacyPreservingAccount::Public(pool_lp), + PrivacyPreservingAccount::Public(user_holding_a), + PrivacyPreservingAccount::Public(user_holding_b), + PrivacyPreservingAccount::Public(user_holding_lp), + ) => { + let account_ids = vec![ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ]; + + // ToDo: Correct authorization + // ToDo: Also correct instruction serialization + + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + vec![], + instruction, + ) + .unwrap(); + + let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) + } + _ => unreachable!(), + } + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_add_liq_privacy_preserving( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_a: PrivacyPreservingAccount, + vault_holding_b: PrivacyPreservingAccount, + pool_lp: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + user_holding_lp: PrivacyPreservingAccount, + min_amount_lp: u128, + max_amount_a: u128, + max_amount_b: u128, + ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { + let (instruction_data, program) = + amm_program_preparation_add_liq(min_amount_lp, max_amount_a, max_amount_b); + + self.0 + .send_privacy_preserving_tx( + vec![ + amm_pool.clone(), + vault_holding_a.clone(), + vault_holding_b.clone(), + pool_lp.clone(), + user_holding_a.clone(), + user_holding_b.clone(), + user_holding_lp.clone(), + ], + &instruction_data, + &program, + ) + .await + .map(|(resp, secrets)| { + let mut secrets = secrets.into_iter(); + let mut secrets_res = [None; 7]; + + for acc_id in [ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ] + .iter() + .enumerate() + { + if acc_id.1.is_private() { + let secret = secrets.next().expect("expected next secret"); + + secrets_res[acc_id.0] = Some(secret); + } + } + + (resp, secrets_res) + }) + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_remove_liq( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_a: PrivacyPreservingAccount, + vault_holding_b: PrivacyPreservingAccount, + pool_lp: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + user_holding_lp: PrivacyPreservingAccount, + balance_lp: u128, + max_amount_a: u128, + max_amount_b: u128, + ) -> Result { + let (instruction, program) = + amm_program_preparation_remove_liq(balance_lp, max_amount_a, max_amount_b); + + match ( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ) { + ( + PrivacyPreservingAccount::Public(amm_pool), + PrivacyPreservingAccount::Public(vault_holding_a), + PrivacyPreservingAccount::Public(vault_holding_b), + PrivacyPreservingAccount::Public(pool_lp), + PrivacyPreservingAccount::Public(user_holding_a), + PrivacyPreservingAccount::Public(user_holding_b), + PrivacyPreservingAccount::Public(user_holding_lp), + ) => { + let account_ids = vec![ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ]; + + // ToDo: Correct authorization + // ToDo: Also correct instruction serialization + + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + vec![], + instruction, + ) + .unwrap(); + + let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) + } + _ => unreachable!(), + } + } + + #[allow(clippy::too_many_arguments)] + pub async fn send_remove_liq_privacy_preserving( + &self, + amm_pool: PrivacyPreservingAccount, + vault_holding_a: PrivacyPreservingAccount, + vault_holding_b: PrivacyPreservingAccount, + pool_lp: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + user_holding_lp: PrivacyPreservingAccount, + balance_lp: u128, + max_amount_a: u128, + max_amount_b: u128, + ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { + let (instruction_data, program) = + amm_program_preparation_remove_liq(balance_lp, max_amount_a, max_amount_b); + + self.0 + .send_privacy_preserving_tx( + vec![ + amm_pool.clone(), + vault_holding_a.clone(), + vault_holding_b.clone(), + pool_lp.clone(), + user_holding_a.clone(), + user_holding_b.clone(), + user_holding_lp.clone(), + ], + &instruction_data, + &program, + ) + .await + .map(|(resp, secrets)| { + let mut secrets = secrets.into_iter(); + let mut secrets_res = [None; 7]; + + for acc_id in [ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ] + .iter() + .enumerate() + { + if acc_id.1.is_private() { + let secret = secrets.next().expect("expected next secret"); + + secrets_res[acc_id.0] = Some(secret); + } + } + + (resp, secrets_res) + }) + } +} + +#[allow(unused)] +fn amm_program_preparation_definition( + balance_a: u128, + balance_b: u128, +) -> (InstructionData, Program) { + // An instruction data of 65-bytes, indicating the initial amm reserves' balances and + // token_program_id with the following layout: + // [0x00 || array of balances (little-endian 16 bytes) || AMM_PROGRAM_ID)] + let amm_program_id = Program::token().id(); + + let mut instruction = [0; 65]; + instruction[1..17].copy_from_slice(&balance_a.to_le_bytes()); + instruction[17..33].copy_from_slice(&balance_b.to_le_bytes()); + + // This can be done less verbose, but it is better to use same way, as in amm program + instruction[33..37].copy_from_slice(&amm_program_id[0].to_le_bytes()); + instruction[37..41].copy_from_slice(&amm_program_id[1].to_le_bytes()); + instruction[41..45].copy_from_slice(&amm_program_id[2].to_le_bytes()); + instruction[45..49].copy_from_slice(&amm_program_id[3].to_le_bytes()); + instruction[49..53].copy_from_slice(&amm_program_id[4].to_le_bytes()); + instruction[53..57].copy_from_slice(&amm_program_id[5].to_le_bytes()); + instruction[57..61].copy_from_slice(&amm_program_id[6].to_le_bytes()); + instruction[61..].copy_from_slice(&amm_program_id[7].to_le_bytes()); + + let instruction_data = + Program::serialize_instruction(OrphanHack65BytesInput(instruction)).unwrap(); + let program = Program::token(); + + (instruction_data, program) +} + +fn amm_program_preparation_swap( + amount_in: u128, + min_amount_out: u128, + token_definition_id: AccountId, +) -> (InstructionData, Program) { + // An instruction data byte string of length 65, indicating which token type to swap, quantity + // of tokens put into the swap (of type TOKEN_DEFINITION_ID) and min_amount_out. + // [0x01 || amount (little-endian 16 bytes) || TOKEN_DEFINITION_ID]. + let mut instruction = [0; 65]; + instruction[1..17].copy_from_slice(&amount_in.to_le_bytes()); + instruction[17..33].copy_from_slice(&min_amount_out.to_le_bytes()); + + // This can be done less verbose, but it is better to use same way, as in amm program + instruction[33..].copy_from_slice(&token_definition_id.to_bytes()); + + let instruction_data = + Program::serialize_instruction(OrphanHack65BytesInput(instruction)).unwrap(); + let program = Program::token(); + + (instruction_data, program) +} + +fn amm_program_preparation_add_liq( + min_amount_lp: u128, + max_amount_a: u128, + max_amount_b: u128, +) -> (InstructionData, Program) { + // An instruction data byte string of length 49, amounts for minimum amount of liquidity from + // add (min_amount_lp), max amount added for each token (max_amount_a and max_amount_b); + // indicate [0x02 || array of of balances (little-endian 16 bytes)]. + let mut instruction = [0; 49]; + instruction[0] = 0x02; + + instruction[1..17].copy_from_slice(&min_amount_lp.to_le_bytes()); + instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); + instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); + + let instruction_data = + Program::serialize_instruction(OrphanHack49BytesInput(instruction)).unwrap(); + let program = Program::token(); + + (instruction_data, program) +} + +fn amm_program_preparation_remove_liq( + balance_lp: u128, + max_amount_a: u128, + max_amount_b: u128, +) -> (InstructionData, Program) { + // An instruction data byte string of length 49, amounts for minimum amount of liquidity to + // redeem (balance_lp), minimum balance of each token to remove (min_amount_a and + // min_amount_b); indicate [0x03 || array of balances (little-endian 16 bytes)]. + let mut instruction = [0; 49]; + instruction[0] = 0x03; + + instruction[1..17].copy_from_slice(&balance_lp.to_le_bytes()); + instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); + instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); + + let instruction_data = + Program::serialize_instruction(OrphanHack49BytesInput(instruction)).unwrap(); + let program = Program::token(); + + (instruction_data, program) +} diff --git a/wallet/src/program_facades/mod.rs b/wallet/src/program_facades/mod.rs index 27d30ce..5fdcdb3 100644 --- a/wallet/src/program_facades/mod.rs +++ b/wallet/src/program_facades/mod.rs @@ -1,6 +1,7 @@ //! This module contains [`WalletCore`](crate::WalletCore) facades for interacting with various //! on-chain programs. +pub mod amm; pub mod native_token_transfer; pub mod pinata; pub mod token; From b3dca76b677602fa94ee1874adb430fd179d8eb7 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 17 Dec 2025 11:44:52 +0200 Subject: [PATCH 03/15] fix: intercommit --- common/src/error.rs | 3 + integration_tests/src/test_suite_map.rs | 196 +++++++++++++- nssa/core/src/program.rs | 1 + nssa/program_methods/guest/src/bin/amm.rs | 1 - nssa/src/public_transaction/message.rs | 14 + wallet/src/cli/account.rs | 6 +- wallet/src/program_facades/amm.rs | 301 ++++++++++++++++++---- 7 files changed, 463 insertions(+), 59 deletions(-) diff --git a/common/src/error.rs b/common/src/error.rs index e1634a6..5c81a10 100644 --- a/common/src/error.rs +++ b/common/src/error.rs @@ -1,3 +1,4 @@ +use nssa::AccountId; use serde::Deserialize; use crate::rpc_primitives::errors::RpcError; @@ -49,4 +50,6 @@ pub enum ExecutionFailureKind { SequencerClientError(#[from] SequencerClientError), #[error("Can not pay for operation")] InsufficientFundsError, + #[error("Account {0} data is invalid")] + AccountDataError(AccountId), } diff --git a/integration_tests/src/test_suite_map.rs b/integration_tests/src/test_suite_map.rs index 8012e17..6c78d6e 100644 --- a/integration_tests/src/test_suite_map.rs +++ b/integration_tests/src/test_suite_map.rs @@ -23,8 +23,8 @@ use wallet::{ account::{AccountSubcommand, NewSubcommand}, config::ConfigSubcommand, programs::{ - native_token_transfer::AuthTransferSubcommand, pinata::PinataProgramAgnosticSubcommand, - token::TokenProgramAgnosticSubcommand, + amm::AmmProgramAgnosticSubcommand, native_token_transfer::AuthTransferSubcommand, + pinata::PinataProgramAgnosticSubcommand, token::TokenProgramAgnosticSubcommand, }, }, config::PersistentStorage, @@ -2035,6 +2035,198 @@ pub fn prepare_function_map() -> HashMap { info!("Success!"); } + #[nssa_integration_test] + pub async fn test_amm_public() { + info!("########## test_amm_public ##########"); + let wallet_config = fetch_config().await.unwrap(); + + // Create new account for the token definition + let SubcommandReturnValue::RegisterAccount { + account_id: definition_account_id, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the token supply holder + let SubcommandReturnValue::RegisterAccount { + account_id: supply_account_id, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for receiving a token transaction + let SubcommandReturnValue::RegisterAccount { + account_id: recipient_account_id_1, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for receiving a token transaction + let SubcommandReturnValue::RegisterAccount { + account_id: recipient_account_id_2, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + + // Create new token + let subcommand = TokenProgramAgnosticSubcommand::New { + definition_account_id: make_public_account_input_from_str( + &definition_account_id.to_string(), + ), + supply_account_id: make_public_account_input_from_str(&supply_account_id.to_string()), + name: "A NAME".to_string(), + total_supply: 37, + }; + wallet::cli::execute_subcommand(Command::Token(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let seq_client = SequencerClient::new(wallet_config.sequencer_addr.clone()).unwrap(); + + // Transfer 7 tokens from `supply_acc` to the account at account_id `recipient_account_id_1` + let subcommand = TokenProgramAgnosticSubcommand::Send { + from: make_public_account_input_from_str(&supply_account_id.to_string()), + to: Some(make_public_account_input_from_str( + &recipient_account_id_1.to_string(), + )), + to_npk: None, + to_ipk: None, + amount: 7, + }; + + wallet::cli::execute_subcommand(Command::Token(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + // Transfer 7 tokens from `supply_acc` to the account at account_id `recipient_account_id_2` + let subcommand = TokenProgramAgnosticSubcommand::Send { + from: make_public_account_input_from_str(&supply_account_id.to_string()), + to: Some(make_public_account_input_from_str( + &recipient_account_id_2.to_string(), + )), + to_npk: None, + to_ipk: None, + amount: 7, + }; + + wallet::cli::execute_subcommand(Command::Token(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + info!("=================== SETUP FINISHED ==============="); + + // Create new AMM + + // Setup accounts + // Create new account for the amm pool + let SubcommandReturnValue::RegisterAccount { + account_id: amm_pool, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the vault a + let SubcommandReturnValue::RegisterAccount { + account_id: vault_holding_a, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the vault b + let SubcommandReturnValue::RegisterAccount { + account_id: vault_holding_b, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the pool lp + let SubcommandReturnValue::RegisterAccount { + account_id: pool_lp, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the user holding lp + let SubcommandReturnValue::RegisterAccount { + account_id: user_holding_lp, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + + // Send creation tx + let subcommand = AmmProgramAgnosticSubcommand::New { + amm_pool: make_public_account_input_from_str(&amm_pool.to_string()), + vault_holding_a: make_public_account_input_from_str(&vault_holding_a.to_string()), + vault_holding_b: make_public_account_input_from_str(&vault_holding_b.to_string()), + pool_lp: make_public_account_input_from_str(&pool_lp.to_string()), + user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), + user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), + user_holding_lp: make_public_account_input_from_str(&user_holding_lp.to_string()), + balance_a: 3, + balance_b: 3, + }; + + wallet::cli::execute_subcommand(Command::AMM(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let amm_pool_acc = seq_client + .get_account(amm_pool.to_string()) + .await + .unwrap() + .account; + + info!("AMM pool is {amm_pool_acc:#?}"); + + info!("Success!"); + } + println!("{function_map:#?}"); function_map diff --git a/nssa/core/src/program.rs b/nssa/core/src/program.rs index 03fe163..4ad0569 100644 --- a/nssa/core/src/program.rs +++ b/nssa/core/src/program.rs @@ -124,6 +124,7 @@ pub struct ProgramOutput { pub fn read_nssa_inputs() -> (ProgramInput, InstructionData) { let pre_states: Vec = env::read(); let instruction_words: InstructionData = env::read(); + println!("INSTRUCTION WORKDS IS {instruction_words:?}"); let instruction = T::deserialize(&mut Deserializer::new(instruction_words.as_ref())).unwrap(); ( ProgramInput { diff --git a/nssa/program_methods/guest/src/bin/amm.rs b/nssa/program_methods/guest/src/bin/amm.rs index 275defa..0882a0d 100644 --- a/nssa/program_methods/guest/src/bin/amm.rs +++ b/nssa/program_methods/guest/src/bin/amm.rs @@ -55,7 +55,6 @@ use nssa_core::{ // * compute_pool_pda_seed: token definitions for the pool pair // * compute_vault_pda_seed: pool definition id, definition token id, // * compute_liquidity_token_pda_seed: pool definition id -// const POOL_DEFINITION_DATA_SIZE: usize = 225; diff --git a/nssa/src/public_transaction/message.rs b/nssa/src/public_transaction/message.rs index 63ed03f..a585c2c 100644 --- a/nssa/src/public_transaction/message.rs +++ b/nssa/src/public_transaction/message.rs @@ -30,4 +30,18 @@ impl Message { instruction_data, }) } + + pub fn new_preserialized( + program_id: ProgramId, + account_ids: Vec, + nonces: Vec, + instruction_data: Vec, + ) -> Self { + Self { + program_id, + account_ids, + nonces, + instruction_data, + } + } } diff --git a/wallet/src/cli/account.rs b/wallet/src/cli/account.rs index 480480d..67cf8f8 100644 --- a/wallet/src/cli/account.rs +++ b/wallet/src/cli/account.rs @@ -25,10 +25,10 @@ struct TokenDefinition { total_supply: u128, } -struct TokenHolding { +pub struct TokenHolding { #[allow(unused)] account_type: u8, - definition_id: AccountId, + pub definition_id: AccountId, balance: u128, } @@ -51,7 +51,7 @@ impl TokenDefinition { } impl TokenHolding { - fn parse(data: &[u8]) -> Option { + pub fn parse(data: &[u8]) -> Option { if data.len() != TOKEN_HOLDING_DATA_SIZE || data[0] != TOKEN_HOLDING_TYPE { None } else { diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index 13e4940..682c8d3 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -1,30 +1,43 @@ use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxResponse}; use nssa::{AccountId, program::Program}; use nssa_core::{SharedSecretKey, program::InstructionData}; -use serde::Serialize; -use crate::{PrivacyPreservingAccount, WalletCore}; +use crate::{PrivacyPreservingAccount, WalletCore, cli::account::TokenHolding}; -struct OrphanHack65BytesInput([u8; 65]); +struct OrphanHack65BytesInput([u32; 65]); -impl Serialize for OrphanHack65BytesInput { - fn serialize(&self, serializer: S) -> Result - where - S: serde::Serializer, - { - serializer.serialize_bytes(&self.0) +impl OrphanHack65BytesInput { + fn expand(orig: [u8; 65]) -> Self { + let mut res = [0u32; 65]; + + for (idx, val) in orig.into_iter().enumerate() { + res[idx] = val as u32; + } + + Self(res) } + + fn words(&self) -> Vec { + self.0.to_vec() + } } -struct OrphanHack49BytesInput([u8; 49]); +struct OrphanHack49BytesInput([u32; 49]); -impl Serialize for OrphanHack49BytesInput { - fn serialize(&self, serializer: S) -> Result - where - S: serde::Serializer, - { - serializer.serialize_bytes(&self.0) +impl OrphanHack49BytesInput { + fn expand(orig: [u8; 49]) -> Self { + let mut res = [0u32; 49]; + + for (idx, val) in orig.into_iter().enumerate() { + res[idx] = val as u32; + } + + Self(res) } + + fn words(&self) -> Vec { + self.0.to_vec() + } } pub struct AMM<'w>(pub &'w WalletCore); @@ -33,17 +46,91 @@ impl AMM<'_> { #[allow(clippy::too_many_arguments)] pub async fn send_new_amm_definition( &self, - _amm_pool: PrivacyPreservingAccount, - _vault_holding_a: PrivacyPreservingAccount, - _vault_holding_b: PrivacyPreservingAccount, - _pool_lp: PrivacyPreservingAccount, - _user_holding_a: PrivacyPreservingAccount, - _user_holding_b: PrivacyPreservingAccount, - _user_holding_lp: PrivacyPreservingAccount, - _balance_a: u128, - _balance_b: u128, + amm_pool: PrivacyPreservingAccount, + vault_holding_a: PrivacyPreservingAccount, + vault_holding_b: PrivacyPreservingAccount, + pool_lp: PrivacyPreservingAccount, + user_holding_a: PrivacyPreservingAccount, + user_holding_b: PrivacyPreservingAccount, + user_holding_lp: PrivacyPreservingAccount, + balance_a: u128, + balance_b: u128, ) -> Result { - todo!() + let (instruction, program) = amm_program_preparation_definition(balance_a, balance_b); + + match ( + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ) { + ( + PrivacyPreservingAccount::Public(amm_pool), + PrivacyPreservingAccount::Public(vault_holding_a), + PrivacyPreservingAccount::Public(vault_holding_b), + PrivacyPreservingAccount::Public(pool_lp), + PrivacyPreservingAccount::Public(user_holding_a), + PrivacyPreservingAccount::Public(user_holding_b), + PrivacyPreservingAccount::Public(user_holding_lp), + ) => { + let account_ids = vec![ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ]; + + let Ok(nonces) = self + .0 + .get_accounts_nonces(vec![user_holding_a, user_holding_b]) + .await + else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let Some(signing_key_a) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_a) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let Some(signing_key_b) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_b) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + nonces, + instruction, + ) + .unwrap(); + + let witness_set = nssa::public_transaction::WitnessSet::for_message( + &message, + &[signing_key_a, signing_key_b], + ); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) + } + _ => unreachable!(), + } } #[allow(clippy::too_many_arguments)] @@ -99,18 +186,55 @@ impl AMM<'_> { user_holding_b, ]; - // ToDo: Correct authorization - // ToDo: Also correct instruction serialization + let account_id_auth; - let message = nssa::public_transaction::Message::try_new( + // Checking, which account are associated with TokenDefinition + let token_holder_acc_a = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let token_holder_acc_b = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + + let token_holder_a = TokenHolding::parse(&token_holder_acc_a.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))?; + let token_holder_b = TokenHolding::parse(&token_holder_acc_b.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_b))?; + + if token_holder_a.definition_id == token_definition_id { + account_id_auth = user_holding_a; + } else if token_holder_b.definition_id == token_definition_id { + account_id_auth = user_holding_b; + } else { + return Err(ExecutionFailureKind::AccountDataError(token_definition_id)); + } + + let Ok(nonces) = self.0.get_accounts_nonces(vec![account_id_auth]).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let Some(signing_key) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&account_id_auth) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let message = nssa::public_transaction::Message::new_preserialized( program.id(), account_ids, - vec![], + nonces, instruction, - ) - .unwrap(); + ); - let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + let witness_set = + nssa::public_transaction::WitnessSet::for_message(&message, &[signing_key]); let tx = nssa::PublicTransaction::new(message, witness_set); @@ -218,18 +342,44 @@ impl AMM<'_> { user_holding_lp, ]; - // ToDo: Correct authorization - // ToDo: Also correct instruction serialization + let Ok(nonces) = self + .0 + .get_accounts_nonces(vec![user_holding_a, user_holding_b]) + .await + else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let Some(signing_key_a) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_a) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let Some(signing_key_b) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_b) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; let message = nssa::public_transaction::Message::try_new( program.id(), account_ids, - vec![], + nonces, instruction, ) .unwrap(); - let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + let witness_set = nssa::public_transaction::WitnessSet::for_message( + &message, + &[signing_key_a, signing_key_b], + ); let tx = nssa::PublicTransaction::new(message, witness_set); @@ -343,18 +493,44 @@ impl AMM<'_> { user_holding_lp, ]; - // ToDo: Correct authorization - // ToDo: Also correct instruction serialization + let Ok(nonces) = self + .0 + .get_accounts_nonces(vec![user_holding_a, user_holding_b]) + .await + else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let Some(signing_key_a) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_a) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let Some(signing_key_b) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_b) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; let message = nssa::public_transaction::Message::try_new( program.id(), account_ids, - vec![], + nonces, instruction, ) .unwrap(); - let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[]); + let witness_set = nssa::public_transaction::WitnessSet::for_message( + &message, + &[signing_key_a, signing_key_b], + ); let tx = nssa::PublicTransaction::new(message, witness_set); @@ -431,7 +607,7 @@ fn amm_program_preparation_definition( ) -> (InstructionData, Program) { // An instruction data of 65-bytes, indicating the initial amm reserves' balances and // token_program_id with the following layout: - // [0x00 || array of balances (little-endian 16 bytes) || AMM_PROGRAM_ID)] + // [0x00 || array of balances (little-endian 16 bytes) || TOKEN_PROGRAM_ID)] let amm_program_id = Program::token().id(); let mut instruction = [0; 65]; @@ -448,9 +624,8 @@ fn amm_program_preparation_definition( instruction[57..61].copy_from_slice(&amm_program_id[6].to_le_bytes()); instruction[61..].copy_from_slice(&amm_program_id[7].to_le_bytes()); - let instruction_data = - Program::serialize_instruction(OrphanHack65BytesInput(instruction)).unwrap(); - let program = Program::token(); + let instruction_data = OrphanHack65BytesInput::expand(instruction).words(); + let program = Program::amm(); (instruction_data, program) } @@ -471,8 +646,8 @@ fn amm_program_preparation_swap( instruction[33..].copy_from_slice(&token_definition_id.to_bytes()); let instruction_data = - Program::serialize_instruction(OrphanHack65BytesInput(instruction)).unwrap(); - let program = Program::token(); + OrphanHack65BytesInput::expand(instruction).words(); + let program = Program::amm(); (instruction_data, program) } @@ -492,9 +667,8 @@ fn amm_program_preparation_add_liq( instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); - let instruction_data = - Program::serialize_instruction(OrphanHack49BytesInput(instruction)).unwrap(); - let program = Program::token(); + let instruction_data = OrphanHack49BytesInput::expand(instruction).words(); + let program = Program::amm(); (instruction_data, program) } @@ -514,9 +688,30 @@ fn amm_program_preparation_remove_liq( instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); - let instruction_data = - Program::serialize_instruction(OrphanHack49BytesInput(instruction)).unwrap(); - let program = Program::token(); + let instruction_data = OrphanHack49BytesInput::expand(instruction).words(); + let program = Program::amm(); (instruction_data, program) } + +#[cfg(test)] +mod tests { + use crate::program_facades::amm::OrphanHack65BytesInput; + + + #[test] + fn test_correct_ser() { + let mut arr = [0u8; 65]; + + for i in 0..64 { + arr[i] = i as u8; + } + + let hack = OrphanHack65BytesInput::expand(arr); + let instruction_data = hack.words(); + + println!("{instruction_data:?}"); + + //assert_eq!(serialization_res_1, serialization_res_2); + } +} From 92b5dffec273f974fb7c2266c55c0c7e3cd3945a Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 17 Dec 2025 14:21:36 +0200 Subject: [PATCH 04/15] fix: public swaps --- integration_tests/src/test_suite_map.rs | 211 ++++++++++----- nssa/core/src/program.rs | 1 - nssa/src/public_transaction/message.rs | 1 + nssa/src/state.rs | 1 + wallet/Cargo.toml | 1 + wallet/src/cli/programs/amm.rs | 89 +------ wallet/src/program_facades/amm.rs | 341 ++++++++++++++++-------- 7 files changed, 394 insertions(+), 251 deletions(-) diff --git a/integration_tests/src/test_suite_map.rs b/integration_tests/src/test_suite_map.rs index 6c78d6e..e1102dc 100644 --- a/integration_tests/src/test_suite_map.rs +++ b/integration_tests/src/test_suite_map.rs @@ -2042,7 +2042,7 @@ pub fn prepare_function_map() -> HashMap { // Create new account for the token definition let SubcommandReturnValue::RegisterAccount { - account_id: definition_account_id, + account_id: definition_account_id_1, } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( NewSubcommand::Public { cci: None }, ))) @@ -2053,7 +2053,7 @@ pub fn prepare_function_map() -> HashMap { }; // Create new account for the token supply holder let SubcommandReturnValue::RegisterAccount { - account_id: supply_account_id, + account_id: supply_account_id_1, } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( NewSubcommand::Public { cci: None }, ))) @@ -2073,6 +2073,28 @@ pub fn prepare_function_map() -> HashMap { else { panic!("invalid subcommand return value"); }; + // Create new account for the token definition + let SubcommandReturnValue::RegisterAccount { + account_id: definition_account_id_2, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; + // Create new account for the token supply holder + let SubcommandReturnValue::RegisterAccount { + account_id: supply_account_id_2, + } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( + NewSubcommand::Public { cci: None }, + ))) + .await + .unwrap() + else { + panic!("invalid subcommand return value"); + }; // Create new account for receiving a token transaction let SubcommandReturnValue::RegisterAccount { account_id: recipient_account_id_2, @@ -2088,10 +2110,10 @@ pub fn prepare_function_map() -> HashMap { // Create new token let subcommand = TokenProgramAgnosticSubcommand::New { definition_account_id: make_public_account_input_from_str( - &definition_account_id.to_string(), + &definition_account_id_1.to_string(), ), - supply_account_id: make_public_account_input_from_str(&supply_account_id.to_string()), - name: "A NAME".to_string(), + supply_account_id: make_public_account_input_from_str(&supply_account_id_1.to_string()), + name: "A NAM1".to_string(), total_supply: 37, }; wallet::cli::execute_subcommand(Command::Token(subcommand)) @@ -2100,11 +2122,9 @@ pub fn prepare_function_map() -> HashMap { info!("Waiting for next block creation"); tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; - let seq_client = SequencerClient::new(wallet_config.sequencer_addr.clone()).unwrap(); - // Transfer 7 tokens from `supply_acc` to the account at account_id `recipient_account_id_1` let subcommand = TokenProgramAgnosticSubcommand::Send { - from: make_public_account_input_from_str(&supply_account_id.to_string()), + from: make_public_account_input_from_str(&supply_account_id_1.to_string()), to: Some(make_public_account_input_from_str( &recipient_account_id_1.to_string(), )), @@ -2119,9 +2139,26 @@ pub fn prepare_function_map() -> HashMap { info!("Waiting for next block creation"); tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; - // Transfer 7 tokens from `supply_acc` to the account at account_id `recipient_account_id_2` + // Create new token + let subcommand = TokenProgramAgnosticSubcommand::New { + definition_account_id: make_public_account_input_from_str( + &definition_account_id_2.to_string(), + ), + supply_account_id: make_public_account_input_from_str(&supply_account_id_2.to_string()), + name: "A NAM2".to_string(), + total_supply: 37, + }; + wallet::cli::execute_subcommand(Command::Token(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let seq_client = SequencerClient::new(wallet_config.sequencer_addr.clone()).unwrap(); + + // Transfer 7 tokens from `supply_acc` to the account at account_id `recipient_account_id_1` let subcommand = TokenProgramAgnosticSubcommand::Send { - from: make_public_account_input_from_str(&supply_account_id.to_string()), + from: make_public_account_input_from_str(&supply_account_id_2.to_string()), to: Some(make_public_account_input_from_str( &recipient_account_id_2.to_string(), )), @@ -2141,50 +2178,6 @@ pub fn prepare_function_map() -> HashMap { // Create new AMM // Setup accounts - // Create new account for the amm pool - let SubcommandReturnValue::RegisterAccount { - account_id: amm_pool, - } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( - NewSubcommand::Public { cci: None }, - ))) - .await - .unwrap() - else { - panic!("invalid subcommand return value"); - }; - // Create new account for the vault a - let SubcommandReturnValue::RegisterAccount { - account_id: vault_holding_a, - } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( - NewSubcommand::Public { cci: None }, - ))) - .await - .unwrap() - else { - panic!("invalid subcommand return value"); - }; - // Create new account for the vault b - let SubcommandReturnValue::RegisterAccount { - account_id: vault_holding_b, - } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( - NewSubcommand::Public { cci: None }, - ))) - .await - .unwrap() - else { - panic!("invalid subcommand return value"); - }; - // Create new account for the pool lp - let SubcommandReturnValue::RegisterAccount { - account_id: pool_lp, - } = wallet::cli::execute_subcommand(Command::Account(AccountSubcommand::New( - NewSubcommand::Public { cci: None }, - ))) - .await - .unwrap() - else { - panic!("invalid subcommand return value"); - }; // Create new account for the user holding lp let SubcommandReturnValue::RegisterAccount { account_id: user_holding_lp, @@ -2199,10 +2192,6 @@ pub fn prepare_function_map() -> HashMap { // Send creation tx let subcommand = AmmProgramAgnosticSubcommand::New { - amm_pool: make_public_account_input_from_str(&amm_pool.to_string()), - vault_holding_a: make_public_account_input_from_str(&vault_holding_a.to_string()), - vault_holding_b: make_public_account_input_from_str(&vault_holding_b.to_string()), - pool_lp: make_public_account_input_from_str(&pool_lp.to_string()), user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), user_holding_lp: make_public_account_input_from_str(&user_holding_lp.to_string()), @@ -2216,13 +2205,113 @@ pub fn prepare_function_map() -> HashMap { info!("Waiting for next block creation"); tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; - let amm_pool_acc = seq_client - .get_account(amm_pool.to_string()) + let user_holding_a_acc = seq_client + .get_account(recipient_account_id_1.to_string()) .await .unwrap() .account; - info!("AMM pool is {amm_pool_acc:#?}"); + let user_holding_b_acc = seq_client + .get_account(recipient_account_id_2.to_string()) + .await + .unwrap() + .account; + + let user_holding_lp_acc = seq_client + .get_account(user_holding_lp.to_string()) + .await + .unwrap() + .account; + + assert_eq!( + user_holding_a_acc.data.as_ref(), + &[ + 1, 216, 180, 23, 229, 146, 37, 77, 185, 234, 186, 245, 33, 228, 197, 251, 244, 10, + 137, 115, 157, 2, 246, 137, 52, 234, 64, 155, 199, 101, 15, 43, 83, 4, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); + + assert_eq!( + user_holding_b_acc.data.as_ref(), + &[ + 1, 244, 191, 88, 67, 111, 12, 245, 25, 212, 169, 62, 209, 159, 73, 107, 101, 173, + 88, 13, 55, 71, 91, 113, 88, 208, 91, 136, 222, 139, 2, 97, 110, 4, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); + + assert_eq!( + user_holding_lp_acc.data.as_ref(), + &[ + 1, 16, 61, 24, 200, 168, 141, 91, 149, 164, 35, 114, 25, 6, 40, 204, 181, 95, 39, + 59, 56, 56, 96, 222, 157, 226, 48, 111, 53, 30, 1, 41, 94, 3, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); + + info!("=================== AMM DEFINITION FINISHED ==============="); + + // Make swap + + let subcommand = AmmProgramAgnosticSubcommand::Swap { + user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), + user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), + amount_in: 2, + min_amount_out: 1, + token_definition: definition_account_id_1.to_string(), + }; + + wallet::cli::execute_subcommand(Command::AMM(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let user_holding_a_acc = seq_client + .get_account(recipient_account_id_1.to_string()) + .await + .unwrap() + .account; + + let user_holding_b_acc = seq_client + .get_account(recipient_account_id_2.to_string()) + .await + .unwrap() + .account; + + let user_holding_lp_acc = seq_client + .get_account(user_holding_lp.to_string()) + .await + .unwrap() + .account; + + assert_eq!( + user_holding_a_acc.data.as_ref(), + &[ + 1, 216, 180, 23, 229, 146, 37, 77, 185, 234, 186, 245, 33, 228, 197, 251, 244, 10, + 137, 115, 157, 2, 246, 137, 52, 234, 64, 155, 199, 101, 15, 43, 83, 2, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); + + assert_eq!( + user_holding_b_acc.data.as_ref(), + &[ + 1, 244, 191, 88, 67, 111, 12, 245, 25, 212, 169, 62, 209, 159, 73, 107, 101, 173, + 88, 13, 55, 71, 91, 113, 88, 208, 91, 136, 222, 139, 2, 97, 110, 5, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); + + assert_eq!( + user_holding_lp_acc.data.as_ref(), + &[ + 1, 16, 61, 24, 200, 168, 141, 91, 149, 164, 35, 114, 25, 6, 40, 204, 181, 95, 39, + 59, 56, 56, 96, 222, 157, 226, 48, 111, 53, 30, 1, 41, 94, 3, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0 + ] + ); info!("Success!"); } diff --git a/nssa/core/src/program.rs b/nssa/core/src/program.rs index 4ad0569..03fe163 100644 --- a/nssa/core/src/program.rs +++ b/nssa/core/src/program.rs @@ -124,7 +124,6 @@ pub struct ProgramOutput { pub fn read_nssa_inputs() -> (ProgramInput, InstructionData) { let pre_states: Vec = env::read(); let instruction_words: InstructionData = env::read(); - println!("INSTRUCTION WORKDS IS {instruction_words:?}"); let instruction = T::deserialize(&mut Deserializer::new(instruction_words.as_ref())).unwrap(); ( ProgramInput { diff --git a/nssa/src/public_transaction/message.rs b/nssa/src/public_transaction/message.rs index a585c2c..468b04f 100644 --- a/nssa/src/public_transaction/message.rs +++ b/nssa/src/public_transaction/message.rs @@ -23,6 +23,7 @@ impl Message { instruction: T, ) -> Result { let instruction_data = Program::serialize_instruction(instruction)?; + Ok(Self { program_id, account_ids, diff --git a/nssa/src/state.rs b/nssa/src/state.rs index bd2ddc0..326bf14 100644 --- a/nssa/src/state.rs +++ b/nssa/src/state.rs @@ -99,6 +99,7 @@ impl V02State { this.insert_program(Program::authenticated_transfer_program()); this.insert_program(Program::token()); + this.insert_program(Program::amm()); this } diff --git a/wallet/Cargo.toml b/wallet/Cargo.toml index 3ea6cd1..678db92 100644 --- a/wallet/Cargo.toml +++ b/wallet/Cargo.toml @@ -24,6 +24,7 @@ sha2.workspace = true futures.workspace = true async-stream = "0.3.6" indicatif = { version = "0.18.3", features = ["improved_unicode"] } +risc0-zkvm = { version = "3.0.3", features = ['std'] } [dependencies.key_protocol] path = "../key_protocol" diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs index 3878c94..69e3a01 100644 --- a/wallet/src/cli/programs/amm.rs +++ b/wallet/src/cli/programs/amm.rs @@ -15,18 +15,6 @@ pub enum AmmProgramAgnosticSubcommand { /// /// user_holding_a and user_holding_b must be owned. New { - /// amm_pool - valid 32 byte base58 string with privacy prefix - #[arg(long)] - amm_pool: String, - /// vault_holding_a - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_a: String, - /// vault_holding_b - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_b: String, - /// pool_lp - valid 32 byte base58 string with privacy prefix - #[arg(long)] - pool_lp: String, /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] user_holding_a: String, @@ -45,15 +33,6 @@ pub enum AmmProgramAgnosticSubcommand { /// /// The account associated with swapping token must be owned Swap { - /// amm_pool - valid 32 byte base58 string with privacy prefix - #[arg(long)] - amm_pool: String, - /// vault_holding_1 - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_1: String, - /// vault_holding_2 - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_2: String, /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] user_holding_a: String, @@ -141,28 +120,12 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { ) -> Result { match self { AmmProgramAgnosticSubcommand::New { - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, user_holding_a, user_holding_b, user_holding_lp, balance_a, balance_b, } => { - let amm_pool = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&amm_pool)?, - )?; - let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_a)?, - )?; - let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_b)?, - )?; - let pool_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&pool_lp)?, - )?; let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( parse_addr_with_privacy_prefix(&user_holding_a)?, )?; @@ -173,25 +136,13 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { parse_addr_with_privacy_prefix(&user_holding_lp)?, )?; - let is_public_tx = [ - &amm_pool, - &vault_holding_a, - &vault_holding_b, - &pool_lp, - &user_holding_a, - &user_holding_b, - &user_holding_lp, - ] - .into_iter() - .all(|acc| acc.is_public()); + let is_public_tx = [&user_holding_a, &user_holding_b, &user_holding_lp] + .into_iter() + .all(|acc| acc.is_public()); if is_public_tx { AMM(wallet_core) .send_new_amm_definition( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, user_holding_a, user_holding_b, user_holding_lp, @@ -203,10 +154,6 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } else { AMM(wallet_core) .send_new_amm_definition_privacy_preserving( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, user_holding_a, user_holding_b, user_holding_lp, @@ -219,24 +166,12 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } } AmmProgramAgnosticSubcommand::Swap { - amm_pool, - vault_holding_1, - vault_holding_2, user_holding_a, user_holding_b, amount_in, min_amount_out, token_definition, } => { - let amm_pool = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&amm_pool)?, - )?; - let vault_holding_1 = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_1)?, - )?; - let vault_holding_2 = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_2)?, - )?; let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( parse_addr_with_privacy_prefix(&user_holding_a)?, )?; @@ -244,22 +179,13 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { parse_addr_with_privacy_prefix(&user_holding_b)?, )?; - let is_public_tx = [ - &amm_pool, - &vault_holding_1, - &vault_holding_2, - &user_holding_a, - &user_holding_b, - ] - .into_iter() - .all(|acc| acc.is_public()); + let is_public_tx = [&user_holding_a, &user_holding_b] + .into_iter() + .all(|acc| acc.is_public()); if is_public_tx { AMM(wallet_core) .send_swap( - amm_pool, - vault_holding_1, - vault_holding_2, user_holding_a, user_holding_b, amount_in, @@ -271,9 +197,6 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } else { AMM(wallet_core) .send_swap_privacy_preserving( - amm_pool, - vault_holding_1, - vault_holding_2, user_holding_a, user_holding_b, amount_in, diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index 682c8d3..a0691f6 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -1,9 +1,103 @@ use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxResponse}; -use nssa::{AccountId, program::Program}; -use nssa_core::{SharedSecretKey, program::InstructionData}; +use nssa::{AccountId, ProgramId, program::Program}; +use nssa_core::{SharedSecretKey, program::PdaSeed}; +use serde::{Serialize, ser::SerializeSeq}; use crate::{PrivacyPreservingAccount, WalletCore, cli::account::TokenHolding}; +fn compute_pool_pda( + amm_program_id: ProgramId, + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), + )) +} + +fn compute_pool_pda_seed( + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut i: usize = 0; + let (token_1, token_2) = loop { + if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { + let token_1 = definition_token_a_id; + let token_2 = definition_token_b_id; + break (token_1, token_2); + } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { + let token_1 = definition_token_b_id; + let token_2 = definition_token_a_id; + break (token_1, token_2); + } + + if i == 32 { + panic!("Definitions match"); + } else { + i += 1; + } + }; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&token_1.to_bytes()); + bytes[32..].copy_from_slice(&token_2.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_vault_pda( + amm_program_id: ProgramId, + pool_id: AccountId, + definition_token_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_vault_pda_seed(pool_id, definition_token_id), + )) +} + +fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { + AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) +} + +fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&[0; 32]); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + struct OrphanHack65BytesInput([u32; 65]); impl OrphanHack65BytesInput { @@ -16,10 +110,19 @@ impl OrphanHack65BytesInput { Self(res) } +} - fn words(&self) -> Vec { - self.0.to_vec() - } +impl Serialize for OrphanHack65BytesInput { + fn serialize(&self, serializer: S) -> Result + where + S: serde::Serializer, + { + let mut seq = serializer.serialize_seq(Some(65))?; + for word in self.0 { + seq.serialize_element(&word)?; + } + seq.end() + } } struct OrphanHack49BytesInput([u32; 49]); @@ -37,7 +140,20 @@ impl OrphanHack49BytesInput { fn words(&self) -> Vec { self.0.to_vec() - } + } +} + +impl Serialize for OrphanHack49BytesInput { + fn serialize(&self, serializer: S) -> Result + where + S: serde::Serializer, + { + let mut seq = serializer.serialize_seq(Some(49))?; + for word in self.0 { + seq.serialize_element(&word)?; + } + seq.end() + } } pub struct AMM<'w>(pub &'w WalletCore); @@ -46,10 +162,6 @@ impl AMM<'_> { #[allow(clippy::too_many_arguments)] pub async fn send_new_amm_definition( &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_a: PrivacyPreservingAccount, - vault_holding_b: PrivacyPreservingAccount, - pool_lp: PrivacyPreservingAccount, user_holding_a: PrivacyPreservingAccount, user_holding_b: PrivacyPreservingAccount, user_holding_lp: PrivacyPreservingAccount, @@ -58,24 +170,36 @@ impl AMM<'_> { ) -> Result { let (instruction, program) = amm_program_preparation_definition(balance_a, balance_b); - match ( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ) { + match (user_holding_a, user_holding_b, user_holding_lp) { ( - PrivacyPreservingAccount::Public(amm_pool), - PrivacyPreservingAccount::Public(vault_holding_a), - PrivacyPreservingAccount::Public(vault_holding_b), - PrivacyPreservingAccount::Public(pool_lp), PrivacyPreservingAccount::Public(user_holding_a), PrivacyPreservingAccount::Public(user_holding_b), PrivacyPreservingAccount::Public(user_holding_lp), ) => { + let amm_program_id = Program::amm().id(); + + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = + compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = + compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let pool_lp = compute_liquidity_token_pda(amm_program_id, amm_pool); + let account_ids = vec![ amm_pool, vault_holding_a, @@ -136,25 +260,18 @@ impl AMM<'_> { #[allow(clippy::too_many_arguments)] pub async fn send_new_amm_definition_privacy_preserving( &self, - _amm_pool: PrivacyPreservingAccount, - _vault_holding_a: PrivacyPreservingAccount, - _vault_holding_b: PrivacyPreservingAccount, - _pool_lp: PrivacyPreservingAccount, _user_holding_a: PrivacyPreservingAccount, _user_holding_b: PrivacyPreservingAccount, _user_holding_lp: PrivacyPreservingAccount, _balance_a: u128, _balance_b: u128, - ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { + ) -> Result<(SendTxResponse, [Option; 3]), ExecutionFailureKind> { todo!() } #[allow(clippy::too_many_arguments)] pub async fn send_swap( &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_1: PrivacyPreservingAccount, - vault_holding_2: PrivacyPreservingAccount, user_holding_a: PrivacyPreservingAccount, user_holding_b: PrivacyPreservingAccount, amount_in: u128, @@ -164,24 +281,38 @@ impl AMM<'_> { let (instruction, program) = amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); - match ( - amm_pool, - vault_holding_1, - vault_holding_2, - user_holding_a, - user_holding_b, - ) { + match (user_holding_a, user_holding_b) { ( - PrivacyPreservingAccount::Public(amm_pool), - PrivacyPreservingAccount::Public(vault_holding_1), - PrivacyPreservingAccount::Public(vault_holding_2), PrivacyPreservingAccount::Public(user_holding_a), PrivacyPreservingAccount::Public(user_holding_b), ) => { + let amm_program_id = Program::amm().id(); + + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = + compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = + compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let account_ids = vec![ amm_pool, - vault_holding_1, - vault_holding_2, + vault_holding_a, + vault_holding_b, user_holding_a, user_holding_b, ]; @@ -226,12 +357,13 @@ impl AMM<'_> { return Err(ExecutionFailureKind::KeyNotFoundError); }; - let message = nssa::public_transaction::Message::new_preserialized( + let message = nssa::public_transaction::Message::try_new( program.id(), account_ids, nonces, instruction, - ); + ) + .unwrap(); let witness_set = nssa::public_transaction::WitnessSet::for_message(&message, &[signing_key]); @@ -247,54 +379,52 @@ impl AMM<'_> { #[allow(clippy::too_many_arguments)] pub async fn send_swap_privacy_preserving( &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_1: PrivacyPreservingAccount, - vault_holding_2: PrivacyPreservingAccount, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - amount_in: u128, - min_amount_out: u128, - token_definition_id: AccountId, + _user_holding_a: PrivacyPreservingAccount, + _user_holding_b: PrivacyPreservingAccount, + _amount_in: u128, + _min_amount_out: u128, + _token_definition_id: AccountId, ) -> Result<(SendTxResponse, [Option; 5]), ExecutionFailureKind> { - let (instruction_data, program) = - amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); + todo!() + // let (instruction_data, program) = + // amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); - self.0 - .send_privacy_preserving_tx( - vec![ - amm_pool.clone(), - vault_holding_1.clone(), - vault_holding_2.clone(), - user_holding_a.clone(), - user_holding_b.clone(), - ], - &instruction_data, - &program, - ) - .await - .map(|(resp, secrets)| { - let mut secrets = secrets.into_iter(); - let mut secrets_res = [None; 5]; + // self.0 + // .send_privacy_preserving_tx( + // vec![ + // amm_pool.clone(), + // vault_holding_1.clone(), + // vault_holding_2.clone(), + // user_holding_a.clone(), + // user_holding_b.clone(), + // ], + // &instruction_data.words(), + // &program, + // ) + // .await + // .map(|(resp, secrets)| { + // let mut secrets = secrets.into_iter(); + // let mut secrets_res = [None; 5]; - for acc_id in [ - amm_pool, - vault_holding_1, - vault_holding_2, - user_holding_a, - user_holding_b, - ] - .iter() - .enumerate() - { - if acc_id.1.is_private() { - let secret = secrets.next().expect("expected next secret"); + // for acc_id in [ + // amm_pool, + // vault_holding_1, + // vault_holding_2, + // user_holding_a, + // user_holding_b, + // ] + // .iter() + // .enumerate() + // { + // if acc_id.1.is_private() { + // let secret = secrets.next().expect("expected next secret"); - secrets_res[acc_id.0] = Some(secret); - } - } + // secrets_res[acc_id.0] = Some(secret); + // } + // } - (resp, secrets_res) - }) + // (resp, secrets_res) + // }) } #[allow(clippy::too_many_arguments)] @@ -417,7 +547,7 @@ impl AMM<'_> { user_holding_b.clone(), user_holding_lp.clone(), ], - &instruction_data, + &instruction_data.words(), &program, ) .await @@ -568,7 +698,7 @@ impl AMM<'_> { user_holding_b.clone(), user_holding_lp.clone(), ], - &instruction_data, + &instruction_data.words(), &program, ) .await @@ -604,11 +734,11 @@ impl AMM<'_> { fn amm_program_preparation_definition( balance_a: u128, balance_b: u128, -) -> (InstructionData, Program) { +) -> (OrphanHack65BytesInput, Program) { // An instruction data of 65-bytes, indicating the initial amm reserves' balances and // token_program_id with the following layout: - // [0x00 || array of balances (little-endian 16 bytes) || TOKEN_PROGRAM_ID)] - let amm_program_id = Program::token().id(); + // [0x00 || array of balances (little-endian 16 bytes) || AMM_PROGRAM_ID)] + let amm_program_id = Program::amm().id(); let mut instruction = [0; 65]; instruction[1..17].copy_from_slice(&balance_a.to_le_bytes()); @@ -624,7 +754,7 @@ fn amm_program_preparation_definition( instruction[57..61].copy_from_slice(&amm_program_id[6].to_le_bytes()); instruction[61..].copy_from_slice(&amm_program_id[7].to_le_bytes()); - let instruction_data = OrphanHack65BytesInput::expand(instruction).words(); + let instruction_data = OrphanHack65BytesInput::expand(instruction); let program = Program::amm(); (instruction_data, program) @@ -634,19 +764,19 @@ fn amm_program_preparation_swap( amount_in: u128, min_amount_out: u128, token_definition_id: AccountId, -) -> (InstructionData, Program) { +) -> (OrphanHack65BytesInput, Program) { // An instruction data byte string of length 65, indicating which token type to swap, quantity // of tokens put into the swap (of type TOKEN_DEFINITION_ID) and min_amount_out. // [0x01 || amount (little-endian 16 bytes) || TOKEN_DEFINITION_ID]. let mut instruction = [0; 65]; + instruction[0] = 0x01; instruction[1..17].copy_from_slice(&amount_in.to_le_bytes()); instruction[17..33].copy_from_slice(&min_amount_out.to_le_bytes()); // This can be done less verbose, but it is better to use same way, as in amm program instruction[33..].copy_from_slice(&token_definition_id.to_bytes()); - let instruction_data = - OrphanHack65BytesInput::expand(instruction).words(); + let instruction_data = OrphanHack65BytesInput::expand(instruction); let program = Program::amm(); (instruction_data, program) @@ -656,7 +786,7 @@ fn amm_program_preparation_add_liq( min_amount_lp: u128, max_amount_a: u128, max_amount_b: u128, -) -> (InstructionData, Program) { +) -> (OrphanHack49BytesInput, Program) { // An instruction data byte string of length 49, amounts for minimum amount of liquidity from // add (min_amount_lp), max amount added for each token (max_amount_a and max_amount_b); // indicate [0x02 || array of of balances (little-endian 16 bytes)]. @@ -667,7 +797,7 @@ fn amm_program_preparation_add_liq( instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); - let instruction_data = OrphanHack49BytesInput::expand(instruction).words(); + let instruction_data = OrphanHack49BytesInput::expand(instruction); let program = Program::amm(); (instruction_data, program) @@ -677,7 +807,7 @@ fn amm_program_preparation_remove_liq( balance_lp: u128, max_amount_a: u128, max_amount_b: u128, -) -> (InstructionData, Program) { +) -> (OrphanHack49BytesInput, Program) { // An instruction data byte string of length 49, amounts for minimum amount of liquidity to // redeem (balance_lp), minimum balance of each token to remove (min_amount_a and // min_amount_b); indicate [0x03 || array of balances (little-endian 16 bytes)]. @@ -688,7 +818,7 @@ fn amm_program_preparation_remove_liq( instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); - let instruction_data = OrphanHack49BytesInput::expand(instruction).words(); + let instruction_data = OrphanHack49BytesInput::expand(instruction); let program = Program::amm(); (instruction_data, program) @@ -698,20 +828,19 @@ fn amm_program_preparation_remove_liq( mod tests { use crate::program_facades::amm::OrphanHack65BytesInput; - #[test] fn test_correct_ser() { let mut arr = [0u8; 65]; - for i in 0..64 { - arr[i] = i as u8; + for (i, item) in arr.iter_mut().enumerate().take(64) { + *item = i as u8; } let hack = OrphanHack65BytesInput::expand(arr); - let instruction_data = hack.words(); + let instruction_data = serde_json::to_string(&hack).unwrap(); println!("{instruction_data:?}"); - //assert_eq!(serialization_res_1, serialization_res_2); + // assert_eq!(serialization_res_1, serialization_res_2); } } From cde11e75d65d519da7d8d41a8fe36b17339eafd4 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Wed, 17 Dec 2025 15:58:25 +0200 Subject: [PATCH 05/15] fix: state test update --- nssa/src/state.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/nssa/src/state.rs b/nssa/src/state.rs index 326bf14..4ff815b 100644 --- a/nssa/src/state.rs +++ b/nssa/src/state.rs @@ -341,6 +341,7 @@ pub mod tests { authenticated_transfers_program, ); this.insert(Program::token().id(), Program::token()); + this.insert(Program::amm().id(), Program::amm()); this }; From c1283d4a0cabde313a7eda67616936d7a1fc7036 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Thu, 18 Dec 2025 11:44:38 +0200 Subject: [PATCH 06/15] fix: public execution finalized --- integration_tests/src/test_suite_map.rs | 203 +++- wallet/src/cli/programs/amm.rs | 373 +++----- .../src/cli/programs/native_token_transfer.rs | 11 +- wallet/src/cli/programs/pinata.rs | 3 +- wallet/src/cli/programs/token.rs | 19 +- wallet/src/lib.rs | 39 +- wallet/src/privacy_preserving_tx.rs | 11 +- wallet/src/program_facades/amm.rs | 904 +++++------------- wallet/src/program_facades/mod.rs | 135 +++ 9 files changed, 752 insertions(+), 946 deletions(-) diff --git a/integration_tests/src/test_suite_map.rs b/integration_tests/src/test_suite_map.rs index e1102dc..ead73d5 100644 --- a/integration_tests/src/test_suite_map.rs +++ b/integration_tests/src/test_suite_map.rs @@ -2224,30 +2224,18 @@ pub fn prepare_function_map() -> HashMap { .account; assert_eq!( - user_holding_a_acc.data.as_ref(), - &[ - 1, 216, 180, 23, 229, 146, 37, 77, 185, 234, 186, 245, 33, 228, 197, 251, 244, 10, - 137, 115, 157, 2, 246, 137, 52, 234, 64, 155, 199, 101, 15, 43, 83, 4, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_a_acc.data[33..].try_into().unwrap()), + 4 ); assert_eq!( - user_holding_b_acc.data.as_ref(), - &[ - 1, 244, 191, 88, 67, 111, 12, 245, 25, 212, 169, 62, 209, 159, 73, 107, 101, 173, - 88, 13, 55, 71, 91, 113, 88, 208, 91, 136, 222, 139, 2, 97, 110, 4, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_b_acc.data[33..].try_into().unwrap()), + 4 ); assert_eq!( - user_holding_lp_acc.data.as_ref(), - &[ - 1, 16, 61, 24, 200, 168, 141, 91, 149, 164, 35, 114, 25, 6, 40, 204, 181, 95, 39, - 59, 56, 56, 96, 222, 157, 226, 48, 111, 53, 30, 1, 41, 94, 3, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_lp_acc.data[33..].try_into().unwrap()), + 3 ); info!("=================== AMM DEFINITION FINISHED ==============="); @@ -2287,30 +2275,173 @@ pub fn prepare_function_map() -> HashMap { .account; assert_eq!( - user_holding_a_acc.data.as_ref(), - &[ - 1, 216, 180, 23, 229, 146, 37, 77, 185, 234, 186, 245, 33, 228, 197, 251, 244, 10, - 137, 115, 157, 2, 246, 137, 52, 234, 64, 155, 199, 101, 15, 43, 83, 2, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_a_acc.data[33..].try_into().unwrap()), + 2 ); assert_eq!( - user_holding_b_acc.data.as_ref(), - &[ - 1, 244, 191, 88, 67, 111, 12, 245, 25, 212, 169, 62, 209, 159, 73, 107, 101, 173, - 88, 13, 55, 71, 91, 113, 88, 208, 91, 136, 222, 139, 2, 97, 110, 5, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_b_acc.data[33..].try_into().unwrap()), + 5 ); assert_eq!( - user_holding_lp_acc.data.as_ref(), - &[ - 1, 16, 61, 24, 200, 168, 141, 91, 149, 164, 35, 114, 25, 6, 40, 204, 181, 95, 39, - 59, 56, 56, 96, 222, 157, 226, 48, 111, 53, 30, 1, 41, 94, 3, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0 - ] + u128::from_le_bytes(user_holding_lp_acc.data[33..].try_into().unwrap()), + 3 + ); + + info!("=================== FIRST SWAP FINISHED ==============="); + + // Make swap + + let subcommand = AmmProgramAgnosticSubcommand::Swap { + user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), + user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), + amount_in: 2, + min_amount_out: 1, + token_definition: definition_account_id_2.to_string(), + }; + + wallet::cli::execute_subcommand(Command::AMM(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let user_holding_a_acc = seq_client + .get_account(recipient_account_id_1.to_string()) + .await + .unwrap() + .account; + + let user_holding_b_acc = seq_client + .get_account(recipient_account_id_2.to_string()) + .await + .unwrap() + .account; + + let user_holding_lp_acc = seq_client + .get_account(user_holding_lp.to_string()) + .await + .unwrap() + .account; + + assert_eq!( + u128::from_le_bytes(user_holding_a_acc.data[33..].try_into().unwrap()), + 4 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_b_acc.data[33..].try_into().unwrap()), + 3 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_lp_acc.data[33..].try_into().unwrap()), + 3 + ); + + info!("=================== SECOND SWAP FINISHED ==============="); + + // Add liquidity + + let subcommand = AmmProgramAgnosticSubcommand::AddLiquidity { + user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), + user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), + user_holding_lp: make_public_account_input_from_str(&user_holding_lp.to_string()), + min_amount_lp: 1, + max_amount_a: 2, + max_amount_b: 2, + }; + + wallet::cli::execute_subcommand(Command::AMM(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let user_holding_a_acc = seq_client + .get_account(recipient_account_id_1.to_string()) + .await + .unwrap() + .account; + + let user_holding_b_acc = seq_client + .get_account(recipient_account_id_2.to_string()) + .await + .unwrap() + .account; + + let user_holding_lp_acc = seq_client + .get_account(user_holding_lp.to_string()) + .await + .unwrap() + .account; + + assert_eq!( + u128::from_le_bytes(user_holding_a_acc.data[33..].try_into().unwrap()), + 3 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_b_acc.data[33..].try_into().unwrap()), + 1 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_lp_acc.data[33..].try_into().unwrap()), + 4 + ); + + info!("=================== ADD LIQ FINISHED ==============="); + + // Remove liquidity + + let subcommand = AmmProgramAgnosticSubcommand::RemoveLiquidity { + user_holding_a: make_public_account_input_from_str(&recipient_account_id_1.to_string()), + user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), + user_holding_lp: make_public_account_input_from_str(&user_holding_lp.to_string()), + balance_lp: 2, + max_amount_a: 1, + max_amount_b: 1, + }; + + wallet::cli::execute_subcommand(Command::AMM(subcommand)) + .await + .unwrap(); + info!("Waiting for next block creation"); + tokio::time::sleep(Duration::from_secs(TIME_TO_WAIT_FOR_BLOCK_SECONDS)).await; + + let user_holding_a_acc = seq_client + .get_account(recipient_account_id_1.to_string()) + .await + .unwrap() + .account; + + let user_holding_b_acc = seq_client + .get_account(recipient_account_id_2.to_string()) + .await + .unwrap() + .account; + + let user_holding_lp_acc = seq_client + .get_account(user_holding_lp.to_string()) + .await + .unwrap() + .account; + + assert_eq!( + u128::from_le_bytes(user_holding_a_acc.data[33..].try_into().unwrap()), + 5 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_b_acc.data[33..].try_into().unwrap()), + 4 + ); + + assert_eq!( + u128::from_le_bytes(user_holding_lp_acc.data[33..].try_into().unwrap()), + 2 ); info!("Success!"); diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs index 69e3a01..1104e0d 100644 --- a/wallet/src/cli/programs/amm.rs +++ b/wallet/src/cli/programs/amm.rs @@ -1,10 +1,11 @@ use anyhow::Result; use clap::Subcommand; +use nssa::AccountId; use crate::{ - PrivacyPreservingAccount, WalletCore, + WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, - helperfunctions::parse_addr_with_privacy_prefix, + helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix}, program_facades::amm::AMM, }; @@ -14,6 +15,8 @@ pub enum AmmProgramAgnosticSubcommand { /// Produce a new token /// /// user_holding_a and user_holding_b must be owned. + /// + /// Only public execution allowed New { /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] @@ -32,6 +35,8 @@ pub enum AmmProgramAgnosticSubcommand { /// Swap with variable privacy /// /// The account associated with swapping token must be owned + /// + /// Only public execution allowed Swap { /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] @@ -50,19 +55,9 @@ pub enum AmmProgramAgnosticSubcommand { /// Add liquidity with variable privacy /// /// user_holding_a and user_holding_b must be owned. + /// + /// Only public execution allowed AddLiquidity { - /// amm_pool - valid 32 byte base58 string with privacy prefix - #[arg(long)] - amm_pool: String, - /// vault_holding_a - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_a: String, - /// vault_holding_b - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_b: String, - /// pool_lp - valid 32 byte base58 string with privacy prefix - #[arg(long)] - pool_lp: String, /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] user_holding_a: String, @@ -82,19 +77,9 @@ pub enum AmmProgramAgnosticSubcommand { /// Remove liquidity with variable privacy /// /// user_holding_lp must be owned. + /// + /// Only public execution allowed RemoveLiquidity { - /// amm_pool - valid 32 byte base58 string with privacy prefix - #[arg(long)] - amm_pool: String, - /// vault_holding_a - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_a: String, - /// vault_holding_b - valid 32 byte base58 string with privacy prefix - #[arg(long)] - vault_holding_b: String, - /// pool_lp - valid 32 byte base58 string with privacy prefix - #[arg(long)] - pool_lp: String, /// user_holding_a - valid 32 byte base58 string with privacy prefix #[arg(long)] user_holding_a: String, @@ -126,43 +111,43 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { balance_a, balance_b, } => { - let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_a)?, - )?; - let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_b)?, - )?; - let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_lp)?, - )?; + let (user_holding_a, user_holding_a_privacy) = + parse_addr_with_privacy_prefix(&user_holding_a)?; + let (user_holding_b, user_holding_b_privacy) = + parse_addr_with_privacy_prefix(&user_holding_b)?; + let (user_holding_lp, user_holding_lp_privacy) = + parse_addr_with_privacy_prefix(&user_holding_lp)?; - let is_public_tx = [&user_holding_a, &user_holding_b, &user_holding_lp] - .into_iter() - .all(|acc| acc.is_public()); + let user_holding_a: AccountId = user_holding_a.parse()?; + let user_holding_b: AccountId = user_holding_b.parse()?; + let user_holding_lp: AccountId = user_holding_lp.parse()?; - if is_public_tx { - AMM(wallet_core) - .send_new_amm_definition( - user_holding_a, - user_holding_b, - user_holding_lp, - balance_a, - balance_b, - ) - .await?; - Ok(SubcommandReturnValue::Empty) - } else { - AMM(wallet_core) - .send_new_amm_definition_privacy_preserving( - user_holding_a, - user_holding_b, - user_holding_lp, - balance_a, - balance_b, - ) - .await?; - // ToDo: change into correct return value - Ok(SubcommandReturnValue::Empty) + match ( + user_holding_a_privacy, + user_holding_b_privacy, + user_holding_lp_privacy, + ) { + ( + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + ) => { + AMM(wallet_core) + .send_new_amm_definition( + user_holding_a, + user_holding_b, + user_holding_lp, + balance_a, + balance_b, + ) + .await?; + + Ok(SubcommandReturnValue::Empty) + } + _ => { + // ToDo: Implement after private multi-chain calls is available + anyhow::bail!("Only public execution allowed for AMM calls"); + } } } AmmProgramAgnosticSubcommand::Swap { @@ -172,47 +157,35 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { min_amount_out, token_definition, } => { - let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_a)?, - )?; - let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_b)?, - )?; + let (user_holding_a, user_holding_a_privacy) = + parse_addr_with_privacy_prefix(&user_holding_a)?; + let (user_holding_b, user_holding_b_privacy) = + parse_addr_with_privacy_prefix(&user_holding_b)?; - let is_public_tx = [&user_holding_a, &user_holding_b] - .into_iter() - .all(|acc| acc.is_public()); + let user_holding_a: AccountId = user_holding_a.parse()?; + let user_holding_b: AccountId = user_holding_b.parse()?; - if is_public_tx { - AMM(wallet_core) - .send_swap( - user_holding_a, - user_holding_b, - amount_in, - min_amount_out, - token_definition.parse()?, - ) - .await?; - Ok(SubcommandReturnValue::Empty) - } else { - AMM(wallet_core) - .send_swap_privacy_preserving( - user_holding_a, - user_holding_b, - amount_in, - min_amount_out, - token_definition.parse()?, - ) - .await?; - // ToDo: change into correct return value - Ok(SubcommandReturnValue::Empty) + match (user_holding_a_privacy, user_holding_b_privacy) { + (AccountPrivacyKind::Public, AccountPrivacyKind::Public) => { + AMM(wallet_core) + .send_swap( + user_holding_a, + user_holding_b, + amount_in, + min_amount_out, + token_definition.parse()?, + ) + .await?; + + Ok(SubcommandReturnValue::Empty) + } + _ => { + // ToDo: Implement after private multi-chain calls is available + anyhow::bail!("Only public execution allowed for AMM calls"); + } } } AmmProgramAgnosticSubcommand::AddLiquidity { - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, user_holding_a, user_holding_b, user_holding_lp, @@ -220,80 +193,47 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { max_amount_a, max_amount_b, } => { - let amm_pool = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&amm_pool)?, - )?; - let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_a)?, - )?; - let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_b)?, - )?; - let pool_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&pool_lp)?, - )?; - let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_a)?, - )?; - let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_b)?, - )?; - let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_lp)?, - )?; + let (user_holding_a, user_holding_a_privacy) = + parse_addr_with_privacy_prefix(&user_holding_a)?; + let (user_holding_b, user_holding_b_privacy) = + parse_addr_with_privacy_prefix(&user_holding_b)?; + let (user_holding_lp, user_holding_lp_privacy) = + parse_addr_with_privacy_prefix(&user_holding_lp)?; - let is_public_tx = [ - &amm_pool, - &vault_holding_a, - &vault_holding_b, - &pool_lp, - &user_holding_a, - &user_holding_b, - &user_holding_lp, - ] - .into_iter() - .all(|acc| acc.is_public()); + let user_holding_a: AccountId = user_holding_a.parse()?; + let user_holding_b: AccountId = user_holding_b.parse()?; + let user_holding_lp: AccountId = user_holding_lp.parse()?; - if is_public_tx { - AMM(wallet_core) - .send_add_liq( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - min_amount_lp, - max_amount_a, - max_amount_b, - ) - .await?; - Ok(SubcommandReturnValue::Empty) - } else { - AMM(wallet_core) - .send_add_liq_privacy_preserving( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - min_amount_lp, - max_amount_a, - max_amount_b, - ) - .await?; - // ToDo: change into correct return value - Ok(SubcommandReturnValue::Empty) + match ( + user_holding_a_privacy, + user_holding_b_privacy, + user_holding_lp_privacy, + ) { + ( + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + ) => { + AMM(wallet_core) + .send_add_liq( + user_holding_a, + user_holding_b, + user_holding_lp, + min_amount_lp, + max_amount_a, + max_amount_b, + ) + .await?; + + Ok(SubcommandReturnValue::Empty) + } + _ => { + // ToDo: Implement after private multi-chain calls is available + anyhow::bail!("Only public execution allowed for AMM calls"); + } } } AmmProgramAgnosticSubcommand::RemoveLiquidity { - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, user_holding_a, user_holding_b, user_holding_lp, @@ -301,73 +241,44 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { max_amount_a, max_amount_b, } => { - let amm_pool = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&amm_pool)?, - )?; - let vault_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_a)?, - )?; - let vault_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&vault_holding_b)?, - )?; - let pool_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&pool_lp)?, - )?; - let user_holding_a = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_a)?, - )?; - let user_holding_b = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_b)?, - )?; - let user_holding_lp = PrivacyPreservingAccount::parse_with_privacy( - parse_addr_with_privacy_prefix(&user_holding_lp)?, - )?; + let (user_holding_a, user_holding_a_privacy) = + parse_addr_with_privacy_prefix(&user_holding_a)?; + let (user_holding_b, user_holding_b_privacy) = + parse_addr_with_privacy_prefix(&user_holding_b)?; + let (user_holding_lp, user_holding_lp_privacy) = + parse_addr_with_privacy_prefix(&user_holding_lp)?; - let is_public_tx = [ - &amm_pool, - &vault_holding_a, - &vault_holding_b, - &pool_lp, - &user_holding_a, - &user_holding_b, - &user_holding_lp, - ] - .into_iter() - .all(|acc| acc.is_public()); + let user_holding_a: AccountId = user_holding_a.parse()?; + let user_holding_b: AccountId = user_holding_b.parse()?; + let user_holding_lp: AccountId = user_holding_lp.parse()?; - if is_public_tx { - AMM(wallet_core) - .send_remove_liq( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - balance_lp, - max_amount_a, - max_amount_b, - ) - .await?; - Ok(SubcommandReturnValue::Empty) - } else { - AMM(wallet_core) - .send_remove_liq_privacy_preserving( - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - balance_lp, - max_amount_a, - max_amount_b, - ) - .await?; - // ToDo: change into correct return value - Ok(SubcommandReturnValue::Empty) + match ( + user_holding_a_privacy, + user_holding_b_privacy, + user_holding_lp_privacy, + ) { + ( + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + AccountPrivacyKind::Public, + ) => { + AMM(wallet_core) + .send_remove_liq( + user_holding_a, + user_holding_b, + user_holding_lp, + balance_lp, + max_amount_a, + max_amount_b, + ) + .await?; + + Ok(SubcommandReturnValue::Empty) + } + _ => { + // ToDo: Implement after private multi-chain calls is available + anyhow::bail!("Only public execution allowed for AMM calls"); + } } } } diff --git a/wallet/src/cli/programs/native_token_transfer.rs b/wallet/src/cli/programs/native_token_transfer.rs index 9dc72ae..7868a7c 100644 --- a/wallet/src/cli/programs/native_token_transfer.rs +++ b/wallet/src/cli/programs/native_token_transfer.rs @@ -4,6 +4,7 @@ use common::transaction::NSSATransaction; use nssa::AccountId; use crate::{ + AccDecodeData::Decode, WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix}, @@ -87,7 +88,7 @@ impl WalletSubcommand for AuthTransferSubcommand { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret, account_id)]; + let acc_decode_data = vec![Decode(secret, account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -328,7 +329,7 @@ impl WalletSubcommand for NativeTokenTransferProgramSubcommandPrivate { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_from, from), (secret_to, to)]; + let acc_decode_data = vec![Decode(secret_from, from), Decode(secret_to, to)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -372,7 +373,7 @@ impl WalletSubcommand for NativeTokenTransferProgramSubcommandPrivate { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_from, from)]; + let acc_decode_data = vec![Decode(secret_from, from)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -412,7 +413,7 @@ impl WalletSubcommand for NativeTokenTransferProgramSubcommandShielded { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret, to)]; + let acc_decode_data = vec![Decode(secret, to)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -491,7 +492,7 @@ impl WalletSubcommand for NativeTokenTransferProgramSubcommand { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret, from)]; + let acc_decode_data = vec![Decode(secret, from)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, diff --git a/wallet/src/cli/programs/pinata.rs b/wallet/src/cli/programs/pinata.rs index 7712a7c..e0b6570 100644 --- a/wallet/src/cli/programs/pinata.rs +++ b/wallet/src/cli/programs/pinata.rs @@ -3,6 +3,7 @@ use clap::Subcommand; use common::{PINATA_BASE58, transaction::NSSATransaction}; use crate::{ + AccDecodeData::Decode, WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix}, @@ -159,7 +160,7 @@ impl WalletSubcommand for PinataProgramSubcommandPrivate { println!("Transaction data is {transfer_tx:?}"); if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_winner, winner_account_id)]; + let acc_decode_data = vec![Decode(secret_winner, winner_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, diff --git a/wallet/src/cli/programs/token.rs b/wallet/src/cli/programs/token.rs index 4480a1e..880c2c1 100644 --- a/wallet/src/cli/programs/token.rs +++ b/wallet/src/cli/programs/token.rs @@ -4,6 +4,7 @@ use common::transaction::NSSATransaction; use nssa::AccountId; use crate::{ + AccDecodeData::Decode, WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix}, @@ -421,8 +422,8 @@ impl WalletSubcommand for TokenProgramSubcommandPrivate { if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { let acc_decode_data = vec![ - (secret_sender, sender_account_id), - (secret_recipient, recipient_account_id), + Decode(secret_sender, sender_account_id), + Decode(secret_recipient, recipient_account_id), ]; wallet_core.decode_insert_privacy_preserving_transaction_results( @@ -473,7 +474,7 @@ impl WalletSubcommand for TokenProgramSubcommandPrivate { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_sender, sender_account_id)]; + let acc_decode_data = vec![Decode(secret_sender, sender_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -521,7 +522,7 @@ impl WalletSubcommand for TokenProgramSubcommandDeshielded { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_sender, sender_account_id)]; + let acc_decode_data = vec![Decode(secret_sender, sender_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -614,7 +615,7 @@ impl WalletSubcommand for TokenProgramSubcommandShielded { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_recipient, recipient_account_id)]; + let acc_decode_data = vec![Decode(secret_recipient, recipient_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -673,8 +674,8 @@ impl WalletSubcommand for CreateNewTokenProgramSubcommand { if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { let acc_decode_data = vec![ - (secret_definition, definition_account_id), - (secret_supply, supply_account_id), + Decode(secret_definition, definition_account_id), + Decode(secret_supply, supply_account_id), ]; wallet_core.decode_insert_privacy_preserving_transaction_results( @@ -723,7 +724,7 @@ impl WalletSubcommand for CreateNewTokenProgramSubcommand { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_definition, definition_account_id)]; + let acc_decode_data = vec![Decode(secret_definition, definition_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, @@ -771,7 +772,7 @@ impl WalletSubcommand for CreateNewTokenProgramSubcommand { .await?; if let NSSATransaction::PrivacyPreserving(tx) = transfer_tx { - let acc_decode_data = vec![(secret_supply, supply_account_id)]; + let acc_decode_data = vec![Decode(secret_supply, supply_account_id)]; wallet_core.decode_insert_privacy_preserving_transaction_results( tx, diff --git a/wallet/src/lib.rs b/wallet/src/lib.rs index 1218d25..3dfc10b 100644 --- a/wallet/src/lib.rs +++ b/wallet/src/lib.rs @@ -38,6 +38,11 @@ pub mod poller; mod privacy_preserving_tx; pub mod program_facades; +pub enum AccDecodeData { + Skip, + Decode(nssa_core::SharedSecretKey, AccountId), +} + pub struct WalletCore { pub storage: WalletChainStore, pub poller: TxPoller, @@ -218,28 +223,32 @@ impl WalletCore { pub fn decode_insert_privacy_preserving_transaction_results( &mut self, tx: nssa::privacy_preserving_transaction::PrivacyPreservingTransaction, - acc_decode_data: &[(nssa_core::SharedSecretKey, AccountId)], + acc_decode_mask: &[AccDecodeData], ) -> Result<()> { - for (output_index, (secret, acc_account_id)) in acc_decode_data.iter().enumerate() { - let acc_ead = tx.message.encrypted_private_post_states[output_index].clone(); - let acc_comm = tx.message.new_commitments[output_index].clone(); + for (output_index, acc_decode_data) in acc_decode_mask.iter().enumerate() { + match acc_decode_data { + AccDecodeData::Decode(secret, acc_account_id) => { + let acc_ead = tx.message.encrypted_private_post_states[output_index].clone(); + let acc_comm = tx.message.new_commitments[output_index].clone(); - let res_acc = nssa_core::EncryptionScheme::decrypt( - &acc_ead.ciphertext, - secret, - &acc_comm, - output_index as u32, - ) - .unwrap(); + let res_acc = nssa_core::EncryptionScheme::decrypt( + &acc_ead.ciphertext, + secret, + &acc_comm, + output_index as u32, + ) + .unwrap(); - println!("Received new acc {res_acc:#?}"); + println!("Received new acc {res_acc:#?}"); - self.storage - .insert_private_account_data(*acc_account_id, res_acc); + self.storage + .insert_private_account_data(*acc_account_id, res_acc); + } + AccDecodeData::Skip => {} + } } println!("Transaction data is {:?}", tx.message); - Ok(()) } diff --git a/wallet/src/privacy_preserving_tx.rs b/wallet/src/privacy_preserving_tx.rs index d0d6629..a243e5d 100644 --- a/wallet/src/privacy_preserving_tx.rs +++ b/wallet/src/privacy_preserving_tx.rs @@ -8,7 +8,7 @@ use nssa_core::{ encryption::{EphemeralPublicKey, IncomingViewingPublicKey}, }; -use crate::{WalletCore, helperfunctions::AccountPrivacyKind}; +use crate::WalletCore; #[derive(Clone)] pub enum PrivacyPreservingAccount { @@ -21,15 +21,6 @@ pub enum PrivacyPreservingAccount { } impl PrivacyPreservingAccount { - pub fn parse_with_privacy(input: (String, AccountPrivacyKind)) -> Result { - let acc_id: AccountId = input.0.parse()?; - - match input.1 { - AccountPrivacyKind::Public => Ok(Self::Public(acc_id)), - AccountPrivacyKind::Private => Ok(Self::PrivateOwned(acc_id)), - } - } - pub fn is_public(&self) -> bool { matches!(&self, Self::Public(_)) } diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index a0691f6..d33ad47 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -1,279 +1,108 @@ use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxResponse}; -use nssa::{AccountId, ProgramId, program::Program}; -use nssa_core::{SharedSecretKey, program::PdaSeed}; -use serde::{Serialize, ser::SerializeSeq}; +use nssa::{AccountId, program::Program}; -use crate::{PrivacyPreservingAccount, WalletCore, cli::account::TokenHolding}; - -fn compute_pool_pda( - amm_program_id: ProgramId, - definition_token_a_id: AccountId, - definition_token_b_id: AccountId, -) -> AccountId { - AccountId::from(( - &amm_program_id, - &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), - )) -} - -fn compute_pool_pda_seed( - definition_token_a_id: AccountId, - definition_token_b_id: AccountId, -) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut i: usize = 0; - let (token_1, token_2) = loop { - if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { - let token_1 = definition_token_a_id; - let token_2 = definition_token_b_id; - break (token_1, token_2); - } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { - let token_1 = definition_token_b_id; - let token_2 = definition_token_a_id; - break (token_1, token_2); - } - - if i == 32 { - panic!("Definitions match"); - } else { - i += 1; - } - }; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&token_1.to_bytes()); - bytes[32..].copy_from_slice(&token_2.to_bytes()); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - -fn compute_vault_pda( - amm_program_id: ProgramId, - pool_id: AccountId, - definition_token_id: AccountId, -) -> AccountId { - AccountId::from(( - &amm_program_id, - &compute_vault_pda_seed(pool_id, definition_token_id), - )) -} - -fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&pool_id.to_bytes()); - bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - -fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { - AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) -} - -fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&pool_id.to_bytes()); - bytes[32..].copy_from_slice(&[0; 32]); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - -struct OrphanHack65BytesInput([u32; 65]); - -impl OrphanHack65BytesInput { - fn expand(orig: [u8; 65]) -> Self { - let mut res = [0u32; 65]; - - for (idx, val) in orig.into_iter().enumerate() { - res[idx] = val as u32; - } - - Self(res) - } -} - -impl Serialize for OrphanHack65BytesInput { - fn serialize(&self, serializer: S) -> Result - where - S: serde::Serializer, - { - let mut seq = serializer.serialize_seq(Some(65))?; - for word in self.0 { - seq.serialize_element(&word)?; - } - seq.end() - } -} - -struct OrphanHack49BytesInput([u32; 49]); - -impl OrphanHack49BytesInput { - fn expand(orig: [u8; 49]) -> Self { - let mut res = [0u32; 49]; - - for (idx, val) in orig.into_iter().enumerate() { - res[idx] = val as u32; - } - - Self(res) - } - - fn words(&self) -> Vec { - self.0.to_vec() - } -} - -impl Serialize for OrphanHack49BytesInput { - fn serialize(&self, serializer: S) -> Result - where - S: serde::Serializer, - { - let mut seq = serializer.serialize_seq(Some(49))?; - for word in self.0 { - seq.serialize_element(&word)?; - } - seq.end() - } -} +use crate::{ + WalletCore, + cli::account::TokenHolding, + program_facades::{ + OrphanHack49BytesInput, OrphanHack65BytesInput, compute_liquidity_token_pda, + compute_pool_pda, compute_vault_pda, + }, +}; pub struct AMM<'w>(pub &'w WalletCore); impl AMM<'_> { - #[allow(clippy::too_many_arguments)] pub async fn send_new_amm_definition( &self, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - user_holding_lp: PrivacyPreservingAccount, + user_holding_a: AccountId, + user_holding_b: AccountId, + user_holding_lp: AccountId, balance_a: u128, balance_b: u128, ) -> Result { let (instruction, program) = amm_program_preparation_definition(balance_a, balance_b); - match (user_holding_a, user_holding_b, user_holding_lp) { - ( - PrivacyPreservingAccount::Public(user_holding_a), - PrivacyPreservingAccount::Public(user_holding_b), - PrivacyPreservingAccount::Public(user_holding_lp), - ) => { - let amm_program_id = Program::amm().id(); + let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; - let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? - .definition_id; - let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? - .definition_id; + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; - let amm_pool = - compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); - let vault_holding_a = - compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); - let vault_holding_b = - compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); - let pool_lp = compute_liquidity_token_pda(amm_program_id, amm_pool); + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let pool_lp = compute_liquidity_token_pda(amm_program_id, amm_pool); - let account_ids = vec![ - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ]; + let account_ids = vec![ + amm_pool, + vault_holding_a, + vault_holding_b, + pool_lp, + user_holding_a, + user_holding_b, + user_holding_lp, + ]; - let Ok(nonces) = self - .0 - .get_accounts_nonces(vec![user_holding_a, user_holding_b]) - .await - else { - return Err(ExecutionFailureKind::SequencerError); - }; + let Ok(nonces) = self + .0 + .get_accounts_nonces(vec![user_holding_a, user_holding_b]) + .await + else { + return Err(ExecutionFailureKind::SequencerError); + }; - let Some(signing_key_a) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_a) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + let Some(signing_key_a) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_a) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; - let Some(signing_key_b) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_b) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + let Some(signing_key_b) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_b) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; - let message = nssa::public_transaction::Message::try_new( - program.id(), - account_ids, - nonces, - instruction, - ) - .unwrap(); + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + nonces, + instruction, + ) + .unwrap(); - let witness_set = nssa::public_transaction::WitnessSet::for_message( - &message, - &[signing_key_a, signing_key_b], - ); + let witness_set = nssa::public_transaction::WitnessSet::for_message( + &message, + &[signing_key_a, signing_key_b], + ); - let tx = nssa::PublicTransaction::new(message, witness_set); + let tx = nssa::PublicTransaction::new(message, witness_set); - Ok(self.0.sequencer_client.send_tx_public(tx).await?) - } - _ => unreachable!(), - } + Ok(self.0.sequencer_client.send_tx_public(tx).await?) } - #[allow(clippy::too_many_arguments)] - pub async fn send_new_amm_definition_privacy_preserving( - &self, - _user_holding_a: PrivacyPreservingAccount, - _user_holding_b: PrivacyPreservingAccount, - _user_holding_lp: PrivacyPreservingAccount, - _balance_a: u128, - _balance_b: u128, - ) -> Result<(SendTxResponse, [Option; 3]), ExecutionFailureKind> { - todo!() - } - - #[allow(clippy::too_many_arguments)] pub async fn send_swap( &self, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, + user_holding_a: AccountId, + user_holding_b: AccountId, amount_in: u128, min_amount_out: u128, token_definition_id: AccountId, @@ -281,162 +110,96 @@ impl AMM<'_> { let (instruction, program) = amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); - match (user_holding_a, user_holding_b) { - ( - PrivacyPreservingAccount::Public(user_holding_a), - PrivacyPreservingAccount::Public(user_holding_b), - ) => { - let amm_program_id = Program::amm().id(); + let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; - let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? - .definition_id; - let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? - .definition_id; + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; - let amm_pool = - compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); - let vault_holding_a = - compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); - let vault_holding_b = - compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); - let account_ids = vec![ - amm_pool, - vault_holding_a, - vault_holding_b, - user_holding_a, - user_holding_b, - ]; + let account_ids = vec![ + amm_pool, + vault_holding_a, + vault_holding_b, + user_holding_a, + user_holding_b, + ]; - let account_id_auth; + let account_id_auth; - // Checking, which account are associated with TokenDefinition - let token_holder_acc_a = self - .0 - .get_account_public(user_holding_a) - .await - .map_err(|_| ExecutionFailureKind::SequencerError)?; - let token_holder_acc_b = self - .0 - .get_account_public(user_holding_b) - .await - .map_err(|_| ExecutionFailureKind::SequencerError)?; + // Checking, which account are associated with TokenDefinition + let token_holder_acc_a = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let token_holder_acc_b = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; - let token_holder_a = TokenHolding::parse(&token_holder_acc_a.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))?; - let token_holder_b = TokenHolding::parse(&token_holder_acc_b.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_b))?; + let token_holder_a = TokenHolding::parse(&token_holder_acc_a.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))?; + let token_holder_b = TokenHolding::parse(&token_holder_acc_b.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_b))?; - if token_holder_a.definition_id == token_definition_id { - account_id_auth = user_holding_a; - } else if token_holder_b.definition_id == token_definition_id { - account_id_auth = user_holding_b; - } else { - return Err(ExecutionFailureKind::AccountDataError(token_definition_id)); - } - - let Ok(nonces) = self.0.get_accounts_nonces(vec![account_id_auth]).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - - let Some(signing_key) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&account_id_auth) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; - - let message = nssa::public_transaction::Message::try_new( - program.id(), - account_ids, - nonces, - instruction, - ) - .unwrap(); - - let witness_set = - nssa::public_transaction::WitnessSet::for_message(&message, &[signing_key]); - - let tx = nssa::PublicTransaction::new(message, witness_set); - - Ok(self.0.sequencer_client.send_tx_public(tx).await?) - } - _ => unreachable!(), + if token_holder_a.definition_id == token_definition_id { + account_id_auth = user_holding_a; + } else if token_holder_b.definition_id == token_definition_id { + account_id_auth = user_holding_b; + } else { + return Err(ExecutionFailureKind::AccountDataError(token_definition_id)); } + + let Ok(nonces) = self.0.get_accounts_nonces(vec![account_id_auth]).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let Some(signing_key) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&account_id_auth) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; + + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + nonces, + instruction, + ) + .unwrap(); + + let witness_set = + nssa::public_transaction::WitnessSet::for_message(&message, &[signing_key]); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) } - #[allow(clippy::too_many_arguments)] - pub async fn send_swap_privacy_preserving( - &self, - _user_holding_a: PrivacyPreservingAccount, - _user_holding_b: PrivacyPreservingAccount, - _amount_in: u128, - _min_amount_out: u128, - _token_definition_id: AccountId, - ) -> Result<(SendTxResponse, [Option; 5]), ExecutionFailureKind> { - todo!() - // let (instruction_data, program) = - // amm_program_preparation_swap(amount_in, min_amount_out, token_definition_id); - - // self.0 - // .send_privacy_preserving_tx( - // vec![ - // amm_pool.clone(), - // vault_holding_1.clone(), - // vault_holding_2.clone(), - // user_holding_a.clone(), - // user_holding_b.clone(), - // ], - // &instruction_data.words(), - // &program, - // ) - // .await - // .map(|(resp, secrets)| { - // let mut secrets = secrets.into_iter(); - // let mut secrets_res = [None; 5]; - - // for acc_id in [ - // amm_pool, - // vault_holding_1, - // vault_holding_2, - // user_holding_a, - // user_holding_b, - // ] - // .iter() - // .enumerate() - // { - // if acc_id.1.is_private() { - // let secret = secrets.next().expect("expected next secret"); - - // secrets_res[acc_id.0] = Some(secret); - // } - // } - - // (resp, secrets_res) - // }) - } - - #[allow(clippy::too_many_arguments)] pub async fn send_add_liq( &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_a: PrivacyPreservingAccount, - vault_holding_b: PrivacyPreservingAccount, - pool_lp: PrivacyPreservingAccount, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - user_holding_lp: PrivacyPreservingAccount, + user_holding_a: AccountId, + user_holding_b: AccountId, + user_holding_lp: AccountId, min_amount_lp: u128, max_amount_a: u128, max_amount_b: u128, @@ -444,7 +207,29 @@ impl AMM<'_> { let (instruction, program) = amm_program_preparation_add_liq(min_amount_lp, max_amount_a, max_amount_b); - match ( + let amm_program_id = Program::amm().id(); + + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let pool_lp = compute_liquidity_token_pda(amm_program_id, amm_pool); + + let account_ids = vec![ amm_pool, vault_holding_a, vault_holding_b, @@ -452,142 +237,57 @@ impl AMM<'_> { user_holding_a, user_holding_b, user_holding_lp, - ) { - ( - PrivacyPreservingAccount::Public(amm_pool), - PrivacyPreservingAccount::Public(vault_holding_a), - PrivacyPreservingAccount::Public(vault_holding_b), - PrivacyPreservingAccount::Public(pool_lp), - PrivacyPreservingAccount::Public(user_holding_a), - PrivacyPreservingAccount::Public(user_holding_b), - PrivacyPreservingAccount::Public(user_holding_lp), - ) => { - let account_ids = vec![ - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ]; + ]; - let Ok(nonces) = self - .0 - .get_accounts_nonces(vec![user_holding_a, user_holding_b]) - .await - else { - return Err(ExecutionFailureKind::SequencerError); - }; - - let Some(signing_key_a) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_a) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; - - let Some(signing_key_b) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_b) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; - - let message = nssa::public_transaction::Message::try_new( - program.id(), - account_ids, - nonces, - instruction, - ) - .unwrap(); - - let witness_set = nssa::public_transaction::WitnessSet::for_message( - &message, - &[signing_key_a, signing_key_b], - ); - - let tx = nssa::PublicTransaction::new(message, witness_set); - - Ok(self.0.sequencer_client.send_tx_public(tx).await?) - } - _ => unreachable!(), - } - } - - #[allow(clippy::too_many_arguments)] - pub async fn send_add_liq_privacy_preserving( - &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_a: PrivacyPreservingAccount, - vault_holding_b: PrivacyPreservingAccount, - pool_lp: PrivacyPreservingAccount, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - user_holding_lp: PrivacyPreservingAccount, - min_amount_lp: u128, - max_amount_a: u128, - max_amount_b: u128, - ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { - let (instruction_data, program) = - amm_program_preparation_add_liq(min_amount_lp, max_amount_a, max_amount_b); - - self.0 - .send_privacy_preserving_tx( - vec![ - amm_pool.clone(), - vault_holding_a.clone(), - vault_holding_b.clone(), - pool_lp.clone(), - user_holding_a.clone(), - user_holding_b.clone(), - user_holding_lp.clone(), - ], - &instruction_data.words(), - &program, - ) + let Ok(nonces) = self + .0 + .get_accounts_nonces(vec![user_holding_a, user_holding_b]) .await - .map(|(resp, secrets)| { - let mut secrets = secrets.into_iter(); - let mut secrets_res = [None; 7]; + else { + return Err(ExecutionFailureKind::SequencerError); + }; - for acc_id in [ - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ] - .iter() - .enumerate() - { - if acc_id.1.is_private() { - let secret = secrets.next().expect("expected next secret"); + let Some(signing_key_a) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_a) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; - secrets_res[acc_id.0] = Some(secret); - } - } + let Some(signing_key_b) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_b) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; - (resp, secrets_res) - }) + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + nonces, + instruction, + ) + .unwrap(); + + let witness_set = nssa::public_transaction::WitnessSet::for_message( + &message, + &[signing_key_a, signing_key_b], + ); + + let tx = nssa::PublicTransaction::new(message, witness_set); + + Ok(self.0.sequencer_client.send_tx_public(tx).await?) } - #[allow(clippy::too_many_arguments)] pub async fn send_remove_liq( &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_a: PrivacyPreservingAccount, - vault_holding_b: PrivacyPreservingAccount, - pool_lp: PrivacyPreservingAccount, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - user_holding_lp: PrivacyPreservingAccount, + user_holding_a: AccountId, + user_holding_b: AccountId, + user_holding_lp: AccountId, balance_lp: u128, max_amount_a: u128, max_amount_b: u128, @@ -595,7 +295,29 @@ impl AMM<'_> { let (instruction, program) = amm_program_preparation_remove_liq(balance_lp, max_amount_a, max_amount_b); - match ( + let amm_program_id = Program::amm().id(); + + let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { + return Err(ExecutionFailureKind::SequencerError); + }; + + let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .definition_id; + + let amm_pool = + compute_pool_pda(amm_program_id, definition_token_a_id, definition_token_b_id); + let vault_holding_a = compute_vault_pda(amm_program_id, amm_pool, definition_token_a_id); + let vault_holding_b = compute_vault_pda(amm_program_id, amm_pool, definition_token_b_id); + let pool_lp = compute_liquidity_token_pda(amm_program_id, amm_pool); + + let account_ids = vec![ amm_pool, vault_holding_a, vault_holding_b, @@ -603,134 +325,38 @@ impl AMM<'_> { user_holding_a, user_holding_b, user_holding_lp, - ) { - ( - PrivacyPreservingAccount::Public(amm_pool), - PrivacyPreservingAccount::Public(vault_holding_a), - PrivacyPreservingAccount::Public(vault_holding_b), - PrivacyPreservingAccount::Public(pool_lp), - PrivacyPreservingAccount::Public(user_holding_a), - PrivacyPreservingAccount::Public(user_holding_b), - PrivacyPreservingAccount::Public(user_holding_lp), - ) => { - let account_ids = vec![ - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ]; + ]; - let Ok(nonces) = self - .0 - .get_accounts_nonces(vec![user_holding_a, user_holding_b]) - .await - else { - return Err(ExecutionFailureKind::SequencerError); - }; + let Ok(nonces) = self.0.get_accounts_nonces(vec![user_holding_lp]).await else { + return Err(ExecutionFailureKind::SequencerError); + }; - let Some(signing_key_a) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_a) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + let Some(signing_key_lp) = self + .0 + .storage + .user_data + .get_pub_account_signing_key(&user_holding_lp) + else { + return Err(ExecutionFailureKind::KeyNotFoundError); + }; - let Some(signing_key_b) = self - .0 - .storage - .user_data - .get_pub_account_signing_key(&user_holding_b) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + let message = nssa::public_transaction::Message::try_new( + program.id(), + account_ids, + nonces, + instruction, + ) + .unwrap(); - let message = nssa::public_transaction::Message::try_new( - program.id(), - account_ids, - nonces, - instruction, - ) - .unwrap(); + let witness_set = + nssa::public_transaction::WitnessSet::for_message(&message, &[signing_key_lp]); - let witness_set = nssa::public_transaction::WitnessSet::for_message( - &message, - &[signing_key_a, signing_key_b], - ); + let tx = nssa::PublicTransaction::new(message, witness_set); - let tx = nssa::PublicTransaction::new(message, witness_set); - - Ok(self.0.sequencer_client.send_tx_public(tx).await?) - } - _ => unreachable!(), - } - } - - #[allow(clippy::too_many_arguments)] - pub async fn send_remove_liq_privacy_preserving( - &self, - amm_pool: PrivacyPreservingAccount, - vault_holding_a: PrivacyPreservingAccount, - vault_holding_b: PrivacyPreservingAccount, - pool_lp: PrivacyPreservingAccount, - user_holding_a: PrivacyPreservingAccount, - user_holding_b: PrivacyPreservingAccount, - user_holding_lp: PrivacyPreservingAccount, - balance_lp: u128, - max_amount_a: u128, - max_amount_b: u128, - ) -> Result<(SendTxResponse, [Option; 7]), ExecutionFailureKind> { - let (instruction_data, program) = - amm_program_preparation_remove_liq(balance_lp, max_amount_a, max_amount_b); - - self.0 - .send_privacy_preserving_tx( - vec![ - amm_pool.clone(), - vault_holding_a.clone(), - vault_holding_b.clone(), - pool_lp.clone(), - user_holding_a.clone(), - user_holding_b.clone(), - user_holding_lp.clone(), - ], - &instruction_data.words(), - &program, - ) - .await - .map(|(resp, secrets)| { - let mut secrets = secrets.into_iter(); - let mut secrets_res = [None; 7]; - - for acc_id in [ - amm_pool, - vault_holding_a, - vault_holding_b, - pool_lp, - user_holding_a, - user_holding_b, - user_holding_lp, - ] - .iter() - .enumerate() - { - if acc_id.1.is_private() { - let secret = secrets.next().expect("expected next secret"); - - secrets_res[acc_id.0] = Some(secret); - } - } - - (resp, secrets_res) - }) + Ok(self.0.sequencer_client.send_tx_public(tx).await?) } } -#[allow(unused)] fn amm_program_preparation_definition( balance_a: u128, balance_b: u128, diff --git a/wallet/src/program_facades/mod.rs b/wallet/src/program_facades/mod.rs index 5fdcdb3..777a634 100644 --- a/wallet/src/program_facades/mod.rs +++ b/wallet/src/program_facades/mod.rs @@ -1,7 +1,142 @@ //! This module contains [`WalletCore`](crate::WalletCore) facades for interacting with various //! on-chain programs. +use nssa::{AccountId, ProgramId}; +use nssa_core::program::PdaSeed; +use serde::{Serialize, ser::SerializeSeq}; + pub mod amm; pub mod native_token_transfer; pub mod pinata; pub mod token; + +fn compute_pool_pda( + amm_program_id: ProgramId, + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), + )) +} + +fn compute_pool_pda_seed( + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut i: usize = 0; + let (token_1, token_2) = loop { + if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { + let token_1 = definition_token_a_id; + let token_2 = definition_token_b_id; + break (token_1, token_2); + } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { + let token_1 = definition_token_b_id; + let token_2 = definition_token_a_id; + break (token_1, token_2); + } + + if i == 32 { + panic!("Definitions match"); + } else { + i += 1; + } + }; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&token_1.to_bytes()); + bytes[32..].copy_from_slice(&token_2.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_vault_pda( + amm_program_id: ProgramId, + pool_id: AccountId, + definition_token_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_vault_pda_seed(pool_id, definition_token_id), + )) +} + +fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { + AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) +} + +fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&[0; 32]); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +/// Why it is necessary: +/// +/// Serialize implemented only for `[u8; N]` where `N<=32` and orphan rules would disallow custom +/// Serialize impls for them. +/// +/// Additionally, RISC0 splits instructions into words of 4-byte size which glues bytes for custom +/// structs so we need to expand each byte into `u32` to preserve shape, because AMM awaits +/// `Vec` as instruction. +struct OrphanHackNBytesInput([u32; N]); + +impl OrphanHackNBytesInput { + fn expand(orig: [u8; N]) -> Self { + let mut res = [0u32; N]; + + for (idx, val) in orig.into_iter().enumerate() { + res[idx] = val as u32; + } + + Self(res) + } +} + +impl Serialize for OrphanHackNBytesInput { + fn serialize(&self, serializer: S) -> Result + where + S: serde::Serializer, + { + let mut seq = serializer.serialize_seq(Some(N))?; + for word in self.0 { + seq.serialize_element(&word)?; + } + seq.end() + } +} + +type OrphanHack65BytesInput = OrphanHackNBytesInput<65>; +type OrphanHack49BytesInput = OrphanHackNBytesInput<49>; From 1b0dea11f68e5d268317b2195e986f23251e1f29 Mon Sep 17 00:00:00 2001 From: Pravdyvy <46261001+Pravdyvy@users.noreply.github.com> Date: Fri, 19 Dec 2025 19:02:39 +0200 Subject: [PATCH 07/15] Update wallet/src/cli/programs/amm.rs Co-authored-by: Sergio Chouhy <41742639+schouhy@users.noreply.github.com> --- wallet/src/cli/programs/amm.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs index 1104e0d..5db6238 100644 --- a/wallet/src/cli/programs/amm.rs +++ b/wallet/src/cli/programs/amm.rs @@ -12,7 +12,7 @@ use crate::{ /// Represents generic CLI subcommand for a wallet working with amm program #[derive(Subcommand, Debug, Clone)] pub enum AmmProgramAgnosticSubcommand { - /// Produce a new token + /// Produce a new pool /// /// user_holding_a and user_holding_b must be owned. /// From d427d49c653681b2b33ff09426010407b2e3c3c7 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Fri, 19 Dec 2025 19:12:58 +0200 Subject: [PATCH 08/15] fix: suggestions added --- integration_tests/src/test_suite_map.rs | 4 +-- wallet/src/cli/programs/amm.rs | 12 ++++---- wallet/src/program_facades/amm.rs | 37 ++++++------------------- 3 files changed, 16 insertions(+), 37 deletions(-) diff --git a/integration_tests/src/test_suite_map.rs b/integration_tests/src/test_suite_map.rs index ead73d5..ee6f9c0 100644 --- a/integration_tests/src/test_suite_map.rs +++ b/integration_tests/src/test_suite_map.rs @@ -2401,8 +2401,8 @@ pub fn prepare_function_map() -> HashMap { user_holding_b: make_public_account_input_from_str(&recipient_account_id_2.to_string()), user_holding_lp: make_public_account_input_from_str(&user_holding_lp.to_string()), balance_lp: 2, - max_amount_a: 1, - max_amount_b: 1, + min_amount_a: 1, + min_amount_b: 1, }; wallet::cli::execute_subcommand(Command::AMM(subcommand)) diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs index 5db6238..84a31d2 100644 --- a/wallet/src/cli/programs/amm.rs +++ b/wallet/src/cli/programs/amm.rs @@ -92,9 +92,9 @@ pub enum AmmProgramAgnosticSubcommand { #[arg(long)] balance_lp: u128, #[arg(long)] - max_amount_a: u128, + min_amount_a: u128, #[arg(long)] - max_amount_b: u128, + min_amount_b: u128, }, } @@ -238,8 +238,8 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { user_holding_b, user_holding_lp, balance_lp, - max_amount_a, - max_amount_b, + min_amount_a, + min_amount_b, } => { let (user_holding_a, user_holding_a_privacy) = parse_addr_with_privacy_prefix(&user_holding_a)?; @@ -268,8 +268,8 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { user_holding_b, user_holding_lp, balance_lp, - max_amount_a, - max_amount_b, + min_amount_a, + min_amount_b, ) .await?; diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index d33ad47..9310c15 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -123,7 +123,7 @@ impl AMM<'_> { .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? .definition_id; let definition_token_b_id = TokenHolding::parse(&user_b_acc.data) - .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? + .ok_or(ExecutionFailureKind::AccountDataError(user_holding_b))? .definition_id; let amm_pool = @@ -289,11 +289,11 @@ impl AMM<'_> { user_holding_b: AccountId, user_holding_lp: AccountId, balance_lp: u128, - max_amount_a: u128, - max_amount_b: u128, + min_amount_a: u128, + min_amount_b: u128, ) -> Result { let (instruction, program) = - amm_program_preparation_remove_liq(balance_lp, max_amount_a, max_amount_b); + amm_program_preparation_remove_liq(balance_lp, min_amount_a, min_amount_b); let amm_program_id = Program::amm().id(); @@ -431,8 +431,8 @@ fn amm_program_preparation_add_liq( fn amm_program_preparation_remove_liq( balance_lp: u128, - max_amount_a: u128, - max_amount_b: u128, + min_amount_a: u128, + min_amount_b: u128, ) -> (OrphanHack49BytesInput, Program) { // An instruction data byte string of length 49, amounts for minimum amount of liquidity to // redeem (balance_lp), minimum balance of each token to remove (min_amount_a and @@ -441,32 +441,11 @@ fn amm_program_preparation_remove_liq( instruction[0] = 0x03; instruction[1..17].copy_from_slice(&balance_lp.to_le_bytes()); - instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); - instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); + instruction[17..33].copy_from_slice(&min_amount_a.to_le_bytes()); + instruction[33..49].copy_from_slice(&min_amount_b.to_le_bytes()); let instruction_data = OrphanHack49BytesInput::expand(instruction); let program = Program::amm(); (instruction_data, program) } - -#[cfg(test)] -mod tests { - use crate::program_facades::amm::OrphanHack65BytesInput; - - #[test] - fn test_correct_ser() { - let mut arr = [0u8; 65]; - - for (i, item) in arr.iter_mut().enumerate().take(64) { - *item = i as u8; - } - - let hack = OrphanHack65BytesInput::expand(arr); - let instruction_data = serde_json::to_string(&hack).unwrap(); - - println!("{instruction_data:?}"); - - // assert_eq!(serialization_res_1, serialization_res_2); - } -} From 3581c97424cac491a8b74f7d8083a1755565d027 Mon Sep 17 00:00:00 2001 From: Sergio Chouhy Date: Fri, 19 Dec 2025 17:10:33 -0300 Subject: [PATCH 09/15] add amm section to the readme --- README.md | 107 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 104 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index ff596b8..da56895 100644 --- a/README.md +++ b/README.md @@ -618,13 +618,13 @@ wallet account new public Generated new account with account_id Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 ``` -Let's send 10 B tokens to this new account. We'll debit this from the supply account used in the creation of the token. +Let's send 1000 B tokens to this new account. We'll debit this from the supply account used in the creation of the token. ```bash wallet token send \ --from Private/HMRHZdPw4pbyPVZHNGrV6K5AA95wACFsHTRST84fr3CF \ --to Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 \ - --amount 10 + --amount 1000 ``` Let's inspect the public account: @@ -634,7 +634,7 @@ wallet account get --account-id Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6 # Output: Holding account owned by token program -{"account_type":"Token holding","definition_id":"GQ3C8rbprTtQUCvkuVBRu3v9wvUvjafCMFqoSPvTEVii","balance":10} +{"account_type":"Token holding","definition_id":"GQ3C8rbprTtQUCvkuVBRu3v9wvUvjafCMFqoSPvTEVii","balance":1000} ``` ### Chain information @@ -658,3 +658,104 @@ Last block id is 65537 ``` +### Automated Market Maker (AMM) + +NSSA includes an AMM program that manages liquidity pools and enables swaps between custom tokens. To test this functionality, we first need to create a liquidity pool. + +#### Creating a liquidity pool for a token pair + +We start by creating a new pool for the tokens previously created. In return for providing liquidity, we will receive liquidity provider (LP) tokens, which represent our share of the pool and are required to withdraw liquidity later. + +To hold these LP tokens, we first create a new account: + +```bash +wallet account new public + +# Output: +Generated new account with account_id Public/FHgLW9jW4HXMV6egLWbwpTqVAGiCHw2vkg71KYSuimVf +``` + +Next, we initialize the liquidity pool by depositing tokens A and B and specifying the account that will receive the LP tokens: + +```bash +wallet amm new \ + --user-holding-a Public/9RRSMm3w99uCD2Jp2Mqqf6dfc8me2tkFRE9HeU2DFftw \ + --user-holding-b Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 \ + --user-holding-lp Public/FHgLW9jW4HXMV6egLWbwpTqVAGiCHw2vkg71KYSuimVf \ + --balance-a 100 \ + --balance-b 200 +``` + +The newly created account is owned by the token program, meaning that LP tokens are managed by the same token infrastructure as regular tokens. + +```bash +wallet account get --account-id Public/FHgLW9jW4HXMV6egLWbwpTqVAGiCHw2vkg71KYSuimVf + +# Output: +Holding account owned by token program +{"account_type":"Token holding","definition_id":"7BeDS3e28MA5Err7gBswmR1fUKdHXqmUpTefNPu3pJ9i","balance":100} +``` + +If you inspect the `user-holding-a` and `user-holding-b` accounts passed to the `wallet amm new` command, you will see that 100 and 200 tokens were deducted, respectively. These tokens now reside in the liquidity pool and are available for swaps by any user. + + +#### Swaping + +Token swaps can be performed using the wallet amm swap command: + +```bash +wallet amm swap \ + --user-holding-a Public/9RRSMm3w99uCD2Jp2Mqqf6dfc8me2tkFRE9HeU2DFftw \ + --user-holding-b Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 \ + # The amount of tokens to swap + --amount-in 5 \ + # The minimum number of tokens expected in return + --min-amount-out 8 \ + # The definition ID of the token being provided to the swap + # In this case, we are swapping from TOKENA to TOKENB, and so this is the definition ID of TOKENA + --token-definition 4X9kAcnCZ1Ukkbm3nywW9xfCNPK8XaMWCk3zfs1sP4J7 +``` + +Once executed, 5 tokens are deducted from the Token A holding account and the corresponding amount (determined by the pool’s pricing function) is credited to the Token B holding account. + + +#### Withdrawing liquidity from the pool + +Liquidity providers can withdraw assets from the pool by redeeming (burning) LP tokens. The amount of tokens received is proportional to the share of LP tokens being redeemed relative to the total LP supply. + +This operation is performed using the `wallet amm remove-liquidity` command: + +```bash +wallet amm remove-liquidity \ + --user-holding-a Public/9RRSMm3w99uCD2Jp2Mqqf6dfc8me2tkFRE9HeU2DFftw \ + --user-holding-b Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 \ + --user-holding-lp Public/FHgLW9jW4HXMV6egLWbwpTqVAGiCHw2vkg71KYSuimVf \ + --balance-lp 20 \ + --min-amount-a 1 \ + --min-amount-b 1 +``` + +This instruction burns `balance-lp` LP tokens from the user’s LP holding account. In exchange, the AMM transfers tokens A and B from the pool’s vault accounts to the user’s holding accounts, according to the current pool reserves. + +The `min-amount-a` and `min-amount-b` parameters specify the minimum acceptable amounts of tokens A and B to be received. If the computed outputs fall below either threshold, the instruction fails, protecting the user against unfavorable pool state changes. + +#### Adding liquidity to the pool + +Additional liquidity can be added to an existing pool by depositing tokens A and B in the ratio implied by the current pool reserves. In return, new LP tokens are minted to represent the user’s proportional share of the pool. + +This is done using the `wallet amm add-liquidity` command: + +```bash +wallet amm add-liquidity \ + --user-holding-a Public/9RRSMm3w99uCD2Jp2Mqqf6dfc8me2tkFRE9HeU2DFftw \ + --user-holding-b Public/88f2zeTgiv9LUthQwPJbrmufb9SiDfmpCs47B7vw6Gd6 \ + --user-holding-lp Public/FHgLW9jW4HXMV6egLWbwpTqVAGiCHw2vkg71KYSuimVf \ + --min-amount-lp 1 \ + --max-amount-a 10 \ + --max-amount-b 10 +``` + +In this instruction, `max-amount-a` and `max-amount-b` define upper bounds on the number of tokens A and B that may be withdrawn from the user’s accounts. The AMM computes the actual required amounts based on the pool’s reserve ratio. + +The `min-amount-lp` parameter specifies the minimum number of LP tokens that must be minted for the transaction to succeed. If the resulting LP token amount is below this threshold, the instruction fails. + From 5a03ad431d512e865e304b793436b58fc68af57b Mon Sep 17 00:00:00 2001 From: Sergio Chouhy Date: Fri, 19 Dec 2025 17:20:31 -0300 Subject: [PATCH 10/15] nit --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index da56895..e02cf2a 100644 --- a/README.md +++ b/README.md @@ -204,6 +204,7 @@ Commands: account Account view and sync subcommand pinata Pinata program interaction subcommand token Token program interaction subcommand + amm AMM program interaction subcommand check-health Check the wallet can connect to the node and builtin local programs match the remote versions ``` From 9adc88f8c8c9371c4d6fdf5dd4b2eb56bb3f8ab5 Mon Sep 17 00:00:00 2001 From: Sergio Chouhy Date: Fri, 19 Dec 2025 17:32:38 -0300 Subject: [PATCH 11/15] add lp fees note --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index e02cf2a..a0606a7 100644 --- a/README.md +++ b/README.md @@ -667,6 +667,9 @@ NSSA includes an AMM program that manages liquidity pools and enables swaps betw We start by creating a new pool for the tokens previously created. In return for providing liquidity, we will receive liquidity provider (LP) tokens, which represent our share of the pool and are required to withdraw liquidity later. +>[!NOTE] +> The AMM program does not currently charge swap fees or distribute rewards to liquidity providers. LP tokens therefore only represent a proportional share of the pool reserves and do not provide additional value from swap activity. Fee support for liquidity providers will be added in future versions of the AMM program. + To hold these LP tokens, we first create a new account: ```bash From 4f1523744661a16784acf4c6b0bd549c5f1d5d19 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Mon, 22 Dec 2025 04:42:32 +0200 Subject: [PATCH 12/15] fix: suggestions fix --- nssa/src/public_transaction/message.rs | 2 +- wallet/src/cli/account.rs | 59 +----- wallet/src/cli/programs/amm.rs | 30 +-- wallet/src/lib.rs | 54 ++++++ wallet/src/program_facades/amm.rs | 242 +++++++++++++++++-------- wallet/src/program_facades/mod.rs | 95 ---------- 6 files changed, 240 insertions(+), 242 deletions(-) diff --git a/nssa/src/public_transaction/message.rs b/nssa/src/public_transaction/message.rs index 468b04f..d8bd2da 100644 --- a/nssa/src/public_transaction/message.rs +++ b/nssa/src/public_transaction/message.rs @@ -36,7 +36,7 @@ impl Message { program_id: ProgramId, account_ids: Vec, nonces: Vec, - instruction_data: Vec, + instruction_data: InstructionData, ) -> Self { Self { program_id, diff --git a/wallet/src/cli/account.rs b/wallet/src/cli/account.rs index 67cf8f8..7e8a005 100644 --- a/wallet/src/cli/account.rs +++ b/wallet/src/cli/account.rs @@ -3,70 +3,15 @@ use base58::ToBase58; use clap::Subcommand; use itertools::Itertools as _; use key_protocol::key_management::key_tree::chain_index::ChainIndex; -use nssa::{Account, AccountId, program::Program}; +use nssa::{Account, program::Program}; use serde::Serialize; use crate::{ - WalletCore, + TokenDefinition, TokenHolding, WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, helperfunctions::{AccountPrivacyKind, HumanReadableAccount, parse_addr_with_privacy_prefix}, }; -const TOKEN_DEFINITION_TYPE: u8 = 0; -const TOKEN_DEFINITION_DATA_SIZE: usize = 23; - -const TOKEN_HOLDING_TYPE: u8 = 1; -const TOKEN_HOLDING_DATA_SIZE: usize = 49; - -struct TokenDefinition { - #[allow(unused)] - account_type: u8, - name: [u8; 6], - total_supply: u128, -} - -pub struct TokenHolding { - #[allow(unused)] - account_type: u8, - pub definition_id: AccountId, - balance: u128, -} - -impl TokenDefinition { - fn parse(data: &[u8]) -> Option { - if data.len() != TOKEN_DEFINITION_DATA_SIZE || data[0] != TOKEN_DEFINITION_TYPE { - None - } else { - let account_type = data[0]; - let name = data[1..7].try_into().unwrap(); - let total_supply = u128::from_le_bytes(data[7..].try_into().unwrap()); - - Some(Self { - account_type, - name, - total_supply, - }) - } - } -} - -impl TokenHolding { - pub fn parse(data: &[u8]) -> Option { - if data.len() != TOKEN_HOLDING_DATA_SIZE || data[0] != TOKEN_HOLDING_TYPE { - None - } else { - let account_type = data[0]; - let definition_id = AccountId::new(data[1..33].try_into().unwrap()); - let balance = u128::from_le_bytes(data[33..].try_into().unwrap()); - Some(Self { - definition_id, - balance, - account_type, - }) - } - } -} - /// Represents generic chain CLI subcommand #[derive(Subcommand, Debug, Clone)] pub enum AccountSubcommand { diff --git a/wallet/src/cli/programs/amm.rs b/wallet/src/cli/programs/amm.rs index 84a31d2..ce919b7 100644 --- a/wallet/src/cli/programs/amm.rs +++ b/wallet/src/cli/programs/amm.rs @@ -6,7 +6,7 @@ use crate::{ WalletCore, cli::{SubcommandReturnValue, WalletSubcommand}, helperfunctions::{AccountPrivacyKind, parse_addr_with_privacy_prefix}, - program_facades::amm::AMM, + program_facades::amm::Amm, }; /// Represents generic CLI subcommand for a wallet working with amm program @@ -32,7 +32,7 @@ pub enum AmmProgramAgnosticSubcommand { #[arg(long)] balance_b: u128, }, - /// Swap with variable privacy + /// Swap /// /// The account associated with swapping token must be owned /// @@ -52,7 +52,7 @@ pub enum AmmProgramAgnosticSubcommand { #[arg(long)] token_definition: String, }, - /// Add liquidity with variable privacy + /// Add liquidity /// /// user_holding_a and user_holding_b must be owned. /// @@ -74,7 +74,7 @@ pub enum AmmProgramAgnosticSubcommand { #[arg(long)] max_amount_b: u128, }, - /// Remove liquidity with variable privacy + /// Remove liquidity /// /// user_holding_lp must be owned. /// @@ -132,8 +132,8 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { AccountPrivacyKind::Public, AccountPrivacyKind::Public, ) => { - AMM(wallet_core) - .send_new_amm_definition( + Amm(wallet_core) + .send_new_definition( user_holding_a, user_holding_b, user_holding_lp, @@ -146,7 +146,7 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } _ => { // ToDo: Implement after private multi-chain calls is available - anyhow::bail!("Only public execution allowed for AMM calls"); + anyhow::bail!("Only public execution allowed for Amm calls"); } } } @@ -167,7 +167,7 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { match (user_holding_a_privacy, user_holding_b_privacy) { (AccountPrivacyKind::Public, AccountPrivacyKind::Public) => { - AMM(wallet_core) + Amm(wallet_core) .send_swap( user_holding_a, user_holding_b, @@ -181,7 +181,7 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } _ => { // ToDo: Implement after private multi-chain calls is available - anyhow::bail!("Only public execution allowed for AMM calls"); + anyhow::bail!("Only public execution allowed for Amm calls"); } } } @@ -214,8 +214,8 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { AccountPrivacyKind::Public, AccountPrivacyKind::Public, ) => { - AMM(wallet_core) - .send_add_liq( + Amm(wallet_core) + .send_add_liquidity( user_holding_a, user_holding_b, user_holding_lp, @@ -229,7 +229,7 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } _ => { // ToDo: Implement after private multi-chain calls is available - anyhow::bail!("Only public execution allowed for AMM calls"); + anyhow::bail!("Only public execution allowed for Amm calls"); } } } @@ -262,8 +262,8 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { AccountPrivacyKind::Public, AccountPrivacyKind::Public, ) => { - AMM(wallet_core) - .send_remove_liq( + Amm(wallet_core) + .send_remove_liquidity( user_holding_a, user_holding_b, user_holding_lp, @@ -277,7 +277,7 @@ impl WalletSubcommand for AmmProgramAgnosticSubcommand { } _ => { // ToDo: Implement after private multi-chain calls is available - anyhow::bail!("Only public execution allowed for AMM calls"); + anyhow::bail!("Only public execution allowed for Amm calls"); } } } diff --git a/wallet/src/lib.rs b/wallet/src/lib.rs index 3dfc10b..639377c 100644 --- a/wallet/src/lib.rs +++ b/wallet/src/lib.rs @@ -43,6 +43,60 @@ pub enum AccDecodeData { Decode(nssa_core::SharedSecretKey, AccountId), } +const TOKEN_DEFINITION_TYPE: u8 = 0; +const TOKEN_DEFINITION_DATA_SIZE: usize = 23; + +const TOKEN_HOLDING_TYPE: u8 = 1; +const TOKEN_HOLDING_DATA_SIZE: usize = 49; + +struct TokenDefinition { + #[allow(unused)] + account_type: u8, + name: [u8; 6], + total_supply: u128, +} + +pub struct TokenHolding { + pub account_type: u8, + pub definition_id: AccountId, + pub balance: u128, +} + +impl TokenDefinition { + fn parse(data: &[u8]) -> Option { + if data.len() != TOKEN_DEFINITION_DATA_SIZE || data[0] != TOKEN_DEFINITION_TYPE { + None + } else { + let account_type = data[0]; + let name = data[1..7].try_into().unwrap(); + let total_supply = u128::from_le_bytes(data[7..].try_into().unwrap()); + + Some(Self { + account_type, + name, + total_supply, + }) + } + } +} + +impl TokenHolding { + pub fn parse(data: &[u8]) -> Option { + if data.len() != TOKEN_HOLDING_DATA_SIZE || data[0] != TOKEN_HOLDING_TYPE { + None + } else { + let account_type = data[0]; + let definition_id = AccountId::new(data[1..33].try_into().unwrap()); + let balance = u128::from_le_bytes(data[33..].try_into().unwrap()); + Some(Self { + definition_id, + balance, + account_type, + }) + } + } +} + pub struct WalletCore { pub storage: WalletChainStore, pub poller: TxPoller, diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index 9310c15..72ee2fe 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -1,19 +1,109 @@ use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxResponse}; -use nssa::{AccountId, program::Program}; +use nssa::{AccountId, ProgramId, program::Program}; +use nssa_core::program::PdaSeed; use crate::{ - WalletCore, - cli::account::TokenHolding, - program_facades::{ - OrphanHack49BytesInput, OrphanHack65BytesInput, compute_liquidity_token_pda, - compute_pool_pda, compute_vault_pda, - }, + TokenHolding, WalletCore, + program_facades::{OrphanHack49BytesInput, OrphanHack65BytesInput}, }; -pub struct AMM<'w>(pub &'w WalletCore); +fn compute_pool_pda( + amm_program_id: ProgramId, + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), + )) +} -impl AMM<'_> { - pub async fn send_new_amm_definition( +fn compute_pool_pda_seed( + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut i: usize = 0; + let (token_1, token_2) = loop { + if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { + let token_1 = definition_token_a_id; + let token_2 = definition_token_b_id; + break (token_1, token_2); + } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { + let token_1 = definition_token_b_id; + let token_2 = definition_token_a_id; + break (token_1, token_2); + } + + if i == 32 { + panic!("Definitions match"); + } else { + i += 1; + } + }; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&token_1.to_bytes()); + bytes[32..].copy_from_slice(&token_2.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_vault_pda( + amm_program_id: ProgramId, + pool_id: AccountId, + definition_token_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_vault_pda_seed(pool_id, definition_token_id), + )) +} + +fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { + AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) +} + +fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { + use risc0_zkvm::sha::{Impl, Sha256}; + + let mut bytes = [0; 64]; + bytes[0..32].copy_from_slice(&pool_id.to_bytes()); + bytes[32..].copy_from_slice(&[0; 32]); + + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) +} + +pub struct Amm<'w>(pub &'w WalletCore); + +impl Amm<'_> { + pub async fn send_new_definition( &self, user_holding_a: AccountId, user_holding_b: AccountId, @@ -25,12 +115,16 @@ impl AMM<'_> { let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let user_a_acc = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let user_b_acc = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? @@ -55,31 +149,25 @@ impl AMM<'_> { user_holding_lp, ]; - let Ok(nonces) = self + let nonces = self .0 .get_accounts_nonces(vec![user_holding_a, user_holding_b]) .await - else { - return Err(ExecutionFailureKind::SequencerError); - }; + .map_err(|_| ExecutionFailureKind::SequencerError)?; - let Some(signing_key_a) = self + let signing_key_a = self .0 .storage .user_data .get_pub_account_signing_key(&user_holding_a) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; - let Some(signing_key_b) = self + let signing_key_b = self .0 .storage .user_data .get_pub_account_signing_key(&user_holding_b) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; let message = nssa::public_transaction::Message::try_new( program.id(), @@ -112,12 +200,16 @@ impl AMM<'_> { let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let user_a_acc = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let user_b_acc = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? @@ -166,18 +258,18 @@ impl AMM<'_> { return Err(ExecutionFailureKind::AccountDataError(token_definition_id)); } - let Ok(nonces) = self.0.get_accounts_nonces(vec![account_id_auth]).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let nonces = self + .0 + .get_accounts_nonces(vec![account_id_auth]) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; - let Some(signing_key) = self + let signing_key = self .0 .storage .user_data .get_pub_account_signing_key(&account_id_auth) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; let message = nssa::public_transaction::Message::try_new( program.id(), @@ -195,7 +287,7 @@ impl AMM<'_> { Ok(self.0.sequencer_client.send_tx_public(tx).await?) } - pub async fn send_add_liq( + pub async fn send_add_liquidity( &self, user_holding_a: AccountId, user_holding_b: AccountId, @@ -209,12 +301,16 @@ impl AMM<'_> { let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let user_a_acc = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let user_b_acc = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? @@ -239,31 +335,25 @@ impl AMM<'_> { user_holding_lp, ]; - let Ok(nonces) = self + let nonces = self .0 .get_accounts_nonces(vec![user_holding_a, user_holding_b]) .await - else { - return Err(ExecutionFailureKind::SequencerError); - }; + .map_err(|_| ExecutionFailureKind::SequencerError)?; - let Some(signing_key_a) = self + let signing_key_a = self .0 .storage .user_data .get_pub_account_signing_key(&user_holding_a) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; - let Some(signing_key_b) = self + let signing_key_b = self .0 .storage .user_data .get_pub_account_signing_key(&user_holding_b) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; let message = nssa::public_transaction::Message::try_new( program.id(), @@ -283,7 +373,7 @@ impl AMM<'_> { Ok(self.0.sequencer_client.send_tx_public(tx).await?) } - pub async fn send_remove_liq( + pub async fn send_remove_liquidity( &self, user_holding_a: AccountId, user_holding_b: AccountId, @@ -297,12 +387,16 @@ impl AMM<'_> { let amm_program_id = Program::amm().id(); - let Ok(user_a_acc) = self.0.get_account_public(user_holding_a).await else { - return Err(ExecutionFailureKind::SequencerError); - }; - let Ok(user_b_acc) = self.0.get_account_public(user_holding_b).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let user_a_acc = self + .0 + .get_account_public(user_holding_a) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; + let user_b_acc = self + .0 + .get_account_public(user_holding_b) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; let definition_token_a_id = TokenHolding::parse(&user_a_acc.data) .ok_or(ExecutionFailureKind::AccountDataError(user_holding_a))? @@ -327,18 +421,18 @@ impl AMM<'_> { user_holding_lp, ]; - let Ok(nonces) = self.0.get_accounts_nonces(vec![user_holding_lp]).await else { - return Err(ExecutionFailureKind::SequencerError); - }; + let nonces = self + .0 + .get_accounts_nonces(vec![user_holding_lp]) + .await + .map_err(|_| ExecutionFailureKind::SequencerError)?; - let Some(signing_key_lp) = self + let signing_key_lp = self .0 .storage .user_data .get_pub_account_signing_key(&user_holding_lp) - else { - return Err(ExecutionFailureKind::KeyNotFoundError); - }; + .ok_or(ExecutionFailureKind::KeyNotFoundError)?; let message = nssa::public_transaction::Message::try_new( program.id(), diff --git a/wallet/src/program_facades/mod.rs b/wallet/src/program_facades/mod.rs index 777a634..2b69664 100644 --- a/wallet/src/program_facades/mod.rs +++ b/wallet/src/program_facades/mod.rs @@ -1,8 +1,6 @@ //! This module contains [`WalletCore`](crate::WalletCore) facades for interacting with various //! on-chain programs. -use nssa::{AccountId, ProgramId}; -use nssa_core::program::PdaSeed; use serde::{Serialize, ser::SerializeSeq}; pub mod amm; @@ -10,99 +8,6 @@ pub mod native_token_transfer; pub mod pinata; pub mod token; -fn compute_pool_pda( - amm_program_id: ProgramId, - definition_token_a_id: AccountId, - definition_token_b_id: AccountId, -) -> AccountId { - AccountId::from(( - &amm_program_id, - &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), - )) -} - -fn compute_pool_pda_seed( - definition_token_a_id: AccountId, - definition_token_b_id: AccountId, -) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut i: usize = 0; - let (token_1, token_2) = loop { - if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { - let token_1 = definition_token_a_id; - let token_2 = definition_token_b_id; - break (token_1, token_2); - } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { - let token_1 = definition_token_b_id; - let token_2 = definition_token_a_id; - break (token_1, token_2); - } - - if i == 32 { - panic!("Definitions match"); - } else { - i += 1; - } - }; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&token_1.to_bytes()); - bytes[32..].copy_from_slice(&token_2.to_bytes()); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - -fn compute_vault_pda( - amm_program_id: ProgramId, - pool_id: AccountId, - definition_token_id: AccountId, -) -> AccountId { - AccountId::from(( - &amm_program_id, - &compute_vault_pda_seed(pool_id, definition_token_id), - )) -} - -fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&pool_id.to_bytes()); - bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - -fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { - AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) -} - -fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { - use risc0_zkvm::sha::{Impl, Sha256}; - - let mut bytes = [0; 64]; - bytes[0..32].copy_from_slice(&pool_id.to_bytes()); - bytes[32..].copy_from_slice(&[0; 32]); - - PdaSeed::new( - Impl::hash_bytes(&bytes) - .as_bytes() - .try_into() - .expect("Hash output must be exactly 32 bytes long"), - ) -} - /// Why it is necessary: /// /// Serialize implemented only for `[u8; N]` where `N<=32` and orphan rules would disallow custom From 22c60cb97fd020a773b3267f6e0340af2e62373b Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Mon, 22 Dec 2025 05:01:04 +0200 Subject: [PATCH 13/15] fix: lock update --- Cargo.lock | 1 + 1 file changed, 1 insertion(+) diff --git a/Cargo.lock b/Cargo.lock index 02a9266..3bde513 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2657,6 +2657,7 @@ name = "nssa" version = "0.1.0" dependencies = [ "borsh", + "bytemuck", "hex", "hex-literal 1.1.0", "log", From 0a1bbb9d216ec27e677333333d4c970629dfe47b Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Mon, 22 Dec 2025 05:12:48 +0200 Subject: [PATCH 14/15] fix: merge fix --- Cargo.lock | 2 + artifacts/program_methods/amm.bin | Bin 0 -> 468500 bytes .../authenticated_transfer.bin | Bin 378136 -> 379876 bytes artifacts/program_methods/pinata.bin | Bin 380508 -> 382256 bytes artifacts/program_methods/pinata_token.bin | Bin 387084 -> 388880 bytes .../privacy_preserving_circuit.bin | Bin 470128 -> 470788 bytes artifacts/program_methods/token.bin | Bin 401992 -> 403728 bytes artifacts/test_program_methods/burner.bin | Bin 374936 -> 376680 bytes .../test_program_methods/chain_caller.bin | Bin 388648 -> 390400 bytes artifacts/test_program_methods/claimer.bin | Bin 373832 -> 375604 bytes .../test_program_methods/data_changer.bin | Bin 376532 -> 378312 bytes .../test_program_methods/extra_output.bin | Bin 373904 -> 375676 bytes artifacts/test_program_methods/minter.bin | Bin 373860 -> 375604 bytes .../test_program_methods/missing_output.bin | Bin 374012 -> 375752 bytes .../modified_transfer.bin | Bin 377384 -> 379140 bytes .../test_program_methods/nonce_changer.bin | Bin 373936 -> 375712 bytes artifacts/test_program_methods/noop.bin | Bin 373644 -> 375408 bytes .../program_owner_changer.bin | Bin 373856 -> 375616 bytes .../simple_balance_transfer.bin | Bin 375732 -> 377508 bytes examples/program_deployment/Cargo.toml | 1 + nssa/core/Cargo.toml | 2 +- nssa/core/src/account.rs | 13 +- program_methods/guest/src/bin/amm.rs | 3979 +++++++++-------- wallet/Cargo.toml | 1 + 24 files changed, 2241 insertions(+), 1757 deletions(-) create mode 100644 artifacts/program_methods/amm.bin diff --git a/Cargo.lock b/Cargo.lock index 3bde513..981168d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3026,6 +3026,7 @@ version = "0.1.0" dependencies = [ "clap", "nssa", + "nssa_core", "tokio", "wallet", ] @@ -4755,6 +4756,7 @@ dependencies = [ "nssa", "nssa_core", "rand 0.8.5", + "risc0-zkvm", "serde", "serde_json", "sha2", diff --git a/artifacts/program_methods/amm.bin b/artifacts/program_methods/amm.bin new file mode 100644 index 0000000000000000000000000000000000000000..2630aa2796c95119abc841cf0fe9a097222b4476 GIT binary patch literal 468500 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 literal 0 HcmV?d00001 diff --git a/artifacts/program_methods/authenticated_transfer.bin b/artifacts/program_methods/authenticated_transfer.bin index 286dc22fbbc64b727d723a6ca2927dcebbed037a..2e78e0ab258d5e81ced030bd7153d064e398acab 100644 GIT binary patch delta 101205 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 z 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 diff --git a/artifacts/program_methods/pinata.bin b/artifacts/program_methods/pinata.bin index fbc81699795a53407a2721b59c1127547324e1ce..75cb735939f22497a8a4e30568604d0bd4363c36 100644 GIT binary patch delta 100706 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

D$KSC(Wt6w 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 QF&X&I(WUbfwI3b%A2uFe6951J delta 99342 zcma&P30zfG_db61z5|0u$Q4vXyo@TM;)od$4i`~TaYjQ$!5I~mOv~gNgF{y6QMZ*E zCQfChfnF=MYYAGZ(fc~pYlW$0Wu;}lW+eY-odJ%%`u}~;=X2QiS!?ZSt+m(QXPpt=Kd@$UiFaQXAYb)< zj5U%Y8uVoiedJ@41)e z1g+&e_tJ`~ytnVAl~8%R?xpqLLj}HdFVRf}zIiXLiVECuFRhvi+^*B)mCdHG2>E8S zI2J0$1odXYa!ybj%(NruF_`HxD2?RS&HrvzWV7z&GF)P|BsH{I`bb&{MRI&_94nG@ zgTwK6eQ;a+JsR8re{Tl23Mi5-84~LI$C#rmw#5|2F3Rgedb6|gg^+ppo7%EA@&&a> z>q?u&EU8twt#Qz<&018)lXLBlJsODa-})bp#V%1!0k{0YnV1QgQ~x7#)&4PCCGQGt z8St{r!cYq{+pLmVIF&pv$~$qr_DPQ0&W!SEy;ymlE_g6^JK4% zjTJg*GI%Q8{hZCaqyGcs7uhVKzC^E=m7XnY9KM$~R|<3vMoT==606b!wUR+{b>uLw zmvybk@lh>9>ygC|rf@Q~hn4m8MNw@7R>{^QQd}JL;nDY3*C_bs(!OiugHatlG8l9t zEtGFU%KiW;Q7`43BWJgo(ELi6WJ(MeDx*Hx+fTBQ5{eZiY>=?~|mK>AK zdV~pyqiycJ2TqS#kc9A_}+JtKzw*_>O26yj*y4Pv}*Go7dkJm=>JVzL&-T?O0;x-VL5|2nQG1knr}$o$)z## z*jIAXc5&>SoZ9X~mMHtRZ-pS)y?yUSXopkv4#h<7N%G3}Bf_^ZX^Qmm4Aljaw%e>Q zX`uz}wMtD?UcOvh-0aCM66AV+tI4gmSyS14a{twMt8LcA`*@~XO_cnmzimYp$u$DK zDJd~9%E5*d52b^;iNaUoXU4m$9-)vU0agkv(;n*60#i(D|)Umn!9MaG#V$ zPxO{+hPCHO#d6H>u)K=*H0L^Cvt~%Lb%`WO$cda+^6f_?cmPv+qV#m@A!wCp+T5h} z-tj>_Eq|j*n{<#gr^@x-pwcWyY}QzfW_nGfMZRy#t1s{sl~{4uW_4+9Q?*tus?LcN?qzP8=&w?KXp5kxzG(US(QgVP)ng<}iKCBPL)H zLIK`>Tno94Y}vzY)+Iio zT8Xb+!(*6VoHBD+zfxtEUX?9J0${;LHcXzL^oU4R#z(D& z8)*1$e&i7!Qxt0$9<$jmy!~FkaQhMexF?lX*R@R3!m*2*78G^e|iWiOu4J z@CLK173s4#=!o*Ls!Essl-E1LBe&Wt@N^I8X^-MjlF`$f{F{PZ{x~_fZ#VA#P#)g5 zt^7mZr5vu5lN`<6d*uzuy}0vjxjH$DOK-`Z{SvseT~6*7yO{2z3cr(5l}dz2Nl&sSGg{==0OmFWv*S)7*6-fwc3x8&@+q93c% z71lhqqPlggpQ0nb5e-ZgUY2|qAv|KUWZIf{zXhaFdHHh7rQ&}7pkmEh%XxT2#|K#} zB=aRNZnGqs%a-rtacF?eTQd}fsG;&xO6C3z6D<0-&8wgJ(k3s}K=MC>JU#BWj+v%a zx!MuJKVBnOk8JusBS7{3`L`6GP`tlN^#^rG7Ad;)g5NA(C}jqA#bocr^CSClQ`B;v zABAphSNk6xwO0yneMAb6{sLa_p&44j8j_sd?F}C@qpq14DwStc2TW8~9;(1oO1}cT zT2O%r6_`+g2^E54udz)pi&!oHz}Cl%eS7oA9u=Bzbg}WLs#i z$z0*(ZK6V=2S}YQT`|DlLLuIgx~A{%Yx}c{l<94;s$H(A&CH5y7^h9{GA*9HXHV#Pd~MA?{8z@Kt$~Q7`{*k`E7i zjM;K;n#u|zAoCgW*J&O2p>&L<-+I$&Uw|;bzushZ`5xJE0AJkBQNow zsiO2DJm>qSit>l>+y_h*M<2qIT&BE=(+^=L?lV;!gId~6F!6|?Su&*!b{u^6XrdH>D&q%K7{Aq0vkSr zC%pj^K7^N80u$cH%hOjy&P}l4eN3I_-T)gugeSdbsyO`+Ug9e-;X`;%0TZ(Dum=t& z_gceTA>Mfe&rBXy0;ZbUES2(0Em*enML-K>`P&fal(E|LzOkD4a;7I{!BVq?6@W7P z>&qG&rUG@$N-x^H{;HLiHz`{lH*(y*7`!JM)3TQmt^t1B0bn;q(UvOSQtO z4-A$H&pEk1Smqf*zFJ|{1B0bnVdevarCQ;H2L?;E!toCbmc+|*y2oOq{jUe96{bHh zSgI9{d0?Nk;Y(|S2y9Q6^?jduv9A?_P}7NRygE=!BVYo@B@RTT3_BE z*zjR4oASV5saDwkfx%L(F!_POQmwG>y}?qSC>3U+OhQ7m$`C(619*u(=`0eC)Ie%t1?+yl=?w+&rTw&>-IF|Fn5fBOitmD%xJ z(9=U%y1S>#Q*43yOKh~)g^sae&h;v>3Pd7Q{<;iUONIU@zWm(Cd${7V&shR zA@Z2> zxgevB2iEU4i({xMi^Iw|Khog?>?7x7j-|5YLR5D;^Hbi>x2z=VP0k%DWhqnM zV8HVAse_U#qm=zCx3Uj4fl9DhEOA0zckk42cMb1Qaa}VX)!NfTE|}IW!Q*k8X$hB2 zd!)E=D8~2j6E39kOTO{8M`E>|RZD`}!?Ou-X^`>se9VPZUbgHB`S!GdO_Zg5VNX>i zu(v9+EKyFM-YdEyAH_4-lp(n$QNJn*T+pywG_o*mDiwA7c^6W7*?~g&`1DiUQYo*W z5ymS%lMl|=uc4@l&&ZpE(p$HpFPo*X4>lY*JwmI!13sADtb@`NOES^%jL2LHt{6aA z{arY?{4r41GoHcKM5OySCj$}?q7rev{d`9{g7XD-xbY4L$A38U;} zJj!XZmXT$-v!?O3s#(xbKM8xB${3;ji2CPorte&jmp$h!Vb|mpbFz8xQ2F+p2_9<8 zC&?Le*V1qFW=2`f+^?Am98=}$-0yh5r^}8$^%3KanPtnK9L~=9z!U8)-NC z-9;gsC%q`!7Y9<(eerICt$gy{uSaFq^2V@wC}%G*Fy)lzJL*Ns1<$YMj+ces3G7nE z=7&(8)O^MGx%rRQNtNfnVX??qzR9)EHIe5QG$y%a1&Z9Rf?M3OOD-)u#T`$}xkcT0 z#oDr6MPZEhd84dq=@q7zQg(3pAnsqdNp-%Wjd4@ZV~@U@<=~aQc+mzqW96Yb(TEox zEL!lgB6|GgP2P@Dt$;0MImOHCYFWLy6PcvT>Sr)g%gXl1-5BrsmV9;1P@eRz9KW`o zUWdGLts?1Ot4hWTG#Mfp>j!a%Z`q#p(7(g8tjnttnSbFvt}n&9-*^?hnJ;IR z#(DKpb5)*|OH1pVscgqqXr}0bT)i!jlH1#&dC}K$#P;dD=$o?Q?fbZ1mYniteYv~d z{2glf1Ku4LQt=0z8ShsVN3Klswxh1jg15WD3i83X+ebTm@!r^?h5&~zZHUu$l8jjqFE7ouQB(90 z>?=3kJ=xz;?NXv!(zjaOKguh2*IWI#6uI`!Ztp+uXx;lqF5R<@ zkMx#P_J;6VkI313L!#=K0g8DPy|~M5ctIvxvB#zKcE7*8XKxfwVyoY6Dqr90tNe=M z%kIjp-<=#*i2a*tbW759?H%**P8K_An4uI0nAAkx^KKBoWs*<4o4^a3%06Xbfs=w{ zOSMH+tn)kauKcZqX>y;kuD0*VyY{D1xK#@n5h<@Mo6OHz<(p-TLmYN`X`t<*oT4{* zHV?g_Q4Qtd@~FT+!(>Z_CL(OrvcX#(xVBgom;|It^EJY*s z_4Lr>AbMN9Q%G8+a*tZzY{MSAa8j8q{n2825ZtVIp>4tdEbum%@4+KONyL&Ff7QCO&Zf? z-R+s&Vpgk28Yr(k_$XzRiz)}oC-8fpog(@W+2_#V_J!IQDe4E)F=1C+I!haMon30S zPTJsqOul_6(gOy;R64ON;_ztxh+-YfaIHH}$}8P%?xUs4N8LTuOjuX=9C=P_%T&4e zNI>21T}PhMhd^2Dk9x9}N>3{%h$?0Cv|ruJWQ{H_`?wR2+f;V&;|WS5(4uKgOv+36 zuSJQO#mM#{ma?&xF?I2=toYa}rYf)~r>ylSCKhSO%Q8K}%*8sFW2YJ$@?P+xev;Pr zIc2GzVscYD?Z}n)eAbeEDOY{=ltx)7r<`ckR#j7OXX{ybi4`xs@P;EP09wW*do~oB zw+>ZR=&?vHJ~7lXe<|Eu?r^e+eD{Q>Wq%>w1rzelAK;p=7^*;yIoZ~0XWY{?Q!I7L z87GIC&tsjdsy>9NIf%Bg5e z(epNIiNaeAUN4RJoV@2$zSm1G)Fm(VcwUbGd?>$FAQyk$!dvavGkUI5pL<%YZftO> zjSW$2jKax=&x7Q^s)1f+RcY2Ea(2~|*w|N$1yog~xs79?TvOGJk60#m`Qk30kK|u* zjZVgSP&Ym7Y7>qvD_iuhfl3t4uc%0qt4;@Ut1MqV-6ISMc3hSH@oHth_#!jeD>{>- zDvW;R#dV)EMLcSaeBw+3B|c}H>24**oW0Q!QsG5g)94jg+>eMCj(!<5rGpWR_B*it}aXavWJNm33<(hyCIg1LQ>|eNpVjp^I0jj%_Z%3iM;3Q{UMeO zs)#e~fg%OpOlbZ+8l04rK})(VkDRUv=le4<*I7Noxiw?;w^)5pLBZW!r~$`9=xo+q z?H%r!x+1T?UZeijt4r*w@lMH!-!_&@zV$YCxcu9$c~FzQ+-tO{VmX)1v8Wj@BK+2d zkizlgFgEk*TIE43f2)J0B@59h6q_O|#$zKZqx0l_Qf7#iD-kr(Iw3zYX@boXAj#bV zq_V;@QW^1AScAe_Z_5ae-k(8o;qAALQ&Ri>3?KTDAC)v318cOLTfOrUvSG9(ExffQ z4G$ip<(P|)wxmouwxxx?xjzl#mxY&pB35NoJ)b+ z@lM&YOW$yAc}t%9eS2QGQ(lk6vO_-p{qICP_`_~qxLLe; z0^nuXdvtV2jegF9bu@bMqC~{R4>Z~l+2{H#?l>WvZ!G3XpOqEd7|6-ZO^(8Jo8`}1 z`Kdo2k-cK2%dhlI(zK%}J+lB4H{OPa;{b{r@#i@5 z`GP-((ttSsr*S~6zV)0wy2=V}jbuTU=R}F}@WM@zNB_x>G~d;#JSX4$Z+~w6kDPe> zJ(?F`(6Ouk3YdYPF5IT5%JKQztQnoBoQ1P^@Hm=AqdX?$NA;axvj$3XT%c4|bW18D z{_`H*;jNFsSt<*-PO|3jK^0!rv zmox4(Vdv!qcS5N%2=8O%k~@pJqguBAJs9!q0%lmBmDgR*g89N{m&%-ff5f=;qTJ`7 zas1OOa_K+c^Q0fkR^C11rRXoRaGaRx$$ApVPqL(oJ)W%DBN%w5H~XcBOOa#4-|$Ko z=RH|eSkh05uPBSjM6YnCSsiR!A?GByeq)8*izV^OYhtPw+o>GKskDq!f}C^fxXi{@ zPu1xhH${v$+p7p{bBvRrNlDu5Q{n=#BD{K@5^*%Nh)s0yTWjItilt{njk)t)?&u`5@NRlX2VdEo1cK;dp zzs@bv16Z6_8+DTOI3hL#u({k3Ap8PZG#?Qt;seo)GtI^IK=x=jN-{YtLo^ITq=^|@N?0Su^vGIq4I%w{kIYe{`Wv_Ctj;^XuHVE-F-enJGD|l2AJHyujw)N(tU)#Wa2%f|4cgmp2jl6yE@ z$0_9=Nv`4!>;>laU7fygZli5L9jw=vM_-ZE5w2p17sVZ6;=*K6-jR**ujsFJub-;d zzJr9l6ANvihNQu?tPsV%EI>@?#OzI!3Bod5-QG$%r`pbQm{{M56?!OZi8I4RL}#|V zt-4fvk~Tx39h?`ds?GH7XUZ?ceyH{O-yV_oMvv!}R+nj_scyc-*BqQbCj z$Q0#|vb8F3%ygypU>07-N{?qR>MU_Ro?Y}%8r^M%IR7{cRYBB@bqOp${T(<%1SjZS zv(Cu$yyYpXA7_ES^ZTeexHUb~ddsTNyerKr?fdCsWdduVmT-2u*i%-cX zJg2ME>j;fL(Pn7?y)?jPv^UPjx2#d=$Ff9hFV<|7s={$t&6zaDB<1`Z4oTRGe3a*O zmELy-WHbXDn+yZ#zcXpim@2{IiK((nXNnRO-b5+9FP`h{RP$Y}f+?a3Ox1YDri$ym zplwC+*ff_@edVn?-ehmf&yM;6fuXRlXLt6t#GGl!({?EYRQM6;gmQ zo>ls*B5eQ*;U4Q<3kI->CT`gxE(~Hl_}VR^>0pe(ty@I(VAhLU-w+Y0tP|hA#g&%I zq8YE)A_|7EPTn|*t8};W6X71h-sc|sU5kdYU(MX(J&`?%B?Ni6Y#8t|ozHbs=bU%6 zCLIt*N3qHO+tl|(d>T8<*B%r#X$;#lIih$B3*?p$Tq&cOm08vv#F||GZBc;89z(&r zp1)%Z^EUENJb5qQGoAfz;#*PhcytjNyJxVGeCs|@oWW)xT{nTf(cFL69EaJxrEQ*~KeiNaIXCrv+ox;ul zxRy<2ocTL)$iT9tn5ivCDI2D-bzvzvu9a|#l|CQDEr(Nhy>ifnR9^nqk+>DW-e0Mu zxu#8Lj7NDLws}h)ssxILguEi?NZbpMZ1DFX7gG6!zYn`m|8%ApYbJ|+P}SXMp`kFI z-)x4Rz<@&{IS0x{dLRcq{qvAGpTn>fnj>1zVdE%WHU~Wh-93jr!M<8I7hY#MEV|6a z^a8GPE?dX{JSdvZBl;ncGLMD$T0T%*S{Z-n?Sgrj8sR@XNCq`sn8%{5irYx|?jl%} zJjKkSbuOH$>miYt%Q~AsiPR^dx{kW>29^|0_+fZ5G~G8VAD>?`41z@85zLpy`+6|Fcdnl40j zXAXe5XhsC0Ws<$6lh^|E*7M{;29REBKJ9Hzrrm_pQGyC z;`nnYAI$ll3L1g;18?s_NMgAB<_pjyOUe6+Jb z6f8kw5u^?-Vdt8im+>M85xqaP_6M$$4hJojBH3SJ_Yt8(pmiG9j>-op`*)c z^wIGzk-eG?^)Ec9<}Ny`=3e@Zs9Fv8DLUi2wi?q1uc&s#u4O;5u%wIHMzC+)L#sMn zYIHX~7KmhakuLD1K%}gP$0mIz-0Kkokfyz&rq{J}*{kqS&?8<$ zgt7c4*1QJn@tcU8>00_sJZZlNZAPUS$`LM2wQ#^rwLd7F1l|bGyE>nHxd7) za1*xN6qgAX-4e;KQ~p~b`*k+9^E$Y@wQ>qJa=EZ8kKrH28EDD}DGJ?vNT<7MUT6Ld zgDQP&g*f$Jh}{K0WxD@a7Z9!AMog@1Ad=r^EgoA-1FB-G&Xg@B*m0%|?pyUVCs$tb zD+M_(>2y)@HVe$_dRLvBaoX16*78cft4?EK8V@J>t2AEXb&Y3Md6ky>e9m80p2J_` z;q60)No&tFl~>VFnSz}tYj9#das~Ho2tZQ(_ZVa_bZ`Xp|3_E$2 z-(2N;*$~eG290X39-8Y}Nb^eHB}Iur_s}g^ZYXqTQ=KkS-#6%_GEnJTj*_>P)^ANG zl}!|#D7?f-ji>9RX?;FtxXP>3NlQg1NnHT)oZfj6|v)}uArg073Wc9@O7ht!owJ;dq{S)`HPx4TNe z`yuPXlO7da+=#DucHHG=+Zg>A{t;$%-mkYSw~DRe9+(8>!nH$1;%O|u6;L?T)%xG8 z5qmHz{WQZ{ga_pk=g+V!DretNar7)}r-F*1;`UkAkpL#KR1td)lZ{fqq@g1F9BZS3 zKZlA9=kU0saIOp$?sM#M6$A_u=JPBsl-?UibQ~H-t(8yen*32)i;ob4T}qxmlU=3f z*UXZ{Y8FC2_J7BQDE+`z>Og@28Y&iE zVk@aeoQoJJd@i#NUN>Bmp`Ie^5m%qf>@|)lw)%Va8vD|<=m!?c!j)<(hG5a*n;Bxk z=K}q)TkI{FwpU6n*iZh>bESw$L+R1z2d5P?t=mKE z%@9%iBjU6ofH+v2b=UCx ztCSo$Osu)4GaRX|s%xyH$wPU3S~kq(d7TYK#CXq@{s;TU!jJtX;{ReHd4)Sv7f*Uq z8L+WR;EYqpkmD_l_qH<76`s^h?);;z461%9pLbt{{stj}`pR<$7vm8`;MIR~y zy{}qftj64{Wh_^MpITuDjkizZ9jNCew$o_u3;P`w7-ao`-hV3lE^4{$waT`;Qtz-s z%p)HPH02L-HLf8ST5-aa`VV^(n>e4lYVNXIY*w8%jv0D&SZ#pgxK`MwSVwW8_UfS4 zxC)K;86LVcp8I{Raa9z44UN(!I_noWb;9wwf4f+~`1jo7v@3)2ukdvGFA;C%LEPit zBF)UZ@k!sgip?BbmXp78m0S3J&a=OBWqa~y&X-k-_1-*zudf#8y*XabR*OCj_@G{0 zTMeW|p^PF789to7q7jdww|T*up0;yL{_-q%_`zIB~$!121^KUYL{LmuM${S`bq zSmR!U{u+FCMXYbg+w*nR;&?+I#sj|>*BbI!Jn4Ip?#tIjIkZA5t7ZBiQLX$NwStO^ zY6X>-T}>b1s~P|5irD2>SApwQ47C-XUJ>X0)CxQsDHXV48gV>LqlPqpK8UZa7CZcT zNH53t=pMF+cSzx-2k;dLHY~2c{{4MjflOU1URQaAKd7y+{vf}?_x(2{zMDA&D!TL*;??I>j!L5EcLiy^EBUat%vNg<9`TqQ=Zuj zB4B?{`xn+5vWNLj9N0F`a?D?h}Hed6d@YYA~gh!X&(K_>&C=cRec;#K;*PP!9N;26BX}5smYhLB7%0Fs{ zl1#!L44-mv(LImeN)7)VBXE&VOHstUMl@qpzCHZUv9}$7ZMrj z1`|#?swZG%we-pfq++ecHT5(aa=NUvN~2FyXny2f(l(8jSxra}lNnr7arI#|hyC>JvjLRDLG+W`VS|d-Jzzxen$k#1*>dSFeMe&);Lt8+( z`n2YOG^L32HoT1o+94NSndw^DhI55l9L+NWZot$vs;QHH)$}?`c(&yuxns90qb-kQ z9?&*UQ_U7DWBA83r5Du1Z6}h)0g>L0W7+(kaJS<)xUJV=^DzJALUz0}KP1+)=TC;-h^wTX_aaY}d^-+KN&i#>yzZ~K9prVMZsFH~ zf8^`=k?ff$xh9f}ePnf2ci=?_JaBz-m=pqi z)8&cVjQjiv;Tw;kQk5(c;&Ifbd%rO05zzbg6Px0Bpm$b1J{->z{9geM1Ah|k0Nk(i z6TXl0S^gJ59}Bz!g%bZlKk?Gz{1iXeUyMuO<9NpbuEPmDi1Fbm;;Se4oBUFWC`#m; z{68KTCV3#kr$`$jJvUHv>xuoB8sHYd&x=Vt`7r;OL19uWz(%;eaK{W1pZ4S-b#&_2 zV3mHSCn6{KJ$mt8Q+x-9N$o-RM2a0(DK%@tut}4$a^}vSGIzqv@zd~Y()f9~6LKfb z(`mDxo;7Lip22phd#YWkLF$L}D$*3B8Mq^GCj;X{W<`fNgY9DQbRHwl_2!fK=Yw4d zeGt||%tOMYArScj-J>ScMJlJeX^L3v;LF946y8&eNaAf zEe-e${BDO^zZib>G2|!yD2-`Hsx))6y`^M_5Qe)#xH*|v^?g{dUi{t{)85T|5uJ=l zuG?@iGMV?tD}GUx(>*d3m}oh}!=!>~cIm=OyOfKx1nEko%cj(X;cneii#s7wL>Il#CqO{ z5o+G+$YabaJ&Q6>)*jr6PP=qqkzGoA&MuvQHW0l9@gVM|d3MPY#O{mjlIj`DQ+a^6 z(~tY|;t|5TKcCFaBgNeQJc?(J6tDK@-7G6dhDq(j@?LzN@afG{)ojfM@K(HFl;|}8 zl2`M^^Z`7~|NK*SH2xlYY#P8<@a1VDI)w*KC!N#fiJJ_X3QV-iX<^c3bcgIvPO3n9 z4e5H^KAJ4)+=z34iDt)V-;|f^KzYdy*Pa%;Q?RUWsTgb-UbMm#f!hdmOz)?O#G>xe!U24Mu|KPeIh^ZAyr^e`!2 zgbw0e#4m$+c*Ci{!%<>a-2P(oOx{)`r}FeRH$hJaZ3}Lko4&2oEwPm+F=G=Do!zj8joPgnNc{!0~blljJi!aqE}{ zxn04+dnoV4JB$;9hVmXwJ;#ShZ4Gj-;4w@asi&%bX+Hua*Rd*EI1&EwGEyiDOciYGDZHgoEPxf3#T73mttHb5SoH!pYYv{@JfO{a?aPx849 zmrqs8S5k2?gEtio)A=L3bgBqR=R^H(g5MhXNmWp`6g*87rStw_=Rpq!UV+AuWp-87 z$L2MkBRqX6eoyC7{u`#@TnqTG;qHWc!!!{+7E74wX=3tNo?vN=bE4fv&+*(Q4vytM zBZmVwhukGpW+VAa^_DI80pao@^a+}go_-a&`^GNC-$!o^`h{xbza&D&VKzUGvZ>8Y zaHDwX@^mq19G~mmXhxVc68QFX@##3s9nKlz);QkHdl%@mDgf>_9<%=zWbiRwu`@Mi7hjA6&pehl<|}6k?+F;)7iNk<6X2Te znPU0`9vx(#rMgWUq%^wYkWyD4oh5cp;0fc#19t(Q0<*;;&HAUlZ9Ak;DT9SdB^>LFJIidL&fZfZtbfpT8#hPvk=rZlaDs5Hpr-M%l%8 z)qWf4X()>>eHf(Gh_5E{X#e8bVNx^DcOs?szcpI~X7VKeqrg4}dev+(D-+XxaE{mp zzW4B)FeLyl&k?sWc`r*T@T01GrDpLy-j+Ey{)GHjbHt`BzRkN5m=>DBkrBJ%WPfK>6ij{kR;_vJy4TQTnwTyQ#o*yA=5tmHWso1m?jN9{|op{>rx}` zV89#kn5f(7^;iMzdlwp61bQH)Ox(7J;dG@ZAv(<1ef zEW2YKn)y_y)EIZHmJXkf%u8D(+ZKrug}K*<#R%PbuZsf9q+wR^1qqMp9x#@3}OcGa0~((04ITIIQ)jRkt+Ah zES}Iy&;KFvlOO3ggiFeUu#UrlDZh>*fXQ9ZjytokJ%e=QY%HabE}qTj=XJ(e%WTxW z4EIRSC;H(kAvCg2{V;qFM2ahF0i3-=g}PO@F`+kv|^PRTu~(H}!P0QYFz1uulw zEt-zwclOFqY4{7Fp^{_n+}Y%t)i2fy9DEs*L$M+tiHn%7TPX_(T2sY8r%u^dp$D2; z^$SpncuAbf!9wrUbE4NA9_D=;vZTX4sjgXb_)ms9Xd%6gLZLo-V%-JY)U_Xq*xI+=m<9hvx!E z80vc(n3}1VUjXcHz>|T|p71(>6cEUSdWJ`U)dsjmKE->nU?1!lLuhOAVsrCQkK5#fxT83Mf+hh2x)BcZX$GSr9&v5(!g{}upta_S1 zCQ6>>7IETfZuieEP#xtJZ#7Wo7Kpn~V=^o+5YY>Gf_L|ep;8TYGjo4*&0WC9SsEs< zP`6i}LuUg-$6VgrYEQ7oCa(~8pM%dJZNC`#k&ao6^%>Gvk#^Fvy@PC|V;y@#=j41k zCL@y*A)j|1Px8{~Z;Q=~c}o$S$GybHT;4<}IFEOt^b}HmUGQtoh@ksBdAFfDy)(bJ zqHe%yMQVSt@58j%rI}05|63gvuR8fqp8BHr)rk%x4OzlFg`~cyE~*b94|TA8Yi2Td3>ZPsL3_36AZoMa=#Z%eRbMd5dr@b;F&FToMT-sN}_ za6FGEf%7kkkQ?%V?@+9>(FERymOmTQ0`fid4pw2r8G+4WLBKWpjr3pQ3M&dx!X zX`~o2#djTNp*C96>3DS=7TcCXi|Omc+2zga)~$Rt zTnHsthmU?OtS|HSJ#T8g{{VR?==}>Rnb_NI&z>|nm)3leF4IRF$~QF`MbIkzcnxR|yYA`8T-)jW>Hh)-7Y$JkL}k%3CZ<4CN#67JSE z=Hk>^9wOGu+>V0YlaVK0T$E8>s(5@254XgdBq@!4wqhBSv=r{O+-zA1@>KES8vX=3 zEl#e1e7Rt2d1t<+k2tl4M~jTL+>_@z#HsMss8Rb4H<5Il|t4-lK)<(({v9+I?7^jr@;bP)^J^R|{{ z1Mk)z6|2_ZIm^ACH?=e!bhkD_+;|7OE_r3Vp*J<2HX}R-3*T3GlqGra-CC#U_#qx& zQ(l4Eip9)Vpxi96^A+g7M*Q*$AAqtSeU%Sm5#q&HK|~u~<*h89BktC=7B@EX=1QS< z#6-^#;?x!xAn`Ts$$~|{*U<1p@f;OTktMp6cr2S8?f*-Jab{2i^O9^z$WM`OAOqEc4dhrn|N*#U$I5bf;>5|uB(%a${khyuh_~>=so?RC=NZ2k~l)zF> z@puVpbBakNyf9AT{+{y>D4Wi>VvL^51Bb|Uy}5O42qk>Rp9@+QnCZ4|%034cfyE#BgNEh(Gs)@INM3>0~9@s0>Qd*4FWa>YMy@k}HW zb^(=&w|DW`KrP*5{_>(B*m3NRmR{Zh~RB&8G?g7s!=1_859NNS4SdMsnFMM{vNwHWUuodq`U|V)l zjV4uggnaSEUIduf&lSF++;~hNiQ@5h73EHP7bPzc8u8TvI#EY-@D@|_XLU*ghqb}(Bf_Towr&y|4ZS5{GX9L`v zA3%-h-T_!JN31%)r*KaXapwTA&F|qFwGv9-kTo4=ILonOmRa@If zoOJUr@%MYY1zf4w`+R`)bc5Pjobo!g)zVTdf1kIsBsQ$oCzK=aV?xOV#!%i1mK06T z7wiMx*;)ds-7IDu;jP4k4|upKr%|nV?RDM)-x;E22rd$DLy$N27vFt=R$mtl52AkUL$xeF)mh z5+^As6~7$f11!PKYHQ0?{fs<}nwE(rhoQZ6QE?chRf!vi;l(kc-G@BRG_^&ocw!A& zN#lMc_8oG>iyy*Z8^qTi@=@08jM7p7+)LFBe@d<0Y?Ui=6FU{7LgZJPMv5JKjOj}Yds ziZdj1Tr~R_ZL1O^K1Ol3#d9Ak9r*LqP=0X<-CP;WPArZ5M4|>aguN4 zF$2W+C;2A6Xn-g>g^cEYV*e>@|8GDA^dLeRS7Hsf5^|vPuLcO~=Sa&3h$u=c2Z$s} z{ZhnaO5Z>^lwKPkwjuR5r>J|-RE`IhZ7Bcj=e)gt7trbPlIZk^8<8Rct5ClqMI<53 zI{@Nolw9Pn)eUJe{=z~#W}(XlV!`RN8rH^j~xSxCLO`2VP{z@Gsz%27CsX#)d9`9{3Fd z{ts}u0e=HrX~20GLHNo*xD0&FfPVm{L8Djj6R@8F{{kFgz}JCkFzNDt06Pr$7VvQ3 z-VlJs@}y8iE+Xg|B7oN$a4TRMZ8|?1m`0?JYe9nNU179}anZWvyB*h0btml6Xm`0zDHv#KsmRKHI{E0@; z1x^4{ywLIIzzYocU%(V!bp9FO^#*(%nBs@d{}1p11O5h>!UbK}sNvE@5Y8I}E(6~l zB<7#t(Rs%(;p9Z&%ngKTLNT31Z=&tedQ3`$zX2|9YnKji6~A{5E813g*Q?=|FdPb_ zb6|>si24d{bXARdI)50je&&rTSO=^hWh4A0uzsYCaPW_+e__^9r*tYvyUe1+Io`_O zenqtw?HKx_BcWHs$a9#LO0n0ZUM4AoI;dS{=|*h=u-jqRC`{@JY)`7keSl+<>v3P; z_`&tF)?DB<2L4mPUHaF{FYrU~USJpp&q6>yOGo2itA^DUaA^mye&&w&|JJb1KMPC^ z(D9eRDF%E2c$fiy>xbYy)K0M}nPYG?nf_TVy8U3K#>Y6Tt;B107Y zs`j`<;|KnxR;U~1zra+Vj?X);V>*Ebu#iy-xN4}7OyG$XMbi|!)&?du0Pb$UzQ9uk z3+tB{XXc+&S(2u4kpfJzU9`rW2cCk;8-h=bZ9=OR?V`HkfU^hMH42k@0H+P9H)j?w zolI0O{0mjUIGw2DJZU-zxdv^{1Kv|FAT0o1fCBYZ*cRZah6+vrUp2`88+bqXwA)MO zz6(r8Ce;gp1dQT3KH_kD5a>LmF3=hH4G8G##c{xNzEbCB0$&4P8OW&MC15(2sq8n_F#tJRB3?SL<97_Q8vSP=B1p`@}g8rCz61ty#7I0KkWpyNznGLeoa1Cs`H zJPnvsuH$TA(l9R6j|yjlKsHk^F3kld73ugXVA6<=7XXt9bo?x^aRe>~uD@>7PQIpU zs4a-(#5;gVgA_^>!cQQOifAB_K<8gnufCv-f@XiHUfddd8YRns$&1YzpWjqfK2giR z#Lxg5C7Xeb4J_69)PD&A+jRmEWjF?$Yw(Frf#ZkUNf;NCP6D4d;3{DANV~!%{=b2% zM%UxBz{UoA2~3w-KPtS09#e(KwFkB|1Rbg%M(g3Dh&fcCpN4~Os14eHLP#TrfT;l| zwEP#e3aAq5Pz`YP7&}2+OsZ8Iq}7kn&1t;VT{mhOOhOrgwF)f;J{8y+m<}JS7n9lo z(_!BT5I8D$N5eY*U0^yfoT%|_0fceBRlS%L2*OGnS8fCXjen8XZSU;3b{9iN-aa>%w4on(UFE0H7tVcTH-vTC+>ioZ&!vDzTI-v#v zWK$j20+$*vM@!2M*aA#P)^&ML;6!LZ#|?l}4cHer!+;y*fskV$GzNAWa1-ES0}cW% zG2j-!WCFcHJFwe;!-1;|I10Ghfb-gbKsMD2hyf-W>bL_i`G}4?0h38|+!dHisN?Ry zWI`Q3225VBUS=r)m_~(qS@NWwAQ&T4AK?1yM(y64>Nr=%H3CiSpXxBIh7bjw4}fXd zxwSa)D=?WzkM*&)R1@f-eJ*eYI;3LE|K%W%jdg)rz=?GNT3y*I|e#cI2)Lp z%8mxmToLe(I?UE<4SMQs{bvls|G5?m6lkD}B5#&@!L>;PN_~0UBK0-&m?GQs`!q7s zz^Az)$AC#*2G)Su*QE%!#aNfFnyZf*7!9V2Bi3p$p8fUHi249 z6?8>Ogw=~l-GP(gR5blkgEE2X0}NgM6%Fh18-NSI_XL5;JE38n|2Z&yxM8OHl^(TF z3A%s@n7)C~u@%^f2E>3s4d@6=A5ZA~F2Dy3{PDo_VTI102z=YXf05*gPyMGNi$Umu zFE#WEJ^(&$DBv)#c{(yE7n6oE(#)8?FdYzD5$t;Zg~*R(SXq_IxG^u5PQN!9pkDpvbX z8rVbyAcHpqD8nbfP2q(4TyPWE)8M2nTjC@qu#YC+AGjM-tX^Ci2%KoZslenzI)4~& z&TyO@(^axqA=C>j0VbR4847^uD;{0`9S!UJcY(XJ`yeKBD6$z!?S{1iZk2TL2dWPe2CJC_PjYRxd6M0L~+)&-_YPJ@MxGMjw>Oirca ze}E~F9$t46Mt)157@n;XLVEPo|7p zWp+Y_ghpsF1V(BFIDyIO^agzdtbAgo@%P#BL%V1;Ja5O`F&}@Fi%I{%&uk5miM|1@ zzw&O>rrcCB=sO-4?e%Ob5J!*iDZm4`{<=|%llyfS$+x>tKGwje>ASN5oAW>z2?Bkp z7K~zOGCHndwN$)Y1Ex>a6rTW}!T$*Bd^7L_IAv=PXcTn-rY{6_ekWl1S$Fnx-s?2(kDwP!|XcM<`ulCnhc?H3N1ou@k_>q+sBZC3XV1nA8$@#}YdM zTucfBCX=Wamm-0e8*ppj(}b1!(W15>&}WUxumK*aVZDISz|;dBG(xp<0vQwrc13KPPh`|nrzgR!3PjDmf^HB^(YoXgntDljVMk8Jk*CN8nJ8q z4}i%hx@htpDO5mU;ZQmpBmWDfJr_(0{(xru)YDaArQN~9?u1)FND>LNlyXO*Ty-bq<`YKt+i-G-Ktj9}$`;1ZlJp&3vyYfKj0)k=_5Y7Ro8ZvwZOrI|61%3@&Y{1pP zdkpvzaFqdn5A3tLKL3xvGYvkIcMXK&2EuQ^=MDIG;Hw7wCvamlSiQJ(8#uy%{|2TG z>HNFE)MFj9NW9#r$9a+>B^qaQoipuRMg}nL&;8e)#_$DyfTn|i< z_+)^5M2~dCfyqR={D;6fI?h9Zttr$R3K$JcPNx@;gmFq5(Z_AWX4nORlTOtdcodjS zpz|9AVHm<>ZO~wfE5m@vq&j~sFqx2W9toTSfqXz0Xx5x5UYiI3>ahSO73*>0D_}C2 zk5)koj7Ktwo<9SaoNTnle*>6oo}u9@z+}=PH2+Woni*_F<1+p}8$My+(>U&Bz$8Bj zm_EK&FD6X|?ry*{fQ|crvw)KopHb#NF3kZU&EQ12!1)IJH1Jgeeg-&OtB#!PIpF&1 zM(xkH)dnPLCMx+04>pE9ql>^t2~+)~fz~ZxQ?yvO`Ts}Ry})TTtq&aE?>p0lMka;I z&^wt!DVh6)936^~gpiDCt|dcZBn&&`2qB4y6G8|fgis6y)rl?!AtXfz4IvEk|2=!J zHT#+MKL=-j&i}9PdY*OJYp=ccdz<(DC)O`Ay^dvoeN2A)ePY2L*eO36%K)t#vFt#( z$)BPIC^L31o;*9j{0CdiyPtyj6j(oq6Z|zsoC3L0y@l&l{2jbQ&B%NBcjfhXmU@@= zW1LER;THEcV%j(T)4^s6547e?Y zGUMOj-%scHKezLsAeUn%Bjz#?coLQo%OQ~pJ%0&jU;~!3;=td-8A~(n)*Mc0rg6VE zJd;xO&&4uedx&oA$>T(yg8o#H4%Sj2dpO+qC$$H1%)0MKz-;1Pc;0OZQ^GqSSkFK| zC%-?QBTtcojhExGf3~5l;=?JJe`ms!#Jr)7PrwUR{0uzi3^QXK!kcitiqFC;*`Z#v zC~N3NJdFHc2Jn~rvHtWUny*cTa0I-bkL_1sNCSKAAKJ$E!P200I+g)hXW*BNWC!=h z(Z+SAGuMCpkmvxFAX7XH>nS}+#pObDin8R_IQhPcOa2wgl0RP(bO#Ts1gY?-vQ%hr z^50c)$$wv2@@4LI`$=*vTDHb!zpW~e3Vodl2dTJpkgY8FBb@xxRb28%DNFv;*7?47 zwMvi**D6beg{>=iPpY`&KdmhJ>z(|MRb28nD)ag;pO)Z0si&xe+&5dc#^#R7(m}41 zU!daB!NJOsKgP)~Q*qWm?@p@%sW9ECaHEP#2Q!r=f3cJQyoyWy3(AteN#*-;T70e& zq{5fVQeoEvTF=mKINBPUcUPADd?&w1#ijlJk$L<_!5L14F;N2jG&YwhOa4?R|7sPN z{A-mZ|6wQp(Uv&-FBKkdDF~l>t#T@?RdLCGTUk2z#mWCo#U($uZ<{HT{C&BP2Wu|q zpF^;p+}K;T#^&D2QelX#5ahJ=j#qK%;6!D~zre|#tm2Y?iE+@sRJhZraJN%op0eb> z?&Pmfap~XX|~4ZFZSiJJ{1;IBKP;9K|&ao4$gHNs8(^=feV!-|8^(;4i%UDxnkSD zRCvXy@S0O$xw7Q%aPoguap~Z9Wy$YzVCxy^hi(51rLj4S0=r3tQBH*t6_@;SWy!zE z$)Ba-l3%MV`Sl0Vf0gZ#v*2}=AQe_9ONF1X&i_TlCI2^N$v>c9>-+<8v^6$o_EY;W z70z%fjBzTIDNFtgC;w&@mjT_XEcvfE`LFpZK`Ja)mI^;Q6@FH6$!}7Y{N4w(-s8SF z+8Ub=QkHzb*r_mDB}fOQ%2MHKC;wU%m;CFMCI1O0|0xwG-)~;53Z%k^PK6CBE**TT zEcxwuysg(n2YLM6vT^%Xmi(Mn`F>k3UnNKfMaoiPRI3VYy%H6d{BmW2|01WtGb%wUJf|!jeC*_JRB_4QtStFEXSJT8U9jC)|BcP5sz55_ITZ?3T=EZ5 zmi#eJewm6(exy3kNEHv?xLWld$4c9w`0_nh3I8AIMYor)QTVwNRW!a-C;(HP%g;ziD zV&#A08rA+ac-a{|{|`6*yo&Ubg*+SFPW$gcEP>oMFUR7eAQ&j4s^y_Xs?5`$00owm#g>y zJpcYE|A<`HU+!r05(^d1A)!AG283_J^?YZgj7u7<$2+i%e~T9>chBP$5#>R+{X?ckHoW-&%iPu8y|zms8_|x zdlvUtdY4uH4wf0SYpUx3BFnxERr!vVF#CC{Yq#Zw%=PS9X_ZAEQ@xTvqS$@aar|mDhJR1zi=vSRS8nz zTV?5>bAIa?+XF{iV{Smi(KX{8=h4`L)WD z|Gdg){kQdAPzh4uC1t6wQB{!q%_=VWTa+a~seqSe)mhaRr#_M}lN9rI!e-6M^}nr` zLP50gf`hU&*e9wG5$gp^Br!4vR;FI|r z#S28`G<*XOR(rS_KgMY%uQf^hSG-PL*!C;rZ9U1C{g;&96iihO^u@E355mchQX$x4 zUN%ls&ch>0qATMVJVwRK@HFL0yby=|Gk`NGSf>)IaQnxi4kzGobkLCj$R6E}C*j?U zU&Yh#KE~Vd{dkn|UPU~#&XQ8pTYNyiToUvDYx;Z zSZ2t&4$BN#zk+ksBc|8zG+!kwr$DC6R#=H;Myyw1nE~sycy;Sm;!EQd#m>JNa*^xODK2vgCj7 zYnI{3G;0ABq>N_}#`fJ`XP|i$1FT zCYEn~A1BY0sNe7Jp>2K^mT!iiE&WTvji$gR%#;cw45mQhuN&L=3j78gW>O$GqwUx$ zkM4dw4&(0lR3dzkO2$RTwtfxnPrQrlzjV-O3T(o5oJxaTO$R*&@J1sQ!j1QB2k=Bf z`ENMo>4X<iD4Dckp7|S6LUxvG|1M>GrLBV_q>PUzizl9rAh2Qad%!~&4 zz5l@;&;XAs0-uEY;#A{H@nYo%uyh!1aql6MFa5K{y+e~RT0S$~G*5LthLnPJmE9c-nbmrD2+4^aLN&sP3H8sN=k+u#l?Q*Qk$ zUW8*5$PVmxcxW5%jTe`z`+r{w%U9upBb$ zN*rBy+InYVS$}5ZEtPB*4i$n$7ms^8nLRn<; zRIExGG@G3F*WzW*B}@rlD1f6MV&Fqf*ze0v8`xF;JO%Qr2=+SA{)o_F3;Z29mS0J* z=k-~}HhvD4UsB+_W`1}L$=JqMN&eDANaAacVE?DQ5EZ;lLg9;%*WnM<6n=m+Dtej* z;@(F%SNRh>KzS3EpMwauxc50;sQl#-%zvFK_?iUyod{cD8%|?}tiQ)HW7a=neN2DG z(Z(AX{di4?8I?mQhp5Xzd=v|JF&^YoAbSv8C^)89W0?Uy@)cCrh-Jzq8}FUT8X#ZZ zUz9a48p|HpHF7tW9kSkpWyY-c%i>eD%=lt60RManWDjk^(^#f_py^--w!f$$9Ujag zl^L?HYF&!;9yX~NkVV*?hKAK8Xic`5w>Mt!QbNEc-?Kr%;+GO4HolVz>nYt2M_Xg_ zgPax8V6mBz-YPB~9)*{^lrU9d-Z6OH%aM=6b6OU?ANMY#V5>^F7`NvaFoGFj9nZt^ z8zkWt^B%x`iQBVgElyMUzu|$n9Tns{(Q6P^Yo-sLZY}q}eiX=v!i_&J!;A0p1 zS~(=l&&`BAlHcYx&I;S#)=+ z4&@lvI|F)M#pMyu3T4UPiZ?7vcnL-=7pB}JL!0Yw%qyV4TW&^3!Z>3}*<#*Vcos8a zkNGWl0p2-?#=Sb+h5F$Z^IpM2)C|6XG!h6)(j@h$or&^;mv#Cfs7)OfhlauJWZ6$ZyWrgqN}W z9*y#xSh#=+StaQ#j*yhmmI_SCyUG$yhwr^L+h8Zta|HLv7A=c%do5&>wjZ8 zEv?_gau!&x!E#z#H~19DF}4NoVmW5k?_+)G{SZf6WAg@OxzaV^US~$DeE(yap;ZY} zCB~P)wYGl{1=H!!UfE8=v#1a}0AbP>8HX+KM<|Y$;6<)N5z3e2i62Be^ir!hpZ|QVRRQmW;%TaZ zH}Uk%_K8FrFZDPsR7|mbTo_DhIcm|zJ)X2jyhb2Cn|r4r;#tWUm0Ngq5R{$FrW1w^LC+NG70ulT8PU{g2WFs zW+LR6dCxlW7aYHY7pnTNIbM$I!gzT9dy|5U_rnoMhi~Cr<#o8f@`rei@JN^fbJA* zPzgPx0;i=tBuC?E>!Se-#r9{|ox766>R}ENbf^Sk40Lp14Y z9`H>NkK-9?4J^X)SUOA%;(X^Kw!cOwhh!a=9pH&jP`@9Cv>qoLzvk1S-DCMHbLCU8s1>OmcPjP%2?yvGkIWECfDqiXMOgyJ0 z&i((KRs}KdT)em?A?8iOtCcUoTa~BaUYnvFxC#$ezSi-L+H(J&NkO@)P>bu7=iuVa zQ3rQBzTfeKc(TfW6gMb8i6?#*w#WMCQ%$Nsywq_Wo^C2g{8hX~c?F*Oc{IRPjvE}m zi|2*;a{lq>lN7914Sa&-hd9G6=6&Y)E63m9OqKsVmLK@E^>;Y_t;NCl&)In*S1whd z4IcbO)WFVoiSn*^3a4GT@mViCTX}c9P`N9%za%Pm!^4fu^*`+KrARd|ka?MbZvG#UsN2?;NgpgVZo@d}*!RWyKAxNvLa2E0!BJ;xt8{=}!i`#Ngi zGsj=xDU7%qX>#G{GCVY7`}P!BMR951hM1~GPd!-SZ2uDKb8WSB3m#NZ^iv6 zkOnR?w(%M)GiL2$``gBn|B$hbKZ50Vj_rkQow14g-Uk%OF|-vv!g6H_x3=CVINJE@ zHLNd8lX*}ohiscU4R1e|*Zx@LjAaJ(bm|!6V?MtQE{o?3y)Dd*hliMgV+Bl(0iPv8j$A&xl-W{J3~p{4M*{n zOf+DxY-5J7ZC8NCT6x{n2Gv6_+}mg5}4l z!!71r<#-ydXMn+_n>F$zmLIqtDEA+EK|$Wqlmgp88^`VO78TzG?@-qL+ zj&ppX$5Jlx{mSj?IT_g^M`JO#_tbGx(gdR1W}p2t@v*aptW zTUC4#u2LV*y9jSr@fw^sJF4$XzTJO$1at)j(Z(m4us-cxJ(72=XwW{uXwPXV9kOJC z)9zR-9oW;d&GCF?1B-MRak&s3i{&iIG=2py^VO5XBZu*jiVixO2Cu<#NT!$y_ng3a zuf9ZLGnPHidm?B~8hnFB^D(i2$ zD)^d&h05D-l^LF_k?(P|@#lG1uaPh1=EH!-ktE0bwIMvHWsft=%_*IGjm&Vpi9hOd zjATT1(R_<#0M?l&@x37UXe!9H{ah>q-q-kNH6S^ryN_r+;I25@8k_gRdcgiZDnS}J z80#rK%<agMUnzKKU{`yr{+8|L<&75cBSJd_S&lslb=j;Z4d5@ebvuaQ~m8 z4xhurlwZU(*7E$no`M;+055m^rsFlZUgf`olh291-#2y|1Hdu_xw-Yl%YKdql!a4? z%Z#%BalS;%^Sb;JC6wSg7MXkwNaEKSLpHvq6R#&8ZhY?t-mW|gPdzS**J2r<&A%PX z0NCXE&#yO9kf2~EBpog@mJEsi8}}w2Tp96?#y0*lE+8JKKyoJ@gCnXNDa%c2XnHs0x2ui{ZS+W1T-){8hkoJ%t^Vo&2Euq?XuRFdn$6fB2) zDxW_I3U)e~C!0)JG6`~?AB$y*cQ>AnWkBK0rj6Ht*WvJH)W$1U1Cq053f718D#z3C z01mmi|MKB53W}M5BXHh>qO?mGak5KWS95;ow z_kX?vnu2OoA^CLLZAwV%Z2Zv(9--V3%Yefz?sdYWac+j#U@~_3Lzxk@bJA*01vrGro#&!=ba$JM!RsGBHdgXuOwBMrvT!;HB&p3nirweXz z5@zFaD#$}D+2b#b?SQ^@{2iV_zI`5X;;7Iz|5V2#eF_$-5sk(hnxhey<76*Atj_?> zG@eI^4Cr+yzS8k3oT2JB;9_O}JqqTlf{%0vtgd*jK95&;|H0JWn;S2v^Iu z5CeFBk_eU{F7=v~~Po$A{u&)R!6J{=)|lOo8p-V#k-_t*XN-9AAY~+C&4q z7SH2SD+7{y$y0bl+w|}^r6_4v#+nJ^vj2QJJOza$*Z~w^sbJmT@jo07#FJJ2(RhQs zTY7E0hw#7&(d&e7qYPE;2x>flEWd=wN!{sd1|4SptO04c$W;Q>bl7owCXe-AuOc`wHa$NS=Be`0hDhf=Ts z2aoAED=xwd)G?lihp6}}ys2X}fCk6!IbM%vQQxkSc9pFE@?F!zS3WreV<`}a8?SCS zo`B`N4mW?(*IqvAV6K+y7(gk~;MKiP~ZkZ9^ zYwLBFgqE$bd2g&|WXzGg=EDF7uqtH+YWUL!8Bj0kh!d*5>~Vj*o%j%ma}X97hh6Y( z`pT?-o|#gR+$q}QXK|YH3wVI?E5;e7gI}GvH@+T+%4LHo{sl-d;p#k0_KY@)%ori0zi;h16j81GO# z1KTMchv%yJ&3K85zks)@_!l_&{OIP^WdisAM7LeJsq|;JMK>{cd=XtY=iG(xei!=h~>1i-hkya3%54jr}#DE!OMEA zp^pB%(yq-o@mfZEWKcv7C0+=i@ZBCj2{1flas@ zb6&Pon1|)GvhfG7oCVeoVL1z|AHmacoC4W_b;dUS0hUE(kL`9~j%i3g_{@m#Lqa=RUD>fb(s_mH@m$)F_v9Uec(Ss?kr_y6yC z27hixL2A$e#|-OlKJPw?k63V8?QPzt~j7OvBz8L?b?Uoj?KYIw^c zhxh+~Q?N~)$E)#{wCF$KCKa72n5kI-acJ`{5bNeeg=Lz5i$0f?$}uhU2&px4$6z8;%=sn(`K$u}?HZ zUpwB0hp6}u#$o>)lN}UPsf6EfDyuwL6CB0;&*$2%;(hTZM6hGeaaL1?O$tu720@mL`RZv1gy>g}FvmBp;*QxyTamIns zfF?V>)bSLbf?QSMDm+5@T0BMhM#r-p*W%eKe-56=jM=l~bvzAs;W{ICSN}T-7WRuq z{1aY4LU3&-q30wX6RIgc4sTMPjJK)!ml_8*GrHL5#6NFs-}{n+?KHTX8PV<+h8Ldj zdL8$=;sk3%?q)LL!;Nix5SFvXdN7`>d@PpJ&c=u0=!;9a|DQm?Y!cd#Ast*|Y%5%b z?;xIH;`5Dd{9*hc@eU^bwy}+`!;4frX>#ZwE}wsEOTh^BcKJ?Nu57k}6fCEq^{!aX z8tdKgH@K7n*?~iiZF~Thv&#AiEN78ytpB)oBnA3W?$KBlO}Oz@Y*-eJ_3>ENg!PG7 z){OPZSk{R32rP%#`gANeGd8*Y$GuS$$lWa5;$8{X_wRBXZM^l0TOLC32x{*#KKspu zD}`sX@(5=gmSb!m(2Q60<@P=U_c|z@r|-f3$Gq=MLD)&m`^oVycmM;m53@5a;spn6 z?~X(96dJVkPjY+;o~z=gOMN>?#Tts|Fv#>y+Qe)mc#oALC^zzVpRg`*WiB zu8zAn-V=`_U-}P*kVZk_r08+`QMduef+(-`;wP2wz)vVI!;dR}j~6QMa|z$Br+hSi zbP~`1Z3op9Jfafr!V8pF;FP~dd$`CieHKsDbL4M%5UNRzAE^gf_2KhFXLvUJRH|3 z`*^zYLwJtz+j#w9(Tu&1WzmKke<6W=S=F{+0|nLULi8z?Rchm(;bEBf5rRc4-(DfM z@y=KlvGpEU7O8bNEQ{JY&1e0|6xxCwB*-zfmXC+FXOFD^hUE}h_rh|Btoz_XW%+vl z{>oWc4x!D@^(l~JW(x|i93yM_en6RW>qD_jx%B`nQ*JHaC$vEMNGyxm#*fCV`W6q7 z0mx}#6OPAn+E|~6<+QRs8Ov#BJp#*VX?;4DMQ1$<%NnvS!E#z#`{fkKqO%3^j)r3_dINJF59@dxYt4H%e6|RH}!Y8l3caf?f*XFyhtlEK+z%tu^ zO6yhJ*YQDkt6Jr`xcKmB)feHZ7e}XgIUa(0d9sMP|KCVKwMuvn=MG{3B**~zT+Tl( z>FFi-k6fxx!3k`y8<&fZNGB>=%=@QtA(HxQocKH1a{YUcf?kuOOK;K@JRYFId9kp8 zBaMUh$v@WdP&`Ww;3PbIV0xHN{s^3MQ8eHyaFdBM*)i{GQ(#B@zDkhz$BsARb~I=o zF{NA?&X^rwC&yjzKxWj&yWwG><>2#IsuWCC3Hv(k<+u-?rSdaz8UsoST8n!l@w6kO z4oBlub%?LUb>tr^_dhwNPf@T?P0 ze>n+r9p8(SkBd5-j}K8DzJ+@YjpFNYe>H%le{$NXc>B;kpGFD?aF~-Y(D6~YST!&N z=hpNLK58w8a3-Fk`~jY=@;Bi5%9{i8{C}AlK*rUr6M8%Dix;Z~vhWyn9ViwbAI(4s zo~T@DY-fC)*jEV;Iu#b+sVe?Bo<1z<;Ay;4`FZ2TW`}-r;_+#%^V?v5gKA)B3i_WA zb+9X*s@%nRndxAt6F%=QF=~IzG|s;vs-S`d@!)v4Chjn%Kem{6kK_Ar zv8w+N9&l3B!DD!aIz;c|iOOxR;ryGT3No+Z!ZJK+AkUbG|G`;ui4&jV_)5G$)t`n} zDqoN1s{R)H6r`LSb-2`cNG$BI*@-7#+d97;PN@1Rc-(pEUQL^@{;_yD9nu{C7xyON zI+gEVLcuy!Faq5)ou7t&xi)8JD$O~s$XBa~k>9%FVWc3rDD?|-*0@OHuz zRRbOItV?-Qs$IB8LvhzrqXC_SbCpNn5z1%aV&zgixy3%8dZA!(O97vHF}5Rq)QLao z_-VXa)qfsO9uW<&4$o44Rq9*I{eJ}oOKbsNh1V%J;I5}d4Zdewo)peVuj#Gh2RhEg z!&Ut}yyNt+z2N?LFa8DFiZjlL+FyZ3hVk(8 ze?L&LLnZuTJiuHB3a)P*@9+39oG~iuU?85Nd^BFDJQTmd0C@c?JS{GwplWo~z-4&T zh3Vb~GsPd^IV!#ZuT=9PWc?XP5FGhdK`}_&5S;cGfUO;|K}+vrXbw-))M2b6v*R)q#Iku+dJ-n zr>Od=IHfFVZ+ARcxqE0o{5BdoIKxRObzFhRsRqX5Cglk@tvu?m+IWN6foGiflE8jc z;YA7ts0QkBo$_+rr2MAw{8%_coo2L-@8P%`&Zvm`+Xq+ql~KXI6wFiZW!%>sv$LG| zM91gjb*lbk+=E9%RA+wqB2zqvH4tum>n8SPQP_e@zXfv%qahPyg{AkpW#k) z$Vn4)*y$$E`&h;M<8QHzkG+ZYUw=uuw>lP1;d3PPIxFhnMO>|1?|8Z6m3X$wUxU}E z)36DzQUlt5Cgc6zuU6_#@TchxkL~_BYGB z=~4T;_!P+f+8%=49PjD4JD#EPd*Ic|8Mr~YH{PP$4|h2~>d()Sf(xR8LY%9f-ye?W zs|rWqFWDozsLqr8>ZtyO_!G6q_uwTe{s8_oiu>ML3N}&D)=c4V*i!?F&yrWIq7K^O zWy&ddYt*1ufWKBQ#os7jkB3jP?Q#E~Nx?>yuoM?^?YD>IWi0ms>({ZKp%qSimE*NI zWpY&iUHqNxPhS6z-{N`SQ(za-fjC8-who@d14frEG@QTQv;u+$gf12DvK^HpU zVSCU)=UUI}u8#TN@!r^;c4uPQ<8b3ktgxQ3bDj7k#~0zn)DQco%gZPja#hsem3X4^ zG@Pymun6~MhU@^I#TmryBHN5*25tOH$KQrF{WE~?D44A({DcQy9W~H|rz*#0v#OQb z;{Ma3{0_KUITg?1Rkl8iNX~+T@zlxc_5X6IK!V+a8}RV!q6Tlq@-khx@m+8D0DQD* zu+G@VU%}Fz^=o*l@^U=OR|P96co7da4gP3s8~7Q^%Wl?9SYFq&ZpQK|n05R%?*F)i z0@>pOjcq&=`|_%lEy$rjUgfgR$MPzdbrF_V$*lY1I_1N#ylQ6Shhur!&3X`)7p1HR z-^TirSGjD#u_VZ=T-HOeysBk=0+tt@tcPQHk;(d0EU)cakHqrQuJsvMUJJG!a~tb# z76nC=$P`^ig4ib9fQPGhL~g=w5SI+eUt(c)V}YHF$FfE3=fVHyc>*d{3d*?iZ3y?@fYz>;&y;v z8r%5S_@tKly#C*HPFP?Q_QI#MB=GLIv5g;%Pa__qKn_8*v5jAd<=L(E#rSm9-hIYF zT<-t#DHx+FJdEX4D%-%Lc#87lc!u&KJXiS{oP26j|2e!+#g}4vO-MG@Ki^(YfjnOi zx48ETmS?ZluVHz*Y`q-I!)WW3c(w8>EDyVFd@Yto&DL*YdDP4%*MB~6NP#>|4!5}X z0hWi+)*oScB4Par-k`h*%Y#lE{~XIhI_od7Jm|Fk8p~r&bN`Kd+bEDnwKm~Fx40n1}R>yB6+ z16p^&@>I*Z3zo+Z)_Y=kz+&AU%i{^_y|Fx=2>a&{Bq)$4i#B0jEcbis{jl8Mt$Sm6 z`Q5rNmY3hH55iSO^35sPINJD)Y0UeArhl$?b4Kya*MoRDKF*4W^EW_Pp8IX*iGjFK zH6ZU3p5}B=tm5*eR-?lXOrJ?!sftT|Kd5i}XM|U%1Zm(Zr-5lIE)Cp=_2Yww96y4S zFO5EW^)8;u)OphM%JdCT97aCV{>61N3y{mP6cgJ1v3{`(`yyW_*{hoKR{x+zB{Yj813%9s; zfHY_%i|9ZcZTt*3)^9E!RLM6Wu|t_8$(qSg`EtmHVd>8vg3`HuSP(YKYr%6{dpzEz z1~>tGH$;0-jWd)lGA<-dW@x1oU*ovJryz|zws))F@d#`mg!a0dhtaBo1084L8WqpO z8EVmu#v^V__ri@&Md8WBPoY3=UjB^~j8h#xhqowi#!FNKUmDv*Hu#>_@#7p1!|PT3 zlW~_B>2^TAHG%+*UXO z>s5awj<&|;qp@D~LsVQ=`I%Vn@i~sq#VMEB&;K)ke^JnNW;A7U9p8&{ReV04t^5dH zr~HKDXBmN7-oYWVkL&kj`HRDiuieBlrPh1nfx{vva2FNd7YBzp=$|XweiTGoV{>n; zkMY$Ne5#Qt%ZPN2<8Ae<4n}B|1bkp~L-`L*P@8rV^&&S<2Vo zdCE69zS;4uc#+Eg7w&s&G=RCd|E=mZpZkJ>DB&T;kKiGyfhTai@-w(Wd5Pnf9M|Jb zzN)aCg5ug}0B_tp^sjyAsi z4(nrHFg6y{Uq+HFvUOP6j~oB2>dTtg<38^HdPIBO*LsBe;0!h5eepIL>?IA-Y$;x# z;$!hLaX%CsCh6dXpjn1qWga{UZQ-!13Z&qKxt+`!?CC0m*G^rw~5cknJT^( z55Ts*-$X&NO4x5cQ+|0*FW)q90xrh(0Z9#BPkw=kKY+Wa_*z^={6G_L!gF-{4|2#N z``$1L20t9lz{!qBIz9tWRr#fO+S5_}vA9YNXeO>vUW%u;*pGW#C}?UahcixrYgLThcAf+@Ui2Kc&f_ZWkGnIpfR?%mx|>&5N;e|EZ2dS=l^?9AlCt# z&<)FVz&Z`fb-=m@UW5;#KrTc_8{7C0ET^gU@mNk%>l3k@rd z=c)DSSWZ*xQCLnh>k=%dnRPjq)69A-UZOl6uf$>h4B%`E)~kexSk7zP!1-9N3)Yix zvGPT@O1TEtDEoN2@)ek~!u0R)7Z4Q4X=FQ?hL^kO}Q)91Ki7rCmv<}=?eRjP^TK`<+u;trsA1+^~=!!^04Cjeq3^yn*!d+jF;?FvM!SPFYn96?*H!O?l{~M<)Z?W&KrXV*e@ZQGrmEU*#vEz++ zlgj@b4_MLCfwvV;QEtSUD{b75c|TGxzoj7N{p#3ztaUsIZ&LZ~aqiTf-TD~UI^LjsljB<*--c7) zit68q2Pof*XEa3d`7I9aKQZr-mI65s_zG^kT~&C>@nW2KJ8E#L<2szF;;-Vt$}4b< zIOv}aSJ?vTA2&FD7cW)~tjAs7iw5usp2s4z57Rp=WYH<-;W;Y*VB@fVIy}rtI2^B5 z6^?Rz4Bn>V$K#s!qX7-abCgeWJSw#5p8=Fmut-&?#C6JN;VsG&@vIM`4lls-lrMJd zJH7(feW0HIUroW3^-+V<@f_uw9N+5rHoQRP--*{L-;1{@&&P}W52Fqrp`c#*3CGVk zehxRN{1PIsO2rejGKp!SSb9u7u$h_ddhb*uIjQ z`gmv?@BBFH|3+0|4-%%Rx7)j6S;e+O8kSXV-2>}KL_Kk|H8%fE^6#+uN!~@{_%1oQ zSI7e%UN!sTEUy2uN4eCJf=N7Nl6%3{Sm?7S@YiY#D4DptqVXt}0k<*!7RwsxW%6&G z$k(}Z2olDJof`{gw6AHuml~iv1RLZ#doWlf$jfTSI(slw#ifC>@IZE;SUTV=dfXVY z@e>V>pT%=kz8`-gEU*>YIo=sJsbjvYaI`fxUx%YL;q!AkDnX|7VXOzR z(D9Ra9Ubv%Fw z+Z5H`2^TAO#0!nN{>Hq{szBV;@m_d?Y9N8V%~1z`!^=L4e1PMF9B1RLVZL1dd5Av$-hq4H0{>$XJgjlkX);^6+nhtFFIC}TjSjw^7Nph6fQ zk9#Rkz}3ptjxTatgJlhw`#95m0Hz!j=C~V!)Yph9qyrg15Q`I3Gb^s z3-5=`{WtE_QqW5!+>U!I-+}um&&7R}@5TL;@5cuzKZrAx7vQX`)bszxD9Ba`Phfo> zKZT>Mv3W6$&f_F+4VP{iaGWH$RChU>pXslCi};{Bgy{SQ+KV@a5z5@zDL z%1iM=(=K2M#@%sNlQ(zOG#B$nLKaFLTTR)3sm0K^tvdXPr#Ink*U&gY?tzX3+ zYbe;{{r_bY$SMstzNHe&Dz$zS%ObU2gJqFgH{cn{?_ycBHvT@AMQi;bt}|x+^EKHN z$Z2B}KE-m{S$~G*w6p#K%NnuXie-^me~V?2S$~IRjamPIWlgck{U`42pg_)oaEp7t zVp-+ZzhhZ+*0JZpMQ5FiWldPO!?GrI29A6*W^v?ihP>|9l8sRN? zaofnZRBW-_1wab}*oUdsu?!s`zx=uxnKRCdaorz6~#=en-<@{Sww+ zN@~==auT#x;?-2J&u)Lh!pUMx5Zg6|iK^ZL&zllXBlI*8MXJaM=U%OR02#UEgqAubbv_qi|@%#eMUUV>#x zZG0Y<8ME=vvCNo_A269;M#sS-_vzql3gnmtk5chMEXOQJz{4(z1&eN9Gk}R|kLAL2 zJuX*^c&6i9aJ7oxjt6%NXO#8Nm(No$%@l~|IeyUb0z60MKaLxepT=91pT~w`TF2u8}{+xig{;c7Bn2iE2OWGa3(5AjjA?@F?z!?aksnV;f(OYmSTZKgOF*iM$aXO#R@zr^8+9LfiVOxWBJD z>`Xy1?m&i&@bAWuE$;oJ&hy3+-w#Q=${4c6y$N;PUW=mvoQJO`zb#S8zrz@^@$)=& ztUp<$;THGqrCB$!LrJ&8?dZu>vwSzwzuo}OQCJN4VFb|-To!kzpPqY z(1C=3${q0>rAK7{WGT2c zx^Vb7P5B|*SNUz+U)g(EJ{23)?}O`92bqrZTHE&uDfs%9=uvE`ak!Jb0D)zI*5j}Y z(E2Pa1GGK|%K)v<#WFzaY8A z{^Q=y6iinMO;|=4ZmeSbigNrFJ%w$(HaOZEo7-bOgH7Xj$i;wpy)t;}b?ce@h!O2^ zR`LEvJnr=z&o3NN(4AJq4`b;txK`uAoCUH6`j1j~2~DKk>d6v?ySPfdQX|1yR0mjubZ zqCITmxIONo;=ABYxA*j>(W^{(Io{3=d`k!7g?L==sJ*A~Waa0=e0%-n(n-Omx7iB( zQ7V=W!i_&l#d?ol!_n5*yd3L2Ua8`;gI{1hfNuh~-2Y=W@m3Z8-Er(y z*3iGAW84RiIKb`zuPr#v!83eSVH5?kRE09fm3XeozX`8a`L{a04NvFY?-Zs<4#_4w zTRHnR*57&>w2xZPpun3GJ*u6C)A~kxaJ}Q1j&H#ORQ~Ob@4!P;{GQiX|5H`L10*CE z0K*MNycUn^7Y*QDyg+%q<4+uK!qx1t-N9X7=b6$l+g{w;?RC~)6*FL;eD)_n9By&% zFf7N^`fxl$c@UOEV&jAHLL8?+ru=+k8=r)qQ1QEcQ(zP3;YB30GYzaVw(+%i`zcX} zZ{z35-_zuK%R<}yB)pdRPA1;Z*v9=V3SEh;;=H4p~qT_r~F> zF;V<1iE{|{BQ7&?tFfu?d$&<=BnkHI^m=34!Rz>3;w*`vf$xlM{0A(@*m?(+Rd4+( zmQ`>4JC3d+-2Y?CO)U6NV{(swj#ijn6sy^$#t+z%cNCOQ{1MjN1G!S3Gb>Sd8 zrTm_+ub9xm@Z|7r)>Gxn z0FQIp8>Zs2gD17L7ubVilMA&)fPz z|1|J|N{|M=a2nXE;?lskwt--plDzL!TG|3yO;!^)Ar~Wh*m-^R*^-cc_;0Bc-4Ls{KutdeBffvID%uXeFFRQrJ z|Jtd)O~s}D_d)%Z`+t)6qe_ql(pR>g!VDa3jm`UGy(kY*ajAc@Q-6et%K%Q7`hLrm zDajk95~P7^oCc<=xHNF1G@$CwRB@@l)Tv*m;!^(=?CSQBR1zLJI*Ji9si80 zTBf9}*My_3vAG%R_S<#mv%{SC14)txq478D`lCQPJn)Uy4QAqK<83#r8_ZX6sbAvM zFIREd#GE5;5WP|yfiW- zrs&PqZiAPo_|ABl@~(J`au?hsH@ft8!}^fHymjNH= zG&oGfWsgsC+B-$XsqZ&m?ldq}B}fBTI}Kc`;xd4zocfDZTooA4ipv1@Ue$U^6FAzq)M7oO`>A-cPXi}74GdQaGJsQ^21cs54B#rK{xlVr z`qw%2Z%}c5|CLLv)4&pyAPv0eH1M*DOZ~5%`rA}o>VNOl|1paD!Fiv~%U^m`X2{E7 zEgP3wtf%k*6_){=?9?Bj;xd5Ko%*9%;++4|z%@<-(_0c`6kKYZ24ly54;=%P#8aT~q zpx9|(w9`PTic9_Lo%%CWTxQ^Ar~a*BJiPu&11~uZ)H@Bl?liDM#ijlaPW>G!E(7@0 zssDQr5Bm=eLGQJ#r?4-Mw#Mdzu%5zf6_){=;nW|a;xd3Tr+%fxP5;3FZgLu!79=K<*|Uj{hDY43Oy zmmNOwE%skGcrpo-2PM1#^tv0j-;ucf&P4F>dT}XkdMxsJxIJc~g8WPI;71a{`+k!D zPdw()$T#3LERTRBKHH~YA{Dxrf_w0Q$D@QNaWWO;6%47c1W!{9zKRzrH{e;cH__yO zil^dKwz z2S;~qndc>rWB_JBBe1;A*q^vB6>gwFUilnsDm;(nb-xVb z^v`)v$qZPZhUfjjqA~**{RQvu(_wp){{l{^Dc|cW2FTx#3^eg^c;0OZZ--oeWB|qA z@$NMhhLIr0=q8-9AmJ@E6&8~zf0AJj!CAl1;Y-n~UWe=MjRvsKudIoOqxyH@`OMI8 z)81Xb5nq$;P38TUU;v*{Ab(OxKY^e5ozw2_gx6&JU^CZ&P2r4mV(ovP%wI{YW{=Da zENa7-*D-^^F=dA~;}L6EQ%PZa6WhkT_2(wMgmGFs{_g0i1b_c!I_T3r7W~cU7~^s* zf1}aW9J9Nz{E5X}6Cbi0pO|Y%_sWg0#PSysv(12(V)+XPd)n>5sTU=@btd2M%!g1? zdHz4b6g*3T{DEMuajZ)$c(uFAxIdOJndoYKDV8s#u&%@Mtrpg8cIUfaM?!j$!eht@mIqUUxZbz|7E5-FT~ZZnOrj z-G}d$cquyVvU~7(|5(r9_XcFm&B7_S_)M7@(f1U{7YtdSm|zOkh2$yR|JEqJdpe&J zQoaDo-+ot_WBe#ieI(%(n)cIsa`|Ra+eNthzWlA3e`kWQ$Mu<4v?%a6&er|#RL%+} zBseS1#a%z^Y2t0XNqCxyKaJ%Nk;afAdzhEOCmuP^?UnUhEPvE$7wKy3%NK*xn<-5G z8*AYG^k59qz;Rgq26Uxqa2A#i8c{Fk;7u$av$4l~c(2wo^fcBp)Rnivm)#rPYlimb z{F66}2bd1xePh9&)fO8ci{(S8b`d^`^&;wcATv;x-ZI5waoRVD;L0XDa0iyZ3Eg4Z zTZ8pkvU5MK|K8V$;Qe^1Fuq^wJvcUp)3SlPn^}}!-~6Tu$JjMN;@$LCao zyAI<#->d5@?nTyws6=&7xz{4T5) zO>6`gqGV1h(?A}s>X7cG8J~q0bmCfW_UJu4y2cIx-gxN`^y8IpgzZc zGX+&U@huppf$<|_UhdA^zl}e~^|;#j?9+MB$pCU~98XJ0_lmw;qk5W?oHsOWj5eno_v1&|*zhL>pqF(L70bF$fr=@w!CNt1|5;vE2J-r!b zioc)CS+i@;mMh`Ri&(^5nirUx(X}<4CA@QLFGOCy>WazLUccI|4N0e^=2zyGS5%f{ zW|!vWWR>I;)n49^l$)BDUsP0Bnp04aoyUK(3u<3&NXqsLib^ZX3bXSHOLKE`%X7*H zc^Q-CfBlA(oHOB^e)+lO`I-4SrIp$FnT5F(xs_#QMFly9rIopPm01P3x&5;Km*mX< zm+b#R)4BgI`wx42+D#)(PEh(wY z%E`>mEhw#Rd^hQk)N+dRE6Or63o;9eD)I}1Qop>iqNubix1hWrx1z8ht0Y*m=Ai%i z#09G=THt?LAz!V+AUWY2!d4R~E4(&qw>F6`g*nV^PHARoX;xuDNluxJvUW<3ZSohBuZuKnhNq>O=i z75TZ@1=;y!Tqr8aN{j4?|36GkcI}xfl1plzS)bJ1|I>NQ&i%_vD?5kO%*0>MFZBHX zt%5A`|D^*th5j(#Z+&v)Wc^u%*7@0TI{#q@PQILcI{(j>L)Aw~=N$v#B>%79#q$5d0hY;LT%MHK~wx#b01Ec$Wj3Lk9ou*}ZnpVcW~pZfge?40b{tW8OK{P$4@k8WiU z_JQa*=bv9Px@^LE75)CxPG+kI7CG6a*`>LK@{l^asIokl2R*sv6@?WQMR{d~MTJ@Y z7^-<#e$4Qri$?o$MToBde_B1O<+}9eseh$uUkxpIDEhyQrS;wY&j%#e9;bc(kLHS# z>i<>v!+g19IvxCBe!h3m|5l-(_VS&QyC?o^S8LB*)uwB0=GRHP1&b{AKdl;h(jx!+ zZ)>Y|!{xD4XRClFuAJsn+3_c*FODN@}7S_ z3weJq3lm;V?o)f%Bgw;p&Qh6${9K+!XBXuaRp#ZE*FLl``H0l~+=9Z2q8#?5valkn zvZVI6g~|O>nWNIevb;i`0+f~Imga<|MHQvl6+9CxD9JD3X+cTtEsrOEdj3%kwgM1)-v>GC!-VGPfYN_Vz`|=k)*6X0z-v z{15Fme!$Im%+tx~wHH2>yyu@k0m;hxgZ=(%Gnbe7Uz<4Mug-p6?tg8gwq=(NU?t>~ z7Z&AL%t7(R~KGnf#M1{Cm%Txg7!ncdm>NUSuV zg+_xcL>scZv%^P3BNB~9B$gD!!sweAD`RD61u+qU01;w=|G>)5#@fPn@3=N^hAuk2~#|A+Yb#~9ZSk-h!_=?fn{rx#v+CaXo4 znMjA6TZ25pXa((CyooBc^R4C8{tL4{)rUTA?gxl+p~DRxD7hQB;`F>R5+m zBv{pU;0mAPzg@1ihiObb>cRF33E<*7>4NT6GTGznIQIO|utda&$p_LoPtvi{)nR!4 zfpo&pla4>HkQ;iaXJAA!!*I~6Y@}I-EZ6qoF^a5_ON#7BV)0i}W<;n)!f2Tt9-`)f zItXxkjhvnLAI(h8CQJ^R(e!2pU%fO~x;$KBtgmctH_hy{d6XiQyY3JtBV@fgMYu82H%~g!S*cWV=_>)K2dn^|;#=4qTiW6{aos18m zHYcLA@uK8pQ9Ii6ir@61su~{qp9yz2$%`R361V|ZnzU1!2t%Tp_|0(nUfMRmy=eq` zpDMvrsHu@CKxD(Mh4X&gs*R2zOYsw=-XZl32D{2aibV&>Mho zjcE9_j6&G*S5ksM+vL(Y4B%I7XX5ICm`>2a#}i|{0H`U>fhiH!|- zm)@rbLV7o0Cvf`nc>SGT+qa;5#OZHWTlw6NwwByc{5?odX<713%aTw!Giz;Fh)>NsR;imLNo8}^_M4JY+?Pt?k%5u?B#EFXNu^TBxCrIx zwnmb~WAv!6{G3Xa|Bg_evA~ZaeE4iR&d~G=>dc)j%UhUza>%3)vA+MmZ-Pe*{xPx)OS~J z)-mK^_1)2fWrb*XsXN;h(p{tP!mjExQYRMEx{ViP`_bXJz=rDY_VX;O^;-$5OfOkX z`zXV}=Sosji#$MbYIr95NlKm3Pf}&IFJ&V_+jMZ(TSXi1yeL8q(S51Sx?Y-F``YbB zJT`?!dFk|(q3wt0@A3$RH;-3zu)u=8Y}V~)-}XkM_Hvrw`B!6H7I2g6SP!2WL}sNv z0|{Z*d>$fyvB)L^$z7J&^0`?3Dg4Eo66n+p9Fv0v6L$f1l6By5F-{k^B8=R^fi1&91rMXRzRAdfTaNko!HI z<+$G`v0d)>3G9OVeJt~CuD2b{dbr;oXEWXJkFrhf_o3{#`#qK2b-$;u7(bm)e>T?r zZf8aA_lL_X{EiaMQZF-y|7gu)UxvrFQaynLtJbpr$ZGw^xoJmO9&^9%vb1r(pR%-R z%tKgQ=OLYE#(*siv*KtlW<{%pddG+CP{70gyy`zF<{;zteoK^m>ddFKV zH0Xcumv*u2pib_w?h5i4x5s;JkUm>9J(j?8zddb;TI!bP*(gHA3)tS8u2KOd4>n?Q4w70&a3yW1IuHw(m5?l?Z-sHO7?+ zetUJ?M75JL!SGETsp4FM;hx608o_W^W85Xd@Quc}TETB8^A3NUx<;~z;i+CFN`(53 z?G10$T7Cc4A`?V$VzihfBUf;)ui2&Ww#2k9Vt#Haf?^L#6G;+5Eu-+wJ|Oo7DP;v_ ziK}tvrXiVlXP9IkCinGb<}S@FCYNLp^$I(Cjm0M%?17VgB&D6&%^A=J=(G%V8vSXD zPZxicKB7^BlNLE#VctOOI8h#8+efv*yoP}Y=}Z>csBv>`VV9zYWx&7|Q_5CVKZUP~ zda+D!tFoNLB*~HkIxSCnfKCL9xsrqYC*F$DpbxcuBy@j>pZbXevk`5&cwG|VSejp6 z)TSAsuD98yFf5(h*u}62YHz--?Qj8%X#0m)dn_i?s}Bk_S8|!u4jbxNwzb!IdkyS) z=Rd0CMzZ`2nlt}N6Yn9f{hAmrmMG(uF!Npb*G*Ou-Hse*j>5iPrHYGGu4~t-rEHT7 z_P}M90--FJQ>n7QS03N4ISKsQ5Oq|-a*5?1dT4XH&z!JA1lpc=2`dn~3jiJ6v4+$H!scH~)) zN)|%M42L8+720X9*>S2XJ2Q8*r(8w6FN#m6F7&{gF2JvFq9bO>ythU2*$N^?{{FtP%9-W>b<5@{3 zTbr?YQA>TU6v>NV0w1;^3SMN_-F*zJ>C~2d%W6AyAYZf4xDMpY@laqh{iyDpihOR_?3Jt}u`L~7B& zNK2O8E0;89w|c#$cL{1gg<4Uz>zVS3ht3dce}NS}JTUjD=6c74(9A^Ip<{_lRM`64 zBzU$({;X1q3dfjirD~n)j9Mq3a4Ifo`bgz->=cvBsKvB2SmUurZCia>3`oQMuC}fE z*f~8;_;d9cZQ9l_xfDLBH+JoW1rR~(MxLgGi5J+SK5cWgE(_0Utv*q^B%L+UUdMn% zkZ!KEQu1oRRD+*Y>m5NFoUOrr8a&_PBT1^*g-z6@2cD=%;FxRinesrTa8p&hr`1L& z|Fj4ngfFUidu9VO;DyVn^s^h`g;OYa`z*HT5nGE|tmBAfu!c*xkv*H0JYv#eF-IqwEk!j_SWQWcD-MFFQwN0CJXH!uD-i=u>t+{Ry#EI zO(3M&Y8%_!UvE{)PPtocVYm8ckQ=;g6bT)mD$w+`>L)H)Q(!PceH~&FwM8FAoH{Ed z{eY#;RK1Ovj!H>S;N9!k87Gzsw*1()EIzr5muiqVS?z!hfnEQG>bnLi`*t=nIb9Dq zVvZu*sA-F8h>zLTgZE`P~1(V zP0A=7U$Y*A#*NhDRA4WO1wJp8uh?N1K|o2bR5`b1c*_yC$iBoD{W`RSY_7@C0H-2% zYD-n-l_5#KlEVr4*~-Dcv8#hRlTIuk^$A3*%+%H-niZu!gs@SW`VTFVuVVRw!?j4g zg6$prNDJ&_F&o{|+4r%U{gKQ%B;2jRRiTl977&Kf36|z$S8Jg z$Wvqvt69{(rII3~fG=W$o3D$r^+S8Jl5wqU+mt1Ji>kfqn-&x7t*@0#sXM@YhqWEu zq9v2C_~*rIdj3o-^o=R|x7WB_wwOjdP?y)vQYdT5g#3HUJi*zJ${fQUB4gR1VeP_4 z&w!rQ_9=g%{R2`M!dU!AtIO984wvH`^s%|*G&}UzQ)D!Yd3;-VQ%%FZnkQrN z5{m>e@JmWupTw>|-n#t*R9;~k6;-LE2`#S(dl@#v%56y!bJST`&dk2riO*f;nyH-% zNw=7BR(Lzrmu}`ott3~L$#)Dti$#u#rH*rK z#HfDMUc=Upil#2;VN@UL`iRwyif(2H85(AF2_|ak1QOQP(?i!KYU1Q%((@`I7 zAvJ2FZ-sf&G1p=?Ni1Ka8M0)HKu)_nnI@?dBHkh&#YE~0Zz+|ypXfrmCc>)IEIHVU zg<=h8snNzZ&`QLz94nGS?>eu9VgK%dhBpTgLzG#{+ifJa$aK6T*_4;&LJ^p$zDTSU z4ceDEo7g0_YDk`;>ZFks3_-oiV2j=-WjtR+%M0F=EMry?Hl_)&Jh4i$6;31D3cr_Z z%RiI0Ew4gMOa^XBNrH_mO<<#B z*r>@6@P>^dpUEW|&mW-WvM^FHjN}U=6~iC}|7j$XFp_U$Bl)OCDlgWJgbo$GOTiYA zx#%`hoLyR?*r>qMM!Cu?2($_2k}r(ZTe5^Mf|2%m7zvsXMk;i>=v|?OjG)m?8X3uJ zg=VA$T}0=q_R4g_u5YBdpaZ77*pH|o1FAE$UqNjVk2O-A#jQH~ql(H@b&-s$1Kx_Z z&aWiwybrN_z7pCR-AG%^43{=NBxh{&@xcj5GnVy4Yd-Q@(lr;pjmkQUrZ&a5W#QYp z+8l66O>N>xLs6S!I=gLFT^l${A$&n~?Z1>x*7#5hvg7gOsH ziP2lHgeL!st@!9qi#gSJw(b9fab-!3y~(Kw=AM1a^Sfc?5*anrq6p%mwyp5m@v|hh&|H^6 zeS8dHlDB6FI!GqA?Qdct`bb*Zl4`l#P0FCMDapMtMF@jask|JcGkj$qOB1n~&V}@D z$sFH{aKhv!7?Iww{ZESzG$Udl@M`v<%&{jhO5_KiS2Wmzk2~o^M^oW*;1o*_$w5v&3LX%kwbgG8j_u?JyLE9F2u%FZec*lAgi>+++w0 z*%OA$eZZ1#uaLTBNOCY!Ea{dO!b+8@v0%tTT^QFFOgCf!4C&@!PgD%48P|jUyr8#5 zOe8G#UL7on(aEP&hN=n=yVciB9BA651Z3Q5Hf=tvm`G8f+wJZf25Y7~XESX!x?Rz_9sABO(k)nBlr&!ydQyFHICD*mrg>ov2XQG~8`9T;$JH!m`D5<% z)uE)X?fx@;oi;|vHuIG9^^%%d%A*=^hHq6|)MzDrRp>taTE$h3Q_@!jmv>R%#6jHS z4UPMMr4klAp`@=0q2WsvC!;aaSC!!fkxu63#fsQBSTbz)fd^J$=I((98l|ME@Id1L zcwl!4yCxIEs;!3;B_#`(4t0vKA~yFTB1i5KD4?GQpz*5BerYh%a(V}`?Q)K?QjvRSglzOJoI54Lp_DQmG`vVpDmquyd} zC0*I1Ei6rt3@Iy%z)iG*}Qs=OVDxnlGl(rKRumNb$q^nfX2 znb~BK9dh}K-O74bZth9`e$8|BS0wXKmN5cZ^r4NSi(3V1C-xkLFf5r^%q!$8p*{cf zoB`qlzmfDpQn5C=bsLGG@OQdZK5*FQJTL+yMqp$wwU^xbjruS8Rol;2gj4kU5%ilH z*r4FQ*KZ&;2wsXlg_LmdI_fYFWkhIBVWU=RA- z{}|!p3ge*eUXa*>@IgA)qm3AcbvHoZ|3yDk;TzJOG;)|`jT3)1d0aTVI9|AZcw^U( z_H=y$(;P**kBzBf776Z4B&V#U`oVDhHNtVmVKN&f;r6-%F&~LqnwTX+audlGEzH)y zOQa$izdqpCMal@kOkH`e-qNHs90^++vzcD;>-krs5y0i~!9_AeBaciQ7sJc4NmKUy z3oRS(RwDJ?%AN6;xmb!oZK}b!8e*CfS6pY{yTrq@gkf<*B9-Pvub_r@A5mpi!qaSV zM-eK{A`Slz*{tq$5>C0q*D(7qP0zVzFgL2JQS~9EQ?bnvV^lkQrBR0=-DPxWK!*l& zXh4UC|6_+KN{9a44UN?j>!PBAyr`qZ5KSnO`~SYf^Sd3&^S>oMaz&b^Z`ZNYQ^u!! z5mRID_o6Genf(r!3@40Uh8>6r9s6oq5^+lg>x%DEqOBjJ|8_SQ{S3)iqHgAFg~`~G zVAd~}bFs}vXvH=g;$i~){e~2E7WdZMb9#yn(l!O&%`Kp4E@~ z6in3;oebuBsuxZEjnzFBLU;Vef-~E;a5)2Ua9U8%HEDr3L8`80gEGg^4bxa@W_vGe zMl5pjGFForOH&rHy3EJis8LVP_LpZkmDAtqEVYAU&#;=O*SOK9=^A=2%bJry2QOk3 zbB+Wh_Xo@V!ZnkS3gty54+K1r70-QA@MZ<*u6FJTnwnaEC~FU;$&1Qo&fiJ^Gv8;2 zrxZ@XmX4}lOzp!32W;u)aV2qcY}DZS8oWV;-C|~I@;u8*pH1v@EXQJ4N|~WdN}2;U z&6d32M9J2idCt;2UOO|bTBwe2v;`dwYI$E`8kwU<*r-YMkSSBVUdfMQePW;WARfo zbQud+lCIViyv`Oa*&yC6a={zr!MR@(6_B^HI>%+2+PVDF(hmqtjx67vH;I5LD{?{` zZ?l+!sDX-87QTZe16cu%3`d9z-Ib$_VP8@<*cu0viF$E*t$dgELb%ORHlv@ZbQ|`u z^##M}XHa*+U&?Us8MypfVHgcD9p+Xg>3B)2*KDO#A29oiae^T0MTKDf zi+5<%SFE_?3{CFLCaz7S1y$wi*G3R({G_~M-SqM^N*TEoGJ|B$w&656wS3dIWw3Mq^3WYqh=20; zn$%a-P6ys#B|B4S^-XqR=O<#??|q|#Y|d+W6v+a?)tgIu0|&xGol1}>SZj+oP$YIY zw#WlT+@-9-fASLLs^Bg4)28?+DPUJ%lInbQs%fi@toK__>mrwzz4bDoDRFG*J4xoz zDn+4*6~EKqC?#cyBqYU`*DA|~e`7~U@nx6xAv!i?zVFVaDb31r-aSBd=B(R+ar%4t z`UAfcD%*s2_baf8BuEWYQoSml9IE!7(w52b2CWWR2SHG*s#lW=(_zg*t=V;FNQfy! zIW-VFUPU;^TPh1v2(wls>pio~ibSZNZLf%HmW(@34%vygiAbBuE>(nxn!1YV{<5D_ z2~wu!S{JQY_CFddTltUSe@7DeUIR(?dw)xE?!C8t4#a9>>%@xxxpQz(FGj5rYhEVJ zm$aaT9DtdyVO1vl!AI2k62uG%n^sAo+h)}RpPOAWTXZOdF6hTL9g3!=F3hDD!Rrn; zql4m@-{I+fl2a_EOCr0_zLq3+Kqi6X3amhiV?+%UdvPU8Q`Qkz{|tZGs7aE*_8;y; zlLxU|ha-Zb1~d7RtQ~t^7Ot4Lqo9a&Jks4_60Uf#NCZ`tYv5>>ePlY_n8+?3SwiIz zY~uSN^oQOo=l$rQ1CKK~4L1!GhdPmjwub1!BDVkihg&Lqb{2_Ge2sW{yV`hpfi7}6 z`g8U5(&$*Ws~1IAWv)b;l39Mul|p?sWU8`P&t*M6MBvFP&-yTdnBR9k538>{QOovL z&Zf!Fv*4;E@;)0;)s?2a!1Ak3dle#jm`r(WZ1pngmCi0!kEc~HupY-ELXvGlWvWlQ z-oQbnrXJH`mVK-bEnLj@AA5vMWw(wUiA$cR*?J*XE24$hsoEUOa4Jq#I7OTEPq9nK zqr3`)I~J@f_x)%bZ4LlSSYDDMP4!BaeX{)nxK(WL$-ZhMc^SKPau(xfxx+s~v^O~RMT zea}vF$HnrTPu3DuX(^@Ue&-A%sw;MdG)Wmj!B$)J>(mx=l!|0IZ%3-6N%DGmkI%*t zP5kX_)A_c<#VXD}J4Dffyu0PU#23W=FIWgsKJgh+kevoa>&>?(n9jppOrSAIhLk`k z3)`?C!i55+CM_2Wz_B-3&gYNQL??4y2=V!FnA-7z1FZJ*2)Pg!xZ>HzpSNUj7h0GP zsVxSUu|XF`!W%YUh@d;m(XMmTv6vw~YSZZlS>1)s=F3j7XUmtr&ANRNB?it4Q{H81 zUvxH)(rVsfo4#1w{6{Nt~9L_rDxw4$=r}*{H83n1fXBLZVvnmF79}Zg%ynL>gGZLNDH@i738KYVmDS zOQDP9T{Y1v%BOxkjJ6eXwyLVg(gfKx4oWgsPHUgBQI1SfjBfgn)qLBFqVT=cN_Q64 z@lqj;u4MZ!^@%`%P@+k$~|`B@)Z9u)gm;B zP^Ie3RKTL92NybK#w~d-g*tMS!Qv|n& zF3H&A8t=}yz!qb?uNu)~(3^kmo(omsI?4(|)e6dt z@#xuDm*KY|OsE$7gw+|>HYf*Mc{{{j(Jl+Th{1-asu%Ni$R!EW4@endCaT2KDAU@! zs1zJz21+b3P%1C@Oez=kD@`G`n4KlI*n=g4&K9?GjZ#_45+lofJb{5(894x}b#)q7bq$^bZT^sP{Ec3duguc%{W@{1#_T~FR-$kzYFB{-`}PM zKd?o&BdGi%%lTIyQCIOVPh|0}KBC>JTOP>r(%T#VXQw0nO%0}k+tAu=HufI&gTM0Q zp}4kJcF)wO>Q{@LU#A_?o>3=7^-tmkry3<4huk9X0H1|wE8c0;eMY86k-wy21_}W=veY!Iw=`d;3A&$X2UhISf8`bOhU$xkZLdOS}%@8D*wuh zg5N3g9Qccr45p?gJjOu&@rY{o)d-AI#a z$-HQiSd62+*5*YIT+6LS5||Kk3|{qliKwu}9b2Q6*3V0vMvP+z&Tf|*SKA_w;RNh+ z=|=|+KC6tY`Aj3}B)p6j$g7=dKyA*q8;P1!?Mz-zqiodDy!UyUOu|LRfFCxk=0!4DLX-Wtw~0K8 zD0v;h+Sk|MT!nDH>ZHXv(?mW%(%yo1^oFue1oC2U@&iq2<;*sd&&-N~qYBpW5lG5A zL-M>7x!B^h|4&=w{yJN9Wt}bNY8_jNLt}z zO7dej+Z;x967K+=L(rwJ=H3AWJAqI>B7p2xu3%NmYm@-$*s&%fz~t>zmdfNv9uP?O zDFi!{*DzBMzJ+|YCS!n!im-qLcMZQ3NU)cRbTroCR{5WZV9oGjse8`vt-}1cx>Wgx zGe|7s)pymU;8-jV2qo{*s%~O}K4tEzI&Vr(XYV#-I=0{aMG&UR1NiZ_q>YG%hU#Qx zq1o0PhFG?v1kq6W1cal55^)vC5V=&j4kR*5buj-ii}(O5Niz3#Vke1v6qYP6%LtKuaed@I#&q9(rliic;k;V}Ii|~B zJ%Sr;B#tJJuO8E)iF_P@;l|0E}O2d3H;WCLFEv{?A z5CP(pR81(WYLlQd+h94ZaCrpc@n?;aclS{8}^|HaU&Qw2@hGyLpzd}sX5(Q(UAAWHy(QZ(j)7XW)YM{%Xc5d&6SsvY(T3qO7vbUBwJ6fskhStT2WIQdL!>=Wh zYU=f@vn&ZE^;+P}=|xr%^DVcAe0!4)fo`xtLtfAEp}pZhawgB|4U-q-@Xfu+c>k*B zRr6FYR5dwp3HN>&b2BBE$3F~}Y`|a(&2=6-eIV?2$}l>aH3vkgV3L z_=SPwJ1<4)iLY?iAQIj|0is{Y@VVn_NC`#&^hSDKC?!lkFR9iEdL^%2? z$ftUMiZ{K&aT%(O%I(g}d<1|d3b!9#&M@9FD%8=@vPymaZM4v{j6iwQVAQCIiT8qqq>3kvvIO`VEAw%#K9LZ#wcu>{xj)!Mlp)7q^; z4r#y|3}$jp$8Hbozl>{U+!Zhppa76cL`0o1sH*NvnLxd21NiNkft^s5*9CQFU8& zE(w;yudY7l`$rJmqeb}s)0wDD+3zi01L~bE;b_a3ch!9M60aM9P#|CCy&uzEpzvL1 z+GFHhLaSXoU?kjrfs6MZNlwtJqfYNp5{skFPkH7<($y#VU+OTc|KPhOlJ}_B56-Dik{d?q^%Ea8h4cyW z`cWv0DL(}gk~r>Zl3e3^rx2VfJt+ClJTikEF>JWb*wRc3znejDy3h_<$G3k;Xy3@> z5~39mCD!~<8Q1i9f#KK2RBhmkhykr{j@gOgo{=dmTqH zB4Z3YzGpn#hqPvnalX9tDMa=i-}7rvk*(+%XHjB17GT(kmB`!FOciv)b)LmYD0gL& zByyPF&4kXsxXy#0##$-=!cRR-rqBb|dHfvmasvji?N;db0_ z5t2=mS&J}E;CC$|kC3DM+9G(Re1nHB#`=ZonTyFrdi(muC8TSd{Ht(w?Gnnh45MsC zkcjXcv@#KtPzVjCEx{5DQA^NPNKm;1GY;_eB`|&WUwKR}>DNqRT8uk%Yw5hZrq;MQd%F-ZOuanY)|i6%8BBRsSKIUq(+QULPXH+W3}Ni@m7;9~k+UKT=Pc(+2bEG+gnNGoSha~OO_ z9a%G^pNayz|HjW1iX^+1$1F$U@)F|Eao6BSyU8ook%M9`pwoVet4Q7k+}DOJP3o`%f9J;;l47W=+j^1e z{>~Sz$9fL2O~mQtav4+EV%^CjV? zl5^8bSn}j*@%@f>?nr|8;>~1}d#@I{1w%}xeAE{5cwB*(%B9exa#`Mt$!W61lzm_Q z38IuMTu)uH3T5ZHEm+%Vl^?g?AmPrQrQ{=g$7!MMJe#?X1k{DR1rOayo^kiPek*y6 zoaU#tkq&(FHZqW=`14)c5PeYEx2xp^t<2g1mj>QtO@5XeoEHxi%!7( zDiDsVAL8*9q)qMtF$1eM>6J__#mT?I@lFHIK`r7`NMYo-(g=@qP3z#YHv8jLli=K0 zc4@q%-_<&~i&mF_lt!t`#f6$$t+Jb1S>3&%q2q>Hm)uXQONI~NbD1LGb+xYQVYM!$ zFT>B#)H>-Gtu9e(*ApF5wa)&NJ^+jC2&9T`6^8cf8gVaY+CKMGJZ6z;2pt@@FIg!>07FDcGr|vouZ6AOX1Z{t&_XtYH|%! zw5C+rqqIt0X@eRXI&5m4TWOCfN>kdo!qqxmY1P9OrKufSlN4|0zPUlzGJ@aLhzr*C zFinUd>ZNk{l{$hZYNH2SNM+bsYcs5I8<&@cAKVykH|ZV2GOA$|J`s}6XsB{cSU9y( zfo-cYpQ}@OaWx{)@e$76$H*$$6u+3P)b=c1Q@Q;F>BXC!AW@C*(*%C9Cu-nKmGp-b zq#I3{#Y0abOk*Rx{v_E+#7pnfB&-=to$s9Z6aidnp|pSjP8$M>?rM)iQqRJJLk};`#^=zKr!w zA)B_0kGf3ScTj-a5E$P>aAYS=TCRl1*YkD^z*#$fw&NE3`(=FBW%97vIxvr4zf5xR zv(U^dB9Y5+7GELv4Rql1y!b~1tAPuhWj~THDWamY_-E1!U)cSf$A2MV%FDIuIGm;O zViA|$r3H)mtsA7X+2C9NNR244ecW;x&R6x$-BkqvV0#MYx_l}3!uie4%g3=}`k1zVS zUX$!_R{WcEF?j7lBk!U-XYD=mI0DX3&H?wyH*)SVTnos*XEEjf!At|NU&RJJUWs`F zl9X-=E+jz>*pYszOnbF1Nv%u%N~`-?2^UJ8l&IBxqt=-&HMFyL(|Fcub+=fq2(n5; zM_08{zOGgl{-(qWwZnL=?mMmFRVB!(9d_30zSrumHPqQVX}F(7;8eahC~fTV8vYk< zl_`$0K6mzz>0#ov4MR2L&e_A8?txF$JFlAQ9WutPjemQL>WC^p@?Di_ z;XUMdR2$SGO}N`y-JeKkv^v*&nh?;qFAWMY5#>9xSpHNY4{2>a=V`w52kK>X4r)rj zB=}08j7Ao}PeOPvQ%;g|lHP#qUS0-nZ%z~GG=FDKbBfdC>Hf~me)J%vnf}gE78*-w zksrrm)Q4{Jjz8AqXtEBz3Nbk&sfCgg2$GLSohX&l|? z$IF6g1Puz}=Yr`Rni9kZw4xiMlQrhmerT^}Cf}$XSG7?2RRLf8bZl=!htmyyyrc~cqsc+MtPKru3sQ(5 z@VW(gO%I&S0FBWOk|kf8dGIQS{V*}w5#k}`h>b>cH^^q$}}HIml% z?8>|BwUH2)Wx=j9nJ&5ZYKF_rghvD@!yCTq_(N73=L zI*#9s!f{|q0EQcbXB16Sn+1 z)wWnUPt37BxpDJ%v+Cnpr?@1F{iH`2-9a+4Lf2f@u`;{;1NhgFGlFo~79H!P_ ze>VxPh$|iveC>~<3iR&nUCZzGq#rc%{+)T-CFeZIxolaY^LQ`XSxau4x;b*TPH?HozOG{j~S13B43tD2fOj@fO}NMf0K&9 zhkBpEn9(R>2h*K2^GW{6U>X~H>B$JGIp}^viFhH+nzJB1bJkRA=CnC8vS(T)-${Bs zj~+t%`1b`I0lH~;0`c^n#1{;qbNusxe-iLY3`o@HPvUom&@(i5GOr$r5TlM|CC?s4 z2hjOx{Jmjx4>hFo>BDKi;N|HNk{24SLD>}LD=4w&lz87E)Do06Z|;nF=}*Van-7!= zRc%n_@}Gv&hnn627zeNxrHStzL+AU=nlnFp-m@9mv*ym3JT*N#orgX_M-11POrAA0 zYij!B`O~INou4&#e)i<~+3DHSz&JbID%Ig};W>wAFCM=sRw)wCHN5+ZM^f$8EuHt7 zK$katZr-fyX{uPc8P2c~SaHJk;|F7pf$l8EBkUsngpI}HH&U@@Q(cz1&&`=Ok7o|1 z{dw%;w0+8pxcN?s6qVcZEJR0rBU-1rp%lB^vKLv8Pk&I&6_*V`hqns&boN) z9Q7ab6topNifrbm=S~%py)vE0jzj>z1d>;#M@VTPS%=4lM~7d-ds_wOvq5VrRcQH2 zyhn6=*D5UnjBuieGGd_>Zw+FV?&j4avEqhq;P*$u&3>Q3V@J_mxfQRfbh?Y@02a88 zGb5x+FIXib-fK`E-vafby!w2DdM}{P6W#<^;AU!VYtTltb!lz=&^AVssb(Eyecqbu zMw9{}klWFC7s{b4&=8HU7ol^&65b;{8hgTe+e=#8;0M~q6vJoG-ggm%TWggrt+q;z zHQ>2A2pymz7!~#ss}v7p+KX0+Uz|wC@H3-nGdgq@|7J9uPF=Hj$`~3=V`lR?V`!p0 z2>;|tC*EZ;P31>MQy+fl2^vftv-$ZaK;#E4KS3k>yFqyIr#lC%&~+?bNeiChN5;~S z|Em2<_&u#J1|hV6Q78Z!3=o6DyYAdV)1I)d{m@Lct{}L_7d^34E2JakI%^L^o*yhQ}CbcdFdI`PtPR^2x?orW(9 z+41ma#?puQjOny#jD2B*lnl}_kU=O;{OJLsVF+rIF1*cS)D~8TCZ1ukmlfYul!oZ> zdERUWjm}N`60zqZyzMK@B$V+ey}!0f>+y^gc$5{uRiN}mxgJjz-mjtEExcEvyaqb) zhe0Y{G~iok6i*E5rYy{!W=)?rFMZ*ZxpOn8rO&aZrM-*myk^k;^ZAG;6oF>V$(}Z2 z+B|C-kf$0dmAZ3NB9w80Sb;NUrbF4;3iVy!ny8GFI;=^v=FGs9d4c=Pr1P2{HajYi81JLAAig0H{4-xRi$?ozUKF7&0ifxMXY(Td-Yn!&mlp9mvuGbV zU@?ABt@b%|HuW7d3UF)CT|s9Sl$Ey{oMP`?1iRm%e&9Uu`F}vwzgeZJ58y`tZv=g} zTm0?WG|c}vcng_Z;t^xHx|n}6o6hrTu|#$DyNmhwr?9j*mhi%-Xrj+v;6-)=xcVvV zV_3dHQOw)4tnoJtfrKTwqTi-B*TTrwEaLs+I^!VtJ zqbB$3+keQY$NTn&SC7JiZWXF%$!jwai*My}pQq_~bG$>FCp=x$t)E2$Xt9I8{4}D& zMF;=pX@nM+gWr3a#)epzs$SI|rI@!#D8*2FF6DjZ&_0tU1MUWR2FwXEJb~fTb(Ez6;nJ;ej6wTDGbskL5Bd`-2TidxT&l#oU!7Hw?(;9_(8v4S zLLb9H=gGSxcvmzJSH|s$cYv4p(`SvNDW5%;#`>2mi;!9YzZ<2H|IKB5=Un9bm4HQz z(D60P`2D#eE6C%CSv19GR9=MC9rY{ncwrXpCvOMbQ+2OPS#*GpoF5@2q5fJPk9&sh z^r;3M2>7df{>?KKmpwGNE}!3j21#sa0S}u;Lk2s99r35jnHCEDv<{c-xaKnxPiREA zI}l9-erl_5X?+OlfbV5(h&aUseAzs>SVaMUdmi#pxlo;)f;U2~@|47dE3TvjFf;#Q z18o*z1>GRjU&g^v07_3-NMwx89^gKhPZ#*#K-(#x5s#Q!HwyXS zY{dRxJ71TLsR;N?HcgD!1iCGFcH`NP=lFyOP&deRD~?A$OP|jjQKYV152H>59v$xW z0G#*$JRPu@emebJyo>3j!&!J2p+tx0;a!YPhv(xx1o^ns3q9$`B|v&M+7CF|qtOAp zdoo!GSS&hv`&D>v`vBb81Kxsn;ZPmh$MoqP9cv#^)K?w-GJ*6U%*T5ao;VNOat((< z3C%>**~9s3skD<@jbfO>v^DwRQcPjE)Em!Otz5KRg$3@vJy#3DCGkwu9>J#;^v6rW zrA>IQu7yjiQ_Hd1r9(er^$;t94ht)( zFkiV4Auw_b-?@mwmaUF@x;3+5DdIuYaqB< zisj;Ug#h6y6G_9GX}CSmyF^{UuR#Z5q1FEYN<&}clNRIH;Y?Pzu8QDQW^JU_NNC9Fv=dH{qiTP>Qj}oC%jk{C}QH zABRh2cyzi89`8Et|5$c$GkLHEgc z9$AU@D1TmwYz<}XD%z*3-s~MT6FSymALv{-pAHKn3nxOmmsimgvyOj@cUeW-a@Q(q z=AD+(mI~uy+EtX3Q2OhHUu#ALerqvJd|byT(8e7l0#-Xx$CLR0d52KA3U|f8hq~m7d|CQpPiP1VdOOvrvhvDhNXU&-| zazMRqJQcK2Ja-KeSTJ9?hQ`T9UWX&{z8h&U|7;CyPA|O9e^^8Ngmm1hCYaZ?kT^55d$-xYiVlV;NK#SyQHDD7;(7pO14GYof4goLRxfe>vDEV&X=U>E; zcOBp;z*zVtkxdm`s1*ZT$ZYzC6?v{MNekxzPjRx?2TWL#qCg4RX{2gGj zpZ~Fy;va(LQQOc@{y=_aFAXyb71Y5Y^7-m*v@_Yu4{xLG=sDCLrV;WYnEoPfx}7G- z*9YFO@6G$-pNKV!?NAMBym|U|nnVYr^0@bDSK00bjq|fWk%`>AgLaV1hTN~On>44VLXg@7G82rH5z;Z|)(TH60%SbjhZ-_~fAI$N zKa)4zrI?{F3i(1~a$iil3w+Bi+Rk(lHQ9uJvzxZ!x!Y-=oQb+%{?{)2-Z6jl{rU?2 z^==xKRddsH(7xSA3A@Sz7VKXZ~3^FvjiAHjdsrTzU^0TF|i(p=c)dN2C4w$=m`a7_u z#NT=cCO*!8639#3T!zM%_`_ui^kf+nduui?ETereuquEU*smz$K~LSU-^BYKhn>3a z!JIj@s!rzWo(rEs#eKeeG=7H~Gytn4^No5%CP>6I1dqZ#j z%)9haQpu0L3z6U|&hhkeG^u-zZ!E_O)?*<*vmZ^x6ih?(9mH=6svO>G zKTYzzzUY2^8B8n7sD4j;SgE;Ehil)XK%h=pC;yB5N}>VyCDAbt-xqE^VJnJ1I0}N zo#GGwgU$u?);}=EGC6KMK7?TS@O$8Th(9BsH2&6m@cQHY*Y`00%6ON5LUl&I^q*+H zm!JM8od7QF525*3zW5NrL+ufM@DLpgA0&rCW97pR(_FHNpFRxZmY(Fzwj;h-k08F4 zom2x!jTPHoo_++4$DUT|6@B-{N-~q5KBDORHfj-(JH3zC>-%w|N!vp4HQxwfoh|Rf zkuv$=_u;yCYdoV*pnUDDJ3852G}w^y$$kFF3EIkh4NV=N2x1ZLc!>+L<$uD%j>2Rv z7d6sa6_C^Lsb(U->4LJ4i=v%e0ZccZdK8%L{Mn-zZzw-{6dD@DTYP}R%F{o9M3|(a z@Z+zG!kZuc0F(~i^g}?WcqdT=^I@Wx%Afua-f;Jx;w0SlA)WB0qZ^ z<~+sCAEDUK`+fu)SMXV)sN`!uq8;ch3qSG^jWt9D)brQgr>*21tXzY*`2?Eh^M_AB zRmJ>CQJmt7Phi9YTGrR^SJm>v38Sx<<@3=eu`=ClRgdt|ej5$tub)ILAH@%! zq)CR7*7f}3Qiv-;Lop5}Ht{y6l+f_>Df)zIedqf6tCTl8i<$k)DJZEMH)E&>SY1%i zYhC&H)7Xn_;#&l^j8~l&6S*6|cbX1I5Klcr2f_o^o`D=z{+WP|^EMyDZ7%ewuOG|P zPr%zIehdry@o66;Ue`Xt_k4`=rn`Ol4y2mOuXO{t&soTl&xf6bESveWXEAxPR*9kq|Me_F!qk!V$Po7JMXy6YL9Z@8 z`V$z%n=kzY>;w4gqUgiTRM&(1YK_Acr|$zbn!?9 zOCzj;2!BLM0DK92L?$Tep9C!Us((~U6Z9T%2H-LeSnN$*fW`TQXkVhidV5Bs{z?Zr zVj~Eyc`$eh@Lj-|4hn-0HCU&w1{^t_Z~UCbPBwm~cCHMXQYrHS@(~}aRBC{7D3JzZ z)IteqSk49f3*g{3R;dU%oq$(=sSdtIqfh)wl||#n+g`v{vEz8Y^8$|hE1)&xb&62G z!H&De^Yg&dJLCBsQPzy-L0_P}Jf0_tvf~6kMwCa!^97>xp1?Pv^tWP*K%xr% z)nCv!{}I584W!W8ZQ$(_xamvmDAFhJM3lJ>oWSVTwLp+zfQ4NIeILMC9`&;Tmjdpf z)vpI!;!*!T;8Py(&wwv_z=6nC>i{EFRQMx%?Jr&TAb1J{-cL3Nv=MNy2YeK8j0b!j z@cs!r`YX8KP$*LUqf#6A*(MLz3V4?XYy&J5uhT~ZKH>ql2VCO;cLaRd1MUp?jtAV; z8wbAL(6r95I|zhDbhroLjvnwsfbAY|AHc#=I(=Wj=^pR^z*&I%gFskjt_JJ$^SpC~ zCK?z#3j#lARwu{-tlyCl47O>oUcVEtFue}%1}sdk!+QY>SJB~j01MOW@VmJ{2;a~V z2LKCS(BTTe!WVS-pMZtwb@&Ki;Tt-96tHjw9j*i{TtSDA0T!;H!`%KgwWip=hT)^F zQU%arD!vVPL_6G{(BSBAkSoMkrC>~VQNI+ha1?#2550o8hne{`W=PGG{QTFn&*Ry+ z%A?Pa(bz9rCr3!Z;3w4R06YkAk_NvCxCdaJ{ygAH517F9r%vM2zoBzl*9^6ymG~nP zeqkzwf{rQ><-dJHqaJFwLPezaKrj}=6`xf^$5#P2T&cppLIk)Y1Qmw}sOOJ%eCM&d~Zhslj^v8Nf9j^k)H!%U62+ zIl$r)mJWXoxXuIq60o?8rPqJm3{x=F191riLL)lC6~Ov!EdmWTMf4W1UhfBZst0TV zEKIN02LTqhx^%b|;Hw^RXmd=#TONqEATUDXdV>hS!p1rr1=#8V#{d?-qt|x;EPP9c z;{fLZ9sqnG*{A)HM|Oa^?;1D*o-q6a(;uy6^TekS1GJ>aJR8)0g_eh%Ou z5BM3tu^w=4HW0l%5YGV?zM?aD9&nlmycqC&57+^?!UN6&eB1*r1bo2*UIEyU?&hB> z6$3G~0U^BzINJkW2UuLL(*@c9c#Q|V39z_qr`Nv%c$WwKDqwNrPOpC*@Fh3Q=Uk-` zxhcpVG6&%51&Bn5Sq3)rcqrgpsn54aH%3?`tJdL(OSsVRh*he=>Mt6syR2$i zk9nT~7JjP4G^9Ig5Ch8)o2*&~=K+gYrFZxzg6VaS`pMs`GgIZ4OQnZ@fTLp~=pA(V zQMH2j4o1*HHejJuy+bEpF>!SIdw|8v(&44o&>kH|Y689SGu#Lx*5S}!u=D_q5%swk z;VK}mK5CVWno8yCs^2Ji3j`PhSooFR!79MQZFKkyU}07rZt<%cn_z8a03!kG7evK? zHUQQyhUN;y=Rk;9@ub!u;Wb*l(m& zt0z)D;CK%h*Z8HOqZ;b*4;e^%Jz#IZk=n7bh))TCuX&^-iGGOC%EeT4AqdhzAYk>6 zN>c&r7g$C8iyExguLCSP(BTb$Gc^dmA&@o!Zuq-d|5&X$AS;l<@n5P%gcc(T)%;?} zP2?z$5EDbO>nk1%ghmbl4j3((i$5a04>;xts{#r51Hc2uHNaJXjTsFB9tYga13oEK z)-r=9{zPMQ<9}Bh*HKlvxwlm2p&DEdSTMuFt_XMOHg@v5dSUbN|5lkJ!%*sv-xa*o z?-{};&Y>^;PYmWZVEaU?hC-aU3q;3BZiMtFVBhox_&(rn9x%Z+A`%^_e^l}Tob6HH z9B>S-?CKdtFTlZo!A3FnG{Ae^^tnWu4a9U1_-h0k0K41-M0y#p-J`w=@HvnA6M!E_ zy`B@@27Jw<{vP1Xs8`|+{3!|@)#>%QkSP|3IFAlS0~VK@)juMQ2b_a?B~XDu0bp?f zTCZOTxa9wFbwBV~jqd};&+}L-Ocr4gJ*&}B48vkHnG{JW6r)8kjQ$9tI3a{6grNvY z5-mdLmm-8B3PokK`VNz(5XOF=>zw=EeeFK4*Y~UUeO>pTbIyJKJZH}z;u#dkgndoo zY6~sI1uFk-Tx{Y@#bmIUf`O{SQXDET!!^nu;#KO9`WR2;FG2B=3|3-!$F=n;+=>BO zug0=VSm>Vtd_{rmvv^4c>#%GQ>-AW6f%SJ-Ho5f=SazZHW-MFGx)#e8vi=#%E{XeR z09z^0$8bG%OMTsD=7U(r`>&+o_Y&pVYk#b9-u78aUm|eG-Xl}L3f-r%(;hnxbtbaLAe)R zetES1(ncaUlL9?}zSu4GjrY~Z9de%$okmaLL?jKaFq^c~A905@CO-YosDq%DiSN!X zhz4lfKWaZ(|9A_GreIZB%Ji8CuESlfbgsbj)Fc{<^?+}|Zeh+aAgSNW?7~9MjM9FI z8Nie5l6mq&+4k~!t7-W;_n(P#}-%Zs!yzw(&c$d~BhJ0*U|6*v5Zq%kkgqGWTSt z?LHhf*q*CT#_|~nTj3Nun0QMH`!`jE({Z`VAB`8_T}*@1v3we&50*{7Hx~{2=@8jw`{Fg^w=?w+(FtW*)8k5eF43=Tpg7K0JKE(Q3@G+KMYU3-h>~iBUSVe*C zQ=70FmnwgSM=Gzw@);SMzaBRze}^+z0UQ4Tw^!bbyEHjW2DKCvHWeg;pK%}Mt++(F z9?LGU9qhp4l>fw&l>f%ll>f!DOQR)Z6UxqzeP|op1v-y|5e=@zNsL2iwD*`JWzSQQ(&P#!@aQa-2uUHUIvO|H)xkO_JQfUb#ym zI_#F16U%fgyU1Q0zrz^}$X?8{xhl0+z7)$YCeHm2SHI^dkbP(?{13}KkrwPEfBZgA~>LFg;{?& zvz@FqiENQmni6P%c(JnNUykiZW#q8B5*P3>o~Q$M>BG1ej_!)_65Jo#o6?_guH?)0 zM-HofdC$)ID&Z6?pP*VpT#n;4#xfkK@imrDV@0oqaqk0S+jt)=ADUXif295@V;f(M zmkmAABn4px1vDWn_+C@&tmyVS(=Hj zi7o3d3u{Dyd^#&$62UjPkO6dwqRF7efgI;5-U?T!_%T>M@@4BEhZm^$P%NMPvhiVf zTUqEjm`p*AN_Y^LDnE?pDp%rxH@gO(z`-rfPvR(6)C@2abO!unFgq zAp6{U5SGsu+6uQD+xVSW=79CxSUyr{^A{M~_#0T}g!Nk;LT0V1u$ct0O{m4&lz+zU z*{3$X73VA0<34yO33Al5PsO(R9k9#^>y9A>OH{$ZIE!6k6LN8`^5M8h`3Ni@PK=ji za1^dk&c{2{!;0hac;dsUAOj3}krEYPmSiwI6;Gmwm>bqW=7{xGSmuPa+?~msu^xqG zj#!Vua;CGs0n3@vI1Fy0Ku(pWAdn+UPLMMGHE2Cs5K2J--G4EBC}rNUtu|s zSa;+N$#UK(H1TpQ=Y_e(Ut&3r^fB&`nTXCKv&Hh9a3TdViMTI_M*K0BNoJkVhN0i$ z9_0?%D-oS1a+2|Y+V9PP*hSH-XN~7!nFDqU)MJ@5*8gjphz?u1I7QD1dmhO3oDR=3 z1DJ?q(%AugjAfE_HSxPs{KG7AHJqDjzDwp|x3Ei;CI3q-A7*VY*MGTKoSq#Q#FhBd zHkMDbM!SUgcw-yC9bd$p$fZDL@yl2~I&9zvA-q^-#uzX53jsByAeVAWT zU=y;ie6HB~04$$Twmt}tSI))-_qcct&b-&TGnUUK#|w{qaBv@{f0jhhl>+&oa=fsA zv3x$+`WPI2h&d`q1jk|d?6Qq_!}6JC>q5MZE!2eq*+OzwmJdVQID0eb!bgEaoA59N z^2utOP>JP}+15|s=#$w|K_Yk(%O|*P{Anz^BwmuiO#XR?^7E3fJO@`_)iG>3SAQ87 zG&Qgm%Np1QzvZ9uY3FE`vqtHiV%s=hz#grUHNUvr>^!k2c1wNZ_5aB(;{0p>2s>pz zZj)G}JhJ3C{{zbwX=Qu?iLymf#_wU76LOO&`8%*oLL2YYE)i`pTmL?++ux37gsOw{ z_ix_85-gL@c2JLX2Pxi&D!asXa1WMAw$==25te;kkcbEPH z@&LN7s$A2+S}c>&Hqe^$f=oi2|3C*0RR+A!w6_tl=@iee_UD$dU*Ou)cbohzBtT;)QpH;Buqrwq5EsE%l8Dc4W7xht)%{)NezM z45+wMeEdaKqWgLp$b2|un&7_P>)>jygA6_pCHWcDkU20?#ihN6aC_C>Be>uZ*ZyN6 z1$qspsRrbQ$4FkuNCUEGq=TnaTsnBytN*@=Oa0}_lK(TVQv(RMQZVRoH==qhUm_4M zY(6YsNMQXZmMHIG)P?i^wMOVk)Rw5^&!*L#t<^^# zR33uYDqn(kDi6o`&$EEYi63`JBHHJrCjUk(yR^S?rQJpJAD#K$_V(don?PKSZGXG0KbBBCG)KSCj6U1N(Pw{*32BEF-iJm8M}?1G~vLU>TtG9bBbk1%}a{ z?1Dx$K-pp)59S8vg_Id{A~+bYdO==)MGKcs3fl9@t0a~))j7CMRX7*#po4fx27~b5 z$`|4^_13YAaR%+#{GnLdw;qNM3RS`76qG1miH9j)jTb79#Cn%pi``P+IHU!qZw44W zbYhD7^=J|QNVor)|SrWk< zthc~RUjEy7*^8+tTk;pUlN zDnTmzpez-3Ijs2>O2=+t4k=6iVP1Y$6_@t&jHCXgLSL^!f3LzoWy!zM%O9uW(m|*! z`OkRy&&Bb0{iVWeufiu@g-=yn@;_IW4t99?f2z3T|E(gQX&1w=4-qwc1wL@hO*=z<>lwAxU_$~a++NKOS}q0RDx8vL|Hnx z%get<#U=kfWyycV%YRM9ng8{T3sr$s*x*&DR&mMSq%8TZ@|tg<-LYHh8(S+&{xL3J zj=%KaIF%qBbW@fJ7rP2k{!kT{{9($Hf47%ENyR09a+B#_DlG6SywQ{(>rvnMma^o3 z=jH#P;*!5vS@L%~s`(b$14m1I{^3Mo3n-Ne$9feCR9reZQCad!z5Gj6T=Fkdmi&87 ze%wF1;C_`L6&_HQ3iC{bc-ZN|D=IGeuPICZYA^pQ6_@;VvE%-w!k=D+zr70oDog%B zM>pT3+1M@hjXBDae;QsjKV?$*gBH$tMZNw%lLGl--FQg^eQ}w3?N)(n)SptvV*4$o z^1R?VkV$f)vNTYFx2Xn(;5BNEF2Q;W4p;T1y~`M& zaNaY7{4Gr#2eVGG`@FW#~2d{d=wf8R0(5e_{4$l#{7(XA}{|P6_@;Xo#WU4Tf7QCx&$^_ePf-nbdY(R-iQ3=2zCp%-O7@G zf|q|%Q#?BU>l=%j3gYv?P_M!;6_){Bt}GqghHKPebq6k3oHAqLEgslSy7b^)TR%Sk z)HmL53#cLu&haX|q~bDwDrL!E;pKm(;*$S`vgB_w`Emd3)9orjD*T}=6|#@#Z8_I< z3>Gs$ISl*Yk!lUk#xHW%$)g>K--Oqw6WepRQsvLaa~G#f|5SOAf<-FfW!&YR6wS$! z24*Q1+QEIEDh* zXV%Bzr>}MHhGmo6cp;W8WZfOh7P9Vv7pOa?)39tY8}HSP>%VL=TW}@`0c&jC7t0o~ z?k^4SKHhj~5e&o=mCwgANp1cGSRZy5VYhJC+|ABEN@bSc>{S@=Rk&SQ@@IJY&#Jf_ zMYEJ8|2;4NgHR<%g^!e_!WOT>k18(tb;^>z>j}-*I0L(dm+#7wA9nF79H|ndgQJzD z!r5N_IVvvs=PFD7XfOXd6(>JztWX6~;bE^rrHV@jPbf?NLNEVq6_@AH6>I}f;|a<$asG!c{yd&Z{R}F|0KdQsuzjWTFV1AZStj1Oh+T98@Bd4h zf^#TXr7GNv*J8G4)ZlDfKm&5wjyk}(Y6~>r1COENeVOMbj0gD$w>dfxwU z3y!2<1PR3yNC$(BZM+0a2i8Nd%mM35u@Bz;nhnJ{!v}v3?PU?1QF)mnq0s*X#LsG4VEJNQ3K* zZ3Ew7*=5#0VA*BXo3TC<)?&Bths#3#{+~mIXj1UXW_ls7d~h_Y@i`~+rUQH)wd9r0 zR4kKHCYihx`&l(8$NjE7c=7s4%JjjT8L<0Rmqf59&b`r1!V`Lg+(NA|uf2Zj`su5tzE<8^8i zUVu{-9Zds#V;Rm;m$S#y!G+W+%$`*`HJa`?J6_8!XE)9bNy79&#wm=qnQsH_mo2>N4v1l}vAT!Cea+4x&nHu*v`pq3}{u3AF@&_{T@+NDG_`m@ii&a1cS$wYS#aO+nPA@KN0*zLE24b zlQ54vu_@#ig5o6+9D;L++jDn+oTc)|;Ue6U3UZ!!UaaQK96V9^B`gDCp?@k=QDA?2 zNE-OYSTZEO0m}g6B^gxX4E0v4O}H)bBneW#^=Ywfej6+Uwr-1Mh2s9Hupb4o1~y@T ztar(Q*e(1CMs^8XXbL^bq}_^T7i5}Ul+B4sc7dJsE3s_yVY|fnCw1qU09zpb{2!C7 zOA&9ira=0UNtaR`%052T8&FRbmph=|%94K-ZuLznNYS30m|iuGS0WL-j^)>uLVH8- zKT}{6e!^4OB6gp*?a7%7??!@b;_kSR25f#0+)Hi2KDboH`{PB#qr;B+<1jx3CHr3% zz5|VdYsb2m+jDWPYG6J-pZK0pHWwo-zb_Rpe8vO!BF+|$2AFX=XG#@sgVTuH0Tkk? z--fP%Qz(!hu8J3K!SD%cK%=ny=#`CMkL3rgtjFTZ$lrqk*+R3h{6LnCzldwq7WfJe z3RS|l6y(r=-NfnK49YKU*#>sUYgGfsVf#y3(&dR*eu>NG7vc7_*NOre&{bG|iOa@E z;_yroqH{3`Pf#E~<7E?OVEGv@>*uiiyqEPHe1xk1CDwCbEe-v)~puHRUGC(L>;+_u_zAAGy2UxZ~6$4fFe70V>H?%A99XMbEw zHqj^Q3Jw!b4L@u!S!{245>+WI+ce~(P^R~g&*YAn0Z`m2xvnH08Q9o~uU9~9Eg zh;8F7vCLxY-Edpnk^<@QSYsP6z%mD{PsB3EtizKjkbP(iPQfzkt&6c7R@SFunKRaB zU^y(U&%$yPSogznSX&RkvWty*|33w?&uqeAtWUiq*e$%PRawq-V{z^{H_K{L$lW;HPfADx^`J`cGom-(ItmCICGynNhC0@Bb&^4GJcyghj@T zBid&LeVfNm@?3=1s`{sS?uBbr{4Ct(X9gteFJnB1f)Xi+mPBwq9;RG^mnjeRe3|Df z@LH9B4bG}_?O%(#;JAMVP(eYyO1K%zB#IZlKhX1Cp6|i4RsLkWO?fH~esS$RhFkrj zuK!O`u#DrT)XHy{gozISKp8W7X^b zt`yi`YLp7+8`}yOVEZeN62HUP#wX$|CRK*%@Ks|Qe;vz-%KA;57pj6q6v$y^6W+mc z7{*JB;9V?7fsMb9KUwPfS{Wj>9FYU=0PUl)uK+%HQCOn_UAN zu>2;aZLk{mQQm~hO;jH9ZNYA-Z~XCW=AZs9z+?OJ+K*G~B(mhTdU1a~NW@`NXZ#|BwRtInH=V1Rd}a_Ib1h zL5m;{Pf>H=7%V^g883X$2#-|mX6ncB7C|A_yP!LE3(x<1P@s3gb$$5jH67-Wl}NS- z-o|nm7A50dQj4X-%qX4=4m(Re?H>O+m2AOsEGv*O_20$IaGLRHY5;7(uyH5_dJA0U z`3l^ATZ-zkB!X)sPKWUpN(Pm9N_{GdN_;v_`_1_o&(AkA`+p7vZB>PNc)juhEWe~0 zFNxqy&x<`T#jUox{15OB&8%4z+Xgvz^mZtb}Zo)qWD*Z+Mfs8tOdfG7On zI!t*!*mEwPq4K-p2IZr1<)5y-G^6rNac^l^3%Sy{tceTc@A+E`EmcO z@dOG+{_PsL8`mh`kH@PM%>%enc`B|_eiYl^5SFXuQsa1ld~X=8xtZtx8I(xE*0>;! z<9aN|xvj7R?^OO1%a0M;_}{op`CmLzIXI{JnQ#|uw?F^jk4_ZmGvUuYc&5Xtxve?# z6`abaUO5lck}VgfJFuJ=dU2`~e}Uz=&NJ}?i#c;L;4Ca>#vxb^V;i4?D?^n~M}Zv2 zHsScw6455N4cv(3IG$@dIHD(??`I9|)ov7)HO@30E)a86@pT{30JmT{s;sk4=l%b3 zSlEIyD3Dn_({!*7%cRUVE@M??l9ieU|HQIO+L;bd=*=Ip7{GbPH)B2Ez0YXwIcMk4)b4ro;hAP50IdJ zisxcns`7i|xypULIrhvVq?qN5S=g#>sIH?8*S_b^^#=Kx2| z61?8d0sJ$bro8U}uBOzF<_Pid6bf_)Jw5lv1r2Ts^~I(CIuF3Xf6jwEU*x$I%a3Bm z3;Ta~^MarZk7vZuq+)~*8OIfp!6R7K$oesCe|%idBg>3!{6j2T$ogX}TPR*azO9ym zItq@UL>ky>Y%BbOWs_O|hwZPLOa7q)W7~KaEWdDWPi*HK+xP`oc44&0-#;&+pgbo3 zpB|KAxA5sTtWQiC1Nk&NyJVX=439XMhYHN{VN{Y6QQ~}F(ldv~86SsbQuZ+(j%AnS z;^_1Lm#Gfru)56~&>bo+XUd7*fbLasssB7KwQI-<&XIiOm#|r3jz8A8N;M!Iyebu{ z>?YqO=*WG)G+@tcJ6Hqh;8beMsr7YLUk31n>mX|XOBI*)*EY2;{Reyrxk``*{>0ghf*HVLr z&v=J&k#Te_A^xNne>Qfs{i6nEQP4J#9rsU#7jYluDqN}jn&-DX{~unc^54aIySVm0 z#N&1eUBQZ|!1;5}Yw#r1z&bozc_VI6-h^e7$4fHUf@Mxv|A?1|>a|@R1?yG9uXrF| znP4mYhU--PcU-34p0^Y4Q1O3oYP_reAJ*rY#QEy}M-GcL3iM$&xF2^oG-z)yreWzY z!HDFr`wmM7_ON_x5H~Cw75#|IiRe2lM@gRX`GfhM5cS&do57s_WsO^#1`oU-!9K|j z#+wSqUC4_|^`#LvVp+p3CVvsu`Hh}ivO;!|!@3jJyD0a3=ASM&oP?}2HwW@?rSh?O ziSh}ayL;||*Q)%}@r)L({XQWDHL9S$=kq)d#yeI1#kfzpYw%K>r}p_}c%1STc#?8h zPC=C_7=iU98I9e-$MdkBBe%%KhXIw5B>Vh=^LYKw8s{)c#IIr5!pls&2Yc_nSPgn8i^Z##Bpf}-S z&r5Ns+Qc8=smh<=70Roy-h!*KTk0FX!cAK+?U~fFKrJEC3c)jw0%FO>n&`}kL55{$>!eKb0m22=woKnum!<4(>3gwgWOyyJY z!r1grhrL`unNfHuD!mH}9|$0@vPy#C4H zbW>mx&cKI~5SZ?K-l8?ak=PbY4g#Z2NyI80@W*u(g1ER$|MmE=6o_F}#ZhFv&;5sRl|wwQeW zgEf$g2?er=_c2Zl;o_k#7G-!XjxRQtpYTvI*^^8imKJ`1PL0dcFlu3sr^NDahT!bvRKf zDBp)m=rCUR^+`Mg=bIIH+t|hzV;P|JQml9BGHmw0q|`TlNP*s`A7i`7Cf*hxq$w4!G9#wu#dCoHNly0&kK1}+B!S>{(iYh{o6Pm6rXtToGjt4 zn0y;=iTfyL;1cCFC9HpiD%h8VNy-Np7t^8)pv;S3?Rg}grs`jZ=PKWXS1E^~DVSOR^AN{Q{K~a*w!o94^N^(7c-zMjO`}9#`7q=kbL_( z;&Wr0|CQ%;c)c4?7;L1VRU5Ykn{XH9TH~2!Ks_&R9zWA_U))F4AAlz)55lXO%=7B}>c@f@5 zeY=Hr7&l%2|7t3TJ8Zyh_stft@JQv7=1#-;D!wb8$*EQbB$wlSJbu6I_@`GWxf8EY z@%gxvxHW>O7ih!$Q};c9!e0ySK&J4kvPAd>)<-iH+jAp4{Mig`ey*Q#RYNy_zqm58oUSh zVU6Nz1HW=5`Pg25tMSPF-2gV@smecj{xx#wD*Q&lOjY4eTylVmH+W7AYaUO-w0eFmB!=AW6#m~g0%Kbc_>v<5Ks`4+wp)M$;V6I9SjwdjH zjA({%!+|RgbOU@CS1CX4`6adkO2%aw((2w z3&fKqexI?8hf^qck%WXvc-z<}EXJ}+te4_t*v^SMV;lb!uOfa71u~%hFOO~G2V$86 z#$k}6pgjd$O@%X!ZH2yA=74p7JP;pi^2Zt5c!=*NzPpLfF}CrSu*`{g;rdra!AuIe znF`+;+X@@8Oj7IbvD~D_ON*ce*W!2*w+Q-_HNVY18@r{x@f_TAmo2aV-|EYs(YP%x zBuiczZM}e3J~-F7=SBSCkXt6}drNuDM!cVipQ}2M+w@U*ftu9Ud%h9ZnmF@65!^z- zl5BSr+>UoBPxO4B=P9^BZIOp?@R!>{kKl5O;w3$JOycn(=l}Y~X%sYV61K>Wv$>`- z!Xjp+Y>~{%c(KTUa>*7yX&UOe=C8=j=<-{tupyhh^j^^aRFTOj?@!GpL)HSj1->*RLP zG(1T8Y0tAfzkrvi{Fja6{^@W&1=T9ybv$r_`|Q{EcsS-k3E9aY<4UggIc`90a6jdJ zJs;rtAUyRDuKzP>P&Vle6qKn3#(56$I2E6O7bxG2|BnIgY6iFf?@;kKaVsWeS`=>) z{1C;t{`X15132ia<`p`5J_KhT?AG{jTt|oY;&L9IsNxsmj5}QXPMohi9~Xs(xCURB z0vye9w#e}uGvavRkJFyJ<6_m|mAH)jE>w^$y4Bd$-|qPj9I_9ZI{1eI?f>vVI%rRZ z?DIpf<`zqNATH?a>JRpOvFD*uU*%tRHS@oQ2GdOk50J0|+k3o4cnY?g_@w`7B(l z9QLCiO`WR;VErM}^RS!;Y=eWboCmB+upD;QL$DlX@zNr=1b;w0daTDBy3g3;hrtvI zz9peGB{Iq0HZ}>tVl0Q5^-|n`_b~Z&#y0*dmc!2aH{4#$i33N*j^kYaQxwQ?X)AQX za#&d(g5@Z%J`~GQVBG~z!bu8b1?w>?0@$+2&Wl|=vya{y}fB%;g z%_KIF#5WA&o`86Cm=RxoE`KB9YT3)wKjIR;T)tCwG$_fxlKTfa3gUeJK7i#YX!`#D z^2?il^ZCnI4yyyB0VIQ8u^d*%8*fl+C^sO%C;}Xo`HWajy*-R6W#I>oJfDHH3=#cSc~n3$8TrsDD|5DHIG;9X{;25>HX_>7Hlc z87lr9UZ^|=?@*o>J6?a;L<_uxH*l+o?lT;%M|0dNUyl16>9$z8=Mi{}ijVPp1D<-M zdi_6+f=p(4X0*rn{2s1T4ZMgm@?3{io?r945Vu$P|A*Hrzl-ZaRq&w{D6jDR8D7Ew z?bY#b-2NyxphnNhYnekT-V#qz&cNYJRnUe4aZWOx#b+DG6Nx{?dp;kpSM^J9@iA^d zL-9nlMeoHG%CB9^{4Y}l-;uCfHBjUEN6&S5;IXd5de1xX6czu=bHlaFzZEJWF^0d_ zs{wVvY2920N8xG8$9X={^T~LP%0Cs?(!RanxhABb-(7CfJ%)2maveU2OI7?MJW0hr z^}O2iS9pfX{}!)R4y!4sQw5tn|K#}>9GvV1_#5t{{HNyz&yBdm<@5Ky>v&Y^3W8nn zY~|LT_x8LmUZV03z$4jW_9*FzC*ro|upWiicDE}K@`VEw%q1Z@w{!M>8c$Q3dxbgE3dL=-fZ_`sVS=JYRu#(B57$Ai4fer9e(R@sbQ4#VIUTGr1pFYHZ`n zupBkkA7VMItUtzb*jcZ{`io0f;Y#8yNMQZ>=#(k275>H3Nywl;;+=1ZZR3aG7l`j} z;scFs{CvDX#cwmV@jLMH_^;)1{^w&i6v&y)CftkVFtolO%VA^v0N#o(p+E+>$k@i; z!E#htzl-H4vVI@OH@VUECmAfKKqie%_yo(OvHldxoUr~J%bc-ZgJq6be~o1yTYrP) zVrIPo%f-xG|M^A(3iS1R6Lt%Kdd2$sJ-?if>2Tu8;N`5`;gny^+i+0WuUY_E^yj;b< z!Dmt5-sGm;$o;`Y{{C+pJc5F?s)NCJS`T-aU5uBj_}zG5v5VjD`617b;3+Eq30!bD zfB#Ri$})*QpkU42?!{s~epR{sO?)<7`E)#Ac{Hw4o{r}!FUKz{Z^ti%s^FlpOe*Ex zIR9+7hJEo)wFPbzlYh8bftk1#+b#MT&bi0=Z`?}74<5(-%TfjXD9BYFi~A_g!nJAu zpW_l0Z@>$bJKxNtRz3$8D&KrF^M9=>m`%bm<<)qc@_%@e@}ajdN0bNRwEk|34aPEQ z<0ToCV42j`LvCUI*QodHTtb4(QkyUw_rpBqkLJi^V;g@EGmD$@AI36CZM+i8q_%zn z%NDeLGNeHEsV#UK%RaK6iDegAKaXV>Sr?dsSMUWyoC)We7q2^2ewuv$|3OSbnYG1|z%-j>95>24p*_Eh+p1aqDxNUF&H9Dn z``mHA3HQOdG$<#!*5i3)Wa82FzZ(T5=P>{hWB_w;aDT@j#eby2mpFy(i6yv|$7lmx zhb@c?$d~&4y!g4E2jSd%qcg9(|AEi#QZSwdXC~qX-Z!Q_7QUX(^Gdu(4d4sB8DjcpNd(W>0^{dB&%ujS1M_fu24pX%>u}ZiZa^DxrkVr0-p&>x|D>ol-k^Z1 zaA^1G5DEfS;T}AN1RH-1&rq($;Dc>fveCFcTo*=#wV%{ z&%ynMxcu{Rp&Gz#c#MkQWn97v$p99MLzVEJSK$LZLB&78`I9?FZ?%?5*yc`7#mX1p zB`SXiUZp(Dc)1zCvpCcVv%Ly0;%e1E6)sihfp77|Qnv-Fai#KRW4p;a-PJsvdl&Ox zS2&!6xvGIYykMy7;8?sv`2^#IW{t*q@moDlz^yKE?cIGB$KNnja6buil^-&;n{1^Q z|HAW^c)6+m}~M!6<51-+8-q-Z~}c|x}596Uiaa40St<~le6Pf@#QFdnHq z0gqP>=TWd|xNBg6F}Lf{EdASyH+oLq&E-|qZ;5v(XW$vC!{c%OWljBs+^xg~eG+kp zw=_=(ZufjA?&TT??!{AX&kn}5i0glhKcYjLSVkBe2j8y>HGvT>c`EK3FP-M;n zuiFIapZMFJ7vnzCK(r)+_wa1x<#?^~O1zQ*&^)d2PAfchqVg#UI0^%1_4T``^qOf9oYwd)|a6sRn9st@1B8 zYqT5CZ+Pd8+*6wNkG-E$@wF~~0-kVf=nA?=1=;bJ&9ISfGqzjcF3+C{Fw0?8kFn*dU2={zV|BB;3+EpBhI92KT#5Ur`qS~$8(e$OOlJPCPzBGEAns!J*-yrH7yRn^ zHyl*B2LHqzxFfQ&ywemWF>}Dy&&4t)th-L(_|pYPdkM$l{F_{b6L7UUj)&tmbjU#y z9adBDcPjoi{uSH!7F;(eJ6M&7w_vyM0d6A4xeiXo)09v3+{^Qsc!|pIhd)<`;aL2c z8qh4fN;&+Tf^E0D0epqCZgc(?uU2c2{$LP%g}F9GYkU;ms2VK68T_b9`XDbUg#rs9X-O)B1B;y9g65Iz4NM?r4Wi1;Q{JV^OY zyiNIDT&Eg*9si>IJ>IIEF_o*~U2ec_@DC==`X_@z3Q8xsgj29w3(P(WdSbnWdVBG{ zp8HF_s(&8-O%3Q)yd5)#;@AIkr2%!^evMnJ!z%eO1LUx=18RvUDQDmX%58819b{4= zT0ty_ovnXLlg;(NXH$Ws@OAq*?LJqbFJ7TM0Lv|!ZE%q1i#(U&^(ucju6cm^_WFM% z1ryXH9D^$+yAE!|3zcudOCIK9wTbvd@*d8d;_{c{3Cb&RrScbeIga~hjlY%(k7fru z)8Ym@JrV@%*afs7ZNk2Ikc>E562SnR@u2e{JXiT5T>g-YUxF7ZUyj>O=J`Lj?NJ90 zQn0_;=l_QfRCA&h%NpAO{DSos+vdf8_q-EVtNQ=qF^{P0fAUc_(Ic*dmN;7t;21oR zEo28!fOCl3Nj4127PRpzJYVB^6kZal3fEImUg;Vbi{~nj$2pI=_#Jqd@;!K(@?<=f z$83i)A~_1)#1pU`@FpCNQ3ZQca-x{#I@k-#bGmp*2K(T{aBtIKcVipxfu%j`)39`C z-3!Zrtk0}u{=Gv%FG^&D*O4H$2^Cl#yIGIL@?6jQ7A#M}tZ&5~@K6e*y}8CVJ`c-7 zE9+M(ng8;X%ND#wf;{E2UWnx}nf2RviSlABPt9z6DVE1>*2}Owl(PO1%R?^fk3$ON zDVHr+iRG!5^(rh6ovc@5dB|k_6_#ha*6Xl5+qGVgXCmP%Qlku;_+nD$j#x`D#15U-(BXG(&3`SFsM}fUXnr>_>%)rMG zPf{QQ_{7-8KgGwY`hOYQcmpm_@y?IOj^jN4Ka7GCRl>Q(wt+$TWa9Qjb-S^R--%Bp zZU;Eu*v1#&(^UK48AoyX`~MFV^im0XJQ3SAkcrP!@e_@0{AAphxEs(ReL$pV%vCUTpH)g^@m+R zfjp(M30?7cxQdTyb#MXA=`d;EHBs1^*0&xpg>-|+Jw`v zyj-^Kh2=Kd`b@k^xi6O6ZX559<*wO!AeOsk>+`YPC7bJSGPr;OxsA377h!oJVO@%= zl`q9|(`nflr*%1&n@;NySZ->~^*?g4Fu`>@;tT2I09Qp@@w%nd}7AHj0N zV&jitxu39}hUI?3`YGIDGJpTK1N}DVmL52j8o> z)c?<`pO|jvUo=d<|AzuS!j{-B(m)Q@_Xmf1?t;^%xVK)Nhv#xXQA{K9#N%1xxJ~{l zI-U6^3AW%x5*8^};T6iS;cd!q8P7BwWIfqDexT|N>ec!KI+uIG7priw4XIcm~v#N%hUO}q(L5I--7FJ7&m<}W5q z{c-*8MnP>;K{6PIYg7YQ7~4tqp%-7_`7@mMbT-||!Vga4LgjUMqP4vK-DnEzBs=*T zl|cMd&pq*6+W_%1@!Drxhy8Ga^0`Km71J?lSFahc_{ zSg-Lfp10wQ2i(VU_J1}Aik_7%CjB$U4owBIJK~ZkA$DiHM7awNX1Yy&l;`6-cf(mK z|72V(j{0W+r&5sfoNKU`=d(Qb!$m6pT)ag20$i&+#PcxYxPJz4IR%-s+yKh)PWF+# zuYbf?wukJp$FOYDcu5A+@QzEJpTccb{28ow@pG8P^v^z=O@ZFW2XJPSO`OAj!>5nrONQt$I*;%U$h)x&C`G<}ztD?uhlsMtirCRzC? zCMixDSE%|jCmzOnK#zxB!F1e5jrbY7jRte2L7M#@uTk+W5?B5iXFcf7bX}igi{K1X ze+2G=+Zu=SDJY`AcCZ7N;XWqe_*uO4ddY3lLcBxy6wf_9_r`fIyZU|c%(t2x1_LNq z@sPXz-+~t@zkoL}p!Q}!t8t*>|Kd!1pow>Wo(@&KKQ6+y{#abn6zBT?90fU3I|j#@ z23AP|wl^gI;Pq5E-oy`?&6!Qb`{Q!rT}^x}p4QX>?c=%1pW%^<%odRA{~BF@*Lhwq z4cH3AzsFS{Hf_RS3ocg!YV!iO>B@z8lJe!a!8m&U{~!f*D&ha|BIR1VUU~013`qH8 zyh8a3JWY8juKdUi_%UZW|MTUrt|0Q$xJp%+<@p7?T*Y7ZJReu9`0JkE#O*(p0Y%pz z{{Bxv#=~5_67ga7BQ9IvM!XfzRNn4+r{{lg(IajS9r7ZRbfs(WaO?Q`$2TBR&`(tu zjK`@87keIxC#d{MSk4pik_;weIS*Jrh~+$B{VVAz zw!JhwH&h8NDOjYu8NWy4i8@~?AthTPeGHI>H;!?aX1yX;Ov5miguP45TiLaT<{F4Hk@HGiCtF6Dm z%K;;-XH%5QsK;wc<@rC)iFq9NDnA{s*hG6#|8%%J1+8ja2brGt@tlPVRQ`duOt~XoxY@PW*>e}; zxPJz4Bn9oaxC;56kH@`KywG!ZJV?ch@kr&~c&2jS*rtC5Fu+SV4_B)S7viFy+yF}@ zpGjzM)9=Akl^5V;D*sK-izBPo|4S*@sVaQn`6Hb5vm3ytc&74dyi9qm=MA2#@%m6z z*i1pK@=rLk&UN@JUZlJOuTcKW^M9TbRkW}2({VWa7uUh=6f9HD^t_MfEWAeLABcmk zuDy=9t#W6)Ub#yZ^S@3N97Tfmah|*329+{m{c zF`zUO$w0gSNXRZ$N60U?`&3(2=2x?^=z_eNd)(M zegLmxi?kvxSHDHLOyw{2ybM>U_(yoAwOs!{rC_Zsz^m~BI%sD)_|G^V5bOL(JOJx7 ztmi~a?3Vh*-Egxxq2i%z(!(gw131$2(P9R4IIYSWmq-J@xh*u*^Dtbh;#YVs$J64t zod5YWIt8^mT!Yu+oZp?tdLHljc3iCTC*ldp_u;k54>mcv{v?7&n+jyZC4$Fst3TWT zp2E4xGx4@RUHk>lFMFPk+wOGvuj3qXeEsA7{S=H*2}|%4<@Y^*?0F?#sPezS!QZaK zuW_#OdgHi%*7$obp#~SK3P0k0%3JX?TjKUAz8mhKya&!!&cvOR_r`}P?~8LQ)$9Lu6dbA&+T+8OJK!$L9q|#$2je4^ zb8(*X;rJ-!Bk<9oDmaP)eH`awx70TtkM(gpoKv?9I7yP6s%PU|oG|_w%L-T@aYG_n z0h>PxhqB3|zthpcs}#s4vI&1+StHv(w+db@DUZXl3vB*kENf`<4;ag5hm@Zmmxy*D z*P>{^KaS)5&$5qf!QnS2qJ3x^yc)|Uv<+5anRIzHAXl#w)E1Hx+4;C)y1OU56|Yc} z^iI!r%SWeM{gX{|vT&{^Vak)Pfj9B`^p0_u_+mVf4(!9^T0B#AxYq(s-Pk^iF2rk8 z{4!jl>Q4zN2vmn};Z{$%htZpH5zdT;mkcsrxvqHJ?0Qvq;sj$0i@CDpQ z`DMIKZGm-oKEWKD*sYE0q2-4azCEk6c2e@ECu~2kXayC zw;H^#DIpo`xsbpNw+l|dnaabl3@BdsvN_KqJdegRY`$FoZ=j$^HTVqf)5bOUJWi?j z7dTJ(Up#Oxm!Eu-n^umRcu58=a4#m^5fsP@9%(Fb=0CqqM}ZtR@sbRV#WKsS3$V;` z>l3lea_f_^%yR2fu*`DnVjM7stWU=>Nm=Cl&$m=kAhR@HlEGP6W~p^QER)oF0G^_J z9+pXKoHj7l=Tf*jskQ2PX;$pAhX;i+>B+?S&zpu>8x+ZGAFF>#4;zW@5VBxtS4c8ZJCT^ zG1uSv#s?|T7ng@kf+WeQ^%blq*&CkU!o$=gd2Ar$>QEbyc^YT+K;d4Al zRrt#DIy_0mH{z^)T!))*ALUxlzeEmQg>4i}QWbvpyc17T@qh6`<>XsTD&>}*Gd%B! z^TU1J0NPSey`OVCT#)5_5Z3!J8@q+K=V84IKe>_b6=y(2$@pqHnwMs>MR#yHm8<93 zy!Z)qL1)#V?DJx*2hiJdAKXg~us?3~w7Fad$zUvQQ1S6Nqn%r!JKkdc^-%@)kZ>)t z)}D$N;HlVN{Wjv6xC5&#XR=mr^T0yIkH$NdOYm~l{!q`Cz0Lg730Fu1s=_sRW_vf{ zYjMVb&J~_-_B>}%NSay+hh-DX9--cxuS>J)z zIETSR3S^(zgnO|}BJ2C{uF4PK4CSe~z4D{DkMiTVM0q;CsL5e6m_fnCO$Gdv8Xl@V z3lCF%0n0A41DuOxms!ulvdgSr!LkdiU&D*>UKB*1|Eo3yHenN%U0}Th>*M}M?3Vh* zI;@ZTi@EKVNxIEE^LYZxB#*vdh~xezj(gdnNg4^|g+tfzya|C_AYF<_VA({RCnCRs zWeeHc^xv^;QX4P0H4$ww8y|~hi`n>MEW0e4uwV8UM$rI@@j`KA!KnEuN<0?eNHsF8?506*;>8B!W&&1@y?cb3Gr9m#GHw zaD(!(IJ1-M-~?Qqx1@-d6bLoiS2aU z>QJ`=ePWyb>9D_-Fc4>{3WM=7<%@Ctv#x`?agOo=oO_t-@J-K)BdhEGQVI%Gg%5DC z@+Wwp@+w@a{3RZ#{0*L|{2gAXT!ZUERq&$}9PUQE)$?}Gf8ezoHSv-R{=yB)4LE~c zaDdrGo!^OV^AE$J>|c(BSCBvmf*|rAtwH_v5jxVZAZBLdVC-G=_bGZlGrxC1C~i@ z-Em3CpHwK=ml7GkStN*ULO(3C+*d;x93cIDgF?@yseeqa(3va7s64_Jn z(%Tc!ahqbN%1z^*6B5w?`q4@vnGE`489+zk;)k#d;85c)v8>=AlfT~`Ji@`NVu!(C z3S!5G_1_z%oMX|6v)R z^-ov^X#ES80a|avGC=F?SkHk!uw9t{^^Jc~pyxn?N{~(7?p;o$N7)7w!9kw0ae;~- zBJq5ee>k4SfDWWrIm*t%%i}oxQ*@y#h+OLVQe3AREW^QZ9r-_5xOm}0<h{jSNBaD}1a0`A<`Btnq;RNiK`o_Dk-hxy3vzx5pm_&Tk9Cj@q)1f_k zRK1R60Q*Pl&tcP@OzAK>SL5{@1+oSQ(Tf~b_oxnKmpqR*5>HB;|Nk88E%24+b$F24 zLL2eyc))S{$siY3zrgeV zq*;Rjae)~ClLSixw!&bncR>kuOMT-Itam{PCob6{W9UFmT$iYP*@7YN(oJ3eCqxCd z!$fcwF6`z!3D>;TF_=iNvdK5$9SrbSIuIYZjE7Puxcq!PL%AE4{CMG8H}Ix#t}EzH zfplOKdSJcAr(w6$H}=AMjn7nZS;I1{2XM9LkvLqTMtB_s+7-C%iFQEz@!0ctJpN_3 zkLQS0{yfjG;3+D9!!oY_i&TXlNYLJlXQ&F9@AFzw*7fhp@i(tykTMloe!%7UB)7&Hp4)hCi_27gJJ0R$7!}XPbCnMXDM&E@h8vBz zKc3Rv4d6VyM)^X|rJgUvV_0LmhWF#P!)$xW-~n9D7KmPavW3F8O#vH#B^fNnvQOiM zFQ3P<&#aeW*(KH=;wqe^KsNbr#y0*tenrJoAI3Iu{{BP30uox92KpM?2KwV+m$(iG z;3HvcyK1@T=?{3T->ufj41;)Uz~s}$@|6*d~%3g2UyBi1!I+GSBeGWZ`Z zyVk{jk~q8I5aO~$_E{d=*3ZH{iAR4;m-FALroblj#G^=HN<esrs9DntV zKYI;qbqUeK=XM`8UxW78E%l8ZuwH?VDlP*!%d6k7DK7n!Fu-fzyrzWs>G!R;xX5l& z-ZSF)Zah%M@5eJwb@>nB%3|kA9PN^*e_pRVL4jN98=sU0n)cx?!NYfQ8%+lT)8eby z(<)!qaD{C!Y9u}QOvPmdzwp}o(!`_wrGen%=9_pI?3Vh*bgT!otBOnge6RlTDlP*! z!K;5#9FNyu8YuG`xXNqb8n1y-DlYY>dG()CaT&lfUj65yc-((9$yRv{to9oC%4=Yq zipv1fK54!MTVl8HHXN+C;2sh;{YL{R@ESPLYv5$Bfm2jm22k$RAEDy11x9=Iufw+g zXaF<32A=gAnB_I_f{M!k)_C>5R&g1?H(vb>pSb>`0km4td=u`D-BRD!8tYBiM#W_S zg(%eC;?xft$5F6eof>cTJOS6J_}zG$^8GmTG zV!ef)z-|dS)l#6>aN_oOK&52KK6_eKkTqW6HTao|%Nl>-wfCipOa0(eHK34l|1K1` zg;Ooo1KL%^rGb3i0QHYoaT&k~Uj36)TDj)L-T5%kh^UtX2uqz*k-a>r`ACNc&7}Lh84~ZsAmm^%mSi#if2hQ~l`p zPY+I12{M3_y#`KEacQ8usR8LWJs6?lQh&5p|2h?y`ZH|(`23R|JgX9X3wMchAYu)92vYg#zfV!a95sJJvxXc~yCqzBzq zTn5m?tACn`OZ|~?ebYY!xK<@d1J`>E+^FKxz|6P-GvxH(c@>xXbG-U5skqc%8`Zb{ zGk|YZf;6zvYv6komj*IEZ$1h4#BQl?+zab1xQ~iU{UWK~)IS3_RVBy(dU_4?R&i-y zj5N^HV|s9dic9^Qy!tn*xYVDGL*2lODnS}}*=u0Fic16Qv9AA}ic9?;y!x9}ThO>H#(lBggzZ#Z8Yss4T;JPsAFSIyTh*8L&-sGwuRD0;-?+gXx|ehR zxvGM6I3Aa(i_0CJC*mi`)*7xOw` zhRT-#e&V(Fsfx=Qf9|yxuA!i$dnzcR*S&bTxenLOOGR(57k`g)mO9ttyd|k%hskfi zBNwNlzxzpki`Be$>>cMla50uUAc^mXE6HygI}EZZD0|l>9F4nBL7repg%fd=YOolu zRUUvB(cnmve+iz8GmWpsw zJf%18c5F$G81tJ2i5R& z`s!3rWhzX=h2NxtWxK@jr#H*n?XrVXlfM?ro6F*T%DbAj1kv~VEHU-p!*f|dyGu{1 zB``n5AECmy!5RwW(`l)+*oXZ{18cK`DQ1lai>UfR|8x}ao?Z(?wN$z@iQ1lU>iRvDlrj$-0t4q?om+;LE&Q{@qmbd@kGA6 zy|Wc$`AepTGQNB;kY+N(G?XPwrZFwk)|n(Vopwx)|P-scP1Vh^yT1-O< zZ5ZfppZ28ptmk)6Mxz<&clW>l?f$?2cYAjqJ_Ty}6>PxT(BA;dTeDiJW;cB5RBX7r zR{C4ZkS)Q8;YJ%Q9tSoLk@Q*}?*lf^fb6yVN6tjA*Cc_j0-FVhYwZ5Ffz8WpzGm_I zm2my+@foA)t3f9}s+GQHjqpa`Td{w?J>V#CvktvJOzkTWu^rHJ{doC|^=o5vXRgAs z9;hHU+Q)&-63(YAzg4(Lo0&Hh-D5Z0jt%C8Lpgp0xY?~P`v}(c{N>F4eZc1ZKRNyT z2SJZ#yT`3WF9Md|ua%_b|98MgVAQ#a_nm|FPydKyV}7a_@&0o#BiKQX9|gV@UIBqL zyrQxivEqOG?fy#XWZ*9}?Y|t@Jeafr6h;D10Gs;-d1S5BvG53Po_mq1BmSEgg&edZ zyaxp48BQ|>!{9|=^GxU=%W&1XxNiry8L;~!V6*I|*Y5v!(kh|LX{&_3349b@;9B}$ zW!PYD9`?J#X*l-jZ1}woBF9K&U$VKXW0unfXMyKZi z5B&~8r&Yo52&}xx26h3z-GsjZT!PKyHni-MaLf69rO!0Z2mRl*u2o0=wFndo`WiDd zGpJq%t8HTV=fL;$^p%d-0c^M)fe7~rCoO&e*epCcXz_!ic+=(YLjo3`wgD1BHXJuL zXY&6qu%TJxENmUnp8zje3b(Qho&dgUd0%O{#qRaq6kb`!>?b(hJzpKD}BilJhTZSx~{LZA4)SSxOxnc z>tbLWVeo?ngW-^+FMS$T4XiA_6!;C`Yc1XbY`ztrC%1nAHXps-kmvuQ8+sZai@(Pn z@I_$rt@pzgKLl*Pa-F-S2VIy?wda1E0Gm&-f5Fnr&B%@n6S6A$Cb0QXc|PE`fz5Zs zk7hPhuATq`tXer_XS@;EtOd(Ya6hnFK)BYP;0W;keyr)VB44--B5n%Z-v(|DI-6e~U-C@Q@0=|67>~Bp2?+h*7cJVo!JnuzApE z)k#wWI32EPZZ78{{5G&zoW943`1a4iYij+|k?^d~!-x@@&1W}_&764~yaabrw^|97 z>XXT?NqyT(<#1^b@F)qBm`SQ+6#1*;jXUeEzTil?UJZR3#l#blVo?+%O#j}IGR+d^ zapp%MQzA}fD27V|yUcI>ig04fMBPhMQ21e#27X9W!BXNXB9!kZLWL@{c4xND>!*3kc?J-h+?bY%b)nnzXAA7lcc{Ok)31dbjhwKTD^~zVu zw`Gb3o^rWMT^{&>f)qoVD5jz`_5&7&b(RaekdlJZt#wT<3^@uzJGnykd~WRhuE?|L zc@np)1E%S{xsl8EU?e%4 zG;3$OBxp<9j+AyUL`vFl&DwhporC)ri<&*Lwu3ds-AbAr&yc9`n^xN6k{Xxnj+7m% zuuD2bkaqHFFD}CMV(rxR&-XefjTBq+?66vNjNbo0<)wP9n;MlUgUb5;?SJ z1T*GdM5=rKtNc;q%rImTjRX@>!fhy-qkw#)fw>)%r~0!Rg+bAzq~5l+QmdvZQE5O0 zfrf?WQGNPr<&RcFB_bb|M0}6Lf$;SBYvrU?IQ!RME5BH*P&)1AMGWhW;4za?i|O&9 z?dB9*d_ZfGET(Vd?CF%T^>UcARSyVy$Vzb;>MdbDfX4wv5GdE4B0e8D9a6D4)Dk(ntlIxQvIwr$pFl`H^MLl1zFkj$A1i3H(^`P;yU%RJkgOsn3X4N7SF0 zVIegth&fPGPj7pp{K57EB>I8*&Z+unuQR_fjg@VuF%vZPhJUIo$r?$=PrZbO2(+;b zr3?b)1(Anp)ssOOCsfvF3Y}uoR>Lcx&%nFY6$%ajeQW(!Oy6qRt@KDkvnShX+N}q) zqc@etj4Kq=H~I3}=%tDekT4RHp3iS6cF{44)#tuh?wz&qnm5ZIUVaSalqK5`uNS@F z`N)CqzFFS%$WUQBN9*I`H*T&INvQ8J0 z()A;b1OYRYNgRn`bG|e51rIr=R6{os%1b;Nq+A3p)!{?Voz*lHOcD`!o?;>mU9saA|Y0Io^6xso^1o0^%J6^q=2% z?$*Eiup_E|f<92W0hbU*5~aHKurq`XoMYmVB!NiL4g^zMxkr%5V-`kA$yhP%JmTye zR7om4Uqo@p5rdRFY|ksWFI_@hNJ>cGbpx=u{}E?o5fNb=5*kW3_JT0dp{Sgump|&< za5W>s7ZlB>4B`BY4o^+BsF16Z4ySzmkn=(P`lHU5t1Jv$F^dylCDMzPN?1(wipQKws-a{_fVNn=DJLZH^xhYp)AYot zmBk0{eatznr#R&^X2*)c8;0h(!sW(h-N55ku|@R?$u&EhMGx1jf8?AuR46gGgT%=7 z6|tD4Lb5cDVyKr=?hb3SxmQMz5RDiySU*m*Ncxn$DwQ#WB! zM8eDMVfJXdo$&GJ%gyO|I6l55X6fchKi#rjKmLTXXQ(hmi{q<7-}w{gzAQ~u67Ycg z0govSq_xFD#$E@`T`HKvp0h@9J8_vI?@z_Y6J)Ux?F{K)t42sn?>^*QHV7ACocKHr zRYFsrcTl*l{mi*s|K^Z$?txGL%(<&)5WdcsOG)B$9;CFBvFM+^T)uel*eh3^PIk^K z8DDL2~=*10>_oxlS;>7GKYwk~Z2ZeTNn{(xm&F+%lyDa?fm6{!= zRVR7V?D4IvcNM zsX{H4qNF6axx@3KFOn&z3iof6#09p5g+9s&7RMxo?5T|FxyhQMADwaFq1Yto1B4{{ z-RGP;Mq(1+0(OMHIZgr+ZPE3+f^df)#l(RNlH#WKH%48C^p(aBkwO~iGeJmUwyE!3Z6N?qZ6{$E$Jmv}9 z*lK9Mc$~Snv>B%v5FvbY;EIuffvfbwUpk+uqL52CLCGDvUXqAJ-}RJp%Sghw3~{?G zAUuM+yFYuLkJ_BQA^%>=q@+oN8*$2qUekt@h#TmyKIp9I{e$gelS#e)F}2S8v)v5z zV@5Q3ddhN5$0{!_PJ1ef{iA&8z55@$#f`oVLU3u1SXMA`5&`GrXS7+eT?))sD zY8ze+L3cl=Y~7aaQ!_SmC9)xf(XAnx3^f|vG@0yxK}cb4x1}7tpX)J|m!5?IB~Pr! z8Kwu@)K9)#9vVy;T3WO~DTzoJB&w66HWyLt7$yRe}H#;mU5z>%{6)!sr8B3xFSc1a%7c`~%1&=^yEj-#c%< zKD?>o=(jgk7R>w7h5F=8l{4#muEWjm%jT7qtiv5``}02gcM<;LzBtzBOf4V2f3N=J zrb_>Ovq0|PGkUlA->gSm{;d9sO_j6e;qO1-Z)M>><73SF7yBxw>IGw!>Ou)z`anl^K3PsEbY_C@~3-jznZQ(4%^Fk-6VR^>sX2T+h z85R+*ux-VoWT=z@Z9oKyxYw4%y$u1w` zcbIr6qcDwG{6{ub?=d1xn88Of8%Y3>wocWe=zSR|EvBlEaiXkZ9lS#|HYTS zXMTb0Tz%~q=+RZ65Mtku%;?mf4A zOVda6R0%!DpvMe7X6W&Q9;Zvsw5E0KDRjFpdsL4Pft~}<;}1Rl(9;-tDqMQ*xYZ2` zs?%u=YL@j-zlI7uA8YlLm`MWd-JK89GC-SH_At!`TJw({rWFZ&+aIQt2z}c$TB2g4 zOeox{5fz$4DBSWetx71|^f0YjDE#nYT8+?G%1XX($&yU%Jd)&q4`8cJ9h7^AA3I}u zR=KzNFrRuVU8>Le)$5|ld$F8)s*Ge{C+aoxsHv^}(dPJ+-PG=FrW?7BEc=ykTbabm9 zp$6(ymQugfKxN=iS4_yARMCsnib)=3*?{`Ze|@OFAxY@G|1d2Bw2AkaBecJgC2fbx zeZm?LYQ4ZL;eDv%BufborH-krAbhYum%{%RGr?>$rYW7vOEVkv$n~Pr4r9zCJa#Xl z`#8sK*tq>)Ec97aRQUD{R)^ z!zQbl#V$8%(p0(6FdMLn7>M3%l=NJtIntR=aC5?0bnxt~ui^4;=6VuL_(;ilTYEy@ z6S9=$dP%%m47Kf5T^#XDHX2OK(A$%Fb!cEVIwZ5;%lfR7%%%|N2hCuT`~3D=Pg> z9pthjdaG^G=+U6&$7RP%70vcoY&QB3(QI?B zhuU<V7gi*UL*$25zeaGH7DCyO}jQ^D+`KhLpGK7i~5B$ zgvY?nQsUJ1Yk6$+Ng_r#tmStBVXc1;2y084ghf5oM2t8K@7TX7c=Em2RG4rf3RD}P zvx1Icy%0~ zlbEkavpy0t`B25A?E|);OLNkRt?Lp5uFXjZE9=@@lQ0{s zdS-BWXeslI>EB81o!KBYWCokovz%m;A(PcNNM`*ae@w_wIkhOg^J6(NlQf;ORWT=I zx7uD~_hOopdMv0LBZQT8>)-e;yytjpF!ak^QRJ*IGM}fLlAl=Hr}KOT(*`3jE-R5H zvSUwoBEPUZPrpX4v&`;UmyW+;Int+FE%BY+HI)$=4dP4s6AdN$8eP3FC; z)+$jwWNk>tyqMGz*NQ0DSVs1iu403oXQE-pl>J>vav9{LsWFt$owjl4b9BX^;cSXKU_U{s- zbH=h>)*$i@y9|-Hn0N0MSnxXcZtuNX776asM(50tMOLxG-tEZ>RsoShb`2s+R4pMo z=P_9%pY`a|p5(B!J}t;1wz^L%vqer63sqf>bWS~CR%;^)iAJ@i0-R z*;h*M<9ErSC+y3iWZTNR^&2}v%UO-OORUkWQu&gNR*?|ocFH+Q%1HJ!gocIpCSj59 z!Asa4)jRBGpDxes zWBvE3S$!2k$TLl}PWG`ii`Ce}nPp&z%Y#i?W2Rc&T4sx5i37vP zL1r7+3-%lXTOdu{7&wFUU^Q8-8q0|(9(s`{TzVa;Z1tcXL5j;NKQS9I$l7Ab5uWaLV(1XOPsj-O)H(7|=Cl zw&$NAk*wnR79nBsrb8aT_|wqyNMm$2+0Zk~%2y5!CS)Zm8*J`S zZf1%^WJ;!ob_DW`xS0 z#HZ#?bqWtDMCUnqGb0P?4l1;`FU&@4W)y`7@K_bVEW_F$^9&j`lf2C;hRq;htmW_z zLcUR*{Iwdu*VLq~==r($x4%P|LbV*LYamh?aZ)onyW zTAd^!Z|EYh8-1uD)@PITCcQauoTTQF-|eRU=*iMov2vlO#teBaH0OCC1tTTMjk3Kc z3?=)H)R|4D2WBrXdNt5=PdurZ4Re&oSIGfmi&#Tb0IN-H#4Ho^|K-{2ExA&5E2E^_ z66f-g@b<$EbVU6RPq{m)?f=11S=x~O_K>FncQ?>HmHlK-MJ6|ZrwlejC({;cH%Ycm zOZyX-qmb9kdDt{4qvj(!$Y&(hNH0S+Mj#BstJ~QBQTIzBY{?SC)uR6QVOSliB{VF& z!{df3IC;4jHDjYyzGO3No*2~ftZcx+IQ&>bvm?=u50wswMef8h zbyx~(eGW11p^mIX)Hz^6MCoBGO|0}wm2eX)gyu!Z9Jzn~T?{awg8>~3=wLwie>9+f zQb>L_HHe*lsR?(?CVG}JLZ4;EjAuCpEXZ==X&&gm^L@D&(z~I_YBxPEdT4O(s3_IxTg|MQETSW}{d}Wt|tZBi?`)2BK~w zgu?-N&LAln$(dy;&j}};^x?hnYzYCeGmz87zr#YeN^ES3WS+0Tm%P-=q!UV750p9? zx?o0cg%Xpbto)};=07`2c)~F%y>`|nr$p3`aXsh3vnH(B22Ho^8TnwuB%V*R+*@ip zt!$@F2xv{%`W^E^K1BX9=i=bQrNr?pdJT_&CVE>Ze?`cLg+4>fnYVQ1x#5sGjruN+ zIm3)^=#g-VE_@NmX04LVEGfY|h`BcPMqigDtGu8l;}j#rBU!90&vnAdLVNNbc?CB3 zDQVxs>{@|s@?!POf3LvT8_TP$vikq2ERMO2>S#y*qtG_`qpL*OC1n4h(BhiPE3jPm zx!)C9s-Lm~D++5Aq5&u9HnsB6Ulm$zpu7Uha@oJIp(Fe-={zJ|Jg&`fR3r{tB9TF` z;4lLg9NE!EHJeChbWT6WAcI7Rg+$@2ndX$v8U6&G?S#(R`3XEnRwcIYPhd(;oipJH zJnK=NGvx_9+hLtE^9ekxlFl4AUY2_=q(eIAYB#1k&sw2#Zg>LEwqNJm^#q<{FCK!P zz?1B{Ea&+rFs-|F&TCKL*~)d!TTkFQc8Z6o#}AWKh9P{2msPhJu)GFt`~*_ynHyLkwZo6PUJ*7{e#<93Nl|pTLve#}Gb&XDz`HKElh=wnDb` z7{f=H8qcu~WB3G~^tR4<{s}zmn;60;@N67INWwxNJDnVB+?EX9K8iG9dp`}Bs%w=m zWp6NGyV4g)Erev3BH77vwf7@))w&|t6N}*ny@ZutUiG!@jM=rWNz2S$f7h}lO(dLz zyRX;$UmHm<+xMwCD|;gnfk+UM|Ca<|%hhd+eNt3r>o(>*fhR52ZG7w$$r6j24LisG z_M!X^#kLRzpTKi0fWas5q}O2Z2|VlkI@gm8n(zJUT=DvAI&_ zS!X^rSJu>KiT4OEJvLV=24_4rS1JZyd~B{%3{HD&u9SJUDRsFr%Pr$822&oJD;0yu zkIj{e!AXzJm5RZMkIj{Wmt}K|$3*+@2vQ6tJ~me>2FE=%S1Ja_JT_O#JjW>aT$$xs z?-YY0ADb%`gCicBD;0yo9-Au_gF_yhD;0ZLgE59r3fV!A&6SG50gug@V{@fquct0jB+Ey0rDCv0-Go)=>*}kycoS9v!JWOk2X~r87t|;k}Z1eIouX$QxZ_dY=*Jf)Bo~+EKSH&h1 z4?EZicO&O;aH@jLGP^e-Buv@d z&&-ZkO0F(8+}1^$B5ch_vh$i^P{D#`2GZ0D z)@^3z5#Xx>XR+F*ZMXrog$9kAG`GOA%CYHD)o4cN@8#@k{#jn1omXx zW{nrR@d9ly^O=2$o-~zTp1p-qXTS1-x$hHT)^^_D`1mk97*XyJdu{7rp}}m(?ZoB1 zw{5M8JF9q&f?dt*qPC|ibIj}7GyiF`ZV_d=GASk_0X^`?g+2LH4 zcX5#-)-TIGPiX13nCV|VOLLE~ve!as+zEE))jcXok2@hEN$IHVSEVC{-ppX5;xYPB z45vtfE-tu}*yW?Y+}MY4Tt9&oo?%eky>ke&F4!#GufzKTRVF z{4G&{Gld1^d{0l#{y6stq0Z^$$MPl+p>)%JRcYL7tY1MyU*#ls0baG^4QPpaLhP8Q zc4T2p3RLU$uM567LzUl>dSL!$$Wd}ZksG;??J5{d*TCmX?#q3`OUZK2rNK0?atXJ{ zPkZZK@08`qP`QLz3wOAUkKeNWb*TK-vTQeVV(1C9R4Q0!6E2fnBR^)7(vL8#_y#v)O{xU1{8^@?EP#2|c#H z{L-51M5|tYj1Q*1hPRav!o-&s=P<9fdBW(2tvgC;m z6v^0)Xfs5nl@6v(Q~BP~#TadUd5=w#iLc>fwbeTnqaFuX+2(kfcZl8D{JEI?XSTF4 zcp#3m{s<#ddC?|e3JL6J z6f;K-z>{j8JI4~sUea1zURCxMnmCK4eH`Nzrbxtp!M1%|7bs=rT}hzvD_$cXtN1<~ zD8{c=?QTttU$eHmU!=xw%8PgJrkZY+uy?F>U%qSaAL#pUi15%paWx27^(zOdR%xE| zhGN`^)9q-TlEx&QZ4!|fYjJ9Y6mNV(9iJbW_kqB`${);zdRU9_xrp30yqZ;l_XlP@ z5T{vYg$KIA`Rv$%s0L0GKH)GZv%+awRS_r{K^0ScotN!$o~rytwQ!xSuBaQ+Up;w?N5&#(%~>aK%tkq^%lr#qfY_BH6$rbz6(qbD^qVt$81{jcNodbL44lKx&q zA|9JYvO$Ntm~V?n+>;;@tD^Nn2wQ!43LT|m_YNILdMW0O@mR5lnq5;Ar^H3uVT9$yw^yfpw^e5%JTMAaC?}S;Ju{Xzl!qjD zsM>|mZ1vezkI=@jGiQ4%m9Sy(`|R~FMQ5t~lFooPDS6@`OI`prsP;C`rM&I=R98|gFTSvnC_Xd3R381M zjzmadZQrA6PiJBeOK}#BGj=b8NquDNlZdq>IN+)<06K{&FYdMG-AHl*EgS_(qr_M6&-70;lG6RGgYWj}?DCoZil6 z)!zh~jy`YC6E5$%nE8AYYKUKiLq+!6*NxfWZ=Uj6st&{JY}z*?5DXRHgwiQC)N5Zq z5);IvRE^ALL6_TmmD#blu>8KSv4qPJqT~2-JB!)C2~|0-vb~pIZ}=tNt9s<8E42KD zEcV;shPg275N1ufFx3&SpemYYQD9yLtNyl`N!D75qbgaL1z&mI>zXQXkY!$Z!RuO# zJZ^ah*`+ILJZ&zftTS$; zxgHL^ah#I8G__UoT0?jYT!i;?D_G6<-6@K;SDR?T!UkQfQO;@4`sf(v1n?Jy*=%Fc^0dU+dv3OVh5qVaCmgEcSXUozW|i zWnAw`<4&`(>%pdYT@2cZ_MT;zt_Rb~N_OY^WZ#RcL}n71N*Rc}l`QRtpG=->bQ_H; zvNy!9C{OyayN()Hvvof`2+n;|33^9rOfGa8;@-nixuo8|!>qpqvGYH_6`WhFh}p(G zR;=*mq^7sg==jP+hDLwT@cg|nyU6Bl5;)M^uhC8}O}0*G5u# z?ggn_@Ru3`!`hZ6hDGg36mnsqrAisTC(&CFvLh=;>LT;-IoYq98;XI9G9-kxH6-9s zVs0(U%^iLLzZzXiW>0sF^b#`tm@Vuf_UuD9n?_H*4+uEx#g_* zc2B{(blaV{?Jq1%rR?TkZp3oOowfhdXvSTtGa8P-Ye(3;``xK?AHUI@1hK07#-4He z&4!$N+$!hJv&yW9-y=RJRMMoa!bKBrWaQLoJ)qJKF~0}5sq+N$u3bngkCzwLKCkSA z;tXT)Vx0KX_*482Aw5ImPs#I0sE~JP(s#*c^uEb?dZRXv_!vqKo5gs<8OJ8)V0W+t zFD*Q~j^%B2WCG>~FVvCYm_58&N8G0m_tcZuwYh6A)RR#pF#f#ysVUV(9J`+#f$)>( zJLvZeWB|?klJ_%`eZ7?7ABzMjCEuu&bfrd|Bg8AQ2A&<4E;2qbyEHGc)6|QIH4hpi z*5t_i@!65b$8)O(Y1FChaRk?wiGmRpdR!^Pzf82_4`L9w#GIcqHZ1%&PPe|qV=NAM zojGH9fd^?Pf(_5&W9@RbuKb1{^B~IRs?<4_`+1UfqJ2nGW3wajV6##x|G|mRkc~#s zF1Z~o^3k^V#7^jJ+dN5#*f?OR7|S<#5^PH@^Ojy@2(sl( zByDf+bM`mDeq&&@y}*m$!7T4vKByl2J>Yx3tseP-R$jNS_9hp+WCuqWUf>!2q<4F? zJUc#jjM-z?KVjj!?uA7jyBF5-+C8+*)9mFV*)gwmTTYG%(?^UAEA<+~tNlr2sMxzA z)Z{&o)ho=VSLX6Y$mIyR{$qK|#w4D`|C?ttCY$9?fhu#y$%!;)K$)FXVDvJjRX*ynDQq}5z>_dYH9&VhscxE$l&_j8DJC1h? zCNmnHV;(toV**0NvB7qG0a{UT;vU}{Oa^q!HHowu)>eNHFDL&&9&3Ov?C;vIThLMi zKBYPKx7}Z?=9QJoiqQ8j-nlvXn8pz?O=oyXO6*n|?1>gKh0-`5k&CI*hu;V#&E)x0 z>6F)-4;o?|@-`+SCrW~j!+}Kc#R*=3QtU3|ck)VS9y5(n!bpslNnOJa@(p2R7Ii+w z1Hwsbdcl{+hNDR%19(+93FN*Jq`B;|xZJ_Xfd=oe&|MGEsRyp(C1tiXA<$wj`q)Ny@Csi!kH!LWPwd$&0~ia!ed6 zsIG3wz>dLinLYcp;-0O@i=vO2t;jQ8i?n?Q-wW8t1sRUr)Y@&hXKMtkvn?OmntX4n zYZLF$hG3K2iZ5s*I-Jh8wIQRuB>Pgt#Zpr{?%kHWFRGQbB~LfT{LGFtjyL0J2y3on zj}*ZW-)v7i(vCKi9cff|bn%0E4}7pmm$b8AYEK5^JffSuWe2j9HZXRPpKcWC&fL)n zx!2fxnP}x@}J{ry%0XR-FR^?jJP3=SM(y|eB=5m zqZ1#mIP&-a-qMP>SvimowZbFvEYBUP9Jj?6D&tcygqK)Ju7|wS899u%?M;?=$Xh6n zF}$KTX{Lg4_Uhhb4pq@udtxjZs}r>_+md)iU$RC4&gu3s{fL3OSSbU@GL6OW3?Scm z$ccH+R9-!hgtU=C>C|M?ZEszC0P>$FcIkOirzscJSX(aVHx z^MifLnZW3^rP)borYh3+w)R}Uc}S&9!Q zh|f0g%%`pKBUPb^@_|EcJv?KX#Gee^Q|NssnGN1>DZb!99hT><)^iL~>%D-jsJg}N zJJ}@*IV3>6B6EByWN4PEFc}d{)%zrIwk-@pn5YV0RA`D(hQ=tH5yt>k86H^iH&Qjt zAE-J~9+EfK)8zZA{8ae%AG5&|+eM^j?9gD)Q=8dS?0&;YDGhXPP<-sT8nZ^^)42Cy z)`~T`@&kT;1ZfcxhV=c9y{kN9%gr9KwRSv&u>5=}rdZ^Zf^9q~0hu6o2Tx4ULco}1 zw5x7^-xG&w|Q{yY4}7}B$QZm}KKuz2$r4s{;+>zJVm zU;FNQz^mnF*uPc!8qrrd11NH9dD2)CO!HUUZDYw~9nF20UrQw2X`>Qu8IMUEQNnMG zCw*w%dfs*d=}5bl*pnuZ)`Z5D@WP3tqsjS+($DxxeqtioPxC*v=OmF|^)!Ds&rBsf z1M|y;x0v|z6o+Vv?XKFCUHnWcnd19jP2a;~r;tOsM*A3hZ>E_COeHvENE3fvB#wMg z>Y1U4C|=IB+Y_b|BN5Vk=PSg_Gp3Qq|0P~FjhNiTtET^Nai15-A37SbkL%On6=xc^ zrjt>+h>scXU7s}Nwshjn9qCBz5g&8UndJSZ&NLiKiRUsuT`86#Ph$h6rJ{lFy=iF9 zt1?J^{`*W4N#5WA8SwqseY{%+mdso`znMWM(=Pk?(3i7Dt%EUdL#Wa^+Z{eg?@s5B8&7QE4Zf(F`B!d_po6(1G~UR*3voqxMdOP7?rzE1i$hzoApMr z-e5t}2zBqZJTc_y3m4iJVMRt;%TQM|;o2h1Kw$61h=kqyc)!J@eUs(l;Z4M*JVp)h zgeh0QzK<6zMoUxC;>DzoZ$t_H^zB@-WYjDCk^6b)Y;s!*+ZH?_2W~`z({i93#y91V zE@ARgnoGL+=k7zAw5ZXdwq(tIUYJYL zF(s6^w6=Lz#qRywFApoPb3eD{k-qR@K^|G`FHg9@hehKKa7#YSjXc1U^07##9^g6o z%B*nYqq7_LbDsjzh7|H11=tdz7i9$ypL2lM6p*gQTs!`B@D8tPMq2WOC1i2%mIG+6 zA(?swi$9-{Z8gAlRCeI*1N_z!Y`P5xdB3ID$TTV8*Oronu5L(;T=J<1G6P(<;0=sd z+(EwW4birPyy^`YM;m<#$!M~iPb)-7piR39$zW4lg&GFfDoiCo_Lj>qi$oj^T~2yF zE-*`$6TI=U^Pww97qMZ$pMGTW!W9TUWXfYJ$d^r)DUo0uAR2a+8gD5bL0;HZg#6Ix z5WiQ1hG9G`D`h7QT8aFMcKfY@`@y!Z0vkR~S*7@R18`s}d?W=Y`+3oa#{%-ztH@kY ze+*ONv}i4fMfS&ab#9<&;G&OV;88cojK$2YA;FeABFttL_EubQ)5 zS(W>&5!=y&+`2|>)EYD@;t=1k29sgrA%1BM*&`+cjP{X(Me@|O@*)^aqtfp+hxm=P z*d)Ve2^{@*9^&gb)(6qxViILQJ~a67tU_$-w-qZvbfZ}IvAy_B@;&u+<|<2CWsb65 z9M9&3>qMZQvF}}nHP8@`zg8H^hqNdD{GE46vFqWjM+v&p)YW$T)Z-v_pzw(5wSP=4l<$DFr{gq!9IQ}wt$D|Vn?OOH&)uYTXkBz zS?+s=tgD5>%e|kaw#!fUn#{CDs7%dijp{1e!W5p%X+g5nKa={@HaB@XMDkGBLd{_sYP5VJ*cNtdL)Dtg-z8ufe+Vlc&PNo57Vti%`iqr z85mhlsH7=sVuoQksAUG8W99iA@6WfLLZwd1jS>Si^XCw)q~^Qccr z#6$EBf=Snp)1>w|gbb<(Ph4CbJ{cuj&6JaO=HHPCP~8y|h*8%>;wYVA%P z!cSZ$&nmUo4B_5CkSzSQV&M;BCl_bm_5*pKqsQap-nej;B}Bt`qSUr2Yn zcE4i3@hb_IZ#-*oR!ejHi?sYPH4NZ>e~|WG=j?OgyS%)E_CbG;w<*^68@I^YWVt=( zPZFX!A#O1C7!8tx4ftD-0dTBI(tTJd*)iZOZ_i+U;x>8S)z_fENQBzj!MxvJq)St^ z<6>+?KcUJ)8Iw7KdGTL3gOvr=4CXifBCr2n#)lW&!C8dj!ofV?Z!$~)xkGry-(;i! zvfI!6?dEpRyEtx;>uemt*WJ}P&O!D|cS#4Ghx`EPIn?g+fDA{z*=7;#3J-P)kb=t14Pj8b^ zE^i!l>(wEp0nTHJQsZ&#@zj4E1+P2gJePY|<(HNe7Z@p?o^%ZV<_R<4 zWK>?=rhJdxsxf9O+FNhn_q?PjjiUbF@~WmZl&<}r-)c(JY327kC5Wz#bgIhZzeRm* zV{%0?9Ct<07yq5z(u}SmQRBWh>u}EFW?1}VD~}qsZ^5))iWd^q!HQv@=CWaX=jIeg z7O_4LlKyexwDYKDP}#eB>8+x{1hdh+wnnLYJ)?VBK5(65GjN7Cdb5CQwP zI0?$b%K-h|7_iNrC;sLIk@T+6l+%LN;u}>Z(H@sSQ@9jgBa z)w8qDnH%WuhP6C)H>~xByXu(z$tzmYaWwuP9?%NsgO#=1r!``*veukS;W31j^1?!s zf55G+>15xH9h4rGcC{ni@OaaY?`loE`XZalJ&iXi^uA{Mz1DPzLEX;aEh@e;5`Rq~ zYjrTiUGWplI0#fNt*)ctWt~e_TB*_}$}}Glc~YrLORA$eHmI~o$}EB{$lCQC=yY9} zJO{5&Q6;d)#g0(kQaD^RUeuX3dT0|Y3s~JYDA;|uc3E{5?Uy>!mxzbDZ?g~TO8v!Z z#8YBuD-RfExv4MOSI1B)Q;WON~Ld4lf}8;36Z&1Yyknzx&uc!uJGgFRf|gZ44SU5MEOA*1mkAKHU< zY9b8X(F~bA^ncr-10P`Q=j(dV7eda(Toms-jQ@uEJ241F@lO^Y*8Yy!D`Ksnf(JZH zk2EMa#5}E%eHN-N?xVBcc$T);wmou_j(=efx6)#-5bx)a7}Os@+42z_%fIbU!~9D| zg-XGym?ug-uIjJ3{{YOKOQU%F06L4d9nJR-pn>EJ_Zmu<@`(d!eNx6>8c3(op=0>P zfpovGG&WRfhpK_Nyl_cl`TK+D02jRlNJA9*gF#4q;J1Dr6B^}!=V>V&G>-rAJZ;_D zF)mbU2)WNtB3($+)8|e~o1S7xOHH4eIn5&7bn$uoVA|6+7r6frdX`R1hVamGsnEp5rZ25v~MW({NdFZNRk`*8*H6i5AHl`oy@L zNaV{$(R}{*2wIQwiFRXxSX9m=@zx`0Ak7%dO=5Vy8%z7}=A&pUopgK>A25mrwk|7$ zfm!q8XU%+RMB4P^)VNu*X3ny_W{HZjyxwhw@-IXR1I2TMf#vkW$vk*8(yRl#4=0C8 zN#L!*6^2X0@8Z6>jQIq}8f~&HUx@oq?~g1}A}}Vs-0hGo7}}6NNan#~X!oq*w=F_i(&BLpu%LCr=fRG77U|ks7O4#7CX^>o9($$E zM|&aXj^_ajTBcgJOs!j@)~!L)TEdoSR@n-R1f1m}*gz1(GE^==*)|UY0)uCAVH~&` zhQr+|yJM~HO||YF)N!xtxx^w}hOV2q`YpFej-?hU=?&;y;tvBL-oa&A1}B1OErg?d zlISQte;CD*DoJBfL#0V5<8TG>_b?augkiK1j~+)o>6ujCeH@LXou}~0<7ihy!W7I- zK5RIh&Cd^~LwU(KI*ksR%1tjosAeVa_yP^}^+N;2Pp@7Wq$w}ZrCGzKg-ZQFi=vYB zln}sA8yPVw?syEaplw5)o6sjlssg1Lsaq&ZaB0yjM#UY^0~WL!YF#l>sOuq#p}LjJ z=O)th;4b*rO2)!sKU`+nwDKR3;R4>~bUclU(qu-0W>RJJD8;qlkw`2n+%UIIiBfG&}?M7B`%OdoO;ti2C#YOrjz5ua~(0WZK&Wf z$@DGiH`9K5GF?c-&D<2apG0nO)Qv{$5riXf^$DR{`4JQj2cI$o4ti!bzc_`)i!yjB z4K$58Z;`4#gM1b5GZkxuXC~h>l?F#F$V9(U&tw{rIVpLDWitMgIcrjKYIl>g6g&|@ zBY4$x+Pz^$=B)NF%}i0!>BdanXBu7V+i^~)6bl(|gqTRL9p~^X)9AR!V$j{A@D|#s zMbf-em?bAg+xdj)bO809%ePE_xQ%D0(^0_-@bEbdI?o}+d!g)ZQ9O=Ysd_H&^CFGR zvVMuw^%WxT5@sMSA6z$pGrvau5p<{{K)(2V z2KA+B^Y{-l=y2Z(@LPf}LJqTCx;BpwPNM_DN-`@o_a3N=jkue(9uD! z;;0Awt1v2N^@iW;2Dk7}q{H9fXwcm0DYxNNeCHJV2t69~Yrk3~zuzr<;7r=gTm-fwBq80*E}tUw(=D*K@^Yzt{MoblTOF`C6#d z0y4l4($V}~ukoHUY3qPnplcSumaX_K2*p1eH;~2-XoHXZmgyFrPLz+)Z;teur$NCk}*B14KqrCnr!`xZG*9)nH z*A>@agp?oueFio2nhY8qya9BvQOd(5b~rueq^D1MDK(`h?h9V$9bcxc18+b^%#Ytu zHb7a6Qh1Imrzb&| z_-XSk$;98EMO*uh$x_DjWt5`*v$Ob>Sv20a5Lo06jb5C^yUxaQ`n4>cKAXmyf^4Bu z7x0JK_@UXfk0A~CX~l;DnKah)DR2zw#EF1Ikb=er;C*oAZ%$-n9+v!oJ$9U-T<#3=-(R< zGbr7$Xw8kqe9K(gr$O6iLZq8*(Vli8f_8T1E(FoN(k|dgw@SNl@2+GiaDO-c z8@LyHWlf*J?Pbgl&8Pm68htTnVrpwR2lo-UqGTGsJD&#XqMr@npA4eyTpkiV5TjPM zC)3LPHZD;Xu24$cXUPOX ze9|?hFhr`s)lHQtE~=9)23_z)De7zYTA896cIUa<8B^$~RBqWy-c0bE*QihPKk}7L zLMhyV7yBC%ld`8?85h6GnV(D7I3l-)AB1*+;AY3F?bT(=eW}<;QyshXITF z8V&~*5e7X+7GgV#GB^tl1t{aQ=-jM-V5b7MFX0Nt*Ti>#o1zrIdMJ&!{8cQW^ucut zvb%7FYIMlnN4@&MH5j2Vm99f+#ub9A@Xfj)+jRoR-oYBP zUKWt}N7HB!)i2|(+GwD@?Ya<2tm~uruYh#zGHzN#LrsolinqLz>|GbppNQ9j6`}G3 zoXbO2&>;TrWwf4)_KKi2HD#pDnQiH5iC(aRFU+PrJ8D&4LvKWEY4`~4Me^40Ke!j8 zjC#Lj(|DKKSB2VMS(?~CXZ7b;DDD(X23+ zz#tIBIBFFd0xJ!$2j|j0B=G#IP+7wdD23o8|6GnUAyN@8O>VE-y+->#mK|J59<5OI7^Nkk@k#l#6VJ$}_4(?2YVqx{TG@5J ziHAgy&3mlomHD)_=K|210Q2qp4Q<4(5lu`V8~ruMS}x1xg5~N z6rd>KHtGC&-hd&S9|Mj6#zsOC8Z(a>i%&Y(qlei=Oxv(p`mr9#6guqJlt z8eZkXJpE0a%!Zfp^>5e{Q&=%wpZ}uMTgn#RI7z$(O z4i9Rl>GBP4V@7`=lT5&XzniFVIxdh`1FlX+Lo`}NPCe% z{M<&`p4d3PG;WXM<_@K_4O%t66ufo(ol;1y<4*ACvA+DREi}}SfHA(wn|(-I&|7_Z z)M1#-_>g)U^!*;x_TcaBq>YVL5V7>*54O^d22UJfB=U0~!tx33wFyNg@4X2|PVkpD zp;cq}d!p#aFKmLX0)AhJRPipG=`;A}kzU>m@ATliH`9TrN4C%r#+2a?YH?(BWiLAa z@)p#w@Ha)#j~`Zwe~TiKKed&1qP7ug3%62FxN|;eq(%sa@v5ySmZptddl?gQG? zt24&8b3IAA#qV#WF^1@o4{A5?oyU>-25+RkUfsan0QNfm(l#_LfN$PLdl>>oKd24o zJGauN^@Tt`Bw#;~cJY_DVZH9Koi@cci_dR|Gc)c7#ue9n>V=N)$zW zn4QK@{p)XIvdCpVXCG#t=UQI6k49oHe7X;^m-(Nd8a#_1)b8bng?D=FrvWfKazDBo&X?>* zL#=%Ge)O+^U*AvrB4*khpaW?M)}#Y?^HOmDb9UGI2em1D{0Z8E*BqeT(6v?-=;$>* zr-IG|x?Vv?7;;J<)ZSDAdh9{k)X@3E2es$L%n0Bs57Nel^T5>#|0MWi9>0E&_VTXY zjH!jiREljdlpo$qoAQB&XfsUv>4(tgAinPqEFI&9Pv{FUIO!8u$~gF-wu*N+fPnh! z6WWY=e!_qKgbpAM{@6JMr5BTIS%jyhBQ_ulmQTPJq6?<-tGvd-rlpWx&G^i)ZcI(tZ@F0U?o*O zsEt)(_2v=kY0Lq3NJ{p3>L_~eb52ZXxy=VQ(Wguz@~|0fxOeiX6lj9m5D#@a@OorOy2CWAIrL@9(5T z4Bc)$s14x5ju;wy)nH+Yu7f^U%v;KE(M2>Z8qmW3cG7`{;@b~u)0AxBbCK$KQYDh# zwMU3HL5%*(CAqE=Q(yt#SP9Sh{G)izik@|g6ne>V`kXQ7KBRSg$8JQ>*u98|CC6zP zrp@-_h`1d7=W&{hSFmGGAdr!tPoOV1c>R+I;G4Y5N!s2R) zk)$gA-WhqCojil#^7iAm&)_?c9z5hz3}O=R{V7t@I=|Z5mhw38qEF$u4Zul!(dU?q z+df68TmwEv`GgZRg8%DN8iF;6oP}FX@cw7f#dUnyS>$P-z}nhkKB*MT#aCxByV9E0 z)?%gGEK=@g)Iv7#cAudoWqjmkbcpeCOW5>K{C(~-M94ON|1&5X#CuoK7P>nfYx%!E zpv~%wVLBn6vpUt*-s10_q@mnih1pleFF+1WxL<`HNL^}ct^B1!v?U*Z4&zqC7o9@` zyYZ9fptBpV|2gezsP0)?+l~LS1xutju-er@l4|(tpTiF=`8%J}=cuQZfB!j-&V2gt z;4f&TpS@SDJwfLp5yj;dIbuLOo)&wfo?PmH^u z7?(RuskH49jv7sP{b4U-zd%~z|#!m z`RH$GF7+PGuY5y;eT(50Y**!8iD$op(Y(QB4D!X%JW7;hqxoP_9vRKkMd>|;FBj$d z(R_y}Z=lgAeI-1rVfQENNyerd`X5}TQNGcji^pK$wLd|(jNv`M#iLR0F+3e*RuaBQ z(MH#dhO`3~ZWQu8frq;Brvux7k)UM$YTyhv{wKiO-0)Ap6>hi@_Tra;agZR_w|ZdI z&bSH8fWQqmycYP58$Jx|Ij*k3H-T4=;S;VP{My2i%8yFT5Qp>Jum!ll4Tk{>$7}MD z!0X*`E8sFW+!pwV8*UGL(G7R>#7E#a+z4GDAVx$p&<)tz4L<{Hal<`<#Yk!Ly@7kX z;aK3Iz|TQIjLb|GYx1)^vxFz=6wHA@jT@c^tbKeW6nvm!O+hKJ7J_IacL&JxGMJQJ>a>wX{e9nC^n_02YCwP2D9|@t}>F zS&bP|HjX#=j`kd$fN!L<88T8l_$Ml_ql6o6z%7AeKo)o_Z~(9-e-U_t8zu<-*cbTv z?`V3{d(cbOdOJWrGsprYeuTI9o<=;=4c)_If~@#E2-JO=Mx<-N-cTS;KZM~1^`Q89 z3y}B`p8q{^%&tV<;3}O!1IF?6tH=>&&=O2Zxk58M`BfzH^`KMJcz#Hf*An>^QQl7E z4@7Al&x5a_{5+BO6lKtOJ^`g~=kay9rWglB(7zn?EYV=)N2T{b9|WAN+B>acjei!n z%uW6ru=uJ?U$<%aOW@0H_-kPCm7B)@wgIN#JvTx%1cZk)fvdpUXK=z}^^wg5 z*7!cav2NH5EQVg=`vZ&540@vJdD6klFO+f^(h$RiT1QxNQ z;Woe`wlo|CJP|k+1kr)9D%SXkSs;jD(+CrRce&xoz!h#d6w8R{$rt;Z?xm+eNKGYkz_-)_hQ=f5!eGPQn8wnp2zOuGV0G$>-WEm zIL6Etn_r=C4Y0@r8vYJg%zWfS!OxOj{}(dnP>W5(rvXqvu-!QgEOL=WHE2fiECbdIcDs(5=f-~$m8b-1C-EDhU%Ghr}XZP4YPuoj`m8Xo#HMg_Q~;Af$Shd{VC z#3Jccm&V*w;--z-fcd~8t~3J&fJNA7_&%^0Rt@+1MafMVZMg$BVC~CW(V@e@+84L@ zD{v~&UzJ=jUab%dECT&G73Tqqz@4Px6TsRxwW7Z1x4Lg@1s(*fePb)|a^R8)JnAQW z+I!=c7LNw$GqmvExA?-JuzaO$=R1C)fm#26<}<fKTdctA*aw+2}B zxJ2dK{!|QN$(8w&ZYu^g+~+TBb>IQaFPXp5&7QuM^n0xngp9Eku*Hu^CxDCG@M+-o z6M584+Pc-88b#IuNikaw0t?yBYGeAN@$J#u`h4e2+BoYLsva9BgvF0Ye*s%2)s0>V z_Wt7AXyr$waNrYexCL+zH|IqIi*Kzp`7Xd#=+m|hNx;!{`m>}rgn(OxBH)D(5U*{- z=pFzTA8l(29l&GU_&)=S54tse4e*QL`+*?pH-#ecfw#uD0Pg}{P9_qv%|H;um*JYg zP~dns1Fr##FU2*!O~`{UXCD~Y3M{@N*Z5_?o51%5K{VhSV0RB)0Z!CBmIZGGZVxOxq~VUh!Xp~)0xX6AKiHQj{{PVKGtMYI z16=p}y|(HP#Y0;D_5F|HLd2>(VG@9ahcx^Sun6kQYRqT4$7&}} zlC-;u%O|S}d%871j|n&dxGp6arAcmle7{$l;)aF1IJ!UM78Civt0!5YUHotY031Ep zqV!)7mVuC%41)Y4QW0>=sdbnEyEkAhaNY0s+UJpSguxR!r9(%Ma)g1lss}zm$`Sf} zRGfp9BN~*o4q8N-XmLkrz!_D+n{Ea~kM;p~n`TjM5~<>m27TftFFY~>Lnh>dRD(y{ z_(I=x;DqTGG5+F5q#Gag%-^4jlid||*33BbL6W04SC zzu#*EWvtp46`ln_{E>$8Ba#(Z{Bec6OF)B;saWG52Nr*fVFf`Pd9`e$V2zLe->H-^ zx$f{}BycRS9Hgj`1?tOMDcu4jenh$i+}X__^+yMj>l)AwIIEuZWYRb9l(f5n4{7a;OMzHWds&3 zPe2Y9SoslYG;lTKn}8tX7X$wdZ1{g%-4A?M(;L9?`~9}Em=udi<+}`F5r!y)5Q<6& zVF+OeLsV`Ug^+|Kgb<3M2tybqLkLM2q7WLPAF{_-VVz?S9id&OVx$A z!g!0Ag0ZHc6P8c@XoW5~pB}4oxX5@L+}(IP+{<_e+~2qq4>OK;p|>3O!TBcs5|+cX7sq+>YGW-0GO2QOKyDxZZj(t4vuUnFC*)_E zKMf}F#ceZDHCtSkl0jvc{W9q1F;it+r@g1SBlrVH?m0lIJ}LCUyavr*e;RlpB%>>w@M3W zFKMy}%ZJN4BZ=SOoP_aBSUv-`(8W8DC{CA5REXs>VA5f!f4H;82jcd8UaY&^e@G8U zQy`yo(+W>GYlWxqLgM+Z!LOY)z5>f9t;+1%{iC=~nn)m})KFFr^AHwTRd@;_u+{Zt{eX*>cB@=x@!6cLL87{jb zmqaDL95)z$g=^06b7I4;JSZLG^Ebw|#_e(YaX!8oE{k(+{j6Yf3W~1s30vY`Ro0mim-He zCYCwo97o?!ASaeluEHL?L0V1}CE2t?zhRj)$tsO!(x{zD;V)-xA9PB-<~0u`>nofo!dCsIyi$9LpA| z2jU7RzE>t1g#FUkG~l0f7wO+A&n)DgkqzoeQgU9vG9vO<*QB6lM`kJoIp@2u%!xAR zMOZ$Lukrt388NMY`sOWH@HUneXuQW3E!)2XGYL8WyA`}efnC9$*sh?QO_52q)a6gX zvd?>E(hXRQ<+J^RT)fSe+-5VU8l3mTGAY%gaPB5fo!wmnPf#GUQX5!-WfE$Ivv`yt zN5uly;5;n*JlSQOXs+p!N#?|1#N|wPwAm$cUbqxDFe2%ai7v-|Vsr5rOF;>ryH6J$ z5MaBHuf~4i#M3pCT>Z2Idu+{_lKMOVO*(L`$xm+U@tRw6t_g1Iaco!cgsC8}3%=pZ zC>08*B9rDR6PE^;VEJl^bjd`YVtzxa*~_qP{|i%J+CQW%&)=j0eMr<`5@ZFfN?JD1 z2K%M4sjac(m*RTUfn9K~J9DlIZ?wVkEeGk6iS{Vr{3G9)pas21knclK_r~(w3hMoE z(cRt$;DU3~uTqf{Q3YPlE@)2$@tt^>$)Aqp`xnwB6WtS2FwGRq#0!ic#7m7I#)UI| z1CL_)9)@(`nGv3B{3M=f{4}mMj^|Ub+!QRptBqg8vPHUrm$7WI`c=G@aV;KW{1%>Q zya-S8j-z)eSnUg<#dy8(N7zoHPq1Gao0hFl_jyIDbdt8^)w7IHiE|Z}5$uzf#{c8~ zKt?=ABiSsk|IgkulkB6kAQOFvWuNPbsnuqjh_If?cEhrZH2)qv+PICJYEAvUuuM9w zU(I1FBa+OKm=nci9Jew{N4g&Goa2^^Ax{#BkHNCfcA&>{VtEP6KGk>=mR+bmpqS^! z#@FB?I@p)`au{d2Ws(t=^F%BS_M<@dnH=Zh30QWCHn<4umwiaQV4F;`&&yr@QCRkA z@&^dwpP5}GhvoWU7dH90T>l%JvfJ{1ZjlPx;$9EtTnRUfxUca}*gl5a8Ml|aj%3M3 zyW*U289u^zFI=5i*3WUe4+VCT?Th`wvte$tr2~E4F8U1*DDRfc0U43q`AhL6<0*`Y zY=G|bHP}Al*|mg=4;|Pkx&NVoiztvS&>?>YOApm2ZktKAUB1z(t7tDvft;9b!}Y|I?U$lEC|F2Bx@4of@SDan@Cx%++WYWQ6Mq29 z3bg)1_($W}xO;_7Osv~41*<5S^GJ?TS@;VGwj=OM(7<{;Yj!Tl zmi#7so|D`YX18Mw%<=Jdfji)Mfl25>LHG0Akg-b!<9ZVxil?$g-C2oDq8JyEpNs&0 z4BMCEb6tMgr)*S>Yp6fm)&G1uwqFV~;Y-(``fDs5Qm??TI>{EU#C~aPx|3^xbU=5> zk0vf7+RLlH0y4WO0g-ea4!i<&`qWer-@*gmk{JJ3j9TS)Q_l)zRxUp$%P~k6=AQk>L zmKEf<4%-phMy|`vOJmb^#*#lE$Un-&ng5MVLrj5G7#&m?W8%`GD~%<8R*?UQiA(-t z#*+WO$!Gqzi9R$5QsHA`sqm+%Ao>3@aminAEcsn_Y&k+X?3c!-ZMO0R?yp6@=p%(Pc?DLAK{#= zUn)!pD%=oMxXD=ZtAqS!Ok7s*tg+;O7UVBa~lpOMbbr zzTzqp{?7?a^|?im|Srt~554P@s!c z7#vg>YT}ZAoU!Cr1^E+9T=H))mi*^>u>J~NBfH=QlOPpdGL{NIVw?Z7iA(+(W6AHb zbIbf3_6sMXoz3=3g+W1uqk{^^8cY5)LH>0nE*-kwSn{6@@}G}Qf>fw6mI^-v6;_+L zO zra&slr~d3de#gXR1@9S4{_jElpC&H(|1*~SuH4W2_IY<_F$I3%C@_`^hqb8CCK_Pk zvVx7;{@O&Bn*^ya)>tas?<*wvvrJs_ zA2F8v`XK*(6PNrCo6Y*A!kVDM@68Fa-P{2gOMc;QEk|ez>=)i#W-R%=g8beZPtQM% zP5Ws9tw@Daf(oaZxOC_YW68e`S3i++eaJ-D-v;B?7Ex8O2fS;g%sk=Jt1 zQ&4IiM%Rc**ucfVcTO9~MnB->yH{O&v)xl`d~+--P;ZI-Vb><=j9Jp{mo3^lEl5gb zi~8dH>Re*!;z4+!@gcaMS;1j=vhe_HS9lcm3%jHT&kw43{m;w%-I|n_fW9dG%yp- zG+Xo_wp;YDG|;^8VwDa`zIOOg6PNZEiJ#878ky)_9QQN@izygn{1L9E!HuXQbL3xK zVdC0{?vAcsz+X%_Qwrm9hN`DM)(E3Z5iktno5jVcdET zp7Y7y*pr3bg-1N^y%8>a!Mh!n4M>-4)B)ER7w*CM*PDVZNRaRU)e4>Pa5|vwf~7<1 z9IiG`#kRq+0UF;9%NDD5z_P*W(wGAM0$~~A`u`5_&qebL33y z7hXB>hG5x+{j%w#kAI;+=0J`tc?$O5E<6@v1mtc!dC=IC_xfU;R99me5p^w=N!8QU zFW5Dc%prY>HWAAlDR)m!S7GxcG>&%MjSn5Lf-~F-&o(`lSvxV;I2}3ZIw+sqmSxtl-}uKl$bkV%jVvyG*~>$uh&R&U~>7jtei zGtt}FZehKtFYUc=EbaZ|^X2^4Ci=xBNQFjYsj%^0EmzPU`=zmIGh@l$HOMbBacO_A zX0v{&a2f?&F6tJ&OsjGj-h>C4Eu4%m3vJ@MPod@B-rRe;3@7_TzS} zP`2m<3ihL5Q|D{(Al%it8lR6(cK#gay_`d`WTG!|x$)Pyp8VuILi+`K^A?R)a!I!2 zZ-W22kmvvMh*mnV4+WDkXkTtR^hxq2LyAySXWGD7NW@Os`iq`nTzh^eo~GGgjUSVlyB3;ruM1yd*(@P{U} zj&8?;jHh9lq}ssU*dBKGV!v?LY%G)f=ky1v{DqSwRnDsc<;9`2$T{@&_49{&_+EC=-|bi}x|xFBK*S z6>bYE++i&F&jk6;nz*dsd1J}{B*_0PHVIN;xv^CEUr=GaiA#QyvE+B|-ExGs#(v@T zzp>=U`v(;cGzqeTgN>!aX+i!OCNB9SjV1ruAb+BXlOH$TXbPml?4ZKqCN3*@!dUX( z3G&}FamoL{Sn_{wk+CS7ddHsJ{ zP~i-dAQeU$%L=Z;GZwl(E_3dD(K+oDpI*kZhWZ_*oFTmCk;6Ij3e_!ALxjc-H0L zhG&@km+>qtpFgB|UQSbxM-RE|C*JG;u6{JABd{+XZ${)SEGtZxY;=yxSD%NaJ@qKu z8~39?);HZ**3XiS?x8?dkS@F{7Rww^KZs=)sUOC&i`0)|8DjMuyvF!RoX-|({ApZX zY5x8{UmD=g=bEqp%aE&I#QLKrvIXBeYy1Z+yF|Sj%Pvs=iYJ-N^>6rwO0NGM$dCrR z94H08LJrG5(+0M|vd`4pVS6#!0sDoU(7k#093zm-iEK8y7_-IAubjH~<^^m_!Lihm zms;mgAhS{?nYh%TmvigLL<6z^85v%7;kEpHi%!BZV)FGoQ0JUBkcr;G zvHYHk9@je^#7!dBgq^Yc=F2n+&I;fKr!-hB|q z|7ufkFA3|7@5lLUQMzQKSy+C!M*RpLZTuLXXgn9o587ycHC|!-%t6e588S_HmIS*` zpT~Y_Y%1F$lk5UHEM*s6iDefgCm#GHmJN_yD7&-~%Lwq^)Fgkvp1jS65gYA1A*MjK zQ2stB72d|OMaglGH`g=&0@tB0uxz2mbGHfK0+=c-VV6Rwqj)`U1~;KbJ_{fEOBni|vShkNv{+f3tm< z^)xu#4apBCK~}f{U6&s~N|#KuA#Pagy)hnfsh{w+3MibNnAev)|CS3 zp;joytIb2D65K#MOM*0Tl(Xg!!O~&%F<3T8Jq*hRs87VYOPK#{qLV4`OJmbXvP&4E z$*fUkc`cS*(BAE$zp(5Ao%IiL;*udB(JIZ~tPh{4paVJyv-@U}5tG%(q&wBGFa7&} zmFbamXo63m3V%2>mN_v8ulghx<%r6OX{|G4;dv64AA!>Qf$oQ-*7#0%I3rRd_a8E( z$52p7!G=loY&0HsrU9*R4K6f8coUXiu+sPxJdwCgvX}5I6MqfwKRW$VbXniexK85f z^_SQG6l_DnCbTFCT@GaqmbT~N`6JL(y z$Hg@MHJ-LC_66TlAip}M2|wY#S%EgNIj2ZF2e!lwCciUYXS_Ae``owJ4G*M498^h% z2jY@=xlb5Gf&6?~x@4lG@mk|!@lmFMtFX-Cbje0lSSGQ00@j~AlM#B_S>y9@tUqBU z2@Mp8HQ`$7%Oq3BSazZMYAmx}eeL1QKRK+lU?K@JY1B7jIV{yTV>t@c zw_-W2)l;$TWA&X_cA0uQ)>E&X=vqYVaBw$R|lgU?pzULf$V zcqsWrE`Q4-xQQjdNKW0fQ0bgDkcr~UgMzWR#;o8fJoQVz!t1d7ES)xRqw^dJWChy} zXc^xza1XrL*N>y!C|KnSqP=kUulx%7;Bw;w@aP}>7F`v@uM2!Vo^0yhjEDZwjjqaw z#;v2p6s%*&^vUNxc*D#6xq7>SoXNiN9oh-k8TSmlN8nyK?^|DgU)+QCll95O}9&LON9z?!e-DFPG;rx|;1@Gd%#Pwpd4p*4?zs_u@eE$)jL^`r% z!j*xq!V63T*9E>F*O~auxOA28&~3Pn@ig2ob)0O&Jrv9`2@eE*B=BQ+fysXouQQ&9 z3z#G6l8K(jg~l&qnM3aSn~7d;E|4mG!B*gR@I=$VV!YV+W87f846ic&3QuN^=`Lw| z6#kJ8$o9($+fgu>gmhN&jY!T(n0?$E%WxwoS)uxTtiLWPb7q=z zx_%1ora*s|QWD;D)&}0jD`>EQ0*SA6*7#poPE_i@u^d(Ef3X}@YWbKQhoM`4)H-TK zfgA;z&<4w4qHc?2R;vrJ90lr4u>20DdQ&{nxFeosT!d#|Zl3>dMZpr2&=oH?F2;rO zNz`P?MkTnyNzUclW4|;u?I`iNn%^qg=m=i>ab}%FlH65KJ(AB6#T+)PUBMCxq=)UX z+$L{+6rW^bh563Iuyjy89m`R(#MNJhWs9|b=Rtf=H{Qn8KN-))J37zAv20;4SJ1<3 zfn0nJ!^tcqE_?mRz=LtM%;IFpM91QS)!rv!`RUMf;pqpS$f-Bk0CxF>gP8xrC`gyq zQ6&lT8>Q*OXF6~%<11VPnm-QPT`(T|g}3KP-0XrQ4&#Ll>+4BUCfho?^)O!l$rkp_ zru*b&5@dz#lLQJ6&mr4k^1Rub51Re?eSWLlsGel3~ z1-j2U%s#`Te#z0iEc}@buQ2{L@T$N+;k71z4X*h$m$WAB#eYyBKl_?4ndtApO@Xt6 zIkTDk4e*jRzJ3AbCt;i0>kxSJmX4z>Dd=Y^bPZgLD@}a6z&qesCcbmvUGYK_-xDuw zHv7Lf1#6oNcwU2h{^qyfU_8k9@W4j}9)c@O{&Bd@csL&MyK7%Q|9`42z-IXKcs$kRbNbdtC^6TZ4Xk90Wi#D&@P%-60j4-Pp|tfH1& zoleAZUg*!MPCOgSaoy9!f5$Q+$qNlGR(l-4yW>oJJeCpE_-j}WW39jOfqZ=b3aRdF- zwf`jU`6sXc%Ur>J2h#wPrrb67E|y)grCVY9L-@H0e5~`)*mn4bz~c{X8Q+4TwE0ho zW3$DFn|&r1k27&POIc&Y*J=blA1^nv`eNLET~3l&*m~UEcwFGCacmQ=rJ%2=a08xX zd<&M}k4_ivU;^J2cm`fz^6$sXjUOJu{Ffi2)&?IZAvacU5cstaJVWOIhgs%mI-qj^ zm*Nq|$Ke&mS7Y1$gupi(&GBFKKi`2{Na*{w_f*_qd{^Lm1K*G37q`=epFs)yDDF=O zwpJLe}^)jqKhb|Rb4^6G{d@LiR-U!PGsoUXscxMWv{@%_SkNZ#{ zL#74$WBr|Vsc??7#?Qm@o9hJ>NPL>J#_z_m3)S~xdt$mD`-SKKvn0WsnZDt!RQA~# zcNpdk;Q=(Wd<3=RMD*#=e6EN1Sm%PF97cG6b8jrWth@6gW`%N8z22fj{Qdt;lOPY9 z-wrxdZ{pIxDlES>pDsNAmwe-2#4akY3mQ#*X@9N6b%SG`=&l>cdopQ2&uoj>0{t<2 zIn(`R8jucbc1+6^Y>xfX*tDg@bp^EF*~F!OFRVZ1o?QR;H3hO)`{HUdiw_RmA5Wsg z$*G$;a4~KmpFeaU&YI3?r!vtSf$Q*^wEgt@|1Jg5`dpe%10UiN<4*%G5BwD#t0PDk zHsl;#PW?)mL$r5}vv%l$X1nYEMHEz-6<&s`|MeXji@H*3DZefYAW1^OI!H{XW?~bpFe{8$(Mm83tvEhhZ@htqm8Svog>d2 z=jMOf0H4p31T#s7%EgBcjU++#c~34rGD0Pp)Hh-o@>&-!I-a{=R;Y94cq|=IPsg$W zhmkL*_RnJqq{sS<=6O1xi|o^ngB~w6ak-d$9(4Fi6PNmbV>^OPf#dA3h;KFVL%ad5 zG%mn%j5}aEgoW5IjZIrf+>Br+6PFI{iKlUtBqI{F=KFssuqzl4_$a*4bYLhRl;=Bq zJgzZ5Iq>O$&&2i3`Mmx=mx9&J1(|3Rj#~Q_T!Q-KJd-f^7{W) z3hGUTJH*V1w)8`8v0lY_S9XhX&a3g_4SWY1@lu^+;UW_La@9gRy;SA;a zlZ}p~U=|7K!uNjQ8snjO$uJ*34oe3${{$=@P@jZXVcmd<&KkcFHxlQ}DBGWno^=J9 z@H}oJAxnY8S2$~YCC)G+85iI5gwz`Eh-JjoMOY?Xy0nhA!s#SVj{i1MR|@>Xdpae- z%;Jg@I5pEDJ&xy!nKR3&B|>LVtK^nIG>MYggZL_iKRp7`~P^5 zxF2tSnMpx&`MUw2#&@}One;9Yg_E@KS;Tn zf*b|ul8GkZ;WUsQr~L64mz(%=folT4g2$TtTAaV3Z~tw{->_KEznSPg3Z%#Bl8rvV z+v73{WDC|iYrF|d2i4gVb)QN}o2WJROJh^M#LX_7)8U2wID zmj&JnFE#N#f%nIA*u_PxLB76!5H5^2Do(z?U+z+S52pa93%B8c55grT-XE7555#?p zhu~qx$KeX&;W(CpeymYC@Mw_mMBu0JSku6>c#`ppxY~H3^HkS<*-0(qd!NMovlaS~ zP;VMI0Ix7U1eX-}5jq0*GaeN9n83qu1^IG^B^&(MN$h_qNEhC}=MvOU<7ve8g~X;O zr`Grufji+E)85v2)yBU45?s*EdxzK+%%Vl<(S#sjQs7%~scB#;9$|bJt~S2cd4X%c z<0&oUai^f53tnOx=!SEf_#SVMM;ezp_sygmFgJ)l9e6&T=Ih7N3lxlQ?^o~&o^4#~ zT;jH%e|gLJz`%oWJ@x0g{CAuo3r{`E(|AI@|1SE7f;DD^OL4CbzC&N&@y6dccXwNS z)~PMy6@f3nb4>k8Ja*IKC|TtCcR2;KwE$n~+?@=W6MqEpzXSh^7gJwHXphrUr)$VW z`vl$>uXXE-Wk?P*1>%Eo;bz5YeSA2s;8ZIel2h>|xV*49{pl4--ojH&{5RZ}xOU(# zm#<#$&H8B|b9&mKCgkDqrh&G2wp=cg?AFmaxIkaJ(V^RMWk3FK~eSv2+Th>pr zk5DknRG5S7ji17WoBI_!8~DY*FXMhD|MkFc;$ad`)=vlCkp|eJ^x}|>{=}tNFTcej zxa-}*cVIhQX}nY5o`HAARVKd|?o(v0|NFWE-312*J{S+6g2oTW^~Og99vb*Kyu#!U z$9-a6|LYb`prB|=zk*4)uko#c?+APst~B}g2EHFpGVzD;fS4gJNM-;x92AW1+(NsWK#^bFikXfn)-LTxH zrc3K+TU?FvDUiF?n{fKlNiy0*ld)eKn{Jc1xy_z@1Yf(!U2z|h6OkO#Br*v#Zaq#Y>va_5bY_ z1-uXm`~j{tBeDe78GnlHh%Cc?X>9sJ;$}n^4d5?lbg(b8GWq?V?@!~!B0cI(Eg7N) z(|~O8dc2jJ-n=b8B8z#rk-G%nXaCI|&9OocCSubkh4Zvw9j{3D)a@_!Bd8(wJQf8owo z$w$AE?axNt&f(2w6bwtclZ^)A!eZZnA-JdUae;>iJ_T29Q=I;>nGIZk`l@*muAhRl zC|F|}tibbFp#3Q@;5t$(knD|?Gz4322#|WegAIWe|COPXH%^^eFt)GH%X+d*^ z@wnh>-+{+*e;O<$Lym%7&P%N;C=0w7mR+FnK7segov-HH+?fnHm!CsHFIK3&9T%1O z2BrtTFYp6+kjZ}p&!N3GuKf@3RIJzkfAO%`Y+?8F8Df)gG_Er7EAc!Ne-zi_j9bAH z+{Utn`A^IwHH`SQ4~g&mduMTyNt0;l->l->vX$JbnjX|9m{#_~O8$ z1CP0YJ1=1V$%#N4 zm`;M62h{gqIqcLku^eXU(mHw&-%LDtt`}va_nbBV1N$4mu;b+WU@PsMUrsz+css?_mW6m&KP=U_PsG~qlv6lW=r zEtux4@w@RblYcLkNv!ev@p#j@mffwLP6MqRWWs)az zf}OY$*Aq{+Uv|N23Ras6je-9R{6D z3q0QBcg72hi*dd2c7b=gg!yL^b|#_0RM;Jt_VzvQ6?oskeQ_U?e=sgLJ{(UpJ}M3h zh6X+k&omW=<6exIUhgO1LFT;iG+xlhclbG6Njy2VbKHM}N0hv@@B{E@(q;Tqc8)Sbva#&Y6Gmu$2YuflRM<9>qAzg?CVXhLf&hmATP%VDM7 z2+LuoZinp`mv+GA#9NafH!QuKHGe;R2JwO<&h>w!E6{{<@r5L8x02SQCHU zS>tcw+2*h1Z(}*JX}liGVVErP`M>umki$k3KE%)B(MB)J0hKv3e^kS2J~2EEh9%F}9cQ z66_W^|MRC;Nif&%31{;*49;8yyquLgoCD9{&#~rrJ$CdBL~?x}gnRDm|C0K&bGj0q z5e0q$=U*##*{olNcm)OP=&_!u+Fi~*qd{$8v%s6<*(Saf?nr}rmwPZCkF~uE@J!?B zctXCIcIV#kfU^!~kn_@Yt)E#3Aoa0`+?rrkr z)O-q-N!w52%(9ivX`30o|EXm`^ebL#X8Bq?VvwKp|HA`r@P}>5c;*1^PKz>$kHURS z{0i~W{!K1F;X2~ENb2ncYGSQE~fjEyXOqWb_sIzu>dJw!$-hQ82?)Sc6y4A-$Y- zx`q?aP~V}g@zU%42po+`Exr3BTYha6%Ut<2Z)dL z9T*(=*ucl*DwBUQUPpWS`2KpFVa_rCW&8QYLkfyc@GE#8XC=YKSKw8qLz`SngC@Vw zc{mkhlAajE%LAW|3r;kz|3^~L%B=7<+;h0^&@`N9j*{2$P!q3n9!`g)15H6Z@4A-x z8{iSc&Go;4g7r6cOWtZNBQiu1CVAhDXPOnx#MQcF}a)%lHk+H(rBhoaXEQ;mqBBGD&-1&+%sy`d;7C z2jO|9f&O@j@jyJ%tZ+0gJl(Hwob!N8y24k2cx@aMyoI})2I}#s@x{^D)@cJ9-4I2$ zvO?P9zu9O{Txaro;|AltIB$gS(7`z0I6j<$(KNWFYw!|WViK;v<;Jmdx!a;wgZP_) z-^Qa&{rB*U8~LNu2FV7+QM((XD0hbM;bypxaS<*z?t(`ccf;e2x5o>OOP#gD=eLOS z`sd;n1$+tyFEtH}!Q;>L9UPBm7+)*(jc>rU#<$=GbBDw}|R z4!i~r*9M6HfunPL2mi)Z#!b#+GwB=}ILXJ8>)#MlAk*p?JliyI0-jQU*{FQTw+v3hQ zw~QC7ll9Yq5(+9z13Tb47URMT{R%$DgN&CsFL5jAa!bp2x4_%tQ5Tx)|Be*oUF27=3obD(b8c`e zxGac|4IJbCrhXN!Grk_@T^#!r-kcN^N3%2O5Pjgx`dBj2CxJi1r5F49U*gJ2?{D!O z<5kY3ZkO#enRsjxdP;%u?zq9Y7hY*5;Rrm7Igl>=#xs^Vp*}zG#epxyap7gY!War> zo8$Ol{2At`Vf%T9B!0xi*W>3*eEVB@ntpw8v^bNF;1#&%<-YwGk2S8kmFvGPxIRdj zglC!xx8l24p&sWo_)gQIm3W%*rc-#}aHa3S7I>X;=PAtpyUi9HO2WOEi&L`27vYCZ zgZJQvjO*|KF3&pT?_#-Jt3M3=e6g5%S*`&{iC*b6^uw)iw$YvO0&$4z_+o`c&k1Ttq{!uh5{ zui;+aar71ii+w>)J2+oR|coE%m1{Qn>d`f}K4 z5BuW^NTW?%ntJb))6>B6Vs@UTfqT&_Qv=miR}BFVdhS#RQP z@raxJ3fke(#+%{U#zm4pwK!Urm$o+of6WN;{3jj4TPWyddOQ`cHogl_y2Y>XUOZs3 z_k(zv@oc=D6>!&{?4pnGH@eT+W&h#tFn|9_6Lz>W-C~%O?2PS@?Ha`Q47@j9$cUv& zCfW}Vz0La|JleQF{(%ng{44E1B?V;+kv4ESUQL2dvWKt?p~fEz{AA##@l2Ed93F7H zuU~^F-EOY`uTqeAhfjDD_cMM6k2PM5hx3eRCwe4D!QXg*c`8;ijT4#ik$CuBzWt-| znh8ArPnT?TECs(YOAm7mj(67hHCP%{Ux#Id>g%y|NIeNp!2KzZ4nFIw@#pdTv8hl) zfjrmKgjcXU1yjFK4wN8(xLFCv5Q;`qCr3etpB7)yd!E5!IY+`+{kbJqA=EDw{_ z)mWY-tDnK^u--v^>8$auWd;9`kflUAP%u5UCTxQLH4W_JtnqzuWKJw2oi%YX={5*7#h!m8rkfS>vDMt|s1QM(Q-q`L8Vn#Ux}XkzG*ctPSji<<+fvAH0oe z@C;{-kHqpEQGG6!hg9nGu{@+o7P5`2mVY!V~--6|~TRjEKU9rAs{S?Rxk96U8KCs+$svp5}Pp5ti%T1?xE|!~4bv2foTJ1pX*(RMCfclEEh!bv{&^BeXHKQb+G^LN2EXJnGU0o7$`JXX5VD{TIzy#1tvje`3~4_@y>yF#Y^Z=KCQ|Yo``cZ{fLzZJ{|XQapr#} z8cD%SQ{g<^V0=;F%K~44*O~knFTCG(pbFjh zE0j6YmgCuOal61Buyk0)pQTMyNP%DY9xq8SJ?>=UvVy&E;e&pk_6fW{E-~?bc!u#| zc+P|7_5YD+f$IameiQguTw@wI5tq&K9Vo~BjL!&sPT=$K&{^jB|3wtkn+7h!%ZP7=&Mzn@7a4b%}$K1g&vpA*4Z=jX}SMdrjO*mmgiz+d80)8TJtvHk@& z`}b~jdx-mVldwHrY+Q;P$k#L7`FIsBkPgwUYP=Q~I{$|AZ}IK#@i3=$Jix_AKg{-z zddv^$I1-i^UmbWt;2UuJ$9?@gGl@e}mzf?9!TpTK;i1N}ajo%3 zc%JcpxT@J)|95zd5oj*RMniF>ag3)LKZZvbe~d@J={vkE@K=Gq!IL##{{Fwx7T_Q8 zY)!zw2L25%H1WRz|Bct1coSYihiQucWTPD)=K;jqX@{Bre3Y7kDpw#b3%qyWJ~;n2 zKZ(x5YfSx$z!%^mlRq5~UzBt}&Of~S-4`T&01q$~-oZ1p z^MLv@Eaw6BaxCWocmCrCfhibE!7dcZ5Vf6?S}PP_IZV}?U^z_Hn_@Xk)g7@Mrs^Ur zhpBoiEQhH(|MDA<6v$zw3B_0rGj$1;!%V$Bt}@;cPc`m=XBqdza#(Bq-Lae(-1(n3 z5>ZehlO$Pq3k5DS?t}Xo?~jKXABg3s(E11CO5^^x%J>L8^;Yx!zeiFq%OniO^Nfe$ zTI1vJ65|uZQ~U>yu65Q9O~l_5moCaKekQSb{{JimGOM-1^H^rBx(0X0n^PbStaR4+ zk9a@g8@qVNxv4c?gk@5zx55=}{3+v0C@Js@UqUGf=5l<`MJ+!CQ)2Sv@_PWT!c#nk2_k4pN;mO8JvF+gJLA)XGx46#KUlsVLxs3lhldy(_rHg$B{=oSk zc>f)^DRA})juMl<0j^xayW<&OdBSoe?*E~0@93Cs?PI3+CK0Gb(S%J^N zQ(2+rUx1ezSK{2qJ|15l6kHkjDm=_oxDGG>#5ZswF8tJcGVWu1JFYgK-qLY&U(15% z0leB&cm(%f>Q^uaPc(iC_gd!T&*Ez17XvSBVP1c|PQhwZp$@O-DCo-=%5nZ1E?@3f z@E4w8ygqQ|$(HdvTxaszTFdpnfP(H{_!V>rT!;sl_?CFRaaWxC(%0W6aQDDF;h`>{ z`OmjnQ_%A(-@qPtgz-Ls_YZs^o@w$A#d8{bdjs$)L{(4UP*u9``cwYw;lC8*r8JErF*7z7sE$ z{AB%%zzhm3FU2NL=%iU*UPU-uR-xmx*JOa0La+jbog*+BaB* zi;Sgz1uv9>#r`g!(9Tv9rcM!p9L;e}WgA zKevB|WfE(Ac{TH2X1Nx8MM8y>+!1|){nFUjN$CKrm5qC(k0cBJY zH({@l5>6(%Mh2k z6|6EHlv}XYPqo~DeC(ITri~5~P8h@Bp@8xU7J~@xjfa`|hPcXj6THB<5Raw(Ez|bn zXn$9b_Ly(0!O{Ws!Pw4;{@5>#O-D%F4C#?3E+cv_wjCJN!tDQxDVWI$ccN9<;(Ks| z>G1=BAHscq^+Whr;JJ9Li9e0&8h!qAIPW)Sx&GJK0{m*=T3n(Ph`)_T7{7-X7=ILa zY2eTCDwogspTmTL{NH^Kzr%~ydjA;s*TBEwwI=^BocD*Xza9@Y&OF0Yx72d|$wX~@ zLE?=9x5Lv+1DoN7Km7`daQ^Itye;mWbywdnc{Dbje{FCue{EP8%c#ZK1xY76| z{5ww9&#W(}V690w9sg;3CjQI#Y`o660{_qW0{pk}Mc5w3mtYpRevZ@8l3O zhhW(ST45@dE!21;*8^|;G<4*=#`lyvwNEW1dZxq|luU~TUpye>8kTt|USx}G#3 zSFbVY5FrjHMra!DJKf(CzJ}+RN%~gcMR=8ozmJFA?d$)I5d*hIk~R-g}) zcbLa6F)KV8kHz{hdK{i%;*a1trv3-G&cy%0i|K$qjNWcO`#*n%@6q7-+_RCO52MH8 zg{H@k;H5O!gD%Ud`U9MA;_Gn{*7)|%aCQQY0oT~4{GHcb-u}oU^J$Rz=Oe{x@#vjCT*r^}Ja@5Jf{Le;@QXrEgU9!;} zER#(AB$i30ej3XpQ_sgTsniRw90lqZ@dD$QvCKIZIsfwuM-<4UOP6d^i)Buz-@-B{ z)Qhl8D)qbAUR)Mqzce;|Byn?X`J_3{`sLL6I|X) z9e9(#o8n%QFWWEYvMsd0xf8B14Q`Fsb?_@F!KIse?+|$Bz`NoKlfS2Px_&yaHw9x& z!hU#~@j-a0asR*r0}sN5oB0kNgBKQhpMZ-xHb4K*M5j<-_u*;SFT6cZ;$|P-e<|N; zNr(Do)2n5FF2^#YYq=iF)pOgiEj`k-C%gPwT-34o`F|$5At~@Zya{*j=sg85X3{0s zdnRoSUT)&A;?>4);?m81{daJ0>g%ca4?H|Jr^c;cWDD`uY_?q84#Sg7{9?S&_#Qml ztl)vbj|6@UFE#m3;<#!{-@|zntTui=@XLW;#ko$t{+qa{v-dl==e_>i|0nK?w{;s> zT*LeyX%Yt1Fr;041A_w}8~AuUn)>ZrgH^b&tFM23;7NEI`TFAaxfWD*y@ zlv?8@SayMP9Bog5J??kJeras#A#roumyPBT43l(?d**W?mZKo~f+3Fkg&g-XqFEY| z*A1=4@pKi-D#Zt58KLAb=KJ^gX}nA_M0%h84wfNJ6S7geD>KQEX?!r25!3ioEW50| zTfwJTc3E;0$_hL2j6rsp#$UiP=eCjjn1r5Yi{;ETP`0?M4pAl=68IQA*2GW1gSPhh zr{KxPBLbgo%>3ueg(;Y2DqM({8()go7>~gVi~S16<0Zz|2EHNiO?Y{lFV~+;G=+jy zrhz+gK{vmG8Mwsw{=g3heiZjH`A-CX3jfM3X)V`ZnWf7q$h)swluNpkjW&3h;}{n? z?}mqCy{|tB&%?<+rT#>`YFppon*vV>d^=tz`Lg}eh3OQ`+Ris{A6{=(un4a<{sZT4 z@ALl-+!Q$b3MV>~zX2}6>H6tF0R?3yp#$z~yg43ZycMo8&f#gs+v0lT9mU;!hj&RG zC)+P0P!=TYg=eyl(j^=1gKLfV#Y^y3$@uX#p3a(oE|z_)J|C~edabxCaqJUjP*884 zR^Nx`n2+5&fV1p^IlQbbd9aoXRIR(;zo1Ha&D~@HBYr#|sWLB&1#I;zj z*RMHi{0%IVQeB5-(yHIV1v9<8$y@dvx2SJ zD4BHKUQ3;BV>a3rO9!3#{$~oLhnlbxmL95i#?nFcu2?##F2i;X?1lZ(*tCzt&Hcl^ zCY~3?jZG&|kiT;`SBDoOfltFlCVrO0clG%d_yXuEDGvP zg-3D2Zrz$Y^aSp_yZ1A=#EihRxS#R!c&Kp=mJX&%HhKl$=p4(5<24HG5Wa!^(%4id zaWjNxUcfCE9p(vYa@0hlGD!#Yu$qLW1D$9@j+%}aW|9>qr)vB(M}cfWSGoR4!aHV# zaulq>50j9U2Ke7iUvD`ATLkWedzlg18c!_i=C*;A;n~JJ;L1HD&i2bHcBWu*QjmK0 zz`X+Z#&hUkvc+`pOe`Hv7tRxSw%LHG&Kked)pyt5Y&4w$y9@5Yerar)DRHw4b{n5b z=0qh!Bqy#1O}>oaLR_$?b|@3Q5x5R_CZ24+jKI4T%z3O^G?BH+keAf**KD@nS5_b% zg-7k>8@vRMH@?EqT4>j@A@Fe52@G3e$Z<7vB!K3>44&3=B`+uG(m_dT|{efrUK5VgW z;rqC>TpP?rAL24rs4qU(JE!w18#Q6srRwZk%s<&@TG09}_K9&m9*wgk$dK>utoeK5 zD@^=UXN`}*V~KCz>fhq5@hLF{HD~$`+>WoI!WOQ=LT9b;I-X9vt&9KStno%Hb3nZo z*O>gR>r!hx?nZ%35-r#kC;KcZ$VT09*(e|1N#b+-P3y7FTK{<5j$NdGO|Np+_yoK+ zai)ZfXdFH53N&FpmVK;VfMwRJU&J!&)h}av=6n_VrLn12;?4Q3qPI*ux&HqaH1LN> zkWa;|3mW*x#N|Y^-PV^gWbO$T-{@jUtb-w8njCz%B4KzY!>=_W26xH+hQ ztBFhfsX_faO+1zcUZbF7Uma3@&o}TQTxR0$OX7Z(t)po`YV#SuAhXJK?6Sq4Row;IfO;nFZ>Re#LWnH zHF4>{VL|-?5^r8V2}cDD3<(+-7c?;5#AO7o3F=>G;?jYqusuwl#j!1TUK(iLq&86v z_Df^aD-t(bcwvrr&T`!MBS~&TUo-i#!k;C-xq&v(8WWce|6b4b+XnwM3DQ9EyDb|i z!G7U)LnLlGw4;ej{bPdq!%SQ{aN@g+zir@TlOPRTA2cw@#HE2-ByKt|#l)rlOSs0I z8D9(hModAiNmzsz8^4d&7%#z{4>YG*Y=?L`_6w(4iJK1I@q5~#a*|}1#ow3;(<a zYuR9X>=#b85;qNQZsJn^fS`Uq6PFP?v}OG`I@}~k1D6C1j5cv;U`)#fqAN{Y>OUIP zpJU=u|H&5h<5tnrCP5nbB50t&#HE36TQtxr`rgE)euwv4j$k473uju1>j?7wS5YUE zAPpQGG|=C~r2|LU2B?3eiA(*OX7Z zQvd6q{t6S9`YU~XIsdhael!WvKu4aR*;!pA&(oS0PPG!(A*6m+6PNmj1@#A*xOCvC z=K9I`w^cO6BuE3}f(FK$xHNE0a|6<=R?&4PF7=-Z>d!NAssEhTPu5QZFPH>r;JcuK zRVFSC{G<&eqtYt+#l)rlmLIen!Oqw(e4CEM8Nqb@bfB9_kOl?@4Gc1I>A=yhfwa+9 z(Xl2j^{)!*SDCofpODsf>!$-Zm;`BHe$c=I6PE^FOdD_;)hc?~#HIcZLH*SxF7NmgsZx#J!5~P7HAGRFA9QI3N(>4+}lW;o|m->T)`a?}zI&hrCW7EJ1CP5mw7Ta_E z4S{cx2AX@sPqCZ&vVz+rZrXq1@3g%V>d3kO4&plg$vxhy6!bM0mp22yjfa}}d${f( ze=+(9R~+KKRBSr-Rpp_O$8Z|f{$7@xC!=4W7DP*H(T5h z58po*^(ARjUT${6^>cE`yX(c>K4SaxUiJmMkkMyd*^w$ zoDEpzya+c?zo+vOT)27qo>Ez1t0mN@LnB>0-kE~66fojRk50tv@GR$vL4_CapfS0q z(#3l&<_@67)3&1Htpd(Sf1PUaTPw23Oq>c?;L%TJ}VyUygQbs zXeG{fVfpG6^)cU4zg2P6KI2As1rMjs$wk$YFVFu!qoDJrxu~{Pny~yk{!BKbI4XA) zHv67GIPlIU-KWoE`F@{;ZiWBis$={s-Q&eED2xE@H!y_|0wk!y`jjf;(`q_H36)KJ(en)&Cclf5jYdb76>wZrCg$rwQQ4Nz$MtndQM&R{aoE`=gyh(xGhZ}a~gDJN# z#I8e6ZOu0%nd5qGNhX@dF3?FkV_W{z%3Cs*xDNb>8vn%dFOY9P>xwYA!aiv}Xga zlRp}>Th-I>fcTH}(`a&7d`>|FP7_-5liQhSkcsDZB+e`@CqahrJ}iGP&{ON@SU%;d zN6|hz@op$~S*;tv^Raw{Q~DtFpTn_yD74-+_#XxG#v?{HN$6F|W4UhW<94a=^3E+s zD7QL<|xn+U4ZL)_&HLs8(xemXl~Sme2p|5PyJ6 z*5{f}%^Q@lPk-=7O>b<^6O}mspIq|idD(y^*zV%_dvpBNeZ$qx&B|l?@D6wRs}&>A zA<9M%VSBOZw=a|M^IY=J(xLc!3g(ywEoGRTG9dt@2n%dECVT^kg zbK-LGH*i0><8k$mDyO|Iijyy~k}Y0>`xJ3CO!DJQH2D9eU3-ijRTtZ`5(;a1Bv9tenJGy3(Fe6f;vk|CgS3izj7j4o#`q2 zK|o$bsJtqT77(EcrW8RE7eC0uSneE}4PhUJ#7x&jX9@SM@vYmTiSI1C5E&E*jYZ@&eK z%iKjByK;!H0Y?oxqen8~hd_rNj=#z+eD^kpl9m3FH%gl-jPry^n?%~CiVExh@PTx!i}t13wNo~5FL%YEm=e0wa3aPPS~m`@5sfqy6_}{BTZu{ zbCH8QC~7&(-@F(_XBH|?sXwC^MgH24A?LsOZfQaB4AZfIFTl52OC#edXd%Du$Qnv+ z;RzFpVj+L6Mvs-~$^2Pkw6Ng%)3IPeQJ*|OqkI}t{doC(1>p-BEMyLFI5(R0iUuM6 zw|AqSMTO2_LJC_{OJT*#^gBc7@&)9^xZe$Iv67h`&TZa4Fi0%lyxrXFw}Pk>C{tQ! zqqv9|)yf}UfaYZal9)}gz)Bb#EBFLk%T1y*cgitRWzZy#)?P3pKzV(t>1 zBu2#AXi^1DYsOVquj>1>S)VnwX@#ecCF5e&c0_06RD(J;-W!Vt2yMcc_ZIUv_Lw#P zY$~j3UDI?1Xl&Vw6_OnvpN<8g2%lUFke(vhe(j<1e1Gt8>BO3w&2ID?fBy%i`4f-5 z{y}NU{6;=i^RG~0d`}lzGJM(pO4mQQqHvK&s~b0N>#quG4B>=gqN$LEE1~>-d(bJq zav$ohaIA>7MsTCBgYfg@KJ;Y8a48v+G@&w$xaIyM_oJUxbmXM93fc(EiNLhZo3J>6 z?wiBW#7Yqj|KI`C)mdQ-{GP!2Rp^KbmH2!2pyl0K3Ce^q7DMGSiRtx64xnZJZ5+t1lrK`{)&PnqPA-`jr3g18A=Q`Jdp|dk4^xQBAL`Xvd@xRuf2JDYKDZ`!HHr zp((60Et8S6u}c$MKdQJ@GBL4pI-->4ys&DKNh&ds5(^hOzx!cy)3TH##^62J4$=x^XAlBGITsf}YzN$ht# zhL+E_F;NmnNenAA!y{Rn(=EwXe{erK*+2IfI;VmK#Qt^L3yWj!GR-9T$DcrEWg%{O3fwwhLaJNqSivMF8iQU;B)vWy zt_UNIGAwox=P?oK@ZKlUyv`dXjUp^q$~dNxjA-r!%@nM!dWuYJZJ}Sg7yWoeVPl|L zg6z*fwmj#%&!8S}pGE_jgVZ1~Otd6%$`$m|?P zDPXPRNIM93uGtjAp4x{lS~~Hf*%bUM{)*CU=5VssZr3K9j90T-9Xkpoj?%F*Srx74 zv|T%9?pIlT(SFpPDQBocHhSHF1&S+$`Fpy3(w2s`yGR0P7>7vxcCaS{XsTPuiO2L7fa$^`|ddx8Mzj+B=;$PX1 zZtWIu?}Neh2$IMc#PMFg>vidNp5=WpBs0~`wN{==sj9^$!a)n_brHH{= zsWv6l0l&6NW-cO615G7_9<_hScfN;C$;9V3->@|y>SA|A_-FIt)qRUEUi`_v#e~#8 zS#Ni2O|}qqy|Y9}N(@}OmYO6Zb-w8UHJqki*M?;+gvY$l_;baG)Hyks8G&BW@-%fafxAlk&XJQWEn)}aY= zn5XrH%3a+`Gq{rnizQf^C=)Sg;$XV{RWGBDdhsgyir>2rUARnW%PfU*3>d=AsWh*z z%_h}Df!%P;%pEe%0L?^)MN|LawqzKhF1^Dayr+!(hXduxtc~aS*@NZNj~`mMsAK5j zSsfp)^AhM|!XD0zyZzOJ0sQUi ucmcivqYJ)z4Q|06=a&zaPn~t$Ykt*G`K)99@LH+kKVKf+HdOxp7yl1&(X)2| diff --git a/artifacts/program_methods/privacy_preserving_circuit.bin b/artifacts/program_methods/privacy_preserving_circuit.bin index a866728109ac5f4a747ded1a4492d0575ce3bcae..c8fb30636357ea59c226ad71d8318a40a3eec7aa 100644 GIT binary patch delta 123161 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 z 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

    eZ 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

    $!FVB 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

    f>5Ka>dOUt#mG!fvTV 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

    DTe9kiHN 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 diff --git a/artifacts/test_program_methods/burner.bin b/artifacts/test_program_methods/burner.bin index 02e1c5e9142ce0ac41e5df2dc7d330f5757ddadc..e09f80fef64a63a81e7ff4e44c79c6944a8b2237 100644 GIT binary patch delta 98527 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 delta 97473 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

    p1CVvYG$V;_Ljf3)0 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 delta 101250 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 z
    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%0DE<>Uu)(p+<{O) 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 delta 98939 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 NKh8{L^XWV1{{SyIZ7Bc% diff --git a/artifacts/test_program_methods/extra_output.bin b/artifacts/test_program_methods/extra_output.bin index 915a50eb4373cb795e8b1798d2ddf2b282580890..8f13112759b7977e8325c905add4595565acfc70 100644 GIT binary patch delta 98438 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

    +r$Nd~<;u4jghvzF7;^I%E_69_j>kr@G6BPtL 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

    +jy?y0$i->AA!fu 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 diff --git a/artifacts/test_program_methods/minter.bin b/artifacts/test_program_methods/minter.bin index df81100720b2b4dfc60e94c933418118f0de4e74..5037f8472433f1665730e3b527d2a870508f19d2 100644 GIT binary patch delta 99401 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 delta 98129 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 YO4u_!4=Ba9a}P6vSNZl?HmtMi07&1@oB#j- diff --git a/artifacts/test_program_methods/missing_output.bin b/artifacts/test_program_methods/missing_output.bin index 00c1689296f132f8d4a715041684b22ac429c6ca..ec4f40ca43ddcae8d43f61a20c3a7b7ca5393b17 100644 GIT binary patch delta 99974 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

    R`nF;JWJ?BJ@GNG)K9?M0Y~$l!3FBjA3noef zRIr|mm*XS_GGz;mZM+meqvEd^+xTmE1@R`P{&r&<|0Segd!IJ3>0l>*kqQTy3Yo9Q zwiUAQ`^5J!@zacLd@z<{Zaoa|Q2DcsZ9JSqfh-DJa4n9GQB=TJCgE8_U3|X8nR5G} zbEUDZ{{rqu-2OHEYhxSVhNlr{3CN6w!TuF-flW9N%Q3Y+7|SZRZiQu)TersgI?x8Y zt+wt6tgi#@R6IT4@Bc%*2F_3k@|KH{UIU|4TrMQndG&8lajAckSAT(ur-vlG=r!=N zN{|NDdJR;lxD4PYul~;}F7hDtVP#S3a8t1(_?b>;6kGHCL4$f<54*?%K!R?NA zJ|62saw2vcmtJfR3FjX#jC{oXTm~>SJ-!+BQ59r>Q@jSJskrRnbk|_i-lZxo^&jx+ zKU5!={z+KsHSln zH~o{a#cSXzuYtW^Z#aefVz<@SwZM7?4^nX%KyR;p-zaYTCt-lsz$sn>mv{|ars6UK zv%LDDipu~V^Xfk#@%sKrSnf6OFRy{myav8daT&l?ul~0xE(6$aeZ$lAAROxR_7Dp6 zd3zXk8xN_lp5h}8N<`;<0ZH;0vaQOO4hMPdovz|C;Gyf;f8F44l^_jV<2CRP6_*C) zVO{@56_@(YdG()HajCz0J@c;{Sfdi8fq#1q{Gj5}z;>+b|Dxhj|L`}MQFUc(>-or# zg6S%uJ)W(cgO@0G#+Ay)V|~a@#BSqKi}e7DzKI7kh9o&;VINgNMm)u9aGHwC9#8ig zyi~=d{sUh9hg4kZFKt*q3?5er(!d6{hbS8=I-kyn3)ic9^Ox_-#r?+TS54Ls~M@TiJQ1Iu&+ z)PG9FrT)iW{ZCa~>Tgl?S^sIlS1Lgo*!!)9Q@Ag78<$$_rZ6oyNX4aoZ?Aq|6_)`F zaP{T-mlm9&5~P7kyap~)acN+dYaps0s<_mD%&Y%|ic9_F_4T9cZ(8s#l^_j#<~8tz zic14q>l=`HNejMJajCywWy2Xf0K2WWt|g9UFzTNM4pj-#KtHd6fhsNoD6|bkt)>O1 zskqd?+^c`3ic9_3rheQ%1DK-{q=6^B2A)=NX<&tEAl|FAV5N#n{V%=xU#qy(-xk+5 z{WE~?Rf05d;M)zS@L=pV{``*hB5bYVQvYPH{;4W111O5>*FXPH3x=o!Y2YfafvZ(q z8kie3U?26S1=p##)PKgS|E!8j{Z&#wtbZnx7QCnuq=9d+zSe*5`A1w*KP8QWT2)^< z*n#y7-LyS!FN->I?f;Fqo&V@TW}A0-GOBJaM|nO5rypbYn0GhgneCnPaH|f^-LM{D zckH&>x}NWN_y2a6C!zslo96+&RRx)m3%mxWs<`a&#aQq0C3xxash}6V?#I*3EAYlU zQqjBP#dF?a|1%zO1-FyX>fuzd!&JBzk19(=f47qgkKpMKIX{JSaDmBx9?vDeh4HI+ z=u#K2#x2R07c8W`PeTe8s|LTp70SQjr8GFzR7ii9XTMlpDU}8ez$NU!HskiVhWa_i zopGwpxmfBmph+ek-aH@F(7<1*v#yb6a_5id>!(@lKn23{e#H5L8RnG9$# zo=LorC-~z1HZq`B-5wX?cIBy{A}xxC!MU6GL*PF$gE6MUy;$A}W%r=q;~;orWBh`_ zzCoj40+#QFDK`UnRNUR|(LtZYFU8I>@sqK9)k-_#a$Iv~D*6k{e)9b{M}5i*AeEUx ziYbs0Ux3pq*dtTneH^Sy1+9!1e#Rl;({S0wZ(#X|X0K#ie>;}XiY+%g)a7$tJ7$2* zO?*0*FE+`N`tth!G747Ja7;~w$G_ljIIP;Hrh{f*^4D%P13kauH2pCCY84sqe7tHw zD%fT6Z^y0fPX$9wdk1Z0kuP%X4d*f7X4)$vKa?pQ_(Kq+9!v$xO#`(*GNmtP1`EuH z`~1qH;g!w-CO#F*M>6b`w*8F@%PO}h7vSo_PgUyx_2oZ@)DI_z<^bk9Hfs&VQ7!M>3`RvXmQfb(7B%7MS|) zV_s~oKV)fXcs*+-jq_hRyqSW^$*CZf7W?>g-upEx6|68F3~a;;6ddz0#@Ar^#6(Lo zLu;^n;$ex2pSKV3w=#ob~}!zr9r6LV^!dj z^69jxW&kheF~ZkU(Wl*IiYIkuMsSvix9GyEe%0O0Ztl%5o40kxv;w!Q<$iBEc(*@) zzE^7?Ie_bea$ZQmQdRKKKt83yyj!hKl&##3Sz-C08$PWek%pH{7h zQE_)FC^7Yi;MvK{fU`H6;_GpFQ!eFZhknCL{!_n$VUT+UAG>Mhu1uHVqB<6#X&`Ml z4F>VAV#$c-;Q^GU7wsh_A)+GurYNNr|t-@}`nXv&Xeq z-il>A=rE3Byhr?iLh`3zdH-O6nex)&M1xCt{)GBVd3^u>hywZAtqRk@<-8w2-cqr| z3}7dgZ?&4WcRZkL&gDAs05i5%>^&zXqVNB)7oxFPzRt(`Su9`IV|~ztT)ID!E33Kx zhZM+1Dp!~(I&m6{>@xm#+bF(}%)#=>s9C1NDlDJ#Y1bqkz*!fu=(v>IW4;~Bo6{GV zMf}E$MD)gFdnKH73D*fO&CB*OdpPDYZns&bJ6ES&d|=m(xt;Sn=M<04@0g!EenO{X z$Dcc+Lr&@1m(n_9j4RH`&F$22e3#C-`JFqDpIG|ROKF|L@e{k{j~|;ietcfe_z5|k zI`<8-X39Su3dc^la7u^#@m(h5b?lT|JdQT=x=!rYX+oFcZsR9T7~d&3r|ZNn9diCJ z$sPYka`?YA-R*y5|1ZgTK~}N(=f53#F8Lk)Z*@u!U6XeBKHe;sR(+q=GA!;oAun%i zw{9J~j?Kv#pEoh5%h+zkDDc`LpM98f1BAc@4rv&Vp78nf8T89|GwG$ z|2j2aj#Adl(sRnw@>@)t(5*P1|BdgQH@;i9ZaK1=N^i<&bWrKq^0ZV&$Nc>K@ws_j zI^`5k%*~mYUs_w9c0xFDY+nAv{I0phdBqc$zNk{%sQlX;&A;6{y%7I4xl1tm%t3kM zFT7|%?!?l^*QOniF*dK;_?*u9V~aV0`MKjdl~%1y8tLb8c?#_`Z_Rt8~rov^J$z zRHSA09@nj7PX743ah)cN&Fj*+YZrUY{`a$0`dLNVm4ClvJLUe@)8DBRsX3|tKEG=a z{@*Id>ixfTAZNz^njbbiKXY^bu0q57PI8w1uN`>#a!%>|!~gdSM(NIVX>GzT6S{QH z@0i!QW6s!|+_7UjMaTNTJtuPi`wL0#|Nl^5`2V|-<=TtR-(PcbJN;kI;f}ebPq$7# ztj*t^G+j%tem|{s=~MfqH%a|na_QKo8@2fRthKY!_b(kYIQ`(iKV@?}mQMRIt;K(l z*jdKe>fro|mt1(+*a_!$o-+B|b1&y#+Raa`_y zby&QZoSDf-ivrpxojrwLz8f08q(Z8_I6Cd)w*9p;T5aS|NkoR_Sa_2gV{H)D2_ua# zHbA-ymB;`I^Zgd?YoN|t15nj_f~-1C-d>~DbLeHQ>Cfti5$)Xvh9jWrCn!~%nFVJ z`K+E2;;Xb$S?L+G1`h2alUG)%rQJ1KruU>>gu~(8vb2RGHwC)tnnR;}tSfjkf>WQ@z86i?oH6wA$A_{nY0&r#(I0>Nit_{=btD zrbNSyCzP(jmZ<1xfUln+D`4t1a&$@H)F|z+Ix`iylk0%KO-4q7OwuWf|4N+WCT(4} zwpH>>w@7Geut{JQ)-+R`ONMj{?>~w#c)>oh7M|HhzJj4yvaN0d;x}_xicGSOIoR+z zd7?N!$q-k(vo=kq%?(KsLRpsUC%j_Bn#MwgOQO&o-2;X>pe~Ac4mB|yI62Xo(W`T zD>90IieY&<=S}k522X7!j6wb^ckUt!Ti1F&b^l~@(^&J~TVfNjpqUqLvNLgdEFT|xI8uEt_W}Lmf{#&fp>@Az z&-ICt>CxgegHj0>zDb^{$Hbzf0$~}CBchIQ^yX>Nl^tUAk=96%(^!boI?6tEb0iJY0QB-08ZRy)3JF=9zqPG?xAKZOgCCt?vs=pBglj4*L3kOB?aeK9CyJ> zd&pv#*++)qkAvj;OA`+%=sZsp>DI>ZZ%O;Z=R3e8JV((XVm)!0)?PMfH=qWS0_lrlVhgIQkU|~C z*7E+-aQwqT0^i6QfuBTe(cp@U;5Sh_cj5V0tr|GLF*xuftdzC$78H*S9e5np%i5|1 z#iIn{M_{tJE*`x2{0O`#YZndT`zQEb`{1L&fi>{y*4k3|UDoQS9>>q$EI4W46#VsI jKMbqd^4fbxhX(HGh}^7d^#uz*9U2&Y_^?y8-H-kW5xcse delta 98813 zcma&P30zdw`#*lqnT17EWB^eS2L=!o5p%%>aa2H5TuM|l7Z6Y^R9w?EXOzW_3O(wf zveH5`HN#NHN^45N4UNjm%F0U1Pg&t7D=TFF?{gOz{OIrhy|34ubKlSNob7p@^PF?f zy%$dZ6~`bz5f;@(qgS%@#_I~UuJQUccC_(&FT37&{R#{6 z)AE+Hl*a3wY+2*=3v5s0^>ge}<8>MHG--LavVM)%n^|t-_0z1Z@w$YaZoFR4ZZ}>R zvnYS9oPx@9|5JnYZM=REo1Bn;JCiUL0!>J9KZ3(~tSIyLX-2haTB#`SwdS-PqP+dhX%j0% zf%}>houa_K&1towz&*`rS44rYG^f>x@^vVI*OqSkjSU*t9V}ma(N;LWkp^R zzap$?f1I5T>D10?@(x8=PDpx7GFK_{oz0!vc0X?N?&)_A=G!JiXe&Wy$fPvF`c`FP zCkG993T+cL8Rf1kWj)D!!^Tg0^KN}AigC6OorYUiD#}T2loP%)U$T?`rMoNE=>cCj z#!4gG2Gla+ds18+xE^b7IEG^suRZk+I~Ey7jk-2z76gYN{tFLhS1yv~^&Fj48O zTPKT(nKuHdP?oGv`6XYBl*JTvU zw7p9Y(udV_iR=Hd(⪤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 HJM2Rmsli)^%o>>0flG8+K#}|p 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 T_+Z)p)Qfk~uUv2Nr+5DWA``DW diff --git a/artifacts/test_program_methods/nonce_changer.bin b/artifacts/test_program_methods/nonce_changer.bin index 0e9b5a1f77e1d7b0c87325fa9b41b195fb34a9ff..2f5d418a4deed64ec751cad77ec7f39ef91b43b8 100644 GIT binary patch delta 99101 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 DR%6tC delta 98034 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 bVU=cDv1j@%pcEV9US1a;R8 diff --git a/artifacts/test_program_methods/noop.bin b/artifacts/test_program_methods/noop.bin index 0c64397d8b504ee84eeb96ccdaae99ac53ff950f..a59235ef26bf9418cd987ebd7a1d8740d0a30592 100644 GIT binary patch delta 98979 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

    =G0+VkV_+w!5 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 delta 97660 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 Gv+4l1s#C}S diff --git a/artifacts/test_program_methods/program_owner_changer.bin b/artifacts/test_program_methods/program_owner_changer.bin index a9d39474958fe7b63f6ae5468ccfbe0a584861a0..260f227f418264d3cf50ee37c82a095dde0ba9ad 100644 GIT binary patch delta 100874 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 delta 99647 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 delta 99103 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 VMZa*U`k_@RE#GVGIBmUp_y^7VynX-x diff --git a/examples/program_deployment/Cargo.toml b/examples/program_deployment/Cargo.toml index e1a6db4..6aff2d0 100644 --- a/examples/program_deployment/Cargo.toml +++ b/examples/program_deployment/Cargo.toml @@ -5,6 +5,7 @@ edition = "2024" [dependencies] nssa.workspace = true +nssa_core.workspace = true wallet.workspace = true tokio = { workspace = true, features = ["macros"] } diff --git a/nssa/core/Cargo.toml b/nssa/core/Cargo.toml index 5f3d3f2..f5500ca 100644 --- a/nssa/core/Cargo.toml +++ b/nssa/core/Cargo.toml @@ -9,7 +9,7 @@ borsh.workspace = true serde = { workspace = true } thiserror.workspace = true chacha20 = { version = "0.9", default-features = false } -bytemuck = { workspace = true, optional = true } +bytemuck = { workspace = true } k256 = { workspace = true, optional = true } base58 = { workspace = true, optional = true } anyhow = { workspace = true, optional = true } diff --git a/nssa/core/src/account.rs b/nssa/core/src/account.rs index 0bbcdf0..90a4f13 100644 --- a/nssa/core/src/account.rs +++ b/nssa/core/src/account.rs @@ -45,9 +45,18 @@ impl AccountWithMetadata { } #[derive( - Copy, Clone, Serialize, Deserialize, PartialEq, Eq, Hash, BorshSerialize, BorshDeserialize, + Copy, + Clone, + Serialize, + Deserialize, + PartialEq, + Eq, + Hash, + BorshSerialize, + BorshDeserialize, + Default, )] -#[cfg_attr(any(feature = "host", test), derive(Debug, PartialOrd, Ord, Default))] +#[cfg_attr(any(feature = "host", test), derive(Debug, PartialOrd, Ord))] pub struct AccountId { value: [u8; 32], } diff --git a/program_methods/guest/src/bin/amm.rs b/program_methods/guest/src/bin/amm.rs index 0882a0d..68b593f 100644 --- a/program_methods/guest/src/bin/amm.rs +++ b/program_methods/guest/src/bin/amm.rs @@ -1,49 +1,53 @@ use nssa_core::{ account::{Account, AccountId, AccountWithMetadata, Data}, - program::{ProgramId, ProgramInput, ChainedCall, AccountPostState, PdaSeed, read_nssa_inputs, write_nssa_outputs_with_chained_call}, + program::{ + AccountPostState, ChainedCall, PdaSeed, ProgramId, ProgramInput, read_nssa_inputs, + write_nssa_outputs_with_chained_call, + }, }; // The AMM program has five functions (four directly accessible via instructions): -// 1. New AMM definition. -// Arguments to this function are: -// * Seven **default** accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, user_holding_a, user_holding_b, user_holding_lp]. -// amm_pool is a default account that will initiate the amm definition account values -// vault_holding_a is a token holding account for token a -// vault_holding_b is a token holding account for token b -// pool_lp is a token holding account for the pool's lp token -// user_holding_a is a token holding account for token a -// user_holding_b is a token holding account for token b -// user_holding_lp is a token holding account for lp token +// 1. New AMM definition. Arguments to this function are: +// * Seven **default** accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, +// user_holding_a, user_holding_b, user_holding_lp]. amm_pool is a default account that will +// initiate the amm definition account values vault_holding_a is a token holding account for +// token a vault_holding_b is a token holding account for token b pool_lp is a token holding +// account for the pool's lp token user_holding_a is a token holding account for token a +// user_holding_b is a token holding account for token b user_holding_lp is a token holding +// account for lp token // * Requires authorization: user_holding_a, user_holding_b -// * An instruction data of 65-bytes, indicating the initial amm reserves' balances and token_program_id with -// the following layout: -// [0x00 || array of balances (little-endian 16 bytes) || AMM_PROGRAM_ID)] -// 2. Swap assets -// Arguments to this function are: -// * Five accounts: [amm_pool, vault_holding_1, vault_holding_2, user_holding_a, user_holding_b]. -// * Requires authorization: user holding account associated to TOKEN_DEFINITION_ID (either user_holding_a or user_holding_b) -// * An instruction data byte string of length 49, indicating which token type to swap, quantity of tokens put into the swap -// (of type TOKEN_DEFINITION_ID) and min_amount_out. +// * An instruction data of 65-bytes, indicating the initial amm reserves' balances and +// token_program_id with the following layout: [0x00 || array of balances (little-endian 16 +// bytes) || AMM_PROGRAM_ID)] +// 2. Swap assets Arguments to this function are: +// * Five accounts: [amm_pool, vault_holding_1, vault_holding_2, user_holding_a, +// user_holding_b]. +// * Requires authorization: user holding account associated to TOKEN_DEFINITION_ID (either +// user_holding_a or user_holding_b) +// * An instruction data byte string of length 49, indicating which token type to swap, +// quantity of tokens put into the swap (of type TOKEN_DEFINITION_ID) and min_amount_out. // [0x01 || amount (little-endian 16 bytes) || TOKEN_DEFINITION_ID]. -// 3. Add liquidity -// Arguments to this function are: -// * Seven accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, user_holding_a, UserHouser_holding_a, user_holding_lp]. +// 3. Add liquidity Arguments to this function are: +// * Seven accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, user_holding_a, +// UserHouser_holding_a, user_holding_lp]. // * Requires authorization: user_holding_a, user_holding_b -// * An instruction data byte string of length 49, amounts for minimum amount of liquidity from add (min_amount_lp), -// * max amount added for each token (max_amount_a and max_amount_b); indicate -// [0x02 || array of of balances (little-endian 16 bytes)]. +// * An instruction data byte string of length 49, amounts for minimum amount of liquidity from +// add (min_amount_lp), +// * max amount added for each token (max_amount_a and max_amount_b); indicate [0x02 || array +// of of balances (little-endian 16 bytes)]. // 4. Remove liquidity -// * Seven accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, user_holding_a, UserHouser_holding_a, user_holding_lp]. +// * Seven accounts: [amm_pool, vault_holding_a, vault_holding_b, pool_lp, user_holding_a, +// UserHouser_holding_a, user_holding_lp]. // * Requires authorization: user_holding_lp -// * An instruction data byte string of length 49, amounts for minimum amount of liquidity to redeem (balance_lp), -// * minimum balance of each token to remove (min_amount_a and min_amount_b); indicate -// [0x03 || array of balances (little-endian 16 bytes)]. +// * An instruction data byte string of length 49, amounts for minimum amount of liquidity to +// redeem (balance_lp), +// * minimum balance of each token to remove (min_amount_a and min_amount_b); indicate [0x03 || +// array of balances (little-endian 16 bytes)]. // - Internal functions: -// - Swap logic -// Arguments of this function are: +// - Swap logic Arguments of this function are: // * Four accounts: [user_deposit_tx, vault_deposit_tx, vault_withdraw_tx, user_withdraw_tx]. -// user_deposit_tx and vault_deposit_tx define deposit transaction. -// vault_withdraw_tx and user_withdraw_tx define withdraw transaction. +// user_deposit_tx and vault_deposit_tx define deposit transaction. vault_withdraw_tx and +// user_withdraw_tx define withdraw transaction. // * deposit_amount is the amount for user_deposit_tx -> vault_deposit_tx transfer. // * reserve_amounts is the pool's reserves; used to compute the withdraw amount. // * Outputs the token transfers as a Vec and the withdraw amount. @@ -59,7 +63,7 @@ use nssa_core::{ const POOL_DEFINITION_DATA_SIZE: usize = 225; #[derive(Default)] -struct PoolDefinition{ +struct PoolDefinition { definition_token_a_id: AccountId, definition_token_b_id: AccountId, vault_a_id: AccountId, @@ -69,7 +73,7 @@ struct PoolDefinition{ reserve_a: u128, reserve_b: u128, fees: u128, - active: bool + active: bool, } impl PoolDefinition { @@ -98,20 +102,34 @@ impl PoolDefinition { } else { let definition_token_a_id = AccountId::new(data[0..32].try_into().expect("Parse data: The AMM program must be provided a valid AccountId for Token A definition")); let definition_token_b_id = AccountId::new(data[32..64].try_into().expect("Parse data: The AMM program must be provided a valid AccountId for Vault B definition")); - let vault_a_id = AccountId::new(data[64..96].try_into().expect("Parse data: The AMM program must be provided a valid AccountId for Vault A")); - let vault_b_id = AccountId::new(data[96..128].try_into().expect("Parse data: The AMM program must be provided a valid AccountId for Vault B")); + let vault_a_id = AccountId::new(data[64..96].try_into().expect( + "Parse data: The AMM program must be provided a valid AccountId for Vault A", + )); + let vault_b_id = AccountId::new(data[96..128].try_into().expect( + "Parse data: The AMM program must be provided a valid AccountId for Vault B", + )); let liquidity_pool_id = AccountId::new(data[128..160].try_into().expect("Parse data: The AMM program must be provided a valid AccountId for Token liquidity pool definition")); - let liquidity_pool_supply = u128::from_le_bytes(data[160..176].try_into().expect("Parse data: The AMM program must be provided a valid u128 for liquidity cap")); - let reserve_a = u128::from_le_bytes(data[176..192].try_into().expect("Parse data: The AMM program must be provided a valid u128 for reserve A balance")); - let reserve_b = u128::from_le_bytes(data[192..208].try_into().expect("Parse data: The AMM program must be provided a valid u128 for reserve B balance")); - let fees = u128::from_le_bytes(data[208..224].try_into().expect("Parse data: The AMM program must be provided a valid u128 for fees")); + let liquidity_pool_supply = u128::from_le_bytes(data[160..176].try_into().expect( + "Parse data: The AMM program must be provided a valid u128 for liquidity cap", + )); + let reserve_a = u128::from_le_bytes(data[176..192].try_into().expect( + "Parse data: The AMM program must be provided a valid u128 for reserve A balance", + )); + let reserve_b = u128::from_le_bytes(data[192..208].try_into().expect( + "Parse data: The AMM program must be provided a valid u128 for reserve B balance", + )); + let fees = u128::from_le_bytes( + data[208..224] + .try_into() + .expect("Parse data: The AMM program must be provided a valid u128 for fees"), + ); let active = match data[224] { 0 => false, 1 => true, _ => panic!("Parse data: The AMM program must be provided a valid bool for active"), }; - + Some(Self { definition_token_a_id, definition_token_b_id, @@ -128,7 +146,7 @@ impl PoolDefinition { } } -//TODO: remove repeated code for Token_Definition and TokenHoldling +// TODO: remove repeated code for Token_Definition and TokenHoldling const TOKEN_DEFINITION_TYPE: u8 = 0; const TOKEN_DEFINITION_DATA_SIZE: usize = 23; @@ -159,7 +177,6 @@ impl TokenDefinition { .expect("23 bytes should fit into Data") } - fn parse(data: &[u8]) -> Option { if data.len() != TOKEN_DEFINITION_DATA_SIZE || data[0] != TOKEN_DEFINITION_TYPE { None @@ -217,7 +234,7 @@ impl TokenHolding { bytes[0] = self.account_type; bytes[1..33].copy_from_slice(&self.definition_id.to_bytes()); bytes[33..].copy_from_slice(&self.balance.to_le_bytes()); - + bytes .to_vec() .try_into() @@ -225,69 +242,148 @@ impl TokenHolding { } } - type Instruction = Vec; fn main() { - let (ProgramInput { - pre_states, - instruction, - }, instruction_words) = read_nssa_inputs::(); + let ( + ProgramInput { + pre_states, + instruction, + }, + instruction_words, + ) = read_nssa_inputs::(); - let (post_states, chained_calls) = match instruction[0] { - 0 => { - let balance_a: u128 = u128::from_le_bytes(instruction[1..17].try_into().expect("New definition: AMM Program expects u128 for balance a")); - let balance_b: u128 = u128::from_le_bytes(instruction[17..33].try_into().expect("New definition: AMM Program expects u128 for balance b")); + let (post_states, chained_calls) = + match instruction[0] { + 0 => { + let balance_a: u128 = u128::from_le_bytes( + instruction[1..17] + .try_into() + .expect("New definition: AMM Program expects u128 for balance a"), + ); + let balance_b: u128 = u128::from_le_bytes( + instruction[17..33] + .try_into() + .expect("New definition: AMM Program expects u128 for balance b"), + ); - // Convert Vec to ProgramId ([u32;8]) - let mut amm_program_id: [u32;8] = [0;8]; - amm_program_id[0] = u32::from_le_bytes(instruction[33..37].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[1] = u32::from_le_bytes(instruction[37..41].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[2] = u32::from_le_bytes(instruction[41..45].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[3] = u32::from_le_bytes(instruction[45..49].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[4] = u32::from_le_bytes(instruction[49..53].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[5] = u32::from_le_bytes(instruction[53..57].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[6] = u32::from_le_bytes(instruction[57..61].try_into().expect("New definition: AMM Program expects valid u32")); - amm_program_id[7] = u32::from_le_bytes(instruction[61..65].try_into().expect("New definition: AMM Program expects valid u32")); + // Convert Vec to ProgramId ([u32;8]) + let mut amm_program_id: [u32; 8] = [0; 8]; + amm_program_id[0] = u32::from_le_bytes( + instruction[33..37] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[1] = u32::from_le_bytes( + instruction[37..41] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[2] = u32::from_le_bytes( + instruction[41..45] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[3] = u32::from_le_bytes( + instruction[45..49] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[4] = u32::from_le_bytes( + instruction[49..53] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[5] = u32::from_le_bytes( + instruction[53..57] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[6] = u32::from_le_bytes( + instruction[57..61] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); + amm_program_id[7] = u32::from_le_bytes( + instruction[61..65] + .try_into() + .expect("New definition: AMM Program expects valid u32"), + ); - new_definition(&pre_states, &[balance_a, balance_b], amm_program_id) - } - 1 => { - let mut token_in_id: [u8;32] = [0;32]; - token_in_id[0..].copy_from_slice(&instruction[33..65]); - let token_in_id = AccountId::new(token_in_id); - - let amount_in = u128::from_le_bytes(instruction[1..17].try_into().expect("Swap: AMM Program expects valid u128 for balance to move")); - let min_amount_out = u128::from_le_bytes(instruction[17..33].try_into().expect("Swap: AMM Program expects valid u128 for balance to move")); + new_definition(&pre_states, &[balance_a, balance_b], amm_program_id) + } + 1 => { + let mut token_in_id: [u8; 32] = [0; 32]; + token_in_id[0..].copy_from_slice(&instruction[33..65]); + let token_in_id = AccountId::new(token_in_id); - swap(&pre_states, &[amount_in, min_amount_out], token_in_id) - } - 2 => { - let min_amount_lp = u128::from_le_bytes(instruction[1..17].try_into().expect("Add liquidity: AMM Program expects valid u128 for min amount liquidity")); - let max_amount_a = u128::from_le_bytes(instruction[17..33].try_into().expect("Add liquidity: AMM Program expects valid u128 for max amount a")); - let max_amount_b = u128::from_le_bytes(instruction[33..49].try_into().expect("Add liquidity: AMM Program expects valid u128 for max amount b")); - - add_liquidity(&pre_states, &[min_amount_lp, max_amount_a, max_amount_b]) - } - 3 => { - let balance_lp = u128::from_le_bytes(instruction[1..17].try_into().expect("Remove liquidity: AMM Program expects valid u128 for balance liquidity")); - let min_amount_a = u128::from_le_bytes(instruction[17..33].try_into().expect("Remove liquidity: AMM Program expects valid u128 for balance a")); - let min_amount_b = u128::from_le_bytes(instruction[33..49].try_into().expect("Remove liquidity: AMM Program expects valid u128 for balance b")); + let amount_in = u128::from_le_bytes( + instruction[1..17] + .try_into() + .expect("Swap: AMM Program expects valid u128 for balance to move"), + ); + let min_amount_out = u128::from_le_bytes( + instruction[17..33] + .try_into() + .expect("Swap: AMM Program expects valid u128 for balance to move"), + ); - remove_liquidity(&pre_states, &[balance_lp, min_amount_a, min_amount_b]) - } - _ => panic!("Invalid instruction"), - }; + swap(&pre_states, &[amount_in, min_amount_out], token_in_id) + } + 2 => { + let min_amount_lp = u128::from_le_bytes(instruction[1..17].try_into().expect( + "Add liquidity: AMM Program expects valid u128 for min amount liquidity", + )); + let max_amount_a = u128::from_le_bytes( + instruction[17..33] + .try_into() + .expect("Add liquidity: AMM Program expects valid u128 for max amount a"), + ); + let max_amount_b = u128::from_le_bytes( + instruction[33..49] + .try_into() + .expect("Add liquidity: AMM Program expects valid u128 for max amount b"), + ); + + add_liquidity(&pre_states, &[min_amount_lp, max_amount_a, max_amount_b]) + } + 3 => { + let balance_lp = u128::from_le_bytes(instruction[1..17].try_into().expect( + "Remove liquidity: AMM Program expects valid u128 for balance liquidity", + )); + let min_amount_a = u128::from_le_bytes( + instruction[17..33] + .try_into() + .expect("Remove liquidity: AMM Program expects valid u128 for balance a"), + ); + let min_amount_b = u128::from_le_bytes( + instruction[33..49] + .try_into() + .expect("Remove liquidity: AMM Program expects valid u128 for balance b"), + ); + + remove_liquidity(&pre_states, &[balance_lp, min_amount_a, min_amount_b]) + } + _ => panic!("Invalid instruction"), + }; write_nssa_outputs_with_chained_call(instruction_words, pre_states, post_states, chained_calls); } - -fn compute_pool_pda(amm_program_id: ProgramId, definition_token_a_id: AccountId, definition_token_b_id: AccountId) -> AccountId { - AccountId::from((&amm_program_id, - &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id))) +fn compute_pool_pda( + amm_program_id: ProgramId, + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> AccountId { + AccountId::from(( + &amm_program_id, + &compute_pool_pda_seed(definition_token_a_id, definition_token_b_id), + )) } -fn compute_pool_pda_seed(definition_token_a_id: AccountId, definition_token_b_id: AccountId) -> PdaSeed { +fn compute_pool_pda_seed( + definition_token_a_id: AccountId, + definition_token_b_id: AccountId, +) -> PdaSeed { use risc0_zkvm::sha::{Impl, Sha256}; let mut i: usize = 0; @@ -295,13 +391,13 @@ fn compute_pool_pda_seed(definition_token_a_id: AccountId, definition_token_b_id if definition_token_a_id.value()[i] > definition_token_b_id.value()[i] { let token_1 = definition_token_a_id.clone(); let token_2 = definition_token_b_id.clone(); - break (token_1, token_2) + break (token_1, token_2); } else if definition_token_a_id.value()[i] < definition_token_b_id.value()[i] { let token_1 = definition_token_b_id.clone(); let token_2 = definition_token_a_id.clone(); - break (token_1, token_2) + break (token_1, token_2); } - + if i == 32 { panic!("Definitions match"); } else { @@ -313,32 +409,42 @@ fn compute_pool_pda_seed(definition_token_a_id: AccountId, definition_token_b_id bytes[0..32].copy_from_slice(&token_1.to_bytes()); bytes[32..].copy_from_slice(&token_2.to_bytes()); - PdaSeed::new(Impl::hash_bytes(&bytes).as_bytes().try_into().expect("Hash output must be exactly 32 bytes long")) + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) } -fn compute_vault_pda(amm_program_id: ProgramId, - pool_id: AccountId, - definition_token_id: AccountId +fn compute_vault_pda( + amm_program_id: ProgramId, + pool_id: AccountId, + definition_token_id: AccountId, ) -> AccountId { - AccountId::from((&amm_program_id, - &compute_vault_pda_seed(pool_id, definition_token_id))) + AccountId::from(( + &amm_program_id, + &compute_vault_pda_seed(pool_id, definition_token_id), + )) } -fn compute_vault_pda_seed(pool_id: AccountId, - definition_token_id: AccountId -) -> PdaSeed { +fn compute_vault_pda_seed(pool_id: AccountId, definition_token_id: AccountId) -> PdaSeed { use risc0_zkvm::sha::{Impl, Sha256}; let mut bytes = [0; 64]; bytes[0..32].copy_from_slice(&pool_id.to_bytes()); bytes[32..].copy_from_slice(&definition_token_id.to_bytes()); - PdaSeed::new(Impl::hash_bytes(&bytes).as_bytes().try_into().expect("Hash output must be exactly 32 bytes long")) + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) } fn compute_liquidity_token_pda(amm_program_id: ProgramId, pool_id: AccountId) -> AccountId { - AccountId::from((&amm_program_id, - &compute_liquidity_token_pda_seed(pool_id))) + AccountId::from((&amm_program_id, &compute_liquidity_token_pda_seed(pool_id))) } fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { @@ -346,20 +452,24 @@ fn compute_liquidity_token_pda_seed(pool_id: AccountId) -> PdaSeed { let mut bytes = [0; 64]; bytes[0..32].copy_from_slice(&pool_id.to_bytes()); - bytes[32..].copy_from_slice(&[0;32]); + bytes[32..].copy_from_slice(&[0; 32]); - PdaSeed::new(Impl::hash_bytes(&bytes).as_bytes().try_into().expect("Hash output must be exactly 32 bytes long")) + PdaSeed::new( + Impl::hash_bytes(&bytes) + .as_bytes() + .try_into() + .expect("Hash output must be exactly 32 bytes long"), + ) } -fn new_definition ( - pre_states: &[AccountWithMetadata], - balance_in: &[u128], - amm_program_id: ProgramId, - ) -> (Vec, Vec) { - - //Pool accounts: pool itself, and its 2 vaults and LP token - //2 accounts for funding tokens - //initial funder's LP account +fn new_definition( + pre_states: &[AccountWithMetadata], + balance_in: &[u128], + amm_program_id: ProgramId, +) -> (Vec, Vec) { + // Pool accounts: pool itself, and its 2 vaults and LP token + // 2 accounts for funding tokens + // initial funder's LP account if pre_states.len() != 7 { panic!("Invalid number of input accounts") } @@ -386,10 +496,12 @@ fn new_definition ( // Verify token_a and token_b are different let definition_token_a_id = TokenHolding::parse(&user_holding_a.account.data) - .expect("New definition: AMM Program expects valid Token Holding account for Token A").definition_id; + .expect("New definition: AMM Program expects valid Token Holding account for Token A") + .definition_id; let definition_token_b_id = TokenHolding::parse(&user_holding_b.account.data) - .expect("New definition: AMM Program expects valid Token Holding account for Token B").definition_id; - + .expect("New definition: AMM Program expects valid Token Holding account for Token B") + .definition_id; + // both instances of the same token program let token_program = user_holding_a.account.program_owner; @@ -397,30 +509,42 @@ fn new_definition ( panic!("Cannot set up a swap for a token with itself") } - if pool.account_id != compute_pool_pda(amm_program_id.clone(), - definition_token_a_id.clone(), - definition_token_b_id.clone()) { + if pool.account_id + != compute_pool_pda( + amm_program_id.clone(), + definition_token_a_id.clone(), + definition_token_b_id.clone(), + ) + { panic!("Pool Definition Account ID does not match PDA"); } - if vault_a.account_id != compute_vault_pda(amm_program_id.clone(), - pool.account_id.clone(), - definition_token_a_id.clone()) || - vault_b.account_id != compute_vault_pda(amm_program_id.clone(), - pool.account_id.clone(), - definition_token_b_id.clone()) { - panic!("Vault ID does not match PDA"); + if vault_a.account_id + != compute_vault_pda( + amm_program_id.clone(), + pool.account_id.clone(), + definition_token_a_id.clone(), + ) + || vault_b.account_id + != compute_vault_pda( + amm_program_id.clone(), + pool.account_id.clone(), + definition_token_b_id.clone(), + ) + { + panic!("Vault ID does not match PDA"); } - if pool_lp.account_id != compute_liquidity_token_pda(amm_program_id.clone(), - pool.account_id.clone()) { + if pool_lp.account_id + != compute_liquidity_token_pda(amm_program_id.clone(), pool.account_id.clone()) + { panic!("Liquidity pool Token Definition Account ID does not match PDA"); } // Verify that Pool Account is not active let pool_account_data = if pool.account == Account::default() { PoolDefinition::default() - } else { + } else { PoolDefinition::parse(&pool.account.data).expect("AMM program expects a valid Pool account") }; @@ -428,81 +552,96 @@ fn new_definition ( panic!("Cannot initialize an active Pool Definition") } - //3. LP Token minting calculation + // 3. LP Token minting calculation // We assume LP is based on the initial deposit amount for Token_A. // 5. Update pool account let mut pool_post = pool.account.clone(); let pool_post_definition = PoolDefinition { - definition_token_a_id, - definition_token_b_id, - vault_a_id: vault_a.account_id.clone(), - vault_b_id: vault_b.account_id.clone(), - liquidity_pool_id: pool_lp.account_id.clone(), - liquidity_pool_supply: amount_a.clone(), - reserve_a: amount_a.clone(), - reserve_b: amount_b.clone(), - fees: 0u128, //TODO: we assume all fees are 0 for now. - active: true, + definition_token_a_id, + definition_token_b_id, + vault_a_id: vault_a.account_id.clone(), + vault_b_id: vault_b.account_id.clone(), + liquidity_pool_id: pool_lp.account_id.clone(), + liquidity_pool_supply: amount_a.clone(), + reserve_a: amount_a.clone(), + reserve_b: amount_b.clone(), + fees: 0u128, // TODO: we assume all fees are 0 for now. + active: true, }; - pool_post.data = pool_post_definition.into_data().try_into().expect("Data too big"); - let pool_post: AccountPostState = - if pool.account == Account::default() { AccountPostState::new_claimed(pool_post.clone()) } - else { AccountPostState::new(pool_post.clone()) }; + pool_post.data = pool_post_definition + .into_data() + .try_into() + .expect("Data too big"); + let pool_post: AccountPostState = if pool.account == Account::default() { + AccountPostState::new_claimed(pool_post.clone()) + } else { + AccountPostState::new(pool_post.clone()) + }; let mut chained_calls = Vec::::new(); - //Chain call for Token A (user_holding_a -> Vault_A) + // Chain call for Token A (user_holding_a -> Vault_A) let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&amount_a.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("New definition: AMM Program expects valid token transfer instruction data"); - let call_token_a = ChainedCall{ - program_id: user_holding_a.account.program_owner, - instruction_data, - pre_states: vec![user_holding_a.clone(), vault_a.clone()], - pda_seeds: Vec::::new(), - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("New definition: AMM Program expects valid token transfer instruction data"); + let call_token_a = ChainedCall { + program_id: user_holding_a.account.program_owner, + instruction_data, + pre_states: vec![user_holding_a.clone(), vault_a.clone()], + pda_seeds: Vec::::new(), + }; - //Chain call for Token B (user_holding_b -> Vault_B) + // Chain call for Token B (user_holding_b -> Vault_B) let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&amount_b.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("New definition: AMM Program expects valid instruction_data"); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("New definition: AMM Program expects valid instruction_data"); - let call_token_b = ChainedCall{ - program_id: user_holding_b.account.program_owner, - instruction_data, - pre_states: vec![user_holding_b.clone(), vault_b.clone()], - pda_seeds: Vec::::new(), - }; + let call_token_b = ChainedCall { + program_id: user_holding_b.account.program_owner, + instruction_data, + pre_states: vec![user_holding_b.clone(), vault_b.clone()], + pda_seeds: Vec::::new(), + }; - //Chain call for liquidity token (TokenLP definition -> User LP Holding) + // Chain call for liquidity token (TokenLP definition -> User LP Holding) let mut instruction_data = [0; 23]; - instruction_data[0] = if pool.account == Account::default() { 0 } else { 4 }; //new or mint - let nme = if pool.account == Account::default() { [1u8;6] } else { [0u8; 6] }; + instruction_data[0] = if pool.account == Account::default() { + 0 + } else { + 4 + }; //new or mint + let nme = if pool.account == Account::default() { + [1u8; 6] + } else { + [0u8; 6] + }; instruction_data[1..17].copy_from_slice(&amount_a.to_le_bytes()); instruction_data[17..].copy_from_slice(&nme); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("New definition: AMM Program expects valid instruction_data"); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("New definition: AMM Program expects valid instruction_data"); let mut pool_lp_auth = pool_lp.clone(); pool_lp_auth.is_authorized = true; let token_program_id = user_holding_a.account.program_owner; - let call_token_lp = ChainedCall{ - program_id: token_program_id, - instruction_data, - pre_states: vec![pool_lp_auth.clone(), user_holding_lp.clone()], - pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())], - }; + let call_token_lp = ChainedCall { + program_id: token_program_id, + instruction_data, + pre_states: vec![pool_lp_auth.clone(), user_holding_lp.clone()], + pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())], + }; chained_calls.push(call_token_lp); chained_calls.push(call_token_b); chained_calls.push(call_token_a); - let post_states = vec![ pool_post.clone(), AccountPostState::new(pre_states[1].account.clone()), @@ -510,17 +649,17 @@ fn new_definition ( AccountPostState::new(pre_states[3].account.clone()), AccountPostState::new(pre_states[4].account.clone()), AccountPostState::new(pre_states[5].account.clone()), - AccountPostState::new(pre_states[6].account.clone())]; + AccountPostState::new(pre_states[6].account.clone()), + ]; (post_states.clone(), chained_calls) } fn swap( - pre_states: &[AccountWithMetadata], - amounts: &[u128], - token_in_id: AccountId, - ) -> (Vec, Vec) { - + pre_states: &[AccountWithMetadata], + amounts: &[u128], + token_in_id: AccountId, +) -> (Vec, Vec) { if pre_states.len() != 5 { panic!("Invalid number of input accounts"); } @@ -530,7 +669,7 @@ fn swap( } let amount_in = amounts[0]; - let min_amount_out = amounts[1]; + let min_amount_out = amounts[1]; let pool = &pre_states[0]; let vault_a = &pre_states[1]; @@ -539,77 +678,98 @@ fn swap( let user_holding_b = &pre_states[4]; // Verify vaults are in fact vaults - let pool_def_data = PoolDefinition::parse(&pool.account.data).expect("Swap: AMM Program expects a valid Pool Definition Account"); + let pool_def_data = PoolDefinition::parse(&pool.account.data) + .expect("Swap: AMM Program expects a valid Pool Definition Account"); if !pool_def_data.active { panic!("Pool is inactive"); } - if vault_a.account_id != pool_def_data.vault_a_id { + if vault_a.account_id != pool_def_data.vault_a_id { panic!("Vault A was not provided"); } - + if vault_b.account_id != pool_def_data.vault_b_id { panic!("Vault B was not provided"); } // fetch pool reserves // validates reserves is at least the vaults' balances - if TokenHolding::parse(&vault_a.account.data).expect("Swap: AMM Program expects a valid Token Holding Account for Vault A").balance < pool_def_data.reserve_a { + if TokenHolding::parse(&vault_a.account.data) + .expect("Swap: AMM Program expects a valid Token Holding Account for Vault A") + .balance + < pool_def_data.reserve_a + { panic!("Reserve for Token A exceeds vault balance"); } - if TokenHolding::parse(&vault_b.account.data).expect("Swap: AMM Program expects a valid Token Holding Account for Vault B").balance < pool_def_data.reserve_b { - panic!("Reserve for Token B exceeds vault balance"); + if TokenHolding::parse(&vault_b.account.data) + .expect("Swap: AMM Program expects a valid Token Holding Account for Vault B") + .balance + < pool_def_data.reserve_b + { + panic!("Reserve for Token B exceeds vault balance"); } - let (chained_calls, [deposit_a, withdraw_a], [deposit_b, withdraw_b]) - = if token_in_id == pool_def_data.definition_token_a_id { - let (chained_calls, withdraw_b) = swap_logic(&[user_holding_a.clone(), - vault_a.clone(), - vault_b.clone(), - user_holding_b.clone()], - &[amount_in, min_amount_out], - &[pool_def_data.reserve_a, pool_def_data.reserve_b], - pool.account_id.clone()); - - (chained_calls, [amount_in, 0], [0, withdraw_b]) - } else if token_in_id == pool_def_data.definition_token_b_id { - let (chained_calls, withdraw_a) = swap_logic(&[user_holding_b.clone(), - vault_b.clone(), - vault_a.clone(), - user_holding_a.clone()], - &[amount_in, min_amount_out], - &[pool_def_data.reserve_b, pool_def_data.reserve_a], - pool.account_id.clone()); + let (chained_calls, [deposit_a, withdraw_a], [deposit_b, withdraw_b]) = + if token_in_id == pool_def_data.definition_token_a_id { + let (chained_calls, withdraw_b) = swap_logic( + &[ + user_holding_a.clone(), + vault_a.clone(), + vault_b.clone(), + user_holding_b.clone(), + ], + &[amount_in, min_amount_out], + &[pool_def_data.reserve_a, pool_def_data.reserve_b], + pool.account_id.clone(), + ); - (chained_calls, [0, withdraw_a], [amount_in, 0]) - } else { - panic!("AccountId is not a token type for the pool"); - }; + (chained_calls, [amount_in, 0], [0, withdraw_b]) + } else if token_in_id == pool_def_data.definition_token_b_id { + let (chained_calls, withdraw_a) = swap_logic( + &[ + user_holding_b.clone(), + vault_b.clone(), + vault_a.clone(), + user_holding_a.clone(), + ], + &[amount_in, min_amount_out], + &[pool_def_data.reserve_b, pool_def_data.reserve_a], + pool.account_id.clone(), + ); + + (chained_calls, [0, withdraw_a], [amount_in, 0]) + } else { + panic!("AccountId is not a token type for the pool"); + }; // Update pool account let mut pool_post = pool.account.clone(); let pool_post_definition = PoolDefinition { - definition_token_a_id: pool_def_data.definition_token_a_id.clone(), - definition_token_b_id: pool_def_data.definition_token_b_id.clone(), - vault_a_id: pool_def_data.vault_a_id.clone(), - vault_b_id: pool_def_data.vault_b_id.clone(), - liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), - liquidity_pool_supply: pool_def_data.liquidity_pool_supply.clone(), - reserve_a: pool_def_data.reserve_a + deposit_a - withdraw_a, - reserve_b: pool_def_data.reserve_b + deposit_b - withdraw_b, - fees: 0u128, - active: true, + definition_token_a_id: pool_def_data.definition_token_a_id.clone(), + definition_token_b_id: pool_def_data.definition_token_b_id.clone(), + vault_a_id: pool_def_data.vault_a_id.clone(), + vault_b_id: pool_def_data.vault_b_id.clone(), + liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), + liquidity_pool_supply: pool_def_data.liquidity_pool_supply.clone(), + reserve_a: pool_def_data.reserve_a + deposit_a - withdraw_a, + reserve_b: pool_def_data.reserve_b + deposit_b - withdraw_b, + fees: 0u128, + active: true, }; - pool_post.data = pool_post_definition.into_data().try_into().expect("Data too big"); - + pool_post.data = pool_post_definition + .into_data() + .try_into() + .expect("Data too big"); + let post_states = vec![ AccountPostState::new(pool_post.clone()), AccountPostState::new(pre_states[1].account.clone()), AccountPostState::new(pre_states[2].account.clone()), AccountPostState::new(pre_states[3].account.clone()), - AccountPostState::new(pre_states[4].account.clone())]; + AccountPostState::new(pre_states[4].account.clone()), + ]; (post_states, chained_calls) } @@ -619,8 +779,7 @@ fn swap_logic( balances: &[u128], reserve_amounts: &[u128], pool_id: AccountId, -) -> (Vec, u128) -{ +) -> (Vec, u128) { let user_deposit_tx = pre_states[0].clone(); let vault_deposit_tx = pre_states[1].clone(); let vault_withdraw_tx = pre_states[2].clone(); @@ -634,10 +793,11 @@ fn swap_logic( // Compute withdraw amount // Compute pool's exchange constant - // let k = pool_def_data.reserve_a * pool_def_data.reserve_b; - let withdraw_amount = (reserve_withdraw_vault_amount * deposit_amount)/(reserve_deposit_vault_amount + deposit_amount); + // let k = pool_def_data.reserve_a * pool_def_data.reserve_b; + let withdraw_amount = (reserve_withdraw_vault_amount * deposit_amount) + / (reserve_deposit_vault_amount + deposit_amount); - //Slippage check + // Slippage check if min_amount_out > withdraw_amount { panic!("Withdraw amount is less than minimal amount out"); } @@ -647,46 +807,47 @@ fn swap_logic( } let mut chained_calls = Vec::new(); - let mut instruction_data = [0;23]; + let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&deposit_amount.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - chained_calls.push( - ChainedCall{ - program_id: vault_deposit_tx.account.program_owner, - instruction_data, - pre_states: vec![user_deposit_tx.clone(), vault_deposit_tx.clone()], - pda_seeds: Vec::::new(), - } - ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + chained_calls.push(ChainedCall { + program_id: vault_deposit_tx.account.program_owner, + instruction_data, + pre_states: vec![user_deposit_tx.clone(), vault_deposit_tx.clone()], + pda_seeds: Vec::::new(), + }); let mut vault_withdraw_tx = vault_withdraw_tx.clone(); vault_withdraw_tx.is_authorized = true; - let mut instruction_data = [0;23]; + let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&withdraw_amount.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - chained_calls.push( - ChainedCall{ - program_id: vault_deposit_tx.account.program_owner, - instruction_data, - pre_states: vec![vault_withdraw_tx.clone(), user_withdraw_tx.clone()], - pda_seeds: vec![compute_vault_pda_seed(pool_id, - TokenHolding::parse(&vault_withdraw_tx.account.data) - .expect("Swap Logic: AMM Program expects valid token data") - .definition_id)], - } - ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + chained_calls.push(ChainedCall { + program_id: vault_deposit_tx.account.program_owner, + instruction_data, + pre_states: vec![vault_withdraw_tx.clone(), user_withdraw_tx.clone()], + pda_seeds: vec![compute_vault_pda_seed( + pool_id, + TokenHolding::parse(&vault_withdraw_tx.account.data) + .expect("Swap Logic: AMM Program expects valid token data") + .definition_id, + )], + }); (chained_calls, withdraw_amount) } -fn add_liquidity(pre_states: &[AccountWithMetadata], - balances: &[u128]) -> (Vec, Vec) { - +fn add_liquidity( + pre_states: &[AccountWithMetadata], + balances: &[u128], +) -> (Vec, Vec) { if pre_states.len() != 7 { - panic!("Invalid number of input accounts"); + panic!("Invalid number of input accounts"); } let pool = &pre_states[0]; @@ -698,7 +859,8 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], let user_holding_lp = &pre_states[6]; // Verify vaults are in fact vaults - let pool_def_data = PoolDefinition::parse(&pool.account.data).expect("Add liquidity: AMM Program expects valid Pool Definition Account"); + let pool_def_data = PoolDefinition::parse(&pool.account.data) + .expect("Add liquidity: AMM Program expects valid Pool Definition Account"); if vault_a.account_id != pool_def_data.vault_a_id { panic!("Vault A was not provided"); } @@ -709,7 +871,7 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], if vault_b.account_id != pool_def_data.vault_b_id { panic!("Vault B was not provided"); - } + } if balances.len() != 3 { panic!("Invalid number of input balances"); } @@ -725,10 +887,14 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], if min_amount_lp == 0 { panic!("Min-lp must be nonzero"); } - + // 2. Determine deposit amount - let vault_b_balance = TokenHolding::parse(&vault_b.account.data).expect("Add liquidity: AMM Program expects valid Token Holding Account for Vault B").balance; - let vault_a_balance = TokenHolding::parse(&vault_a.account.data).expect("Add liquidity: AMM Program expects valid Token Holding Account for Vault A").balance; + let vault_b_balance = TokenHolding::parse(&vault_b.account.data) + .expect("Add liquidity: AMM Program expects valid Token Holding Account for Vault B") + .balance; + let vault_a_balance = TokenHolding::parse(&vault_a.account.data) + .expect("Add liquidity: AMM Program expects valid Token Holding Account for Vault A") + .balance; if pool_def_data.reserve_a == 0 || pool_def_data.reserve_b == 0 { panic!("Reserves must be nonzero"); @@ -739,24 +905,34 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], } // Calculate actual_amounts - let ideal_a: u128 = (pool_def_data.reserve_a*max_amount_b)/pool_def_data.reserve_b; - let ideal_b: u128 = (pool_def_data.reserve_b*max_amount_a)/pool_def_data.reserve_a; + let ideal_a: u128 = (pool_def_data.reserve_a * max_amount_b) / pool_def_data.reserve_b; + let ideal_b: u128 = (pool_def_data.reserve_b * max_amount_a) / pool_def_data.reserve_a; - let actual_amount_a = if ideal_a > max_amount_a { max_amount_a } else { ideal_a }; - let actual_amount_b = if ideal_b > max_amount_b { max_amount_b } else { ideal_b }; + let actual_amount_a = if ideal_a > max_amount_a { + max_amount_a + } else { + ideal_a + }; + let actual_amount_b = if ideal_b > max_amount_b { + max_amount_b + } else { + ideal_b + }; // 3. Validate amounts if max_amount_a < actual_amount_a || max_amount_b < actual_amount_b { panic!("Actual trade amounts cannot exceed max_amounts"); } - + if actual_amount_a == 0 || actual_amount_b == 0 { panic!("A trade amount is 0"); } - + // 4. Calculate LP to mint - let delta_lp = std::cmp::min(pool_def_data.liquidity_pool_supply * actual_amount_a/pool_def_data.reserve_a, - pool_def_data.liquidity_pool_supply * actual_amount_b/pool_def_data.reserve_b); + let delta_lp = std::cmp::min( + pool_def_data.liquidity_pool_supply * actual_amount_a / pool_def_data.reserve_a, + pool_def_data.liquidity_pool_supply * actual_amount_b / pool_def_data.reserve_b, + ); if delta_lp == 0 { panic!("Payable LP must be nonzero"); @@ -765,48 +941,53 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], if delta_lp < min_amount_lp { panic!("Payable LP is less than provided minimum LP amount"); } - + // 5. Update pool account let mut pool_post = pool.account.clone(); let pool_post_definition = PoolDefinition { - definition_token_a_id: pool_def_data.definition_token_a_id.clone(), - definition_token_b_id: pool_def_data.definition_token_b_id.clone(), - vault_a_id: pool_def_data.vault_a_id.clone(), - vault_b_id: pool_def_data.vault_b_id.clone(), - liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), - liquidity_pool_supply: pool_def_data.liquidity_pool_supply + delta_lp, - reserve_a: pool_def_data.reserve_a + actual_amount_a, - reserve_b: pool_def_data.reserve_b + actual_amount_b, - fees: 0u128, - active: true, + definition_token_a_id: pool_def_data.definition_token_a_id.clone(), + definition_token_b_id: pool_def_data.definition_token_b_id.clone(), + vault_a_id: pool_def_data.vault_a_id.clone(), + vault_b_id: pool_def_data.vault_b_id.clone(), + liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), + liquidity_pool_supply: pool_def_data.liquidity_pool_supply + delta_lp, + reserve_a: pool_def_data.reserve_a + actual_amount_a, + reserve_b: pool_def_data.reserve_b + actual_amount_b, + fees: 0u128, + active: true, }; - - pool_post.data = pool_post_definition.into_data().try_into().expect("Data too big"); + + pool_post.data = pool_post_definition + .into_data() + .try_into() + .expect("Data too big"); let mut chained_call = Vec::new(); // Chain call for Token A (UserHoldingA -> Vault_A) let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&actual_amount_a.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("Add liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_a = ChainedCall{ - program_id: vault_a.account.program_owner, - instruction_data, - pre_states: vec![user_holding_a.clone(), vault_a.clone()], - pda_seeds: Vec::::new(), - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("Add liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_a = ChainedCall { + program_id: vault_a.account.program_owner, + instruction_data, + pre_states: vec![user_holding_a.clone(), vault_a.clone()], + pda_seeds: Vec::::new(), + }; - // Chain call for Token B (UserHoldingB -> Vault_B) + // Chain call for Token B (UserHoldingB -> Vault_B) let mut instruction_data = [0; 23]; instruction_data[0] = 1; instruction_data[1..17].copy_from_slice(&actual_amount_b.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("Add liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_b = ChainedCall{ - program_id: vault_b.account.program_owner, - instruction_data, - pre_states: vec![user_holding_b.clone(), vault_b.clone()], - pda_seeds: Vec::::new(), - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("Add liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_b = ChainedCall { + program_id: vault_b.account.program_owner, + instruction_data, + pre_states: vec![user_holding_b.clone(), vault_b.clone()], + pda_seeds: Vec::::new(), + }; // Chain call for LP (mint new tokens for user_holding_lp) let mut pool_definition_lp_auth = pool_definition_lp.clone(); @@ -815,37 +996,38 @@ fn add_liquidity(pre_states: &[AccountWithMetadata], let mut instruction_data = [0; 23]; instruction_data[0] = 4; instruction_data[1..17].copy_from_slice(&delta_lp.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("Add liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_lp = ChainedCall{ - program_id: pool_definition_lp.account.program_owner, - instruction_data, - pre_states: vec![pool_definition_lp_auth.clone(), user_holding_lp.clone()], - pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())] - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("Add liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_lp = ChainedCall { + program_id: pool_definition_lp.account.program_owner, + instruction_data, + pre_states: vec![pool_definition_lp_auth.clone(), user_holding_lp.clone()], + pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())], + }; chained_call.push(call_token_lp); chained_call.push(call_token_b); chained_call.push(call_token_a); let post_states = vec![ - AccountPostState::new(pool_post), + AccountPostState::new(pool_post), AccountPostState::new(pre_states[1].account.clone()), AccountPostState::new(pre_states[2].account.clone()), AccountPostState::new(pre_states[3].account.clone()), AccountPostState::new(pre_states[4].account.clone()), AccountPostState::new(pre_states[5].account.clone()), - AccountPostState::new(pre_states[6].account.clone()),]; + AccountPostState::new(pre_states[6].account.clone()), + ]; (post_states, chained_call) - } -fn remove_liquidity(pre_states: &[AccountWithMetadata], - amounts: &[u128] -) -> (Vec, Vec) -{ +fn remove_liquidity( + pre_states: &[AccountWithMetadata], + amounts: &[u128], +) -> (Vec, Vec) { if pre_states.len() != 7 { - panic!("Invalid number of input accounts"); + panic!("Invalid number of input accounts"); } let pool = &pre_states[0]; @@ -857,7 +1039,7 @@ fn remove_liquidity(pre_states: &[AccountWithMetadata], let user_holding_lp = &pre_states[6]; if amounts.len() != 3 { - panic!("Invalid number of balances"); + panic!("Invalid number of balances"); } let amount_lp = amounts[0]; @@ -865,7 +1047,8 @@ fn remove_liquidity(pre_states: &[AccountWithMetadata], let amount_min_b = amounts[2]; // Verify vaults are in fact vaults - let pool_def_data = PoolDefinition::parse(&pool.account.data).expect("Remove liquidity: AMM Program expects a valid Pool Definition Account"); + let pool_def_data = PoolDefinition::parse(&pool.account.data) + .expect("Remove liquidity: AMM Program expects a valid Pool Definition Account"); if !pool_def_data.active { panic!("Pool is inactive"); @@ -882,7 +1065,7 @@ fn remove_liquidity(pre_states: &[AccountWithMetadata], if vault_b.account_id != pool_def_data.vault_b_id { panic!("Vault B was not provided"); } - + // Vault addresses do not need to be checked with PDA // calculation for setting authorization since stored // in the Pool Definition. @@ -900,14 +1083,19 @@ fn remove_liquidity(pre_states: &[AccountWithMetadata], } // 2. Compute withdrawal amounts - let user_holding_lp_data = TokenHolding::parse(&user_holding_lp.account.data).expect("Remove liquidity: AMM Program expects a valid Token Account for liquidity token"); - - if user_holding_lp_data.balance > pool_def_data.liquidity_pool_supply || user_holding_lp_data.definition_id != pool_def_data.liquidity_pool_id { + let user_holding_lp_data = TokenHolding::parse(&user_holding_lp.account.data) + .expect("Remove liquidity: AMM Program expects a valid Token Account for liquidity token"); + + if user_holding_lp_data.balance > pool_def_data.liquidity_pool_supply + || user_holding_lp_data.definition_id != pool_def_data.liquidity_pool_id + { panic!("Invalid liquidity account provided"); } - let withdraw_amount_a = (pool_def_data.reserve_a * amount_lp)/pool_def_data.liquidity_pool_supply; - let withdraw_amount_b = (pool_def_data.reserve_b * amount_lp)/pool_def_data.liquidity_pool_supply; + let withdraw_amount_a = + (pool_def_data.reserve_a * amount_lp) / pool_def_data.liquidity_pool_supply; + let withdraw_amount_b = + (pool_def_data.reserve_b * amount_lp) / pool_def_data.liquidity_pool_supply; // 3. Validate and slippage check if withdraw_amount_a < amount_min_a { @@ -918,95 +1106,117 @@ fn remove_liquidity(pre_states: &[AccountWithMetadata], } // 4. Calculate LP to reduce cap by - let delta_lp : u128 = (pool_def_data.liquidity_pool_supply*amount_lp)/pool_def_data.liquidity_pool_supply; + let delta_lp: u128 = + (pool_def_data.liquidity_pool_supply * amount_lp) / pool_def_data.liquidity_pool_supply; - let active: bool = if pool_def_data.liquidity_pool_supply - delta_lp == 0 { false } else { true }; + let active: bool = if pool_def_data.liquidity_pool_supply - delta_lp == 0 { + false + } else { + true + }; // 5. Update pool account let mut pool_post = pool.account.clone(); let pool_post_definition = PoolDefinition { - definition_token_a_id: pool_def_data.definition_token_a_id.clone(), - definition_token_b_id: pool_def_data.definition_token_b_id.clone(), - vault_a_id: pool_def_data.vault_a_id.clone(), - vault_b_id: pool_def_data.vault_b_id.clone(), - liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), - liquidity_pool_supply: pool_def_data.liquidity_pool_supply - delta_lp, - reserve_a: pool_def_data.reserve_a - withdraw_amount_a, - reserve_b: pool_def_data.reserve_b - withdraw_amount_b, - fees: 0u128, - active, + definition_token_a_id: pool_def_data.definition_token_a_id.clone(), + definition_token_b_id: pool_def_data.definition_token_b_id.clone(), + vault_a_id: pool_def_data.vault_a_id.clone(), + vault_b_id: pool_def_data.vault_b_id.clone(), + liquidity_pool_id: pool_def_data.liquidity_pool_id.clone(), + liquidity_pool_supply: pool_def_data.liquidity_pool_supply - delta_lp, + reserve_a: pool_def_data.reserve_a - withdraw_amount_a, + reserve_b: pool_def_data.reserve_b - withdraw_amount_b, + fees: 0u128, + active, }; - pool_post.data = pool_post_definition.into_data().try_into().expect("Data too big"); + pool_post.data = pool_post_definition + .into_data() + .try_into() + .expect("Data too big"); let mut chained_calls = Vec::new(); - //Chaincall for Token A withdraw - let mut instruction: [u8;23] = [0; 23]; + // Chaincall for Token A withdraw + let mut instruction: [u8; 23] = [0; 23]; instruction[0] = 1; // token transfer instruction[1..17].copy_from_slice(&withdraw_amount_a.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_a = ChainedCall{ - program_id: vault_a.account.program_owner, - instruction_data, - pre_states: vec![running_vault_a, user_holding_a.clone()], - pda_seeds: vec![compute_vault_pda_seed(pool.account_id.clone(), pool_def_data.definition_token_a_id.clone())], - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_a = ChainedCall { + program_id: vault_a.account.program_owner, + instruction_data, + pre_states: vec![running_vault_a, user_holding_a.clone()], + pda_seeds: vec![compute_vault_pda_seed( + pool.account_id.clone(), + pool_def_data.definition_token_a_id.clone(), + )], + }; - //Chaincall for Token B withdraw - let mut instruction: [u8;23] = [0; 23]; + // Chaincall for Token B withdraw + let mut instruction: [u8; 23] = [0; 23]; instruction[0] = 1; // token transfer instruction[1..17].copy_from_slice(&withdraw_amount_b.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_b = ChainedCall{ - program_id: vault_b.account.program_owner, - instruction_data, - pre_states: vec![running_vault_b, user_holding_b.clone()], - pda_seeds: vec![compute_vault_pda_seed(pool.account_id.clone(), pool_def_data.definition_token_b_id.clone())], - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_b = ChainedCall { + program_id: vault_b.account.program_owner, + instruction_data, + pre_states: vec![running_vault_b, user_holding_b.clone()], + pda_seeds: vec![compute_vault_pda_seed( + pool.account_id.clone(), + pool_def_data.definition_token_b_id.clone(), + )], + }; - //Chaincall for LP adjustment + // Chaincall for LP adjustment let mut pool_definition_lp_auth = pool_definition_lp.clone(); pool_definition_lp_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; + let mut instruction: [u8; 23] = [0; 23]; instruction[0] = 3; // token burn instruction[1..17].copy_from_slice(&delta_lp.to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); - let call_token_lp = ChainedCall{ - program_id: pool_definition_lp.account.program_owner, - instruction_data, - pre_states: vec![pool_definition_lp_auth.clone(), user_holding_lp.clone()], - pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())] - }; + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Remove liquidity: AMM Program expects valid token transfer instruction data"); + let call_token_lp = ChainedCall { + program_id: pool_definition_lp.account.program_owner, + instruction_data, + pre_states: vec![pool_definition_lp_auth.clone(), user_holding_lp.clone()], + pda_seeds: vec![compute_liquidity_token_pda_seed(pool.account_id.clone())], + }; chained_calls.push(call_token_lp); chained_calls.push(call_token_b); chained_calls.push(call_token_a); - - let post_states = vec! - [ - AccountPostState::new(pool_post.clone()), + + let post_states = vec![ + AccountPostState::new(pool_post.clone()), AccountPostState::new(pre_states[1].account.clone()), AccountPostState::new(pre_states[2].account.clone()), AccountPostState::new(pre_states[3].account.clone()), AccountPostState::new(pre_states[4].account.clone()), AccountPostState::new(pre_states[5].account.clone()), - AccountPostState::new(pre_states[6].account.clone())]; + AccountPostState::new(pre_states[6].account.clone()), + ]; (post_states, chained_calls) } #[cfg(test)] mod tests { - use nssa_core::{{account::{Account, AccountId, AccountWithMetadata}, program::ChainedCall, program::PdaSeed}, program::ProgramId}; + use nssa_core::{ + account::{Account, AccountId, AccountWithMetadata}, + program::{ChainedCall, PdaSeed, ProgramId}, + }; - use crate::{PoolDefinition, TokenDefinition, TokenHolding, add_liquidity, new_definition, remove_liquidity, swap, - compute_liquidity_token_pda, compute_liquidity_token_pda_seed, compute_pool_pda, compute_pool_pda_seed, - compute_vault_pda, compute_vault_pda_seed}; + use crate::{ + PoolDefinition, TokenDefinition, TokenHolding, add_liquidity, compute_liquidity_token_pda, + compute_liquidity_token_pda_seed, compute_pool_pda, compute_pool_pda_seed, + compute_vault_pda, compute_vault_pda_seed, new_definition, remove_liquidity, swap, + }; - const TOKEN_PROGRAM_ID: ProgramId = [15;8]; - const AMM_PROGRAM_ID: ProgramId = [42;8]; + const TOKEN_PROGRAM_ID: ProgramId = [15; 8]; + const AMM_PROGRAM_ID: ProgramId = [42; 8]; enum AccountEnum { UserHoldingB, @@ -1119,9 +1329,9 @@ mod tests { BalanceEnum::AddSuccessfulAmountB => 200, BalanceEnum::VaultARemoveSuccessful => 900, BalanceEnum::VaultBRemoveSuccessful => 450, - _ => panic!("Invalid selection") + _ => panic!("Invalid selection"), } - } + } enum IdEnum { TokenADefinitionId, @@ -1157,66 +1367,74 @@ mod tests { fn helper_chained_call_constructor(selection: ChainedCallsEnum) -> ChainedCall { match selection { ChainedCallsEnum::CcTokenAInitialization => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::UserTokenABal) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::UserTokenABal).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::VaultAUninit)], + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::VaultAUninit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcTokenBInitialization => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::UserTokenBBal) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::UserTokenBBal).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::VaultBUninit)], + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::VaultBUninit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcPoolLPInitiailization => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::UserTokenABal) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::UserTokenABal).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::PoolLPUninit), - helper_account_constructor(AccountEnum::UserHoldingLPUninit)], + helper_account_constructor(AccountEnum::PoolLPUninit), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcSwapTokenATest1 => { - let mut instruction_data: [u8;23] = [0; 23]; - instruction_data[0] = 1; + let mut instruction_data: [u8; 23] = [0; 23]; + instruction_data[0] = 1; instruction_data[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddMaxAmountA) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddMaxAmountA).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::VaultAInit)], + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::VaultAInit), + ], pda_seeds: Vec::::new(), } } @@ -1226,22 +1444,22 @@ mod tests { let mut vault_b_auth = helper_account_constructor(AccountEnum::VaultBInit); vault_b_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; - instruction[1..17].copy_from_slice( - &swap_amount - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; + instruction[1..17].copy_from_slice(&swap_amount.to_le_bytes()); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - vault_b_auth, - helper_account_constructor(AccountEnum::UserHoldingB)], - pda_seeds: vec![ - compute_vault_pda_seed(helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenBDefinitionId)), + vault_b_auth, + helper_account_constructor(AccountEnum::UserHoldingB), ], + pda_seeds: vec![compute_vault_pda_seed( + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenBDefinitionId), + )], } } ChainedCallsEnum::CcSwapTokenATest2 => { @@ -1250,70 +1468,75 @@ mod tests { let mut vault_a_auth = helper_account_constructor(AccountEnum::VaultAInit); vault_a_auth.is_authorized = true; - let mut instruction_data: [u8;23] = [0; 23]; - instruction_data[0] = 1; - instruction_data[1..17].copy_from_slice( - &swap_amount - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + let mut instruction_data: [u8; 23] = [0; 23]; + instruction_data[0] = 1; + instruction_data[1..17].copy_from_slice(&swap_amount.to_le_bytes()); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction_data) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - vault_a_auth, - helper_account_constructor(AccountEnum::UserHoldingA), - ], - pda_seeds: vec![ - compute_vault_pda_seed(helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenADefinitionId)), + vault_a_auth, + helper_account_constructor(AccountEnum::UserHoldingA), ], + pda_seeds: vec![compute_vault_pda_seed( + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenADefinitionId), + )], } } ChainedCallsEnum::CcSwapTokenBTest2 => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddMaxAmountb) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddMaxAmountb).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::VaultBInit)], + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::VaultBInit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcAddTokenA => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::VaultAInit)], + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::VaultAInit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcAddTokenB => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountB) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountB).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::VaultBInit)], + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::VaultBInit), + ], pda_seeds: Vec::::new(), } } @@ -1321,115 +1544,129 @@ mod tests { let mut pool_lp_auth = helper_account_constructor(AccountEnum::PoolLPInit); pool_lp_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 4; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 4; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - pool_lp_auth, - helper_account_constructor(AccountEnum::UserHoldingLPInit)], - pda_seeds: vec![compute_liquidity_token_pda_seed( - helper_id_constructor(IdEnum::PoolDefinitionId))], + pool_lp_auth, + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ], + pda_seeds: vec![compute_liquidity_token_pda_seed(helper_id_constructor( + IdEnum::PoolDefinitionId, + ))], } } ChainedCallsEnum::CcRemoveTokenA => { let mut vault_a_auth = helper_account_constructor(AccountEnum::VaultAInit); vault_a_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::RemoveActualASuccessful) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::RemoveActualASuccessful).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - vault_a_auth, - helper_account_constructor(AccountEnum::UserHoldingA),], - pda_seeds: vec![ - compute_vault_pda_seed(helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenADefinitionId)), + vault_a_auth, + helper_account_constructor(AccountEnum::UserHoldingA), ], + pda_seeds: vec![compute_vault_pda_seed( + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenADefinitionId), + )], } } ChainedCallsEnum::CcRemoveTokenB => { let mut vault_b_auth = helper_account_constructor(AccountEnum::VaultBInit); vault_b_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::RemoveMinAmountBLow) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::RemoveMinAmountBLow).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - vault_b_auth, - helper_account_constructor(AccountEnum::UserHoldingB),], - pda_seeds: vec![ - compute_vault_pda_seed(helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenBDefinitionId)), + vault_b_auth, + helper_account_constructor(AccountEnum::UserHoldingB), ], + pda_seeds: vec![compute_vault_pda_seed( + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenBDefinitionId), + )], } } ChainedCallsEnum::CcRemovePoolLP => { let mut pool_lp_auth = helper_account_constructor(AccountEnum::PoolLPInit); pool_lp_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 3; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 3; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::RemoveActualASuccessful) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::RemoveActualASuccessful).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingLPInit), - helper_account_constructor(AccountEnum::PoolLPInit),], - pda_seeds: vec![compute_liquidity_token_pda_seed( - helper_id_constructor(IdEnum::PoolDefinitionId))], + helper_account_constructor(AccountEnum::UserHoldingLPInit), + helper_account_constructor(AccountEnum::PoolLPInit), + ], + pda_seeds: vec![compute_liquidity_token_pda_seed(helper_id_constructor( + IdEnum::PoolDefinitionId, + ))], } } ChainedCallsEnum::CcNewDefinitionTokenA => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::VaultAInit)], + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::VaultAInit), + ], pda_seeds: Vec::::new(), } } ChainedCallsEnum::CcNewDefinitionTokenB => { - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 1; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 1; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountB) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountB).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::VaultBInit)], + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::VaultBInit), + ], pda_seeds: Vec::::new(), } } @@ -1437,92 +1674,98 @@ mod tests { let mut pool_lp_auth = helper_account_constructor(AccountEnum::PoolLPInit); pool_lp_auth.is_authorized = true; - let mut instruction: [u8;23] = [0; 23]; - instruction[0] = 0; + let mut instruction: [u8; 23] = [0; 23]; + instruction[0] = 0; instruction[1..17].copy_from_slice( - &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA) - .to_le_bytes()); - let instruction_data = risc0_zkvm::serde::to_vec(&instruction).expect("Swap Logic: AMM Program expects valid transaction instruction data"); - ChainedCall{ + &helper_balance_constructor(BalanceEnum::AddSuccessfulAmountA).to_le_bytes(), + ); + let instruction_data = risc0_zkvm::serde::to_vec(&instruction) + .expect("Swap Logic: AMM Program expects valid transaction instruction data"); + ChainedCall { program_id: TOKEN_PROGRAM_ID, instruction_data, pre_states: vec![ - pool_lp_auth, - helper_account_constructor(AccountEnum::UserHoldingLPInit)], - pda_seeds: vec![compute_liquidity_token_pda_seed( - helper_id_constructor(IdEnum::PoolDefinitionId))], + pool_lp_auth, + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ], + pda_seeds: vec![compute_liquidity_token_pda_seed(helper_id_constructor( + IdEnum::PoolDefinitionId, + ))], } } - _ => panic!("Invalid selection") + _ => panic!("Invalid selection"), } } fn helper_id_constructor(selection: IdEnum) -> AccountId { - match selection { - IdEnum::TokenADefinitionId => AccountId::new([42;32]), - IdEnum::TokenBDefinitionId => AccountId::new([43;32]), - IdEnum::TokenLPDefinitionId => compute_liquidity_token_pda(AMM_PROGRAM_ID, - helper_id_constructor(IdEnum::PoolDefinitionId),), - IdEnum::UserTokenAId => AccountId::new([45;32]), - IdEnum::UserTokenBId => AccountId::new([46;32]), - IdEnum::UserTokenLPId => AccountId::new([47;32]), - IdEnum::PoolDefinitionId => compute_pool_pda(AMM_PROGRAM_ID, - helper_id_constructor(IdEnum::TokenADefinitionId), - helper_id_constructor(IdEnum::TokenBDefinitionId)), - IdEnum::VaultAId => compute_vault_pda(AMM_PROGRAM_ID, - helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenADefinitionId)), - IdEnum::VaultBId => compute_vault_pda(AMM_PROGRAM_ID, - helper_id_constructor(IdEnum::PoolDefinitionId), - helper_id_constructor(IdEnum::TokenBDefinitionId)), - _ => panic!("Invalid selection") + IdEnum::TokenADefinitionId => AccountId::new([42; 32]), + IdEnum::TokenBDefinitionId => AccountId::new([43; 32]), + IdEnum::TokenLPDefinitionId => compute_liquidity_token_pda( + AMM_PROGRAM_ID, + helper_id_constructor(IdEnum::PoolDefinitionId), + ), + IdEnum::UserTokenAId => AccountId::new([45; 32]), + IdEnum::UserTokenBId => AccountId::new([46; 32]), + IdEnum::UserTokenLPId => AccountId::new([47; 32]), + IdEnum::PoolDefinitionId => compute_pool_pda( + AMM_PROGRAM_ID, + helper_id_constructor(IdEnum::TokenADefinitionId), + helper_id_constructor(IdEnum::TokenBDefinitionId), + ), + IdEnum::VaultAId => compute_vault_pda( + AMM_PROGRAM_ID, + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenADefinitionId), + ), + IdEnum::VaultBId => compute_vault_pda( + AMM_PROGRAM_ID, + helper_id_constructor(IdEnum::PoolDefinitionId), + helper_id_constructor(IdEnum::TokenBDefinitionId), + ), + _ => panic!("Invalid selection"), } } fn helper_account_constructor(selection: AccountEnum) -> AccountWithMetadata { - match selection { AccountEnum::UserHoldingA => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::UserTokenABal), - }), - nonce: 0, + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::UserTokenABal), + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::UserTokenAId), }, AccountEnum::UserHoldingB => AccountWithMetadata { - account: Account { - program_owner: TOKEN_PROGRAM_ID, - balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::UserTokenBBal), - }), - nonce: 0, + account: Account { + program_owner: TOKEN_PROGRAM_ID, + balance: 0u128, + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::UserTokenBBal), + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::UserTokenBId), }, AccountEnum::VaultAUninit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: 0, - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: 0, + }), nonce: 0, }, is_authorized: true, @@ -1530,14 +1773,13 @@ mod tests { }, AccountEnum::VaultBUninit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: 0, - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: 0, + }), nonce: 0, }, is_authorized: true, @@ -1545,14 +1787,13 @@ mod tests { }, AccountEnum::VaultAInit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, @@ -1560,14 +1801,13 @@ mod tests { }, AccountEnum::VaultBInit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + }), nonce: 0, }, is_authorized: true, @@ -1575,14 +1815,13 @@ mod tests { }, AccountEnum::VaultAInitHigh => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultAReserveHigh), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultAReserveHigh), + }), nonce: 0, }, is_authorized: true, @@ -1590,14 +1829,13 @@ mod tests { }, AccountEnum::VaultBInitHigh => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultBReserveHigh), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultBReserveHigh), + }), nonce: 0, }, is_authorized: true, @@ -1605,14 +1843,13 @@ mod tests { }, AccountEnum::VaultAInitLow => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultAReserveLow), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultAReserveLow), + }), nonce: 0, }, is_authorized: true, @@ -1620,14 +1857,13 @@ mod tests { }, AccountEnum::VaultBInitLow => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultBReserveLow), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultBReserveLow), + }), nonce: 0, }, is_authorized: true, @@ -1635,14 +1871,13 @@ mod tests { }, AccountEnum::VaultAInitZero => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: 0, - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: 0, + }), nonce: 0, }, is_authorized: true, @@ -1650,14 +1885,13 @@ mod tests { }, AccountEnum::VaultBInitZero => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: 0, - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: 0, + }), nonce: 0, }, is_authorized: true, @@ -1665,14 +1899,13 @@ mod tests { }, AccountEnum::VaultAWrongAccId => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, @@ -1680,14 +1913,13 @@ mod tests { }, AccountEnum::VaultBWrongAccId => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + }), nonce: 0, }, is_authorized: true, @@ -1695,14 +1927,13 @@ mod tests { }, AccountEnum::PoolLPUninit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenDefinition::into_data( - TokenDefinition{ - account_type: 0u8, - name: [1;6], - total_supply: 0u128, - }), + data: TokenDefinition::into_data(TokenDefinition { + account_type: 0u8, + name: [1; 6], + total_supply: 0u128, + }), nonce: 0, }, is_authorized: true, @@ -1710,29 +1941,27 @@ mod tests { }, AccountEnum::PoolLPInit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenDefinition::into_data( - TokenDefinition{ - account_type: 0u8, - name: [1;6], - total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenDefinition::into_data(TokenDefinition { + account_type: 0u8, + name: [1; 6], + total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), }, AccountEnum::PoolLPWrongAccId => AccountWithMetadata { - account: Account { - program_owner: TOKEN_PROGRAM_ID, + account: Account { + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenDefinition::into_data( - TokenDefinition{ - account_type: 0u8, - name: [1;6], - total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenDefinition::into_data(TokenDefinition { + account_type: 0u8, + name: [1; 6], + total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, @@ -1740,14 +1969,13 @@ mod tests { }, AccountEnum::UserHoldingLPUninit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - balance: 0, - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + balance: 0, + }), nonce: 0, }, is_authorized: true, @@ -1755,14 +1983,13 @@ mod tests { }, AccountEnum::UserHoldingLPInit => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - balance: helper_balance_constructor(BalanceEnum::UserTokenLPBal), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + balance: helper_balance_constructor(BalanceEnum::UserTokenLPBal), + }), nonce: 0, }, is_authorized: true, @@ -1775,353 +2002,364 @@ mod tests { }, AccountEnum::PoolDefinitionInit => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionInitReserveAZero => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: 0, - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: 0, + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionInitReserveBZero => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: 0, - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: 0, + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionInitReserveALow => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveLow), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveLow), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveHigh), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveLow, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveLow), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveHigh), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionInitReserveBLow => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveHigh), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveHigh), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveLow), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveHigh, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveHigh), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveLow), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionUnauth => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: false, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionSwapTest1 => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultASwapTest1), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBSwapTest1), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultASwapTest1), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBSwapTest1), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionSwapTest2 => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultASwapTest2), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBSwapTest2), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultASwapTest2), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBSwapTest2), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionAddZeroLP => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveLow), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveLow, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionAddSuccessful => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAAddSuccessful), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAAddSuccessful), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBAddSuccessful), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAAddSuccessful, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAAddSuccessful), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBAddSuccessful), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionRemoveSuccessful => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultARemoveSuccessful), - reserve_a: helper_balance_constructor(BalanceEnum::VaultARemoveSuccessful), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBRemoveSuccessful), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultARemoveSuccessful, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultARemoveSuccessful), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBRemoveSuccessful), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionInactive => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: false, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: false, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), }, AccountEnum::PoolDefinitionWrongId => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: false, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: false, + }), + nonce: 0, }, is_authorized: true, - account_id: AccountId::new([4;32]), + account_id: AccountId::new([4; 32]), }, AccountEnum::VaultAWrongId => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenADefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, - account_id: AccountId::new([4;32]), + account_id: AccountId::new([4; 32]), }, AccountEnum::VaultBWrongId => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenHolding::into_data( - TokenHolding{ - account_type: 1u8, - definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - }), + data: TokenHolding::into_data(TokenHolding { + account_type: 1u8, + definition_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + balance: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + }), nonce: 0, }, is_authorized: true, - account_id: AccountId::new([4;32]), + account_id: AccountId::new([4; 32]), }, AccountEnum::PoolLPWrongId => AccountWithMetadata { account: Account { - program_owner: TOKEN_PROGRAM_ID, + program_owner: TOKEN_PROGRAM_ID, balance: 0u128, - data: TokenDefinition::into_data( - TokenDefinition{ - account_type: 0u8, - name: [1;6], - total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - }), + data: TokenDefinition::into_data(TokenDefinition { + account_type: 0u8, + name: [1; 6], + total_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + }), nonce: 0, }, is_authorized: true, - account_id: AccountId::new([4;32]), + account_id: AccountId::new([4; 32]), }, AccountEnum::PoolDefinitionActive => AccountWithMetadata { account: Account { - program_owner: ProgramId::default(), - balance: 0u128, - data: PoolDefinition::into_data( - PoolDefinition { - definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), - definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), - vault_a_id: helper_id_constructor(IdEnum::VaultAId), - vault_b_id: helper_id_constructor(IdEnum::VaultBId), - liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), - liquidity_pool_supply: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), - reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), - fees: 0u128, - active: true, - }), - nonce: 0, + program_owner: ProgramId::default(), + balance: 0u128, + data: PoolDefinition::into_data(PoolDefinition { + definition_token_a_id: helper_id_constructor(IdEnum::TokenADefinitionId), + definition_token_b_id: helper_id_constructor(IdEnum::TokenBDefinitionId), + vault_a_id: helper_id_constructor(IdEnum::VaultAId), + vault_b_id: helper_id_constructor(IdEnum::VaultBId), + liquidity_pool_id: helper_id_constructor(IdEnum::TokenLPDefinitionId), + liquidity_pool_supply: helper_balance_constructor( + BalanceEnum::VaultAReserveInit, + ), + reserve_a: helper_balance_constructor(BalanceEnum::VaultAReserveInit), + reserve_b: helper_balance_constructor(BalanceEnum::VaultBReserveInit), + fees: 0u128, + active: true, + }), + nonce: 0, }, is_authorized: true, account_id: helper_id_constructor(IdEnum::PoolDefinitionId), @@ -2132,1225 +2370,1458 @@ mod tests { #[test] fn test_pool_pda_produces_unique_id_for_token_pair() { - //compute_pool_pda(amm_program_id: ProgramId, definition_token_a_id: AccountId, definition_token_b_id: AccountId) - assert!(compute_pool_pda(AMM_PROGRAM_ID, + // compute_pool_pda(amm_program_id: ProgramId, definition_token_a_id: AccountId, + // definition_token_b_id: AccountId) + assert!( + compute_pool_pda( + AMM_PROGRAM_ID, helper_id_constructor(IdEnum::TokenADefinitionId), - helper_id_constructor(IdEnum::TokenBDefinitionId)) == - compute_pool_pda(AMM_PROGRAM_ID, + helper_id_constructor(IdEnum::TokenBDefinitionId) + ) == compute_pool_pda( + AMM_PROGRAM_ID, helper_id_constructor(IdEnum::TokenBDefinitionId), - helper_id_constructor(IdEnum::TokenADefinitionId))); + helper_id_constructor(IdEnum::TokenADefinitionId) + ) + ); } #[should_panic(expected = "Invalid number of input accounts")] - #[test] + #[test] fn test_call_new_definition_with_invalid_number_of_accounts_1() { - let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + let pre_states = vec![helper_account_constructor( + AccountEnum::PoolDefinitionUninit, + )]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_new_definition_with_invalid_number_of_accounts_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_new_definition__with_invalid_number_of_accounts_3() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_new_definition__with_invalid_number_of_accounts_4() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } - + #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_new_definition__with_invalid_number_of_accounts_5() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_new_definition_with_invalid_number_of_accounts_6() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit)], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Invalid number of input balances")] #[test] fn test_call_new_definition_with_invalid_number_of_balances() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[helper_balance_constructor(BalanceEnum::VaultAReserveInit)], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Balances must be nonzero")] #[test] fn test_call_new_definition_with_zero_balance_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[0, - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + 0, + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Balances must be nonzero")] #[test] fn test_call_new_definition_with_zero_balance_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - 0], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + 0, + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Cannot set up a swap for a token with itself")] #[test] fn test_call_new_definition_same_token_definition() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Liquidity pool Token Definition Account ID does not match PDA")] #[test] fn test_call_new_definition_wrong_liquidity_id() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPWrongId), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPWrongId), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Pool Definition Account ID does not match PDA")] #[test] fn test_call_new_definition_wrong_pool_id() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionWrongId), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionWrongId), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Vault ID does not match PDA")] #[test] fn test_call_new_definition_wrong_vault_id_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAWrongId), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAWrongId), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Vault ID does not match PDA")] #[test] fn test_call_new_definition_wrong_vault_id_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBWrongId), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBWrongId), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + } #[should_panic(expected = "Cannot initialize an active Pool Definition")] #[test] fn test_call_new_definition_cannot_initialize_active_pool() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionActive), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let _post_states = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); + helper_account_constructor(AccountEnum::PoolDefinitionActive), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let _post_states = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); } #[should_panic(expected = "Cannot initialize an active Pool Definition")] #[test] fn test_call_new_definition_chain_call_successful() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionActive), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPUninit), - ]; - let (post_states, chained_calls) = new_definition(&pre_states, - &[helper_balance_constructor(BalanceEnum::VaultAReserveInit), - helper_balance_constructor(BalanceEnum::VaultBReserveInit),], - AMM_PROGRAM_ID, - ); - + helper_account_constructor(AccountEnum::PoolDefinitionActive), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPUninit), + ]; + let (post_states, chained_calls) = new_definition( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::VaultAReserveInit), + helper_balance_constructor(BalanceEnum::VaultBReserveInit), + ], + AMM_PROGRAM_ID, + ); + let pool_post = post_states[0].clone(); - assert!(helper_account_constructor(AccountEnum::PoolDefinitionAddSuccessful).account == - *pool_post.account()); + assert!( + helper_account_constructor(AccountEnum::PoolDefinitionAddSuccessful).account + == *pool_post.account() + ); let chained_call_lp = chained_calls[0].clone(); let chained_call_b = chained_calls[1].clone(); let chained_call_a = chained_calls[2].clone(); - assert!(chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionTokenA)); - assert!(chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionTokenB)); - assert!(chained_call_lp == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionLP)); + assert!( + chained_call_a + == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionTokenA) + ); + assert!( + chained_call_b + == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionTokenB) + ); + assert!( + chained_call_lp == helper_chained_call_constructor(ChainedCallsEnum::CcNewDefinitionLP) + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_remove_liquidity_with_invalid_number_of_accounts_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_remove_liquidity_with_invalid_number_of_accounts_3() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_remove_liquidity_with_invalid_number_of_accounts_4() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } - + #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_remove_liquidity_with_invalid_number_of_accounts_5() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_remove_liquidity_with_invalid_number_of_accounts_6() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Vault A was not provided")] #[test] fn test_call_remove_liquidity_vault_a_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAWrongAccId), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAWrongAccId), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } - + #[should_panic(expected = "Vault B was not provided")] #[test] fn test_call_remove_liquidity_vault_b_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBWrongAccId), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBWrongAccId), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } - + #[should_panic(expected = "LP definition mismatch")] #[test] fn test_call_remove_liquidity_lp_def_mismatch() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPWrongAccId), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPWrongAccId), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Invalid liquidity account provided")] #[test] fn test_call_remove_liquidity_insufficient_liquidity_amount() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingA), //different token account than lp to create desired error - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingA), /* different token account + * than lp to create desired + * error */ + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } - #[should_panic(expected = "Insufficient minimal withdraw amount (Token A) provided for liquidity amount")] + #[should_panic( + expected = "Insufficient minimal withdraw amount (Token A) provided for liquidity amount" + )] #[test] fn test_call_remove_liquidity_insufficient_balance_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP1), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP1), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } - #[should_panic(expected = "Insufficient minimal withdraw amount (Token B) provided for liquidity amount")] + #[should_panic( + expected = "Insufficient minimal withdraw amount (Token B) provided for liquidity amount" + )] #[test] fn test_call_remove_liquidity_insufficient_balance_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Minimum withdraw amount must be nonzero")] #[test] fn test_call_remove_liquidity_min_bal_zero_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - 0, - helper_balance_constructor(BalanceEnum::RemoveMinAmountB)], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + 0, + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); } #[should_panic(expected = "Minimum withdraw amount must be nonzero")] #[test] fn test_call_remove_liquidity_min_bal_zero_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - 0], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + 0, + ], + ); } #[should_panic(expected = "Liquidity amount must be nonzero")] #[test] fn test_call_remove_liquidity_lp_bal_zero() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = remove_liquidity(&pre_states, - &[0, - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountB),], - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = remove_liquidity( + &pre_states, + &[ + 0, + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountB), + ], + ); + } #[test] fn test_call_remove_liquidity_chained_call_successful() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let (post_states, chained_calls) = remove_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::RemoveAmountLP), - helper_balance_constructor(BalanceEnum::RemoveMinAmountA), - helper_balance_constructor(BalanceEnum::RemoveMinAmountBLow),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let (post_states, chained_calls) = remove_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::RemoveAmountLP), + helper_balance_constructor(BalanceEnum::RemoveMinAmountA), + helper_balance_constructor(BalanceEnum::RemoveMinAmountBLow), + ], + ); let pool_post = post_states[0].clone(); - assert!(helper_account_constructor(AccountEnum::PoolDefinitionRemoveSuccessful).account == - *pool_post.account()); + assert!( + helper_account_constructor(AccountEnum::PoolDefinitionRemoveSuccessful).account + == *pool_post.account() + ); let chained_call_lp = chained_calls[0].clone(); - let chained_call_b = chained_calls[1].clone(); - let chained_call_a = chained_calls[2].clone(); + let chained_call_b = chained_calls[1].clone(); + let chained_call_a = chained_calls[2].clone(); - assert!(chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcRemoveTokenA)); - assert!(chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcRemoveTokenB)); - assert!(chained_call_lp.instruction_data == helper_chained_call_constructor(ChainedCallsEnum::CcRemovePoolLP).instruction_data); - } + assert!( + chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcRemoveTokenA) + ); + assert!( + chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcRemoveTokenB) + ); + assert!( + chained_call_lp.instruction_data + == helper_chained_call_constructor(ChainedCallsEnum::CcRemovePoolLP) + .instruction_data + ); + } #[should_panic(expected = "Invalid number of input accounts")] - #[test] + #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_1() { - let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + let pre_states = vec![helper_account_constructor(AccountEnum::PoolDefinitionInit)]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_3() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_4() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_5() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_add_liquidity_with_invalid_number_of_accounts_6() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } - + #[should_panic(expected = "Invalid number of input balances")] #[test] fn test_call_add_liquidity_invalid_number_of_balances_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[helper_balance_constructor(BalanceEnum::AddMaxAmountA)], + ); } #[should_panic(expected = "Vault A was not provided")] #[test] fn test_call_add_liquidity_vault_a_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAWrongAccId), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAWrongAccId), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); + } #[should_panic(expected = "Vault B was not provided")] #[test] fn test_call_add_liquidity_vault_b_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBWrongAccId), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBWrongAccId), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); + } #[should_panic(expected = "LP definition mismatch")] #[test] fn test_call_add_liquidity_lp_def_mismatch() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPWrongAccId), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); - } + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPWrongAccId), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); + } #[should_panic(expected = "Both max-balances must be nonzero")] #[test] fn test_call_add_liquidity_zero_balance_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMinAmountLP), - 0, - helper_balance_constructor(BalanceEnum::AddMaxAmountb),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + 0, + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + ], + ); } #[should_panic(expected = "Both max-balances must be nonzero")] #[test] fn test_call_add_liquidity_zero_balance_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - 0, - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + 0, + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Min-lp must be nonzero")] #[test] fn test_call_add_liquidity_zero_min_lp() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[0, - helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb),],); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + 0, + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + ], + ); } #[should_panic(expected = "Vaults' balances must be at least the reserve amounts")] #[test] fn test_call_add_liquidity_vault_insufficient_balance_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInitZero), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInitZero), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Vaults' balances must be at least the reserve amounts")] #[test] fn test_call_add_liquidity_vault_insufficient_balance_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInitZero), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInitZero), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "A trade amount is 0")] #[test] fn test_call_add_liquidity_actual_amount_zero_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInitReserveALow), - helper_account_constructor(AccountEnum::VaultAInitLow), - helper_account_constructor(AccountEnum::VaultBInitHigh), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInitReserveALow), + helper_account_constructor(AccountEnum::VaultAInitLow), + helper_account_constructor(AccountEnum::VaultBInitHigh), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "A trade amount is 0")] #[test] fn test_call_add_liquidity_actual_amount_zero_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInitReserveBLow), - helper_account_constructor(AccountEnum::VaultAInitHigh), - helper_account_constructor(AccountEnum::VaultBInitLow), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountALow), - helper_balance_constructor(BalanceEnum::AddMaxAmountBLow), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInitReserveBLow), + helper_account_constructor(AccountEnum::VaultAInitHigh), + helper_account_constructor(AccountEnum::VaultBInitLow), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountALow), + helper_balance_constructor(BalanceEnum::AddMaxAmountBLow), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Reserves must be nonzero")] #[test] fn test_call_add_liquidity_reserves_zero_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInitReserveAZero), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInitReserveAZero), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Reserves must be nonzero")] #[test] fn test_call_add_liquidity_reserves_zero_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInitReserveBZero), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionInitReserveBZero), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[should_panic(expected = "Payable LP must be nonzero")] #[test] fn test_call_add_liquidity_payable_lp_zero() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionAddZeroLP), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let _post_states = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountALow), - helper_balance_constructor(BalanceEnum::AddMaxAmountBLow), - helper_balance_constructor(BalanceEnum::AddMinAmountLP),], - ); + helper_account_constructor(AccountEnum::PoolDefinitionAddZeroLP), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let _post_states = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountALow), + helper_balance_constructor(BalanceEnum::AddMaxAmountBLow), + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + ], + ); } #[test] fn test_call_add_liquidity_successful_chain_call() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::PoolLPInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - helper_account_constructor(AccountEnum::UserHoldingLPInit), - ]; - let (post_states, chained_calls) = add_liquidity(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMinAmountLP), - helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountb),], - ); - + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::PoolLPInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + helper_account_constructor(AccountEnum::UserHoldingLPInit), + ]; + let (post_states, chained_calls) = add_liquidity( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMinAmountLP), + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + ], + ); + let pool_post = post_states[0].clone(); - assert!(helper_account_constructor(AccountEnum::PoolDefinitionAddSuccessful).account == - *pool_post.account()); + assert!( + helper_account_constructor(AccountEnum::PoolDefinitionAddSuccessful).account + == *pool_post.account() + ); let chained_call_lp = chained_calls[0].clone(); let chained_call_b = chained_calls[1].clone(); let chained_call_a = chained_calls[2].clone(); - assert!(chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcAddTokenA)); assert!(chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcAddTokenB)); assert!(chained_call_lp == helper_chained_call_constructor(ChainedCallsEnum::CcAddPoolLP)); } #[should_panic(expected = "Invalid number of input accounts")] - #[test] + #[test] fn test_call_swap_with_invalid_number_of_accounts_1() { - let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + let pre_states = vec![helper_account_constructor(AccountEnum::PoolDefinitionInit)]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_swap_with_invalid_number_of_accounts_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_swap_with_invalid_number_of_accounts_3() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Invalid number of input accounts")] #[test] fn test_call_swap_with_invalid_number_of_accounts_4() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Invalid number of amounts provided")] #[test] fn test_call_swap_with_invalid_number_of_amounts() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA)], - helper_id_constructor(IdEnum::TokenLPDefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[helper_balance_constructor(BalanceEnum::AddMaxAmountA)], + helper_id_constructor(IdEnum::TokenLPDefinitionId), + ); } #[should_panic(expected = "AccountId is not a token type for the pool")] #[test] fn test_call_swap_incorrect_token_type() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenLPDefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenLPDefinitionId), + ); } #[should_panic(expected = "Vault A was not provided")] #[test] fn test_call_swap_vault_a_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAWrongAccId), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAWrongAccId), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Vault B was not provided")] #[test] fn test_call_swap_vault_b_omitted() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBWrongAccId), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBWrongAccId), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Reserve for Token A exceeds vault balance")] #[test] fn test_call_swap_reserves_vault_mismatch_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInitLow), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInitLow), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } - #[should_panic(expected = "Reserve for Token B exceeds vault balance")] + #[should_panic(expected = "Reserve for Token B exceeds vault balance")] #[test] fn test_call_swap_reserves_vault_mismatch_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInitLow), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInitLow), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Pool is inactive")] #[test] fn test_call_swap_ianctive() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInactive), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInactive), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[should_panic(expected = "Withdraw amount is less than minimal amount out")] #[test] fn test_call_swap_below_min_out() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let _post_states = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let _post_states = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); } #[test] fn test_call_swap_successful_chain_call_1() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let (post_states, chained_calls) = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountA), - helper_balance_constructor(BalanceEnum::AddMaxAmountALow)], - helper_id_constructor(IdEnum::TokenADefinitionId), - ); - + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let (post_states, chained_calls) = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountA), + helper_balance_constructor(BalanceEnum::AddMaxAmountALow), + ], + helper_id_constructor(IdEnum::TokenADefinitionId), + ); + let pool_post = post_states[0].clone(); - assert!(helper_account_constructor(AccountEnum::PoolDefinitionSwapTest1).account == - *pool_post.account()); + assert!( + helper_account_constructor(AccountEnum::PoolDefinitionSwapTest1).account + == *pool_post.account() + ); - let chained_call_a = chained_calls[0].clone(); + let chained_call_a = chained_calls[0].clone(); let chained_call_b = chained_calls[1].clone(); - assert!(chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenATest1)); - assert!(chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenBTest1)); + assert!( + chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenATest1) + ); + assert!( + chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenBTest1) + ); } #[test] fn test_call_swap_successful_chain_call_2() { let pre_states = vec![ - helper_account_constructor(AccountEnum::PoolDefinitionInit), - helper_account_constructor(AccountEnum::VaultAInit), - helper_account_constructor(AccountEnum::VaultBInit), - helper_account_constructor(AccountEnum::UserHoldingA), - helper_account_constructor(AccountEnum::UserHoldingB), - ]; - let (post_states, chained_calls) = swap(&pre_states, - &[helper_balance_constructor(BalanceEnum::AddMaxAmountb), - helper_balance_constructor(BalanceEnum::MinAmountOut)], - helper_id_constructor(IdEnum::TokenBDefinitionId), - ); - + helper_account_constructor(AccountEnum::PoolDefinitionInit), + helper_account_constructor(AccountEnum::VaultAInit), + helper_account_constructor(AccountEnum::VaultBInit), + helper_account_constructor(AccountEnum::UserHoldingA), + helper_account_constructor(AccountEnum::UserHoldingB), + ]; + let (post_states, chained_calls) = swap( + &pre_states, + &[ + helper_balance_constructor(BalanceEnum::AddMaxAmountb), + helper_balance_constructor(BalanceEnum::MinAmountOut), + ], + helper_id_constructor(IdEnum::TokenBDefinitionId), + ); + let pool_post = post_states[0].clone(); - assert!(helper_account_constructor(AccountEnum::PoolDefinitionSwapTest2).account == - *pool_post.account()); + assert!( + helper_account_constructor(AccountEnum::PoolDefinitionSwapTest2).account + == *pool_post.account() + ); - let chained_call_a = chained_calls[1].clone(); + let chained_call_a = chained_calls[1].clone(); let chained_call_b = chained_calls[0].clone(); - assert!(chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenATest2)); - assert!(chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenBTest2)); + assert!( + chained_call_a == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenATest2) + ); + assert!( + chained_call_b == helper_chained_call_constructor(ChainedCallsEnum::CcSwapTokenBTest2) + ); } - -} \ No newline at end of file +} diff --git a/wallet/Cargo.toml b/wallet/Cargo.toml index e0d7815..9e4b078 100644 --- a/wallet/Cargo.toml +++ b/wallet/Cargo.toml @@ -27,3 +27,4 @@ sha2.workspace = true futures.workspace = true async-stream = "0.3.6" indicatif = { version = "0.18.3", features = ["improved_unicode"] } +risc0-zkvm.workspace = true From 639c282c61a6901f95b763b6ebf1295269c2b317 Mon Sep 17 00:00:00 2001 From: Pravdyvy Date: Mon, 22 Dec 2025 19:34:47 +0200 Subject: [PATCH 15/15] fix: suggestions fix 2 --- wallet/src/program_facades/amm.rs | 24 +++++++------------ wallet/src/program_facades/mod.rs | 40 ------------------------------- 2 files changed, 9 insertions(+), 55 deletions(-) diff --git a/wallet/src/program_facades/amm.rs b/wallet/src/program_facades/amm.rs index 72ee2fe..3beb92c 100644 --- a/wallet/src/program_facades/amm.rs +++ b/wallet/src/program_facades/amm.rs @@ -2,10 +2,7 @@ use common::{error::ExecutionFailureKind, rpc_primitives::requests::SendTxRespon use nssa::{AccountId, ProgramId, program::Program}; use nssa_core::program::PdaSeed; -use crate::{ - TokenHolding, WalletCore, - program_facades::{OrphanHack49BytesInput, OrphanHack65BytesInput}, -}; +use crate::{TokenHolding, WalletCore}; fn compute_pool_pda( amm_program_id: ProgramId, @@ -451,10 +448,7 @@ impl Amm<'_> { } } -fn amm_program_preparation_definition( - balance_a: u128, - balance_b: u128, -) -> (OrphanHack65BytesInput, Program) { +fn amm_program_preparation_definition(balance_a: u128, balance_b: u128) -> (Vec, Program) { // An instruction data of 65-bytes, indicating the initial amm reserves' balances and // token_program_id with the following layout: // [0x00 || array of balances (little-endian 16 bytes) || AMM_PROGRAM_ID)] @@ -474,7 +468,7 @@ fn amm_program_preparation_definition( instruction[57..61].copy_from_slice(&amm_program_id[6].to_le_bytes()); instruction[61..].copy_from_slice(&amm_program_id[7].to_le_bytes()); - let instruction_data = OrphanHack65BytesInput::expand(instruction); + let instruction_data = instruction.to_vec(); let program = Program::amm(); (instruction_data, program) @@ -484,7 +478,7 @@ fn amm_program_preparation_swap( amount_in: u128, min_amount_out: u128, token_definition_id: AccountId, -) -> (OrphanHack65BytesInput, Program) { +) -> (Vec, Program) { // An instruction data byte string of length 65, indicating which token type to swap, quantity // of tokens put into the swap (of type TOKEN_DEFINITION_ID) and min_amount_out. // [0x01 || amount (little-endian 16 bytes) || TOKEN_DEFINITION_ID]. @@ -496,7 +490,7 @@ fn amm_program_preparation_swap( // This can be done less verbose, but it is better to use same way, as in amm program instruction[33..].copy_from_slice(&token_definition_id.to_bytes()); - let instruction_data = OrphanHack65BytesInput::expand(instruction); + let instruction_data = instruction.to_vec(); let program = Program::amm(); (instruction_data, program) @@ -506,7 +500,7 @@ fn amm_program_preparation_add_liq( min_amount_lp: u128, max_amount_a: u128, max_amount_b: u128, -) -> (OrphanHack49BytesInput, Program) { +) -> (Vec, Program) { // An instruction data byte string of length 49, amounts for minimum amount of liquidity from // add (min_amount_lp), max amount added for each token (max_amount_a and max_amount_b); // indicate [0x02 || array of of balances (little-endian 16 bytes)]. @@ -517,7 +511,7 @@ fn amm_program_preparation_add_liq( instruction[17..33].copy_from_slice(&max_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&max_amount_b.to_le_bytes()); - let instruction_data = OrphanHack49BytesInput::expand(instruction); + let instruction_data = instruction.to_vec(); let program = Program::amm(); (instruction_data, program) @@ -527,7 +521,7 @@ fn amm_program_preparation_remove_liq( balance_lp: u128, min_amount_a: u128, min_amount_b: u128, -) -> (OrphanHack49BytesInput, Program) { +) -> (Vec, Program) { // An instruction data byte string of length 49, amounts for minimum amount of liquidity to // redeem (balance_lp), minimum balance of each token to remove (min_amount_a and // min_amount_b); indicate [0x03 || array of balances (little-endian 16 bytes)]. @@ -538,7 +532,7 @@ fn amm_program_preparation_remove_liq( instruction[17..33].copy_from_slice(&min_amount_a.to_le_bytes()); instruction[33..49].copy_from_slice(&min_amount_b.to_le_bytes()); - let instruction_data = OrphanHack49BytesInput::expand(instruction); + let instruction_data = instruction.to_vec(); let program = Program::amm(); (instruction_data, program) diff --git a/wallet/src/program_facades/mod.rs b/wallet/src/program_facades/mod.rs index 2b69664..5fdcdb3 100644 --- a/wallet/src/program_facades/mod.rs +++ b/wallet/src/program_facades/mod.rs @@ -1,47 +1,7 @@ //! This module contains [`WalletCore`](crate::WalletCore) facades for interacting with various //! on-chain programs. -use serde::{Serialize, ser::SerializeSeq}; - pub mod amm; pub mod native_token_transfer; pub mod pinata; pub mod token; - -/// Why it is necessary: -/// -/// Serialize implemented only for `[u8; N]` where `N<=32` and orphan rules would disallow custom -/// Serialize impls for them. -/// -/// Additionally, RISC0 splits instructions into words of 4-byte size which glues bytes for custom -/// structs so we need to expand each byte into `u32` to preserve shape, because AMM awaits -/// `Vec` as instruction. -struct OrphanHackNBytesInput([u32; N]); - -impl OrphanHackNBytesInput { - fn expand(orig: [u8; N]) -> Self { - let mut res = [0u32; N]; - - for (idx, val) in orig.into_iter().enumerate() { - res[idx] = val as u32; - } - - Self(res) - } -} - -impl Serialize for OrphanHackNBytesInput { - fn serialize(&self, serializer: S) -> Result - where - S: serde::Serializer, - { - let mut seq = serializer.serialize_seq(Some(N))?; - for word in self.0 { - seq.serialize_element(&word)?; - } - seq.end() - } -} - -type OrphanHack65BytesInput = OrphanHackNBytesInput<65>; -type OrphanHack49BytesInput = OrphanHackNBytesInput<49>;