//! Constants used by the crate. //! //! This module contains various constants used throughout the crate, including: //! //! - Seeds for deriving Program Derived Addresses (PDAs) //! - Program account addresses and public keys //! //! The constants are organized into submodules for better organization: //! //! - `seeds`: Contains seed values used for PDA derivation //! - `accounts`: Contains important program account addresses /// Constants used as seeds for deriving PDAs (Program Derived Addresses) pub mod seeds { pub const POOL_SEED: &[u8] = b"pool"; pub const POOL_VAULT_SEED: &[u8] = b"pool_vault"; pub const OBSERVATION_STATE_SEED: &[u8] = b"observation"; } /// Constants related to program accounts and authorities pub mod accounts { use solana_sdk::{pubkey, pubkey::Pubkey}; pub const AUTHORITY: Pubkey = pubkey!("GpMZbSM2GgvTKHJirzeGfMFoaZ8UR2X7F4v8vHTvxFbL"); pub const AMM_CONFIG: Pubkey = pubkey!("D4FPEruKEHrG5TenZ2mpDGEfu1iUvTiqBxvpU8HLBvC2"); pub const TOKEN_PROGRAM: Pubkey = spl_token::ID; pub const WSOL_TOKEN_ACCOUNT: Pubkey = pubkey!("So11111111111111111111111111111111111111112"); pub const RAYDIUM_CPMM: Pubkey = pubkey!("CPMMoo8L3F4NbTegBCKVNunggL7H1ZpdTHKxQB5qKP1C"); pub const FEE_RATE_DENOMINATOR_VALUE: u128 = 1_000_000; pub const TRADE_FEE_RATE: u64 = 2500; pub const CREATOR_FEE_RATE: u64 = 0; pub const PROTOCOL_FEE_RATE: u64 = 120000; pub const FUND_FEE_RATE: u64 = 40000; } pub const SWAP_BASE_IN_DISCRIMINATOR: &[u8] = &[143, 190, 90, 218, 196, 30, 51, 222]; pub const SWAP_BASE_OUT_DISCRIMINATOR: &[u8] = &[55, 217, 98, 86, 163, 74, 180, 173];