use anchor_lang::prelude::*; #[error_code] #[derive(PartialEq)] pub enum LBError { #[msg("Invalid start bin index")] InvalidStartBinIndex, #[msg("Invalid bin id")] InvalidBinId, #[msg("Invalid input data")] InvalidInput, #[msg("Exceeded amount slippage tolerance")] ExceededAmountSlippageTolerance, #[msg("Exceeded bin slippage tolerance")] ExceededBinSlippageTolerance, #[msg("Composition factor flawed")] CompositionFactorFlawed, #[msg("Non preset bin step")] NonPresetBinStep, #[msg("Zero liquidity")] ZeroLiquidity, #[msg("Invalid position")] InvalidPosition, #[msg("Bin array not found")] BinArrayNotFound, #[msg("Invalid token mint")] InvalidTokenMint, #[msg("Invalid account for single deposit")] InvalidAccountForSingleDeposit, #[msg("Pair insufficient liquidity")] PairInsufficientLiquidity, #[msg("Invalid fee owner")] InvalidFeeOwner, #[msg("Invalid fee withdraw amount")] InvalidFeeWithdrawAmount, #[msg("Invalid admin")] InvalidAdmin, #[msg("Identical fee owner")] IdenticalFeeOwner, #[msg("Invalid basis point")] InvalidBps, #[msg("Math operation overflow")] MathOverflow, #[msg("Type cast error")] TypeCastFailed, #[msg("Invalid reward index")] InvalidRewardIndex, #[msg("Invalid reward duration")] InvalidRewardDuration, #[msg("Reward already initialized")] RewardInitialized, #[msg("Reward not initialized")] RewardUninitialized, #[msg("Identical funder")] IdenticalFunder, #[msg("Reward campaign in progress")] RewardCampaignInProgress, #[msg("Reward duration is the same")] IdenticalRewardDuration, #[msg("Invalid bin array")] InvalidBinArray, #[msg("Bin arrays must be continuous")] NonContinuousBinArrays, #[msg("Invalid reward vault")] InvalidRewardVault, #[msg("Position is not empty")] NonEmptyPosition, #[msg("Unauthorized alpha access")] UnauthorizedAlphaAccess, #[msg("Invalid fee parameter")] InvalidFeeParameter, #[msg("Missing oracle account")] MissingOracle, #[msg("Insufficient observation sample")] InsufficientSample, #[msg("Invalid lookup timestamp")] InvalidLookupTimestamp, #[msg("Bitmap extension account is not provided")] BitmapExtensionAccountIsNotProvided, #[msg("Cannot find non-zero liquidity binArrayId")] CannotFindNonZeroLiquidityBinArrayId, #[msg("Bin id out of bound")] BinIdOutOfBound, #[msg("Insufficient amount in for minimum out")] InsufficientOutAmount, #[msg("Invalid position width")] InvalidPositionWidth, #[msg("Excessive fee update")] ExcessiveFeeUpdate, #[msg("Pool disabled")] PoolDisabled, #[msg("Invalid pool type")] InvalidPoolType, #[msg("Whitelist for wallet is full")] ExceedMaxWhitelist, #[msg("Invalid index")] InvalidIndex, #[msg("Reward not ended")] RewardNotEnded, #[msg("Must withdraw ineligible reward")] MustWithdrawnIneligibleReward, #[msg("Invalid strategy parameters")] InvalidStrategyParameters, }