├── .gas-snapshot ├── .github └── workflows │ ├── lint.yml │ ├── publish.yml │ └── test.yml ├── .gitignore ├── .gitmodules ├── LICENSE ├── README.md ├── audits ├── Narya.ai UniV3Automan Report July 3rd 2023.pdf └── Narya.ai UniV3Automan Report May 8th 2023.pdf ├── foundry.toml ├── package.json ├── remappings.txt ├── src ├── BitMath.sol ├── CallbackValidation.sol ├── CallbackValidationPancakeSwapV3.sol ├── FullMath.sol ├── LiquidityAmounts.sol ├── LiquidityMath.sol ├── NPMCaller.sol ├── PoolAddress.sol ├── PoolAddressPancakeSwapV3.sol ├── PoolCaller.sol ├── PoolKey.sol ├── SafeCast.sol ├── SqrtPriceMath.sol ├── SwapMath.sol ├── TernaryLib.sol ├── TickBitmap.sol ├── TickMath.sol ├── UnsafeMath.sol ├── interfaces │ ├── ICommonNonfungiblePositionManager.sol │ ├── IPCSV3NonfungiblePositionManager.sol │ ├── ISlipStreamNonfungiblePositionManager.sol │ └── IUniswapV3NonfungiblePositionManager.sol └── test │ ├── BitMathTest.sol │ ├── FullMathTest.sol │ ├── LiquidityAmountsTest.sol │ ├── LiquidityMathTest.sol │ ├── PoolAddressPancakeSwapV3Test.sol │ ├── PoolAddressTest.sol │ ├── SqrtPriceMathTest.sol │ ├── SwapMathTest.sol │ ├── TickBitmapTest.sol │ ├── TickMathTest.sol │ └── interfaces │ ├── IBitMath.sol │ ├── IFullMath.sol │ ├── ILiquidityAmounts.sol │ ├── ILiquidityMath.sol │ ├── IPoolAddress.sol │ ├── ISqrtPriceMath.sol │ ├── ISwapMath.sol │ ├── ITickBitmap.sol │ └── ITickMath.sol ├── test ├── Base.t.sol ├── BitMath.t.sol ├── FullMath.t.sol ├── LiquidityAmounts.t.sol ├── LiquidityMath.t.sol ├── NPMCaller.t.sol ├── PoolAddress.t.sol ├── PoolCaller.t.sol ├── SafeCast.t.sol ├── SqrtPriceMath.t.sol ├── SwapMath.t.sol ├── TernaryLib.t.sol ├── TickBitmap.t.sol └── TickMath.t.sol └── yarn.lock /.gas-snapshot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.gas-snapshot -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.github/workflows/publish.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/.gitmodules -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/README.md -------------------------------------------------------------------------------- /audits/Narya.ai UniV3Automan Report July 3rd 2023.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/audits/Narya.ai UniV3Automan Report July 3rd 2023.pdf -------------------------------------------------------------------------------- /audits/Narya.ai UniV3Automan Report May 8th 2023.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/audits/Narya.ai UniV3Automan Report May 8th 2023.pdf -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/foundry.toml -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/package.json -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/remappings.txt -------------------------------------------------------------------------------- /src/BitMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/BitMath.sol -------------------------------------------------------------------------------- /src/CallbackValidation.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/CallbackValidation.sol -------------------------------------------------------------------------------- /src/CallbackValidationPancakeSwapV3.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/CallbackValidationPancakeSwapV3.sol -------------------------------------------------------------------------------- /src/FullMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/FullMath.sol -------------------------------------------------------------------------------- /src/LiquidityAmounts.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/LiquidityAmounts.sol -------------------------------------------------------------------------------- /src/LiquidityMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/LiquidityMath.sol -------------------------------------------------------------------------------- /src/NPMCaller.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/NPMCaller.sol -------------------------------------------------------------------------------- /src/PoolAddress.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/PoolAddress.sol -------------------------------------------------------------------------------- /src/PoolAddressPancakeSwapV3.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/PoolAddressPancakeSwapV3.sol -------------------------------------------------------------------------------- /src/PoolCaller.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/PoolCaller.sol -------------------------------------------------------------------------------- /src/PoolKey.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/PoolKey.sol -------------------------------------------------------------------------------- /src/SafeCast.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/SafeCast.sol -------------------------------------------------------------------------------- /src/SqrtPriceMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/SqrtPriceMath.sol -------------------------------------------------------------------------------- /src/SwapMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/SwapMath.sol -------------------------------------------------------------------------------- /src/TernaryLib.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/TernaryLib.sol -------------------------------------------------------------------------------- /src/TickBitmap.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/TickBitmap.sol -------------------------------------------------------------------------------- /src/TickMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/TickMath.sol -------------------------------------------------------------------------------- /src/UnsafeMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/UnsafeMath.sol -------------------------------------------------------------------------------- /src/interfaces/ICommonNonfungiblePositionManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/interfaces/ICommonNonfungiblePositionManager.sol -------------------------------------------------------------------------------- /src/interfaces/IPCSV3NonfungiblePositionManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/interfaces/IPCSV3NonfungiblePositionManager.sol -------------------------------------------------------------------------------- /src/interfaces/ISlipStreamNonfungiblePositionManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/interfaces/ISlipStreamNonfungiblePositionManager.sol -------------------------------------------------------------------------------- /src/interfaces/IUniswapV3NonfungiblePositionManager.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/interfaces/IUniswapV3NonfungiblePositionManager.sol -------------------------------------------------------------------------------- /src/test/BitMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/BitMathTest.sol -------------------------------------------------------------------------------- /src/test/FullMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/FullMathTest.sol -------------------------------------------------------------------------------- /src/test/LiquidityAmountsTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/LiquidityAmountsTest.sol -------------------------------------------------------------------------------- /src/test/LiquidityMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/LiquidityMathTest.sol -------------------------------------------------------------------------------- /src/test/PoolAddressPancakeSwapV3Test.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/PoolAddressPancakeSwapV3Test.sol -------------------------------------------------------------------------------- /src/test/PoolAddressTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/PoolAddressTest.sol -------------------------------------------------------------------------------- /src/test/SqrtPriceMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/SqrtPriceMathTest.sol -------------------------------------------------------------------------------- /src/test/SwapMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/SwapMathTest.sol -------------------------------------------------------------------------------- /src/test/TickBitmapTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/TickBitmapTest.sol -------------------------------------------------------------------------------- /src/test/TickMathTest.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/TickMathTest.sol -------------------------------------------------------------------------------- /src/test/interfaces/IBitMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/IBitMath.sol -------------------------------------------------------------------------------- /src/test/interfaces/IFullMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/IFullMath.sol -------------------------------------------------------------------------------- /src/test/interfaces/ILiquidityAmounts.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ILiquidityAmounts.sol -------------------------------------------------------------------------------- /src/test/interfaces/ILiquidityMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ILiquidityMath.sol -------------------------------------------------------------------------------- /src/test/interfaces/IPoolAddress.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/IPoolAddress.sol -------------------------------------------------------------------------------- /src/test/interfaces/ISqrtPriceMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ISqrtPriceMath.sol -------------------------------------------------------------------------------- /src/test/interfaces/ISwapMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ISwapMath.sol -------------------------------------------------------------------------------- /src/test/interfaces/ITickBitmap.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ITickBitmap.sol -------------------------------------------------------------------------------- /src/test/interfaces/ITickMath.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/src/test/interfaces/ITickMath.sol -------------------------------------------------------------------------------- /test/Base.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/Base.t.sol -------------------------------------------------------------------------------- /test/BitMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/BitMath.t.sol -------------------------------------------------------------------------------- /test/FullMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/FullMath.t.sol -------------------------------------------------------------------------------- /test/LiquidityAmounts.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/LiquidityAmounts.t.sol -------------------------------------------------------------------------------- /test/LiquidityMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/LiquidityMath.t.sol -------------------------------------------------------------------------------- /test/NPMCaller.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/NPMCaller.t.sol -------------------------------------------------------------------------------- /test/PoolAddress.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/PoolAddress.t.sol -------------------------------------------------------------------------------- /test/PoolCaller.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/PoolCaller.t.sol -------------------------------------------------------------------------------- /test/SafeCast.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/SafeCast.t.sol -------------------------------------------------------------------------------- /test/SqrtPriceMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/SqrtPriceMath.t.sol -------------------------------------------------------------------------------- /test/SwapMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/SwapMath.t.sol -------------------------------------------------------------------------------- /test/TernaryLib.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/TernaryLib.t.sol -------------------------------------------------------------------------------- /test/TickBitmap.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/TickBitmap.t.sol -------------------------------------------------------------------------------- /test/TickMath.t.sol: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/test/TickMath.t.sol -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Aperture-Finance/uni-v3-lib/HEAD/yarn.lock --------------------------------------------------------------------------------