use anchor_lang::prelude::*;
pub const EXCHANGE_PRICES_PRECISION: u128 = 10u128.pow(12);
pub const MIN_TOKEN_DECIMALS: u8 = 6;
pub const MAX_TOKEN_DECIMALS: u8 = 9;
pub const MIN_OPERATE_AMOUNT: u128 = 10;
pub const MAX_OPERATE: u128 = i64::MAX as u128;
pub const SECONDS_PER_YEAR: u128 = 365 * 24 * 60 * 60;
pub const MAX_TOKEN_AMOUNT_CAP: u128 = (1u128 << 60) - 1;
pub const MAX_INPUT_AMOUNT_EXCESS: u128 = 100;
pub const FOUR_DECIMALS: u128 = 10u128.pow(4);
pub const TWELVE_DECIMALS: u128 = 10u128.pow(12);
pub const X14: u128 = 0x3fff;
pub const X24: u128 = 0xffffff;
pub const WSOL: Pubkey = pubkey!("So11111111111111111111111111111111111111112");
pub const MAX_AUTH_COUNT: usize = 10;
pub const MAX_USER_CLASSES: usize = 100;
pub const PROTOCOL_INIT_AUTH: Pubkey = pubkey!("3H8C6yYTXUcN9RRRDmcLDt3e4aZLYRRX4x2HbEjTqQAA");
pub const GOVERNANCE_MS: Pubkey = pubkey!("HqPrpa4ESBDnRHRWaiYtjv4xe93wvCS9NNZtDwR89cVa");