Maverick Docs
  • Introducing Maverick
  • Getting Started
    • 🖥️The Maverick V2 UI
    • 👛Connect a Wallet
    • ⛓️Choose a Network
    • 🪙Approving Tokens
  • Guides
    • 🤝Traders
      • How to Make a Swap
    • 💰Liquidity Providers
      • Understanding Liquidity Provision
      • Understanding Modes
      • How to Add Liquidity
      • How to Deploy a New Pool
      • How to Check Position Balances
      • How to Manage Liquidity in a Pool
      • How to Migrate from V1 to V2
      • Understanding Permanent Loss
      • Liquidity Strategies
    • ⚡Incentives
      • Understanding Boosted Positions
      • Understanding Incentives
      • How to Join a Boosted Position
      • How to Create a Boosted Position
      • How to Manage a Boosted Position
      • How to Add Incentives
    • 🎡veFlywheel
      • veFlywheel Basics
      • Guide to veFlywheel Emissions
      • How to Vote to Direct Emissions
    • 👩‍🏫Advanced Tutorials
      • Single-Sided Incentives
  • Technical Reference
    • Contract Addresses
      • V1 Contract Addresses
      • V2 Contract Addresses
    • Maverick V1
      • V1 Whitepaper
      • V1 Contracts
        • Router
        • Pool
        • Factory
        • SlimRouter
    • Maverick V2
      • V2 Whitepaper
      • V2 Contracts
        • Maverick V2 Common Contracts
          • base
            • IMulticall
            • IPayableMulticall
            • Multicall
            • PayableMulticall
          • interfaces
            • IMaverickV2AddLiquidityCallback
            • IMaverickV2Factory
            • IMaverickV2FactoryAdmin
            • IMaverickV2FlashLoanCallback
            • IMaverickV2Pool
            • IMaverickV2PoolAdmin
            • IMaverickV2SwapCallback
          • libraries
            • ArrayOperations
            • Constants
            • Math
            • PoolLib
            • TickMath
            • TransferLib
        • Maverick V2 AMM Contracts
          • poollib
            • Bin
            • Delta
            • Deployer
            • DeployerPermissioned
            • SwapMath
            • Twa
          • MaverickV2Factory
          • MaverickV2Pool
          • MaverickV2PoolPermissioned
        • Maverick V2 Reward Contracts
          • interfaces
            • IMaverickV2IncentiveMatcher
            • IMaverickV2IncentiveMatcherFactory
            • IMaverickV2Reward
            • IMaverickV2RewardFactory
            • IMaverickV2RewardRouter
            • IMaverickV2RewardVault
            • IMaverickV2VotingEscrowBase
            • IMaverickV2VotingEscrow
            • IMaverickV2VotingEscrowFactory
            • IMaverickV2VotingEscrowLens
            • IMaverickV2VotingEscrowWSync
          • libraries
            • IncentiveMatcherDeployer
            • RewardDeployer
            • VotingEscrowDeployer
            • VotingEscrowWSyncDeployer
          • rewardbase
            • IRewardAccounting
            • RewardAccounting
          • votingescrowbase
            • HistoricalBalance
            • IHistoricalBalance
            • ILegacyVeMav
            • VotingEscrow
          • MaverickV2IncentiveMatcher
          • MaverickV2IncentiveMatcherFactory
          • MaverickV2Reward
          • MaverickV2RewardFactory
          • MaverickV2RewardRouter
          • MaverickV2RewardVault
          • MaverickV2VotingEscrow
          • MaverickV2VotingEscrowFactory
          • MaverickV2VotingEscrowLens
          • MaverickV2VotingEscrowWSync
        • Maverick V2 Supplemental Contracts
          • base
            • Checks
            • IChecks
            • IMigrateBins
            • MigrateBins
          • boostedpositionbase
            • BoostedPositionBase
            • IBoostedPositionBase
            • ImmutableArrayGetter
          • interfaces
            • IMaverickV2BoostedPosition
            • IMaverickV2BoostedPositionFactory
            • IMaverickV2LiquidityManager
            • IMaverickV2PoolLens
            • IMaverickV2Position
            • IMaverickV2Quoter
            • IMaverickV2Router
            • IPositionImage
          • libraries
            • BoostedPositionDeployerDynamic
            • BoostedPositionDeployerStatic
            • BytesLib
            • LiquidityUtilities
            • PackLib
            • Path
            • PoolInspection
          • liquiditybase
            • ArgPacker
            • IArgPacker
          • paymentbase
            • IERC20PermitAllowed
            • IPayment
            • ISelfPermit
            • IState
            • IWETH9
            • Payment
            • SelfPermit
            • State
          • positionbase
            • INft
            • Nft
          • routerbase
            • CallbackOperations
            • ExactOutputSlim
            • ICallbackOperations
            • IExactOutputSlim
            • IPushOperations
            • IRouterErrors
            • PushOperations
          • MaverickV2BoostedPositionDynamic
          • MaverickV2BoostedPositionFactory
          • MaverickV2BoostedPositionStatic
          • MaverickV2LiquidityManager
          • MaverickV2PoolLens
          • MaverickV2Position
          • MaverickV2Quoter
          • MaverickV2Router
          • PositionImage
      • V2 API Documentation
      • V2 Testnet Guide
        • Get Sepolia ETH & Test Tokens
        • How to Create a Boosted Position in V2
        • How to Add & Match Incentives
        • How to Create a veFlywheel
    • Development FAQ
    • Finding LP Balances
  • MAV token
    • MAV Token & Tokenomics
    • veMAV & MAV Staking
    • How to Stake MAV
    • Syncing V1 veMAV
    • Airdrop Information
      • Maverick Ecosystem Rewards Pre-Season Airdrop
      • Maverick Governance & S1 Airdrops
  • Further Information
    • Frequently Asked Questions
    • Glossary
    • Security
    • Maverick Wallets
    • Dune Analytics
    • Rebasing Tokens
    • Restricted Territories
    • Delphi Digital Report
Powered by GitBook
On this page
  1. Technical Reference
  2. Maverick V2
  3. V2 Contracts
  4. Maverick V2 Common Contracts
  5. libraries

Math

Functions

min

function min(uint256 x, uint256 y) internal pure returns (uint256 z);

min128

function min128(uint128 x, uint128 y) internal pure returns (uint128 z);

min

function min(int256 x, int256 y) internal pure returns (int256 z);

max

function max(uint256 x, uint256 y) internal pure returns (uint256 z);

max

function max(int256 x, int256 y) internal pure returns (int256 z);

max128

function max128(uint128 x, uint128 y) internal pure returns (uint128 z);

clip128

function clip128(uint128 x, uint128 y) internal pure returns (uint128);

clip

function clip(uint256 x, uint256 y) internal pure returns (uint256);

divFloor

function divFloor(uint256 x, uint256 y) internal pure returns (uint256);

divCeil

function divCeil(uint256 x, uint256 y) internal pure returns (uint256);

mulFloor

function mulFloor(uint256 x, uint256 y) internal pure returns (uint256);

mulCeil

function mulCeil(uint256 x, uint256 y) internal pure returns (uint256);

invFloor

function invFloor(uint256 x) internal pure returns (uint256);

invCeil

function invCeil(uint256 denominator) internal pure returns (uint256 z);

mulDivFloor

function mulDivFloor(uint256 x, uint256 y, uint256 k) internal pure returns (uint256 result);

mulDivCeil

function mulDivCeil(uint256 x, uint256 y, uint256 k) internal pure returns (uint256 result);

mulDivDown

function mulDivDown(uint256 x, uint256 y, uint256 denominator) internal pure returns (uint256 z);

mulDivUp

function mulDivUp(uint256 x, uint256 y, uint256 denominator) internal pure returns (uint256 z);

mulDown

function mulDown(uint256 x, uint256 y) internal pure returns (uint256);

mulUp

function mulUp(uint256 x, uint256 y) internal pure returns (uint256);

divDown

function divDown(uint256 x, uint256 y) internal pure returns (uint256);

divUp

function divUp(uint256 x, uint256 y) internal pure returns (uint256);

scale

function scale(uint8 decimals) internal pure returns (uint256);

ammScaleToTokenScale

function ammScaleToTokenScale(uint256 amount, uint256 scaleFactor, bool ceil) internal pure returns (uint256 z);

tokenScaleToAmmScale

function tokenScaleToAmmScale(uint256 amount, uint256 scaleFactor) internal pure returns (uint256);

abs32

function abs32(int32 x) internal pure returns (uint32);

abs

function abs(int256 x) internal pure returns (uint256);

sqrt

function sqrt(uint256 x) internal pure returns (uint256 z);

floorD8Unchecked

Floor of a D8 number without checking overflow in the cast to int32.

function floorD8Unchecked(int256 val) internal pure returns (int32);
PreviousConstantsNextPoolLib

Last updated 1 year ago