[{"inputs":[],"name":"PERCENTAGE_PRECISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"strikePrice","type":"uint256"},{"internalType":"uint256","name":"acoExpiryTime","type":"uint256"},{"internalType":"uint256","name":"underlyingPrice","type":"uint256"},{"components":[{"internalType":"int256","name":"tolerancePriceBelowMin","type":"int256"},{"internalType":"int256","name":"tolerancePriceBelowMax","type":"int256"},{"internalType":"int256","name":"tolerancePriceAboveMin","type":"int256"},{"internalType":"int256","name":"tolerancePriceAboveMax","type":"int256"},{"internalType":"uint256","name":"minStrikePrice","type":"uint256"},{"internalType":"uint256","name":"maxStrikePrice","type":"uint256"},{"internalType":"uint256","name":"minExpiration","type":"uint256"},{"internalType":"uint256","name":"maxExpiration","type":"uint256"}],"internalType":"struct IACOPool2.PoolAcoPermissionConfigV2","name":"acoPermissionConfig","type":"tuple"}],"name":"acoStrikeAndExpirationIsValid","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"uint256","name":"underlyingBalance","type":"uint256"},{"internalType":"uint256","name":"strikeAssetBalance","type":"uint256"},{"internalType":"uint256","name":"collateralBalance","type":"uint256"},{"internalType":"uint256","name":"minCollateral","type":"uint256"},{"internalType":"bool","name":"isCall","type":"bool"}],"name":"getAmountToNoLockedWithdraw","outputs":[{"internalType":"uint256","name":"underlyingWithdrawn","type":"uint256"},{"internalType":"uint256","name":"strikeAssetWithdrawn","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"address","name":"underlying","type":"address"},{"internalType":"address","name":"strikeAsset","type":"address"},{"internalType":"bool","name":"isCall","type":"bool"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"address","name":"lendingToken","type":"address"}],"name":"getBaseAssetsWithdrawWithLocked","outputs":[{"internalType":"uint256","name":"underlyingWithdrawn","type":"uint256"},{"internalType":"uint256","name":"strikeAssetWithdrawn","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"shares","type":"uint256"},{"internalType":"uint256","name":"totalSupply","type":"uint256"},{"internalType":"bool","name":"isCall","type":"bool"},{"internalType":"uint256","name":"underlyingBalance","type":"uint256"},{"internalType":"uint256","name":"strikeAssetBalance","type":"uint256"},{"internalType":"uint256","name":"collateralBalance","type":"uint256"},{"internalType":"uint256","name":"collateralLockedRedeemable","type":"uint256"}],"name":"getBaseWithdrawNoLockedData","outputs":[{"internalType":"uint256","name":"underlyingWithdrawn","type":"uint256"},{"internalType":"uint256","name":"strikeAssetWithdrawn","type":"uint256"},{"internalType":"bool","name":"isPossible","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"isDeposit","type":"bool"},{"internalType":"bool","name":"isCall","type":"bool"},{"internalType":"uint256","name":"underlyingPrice","type":"uint256"},{"internalType":"uint256","name":"baseVolatility","type":"uint256"},{"internalType":"uint256","name":"underlyingPriceAdjustPercentage","type":"uint256"},{"internalType":"uint256","name":"withdrawOpenPositionPenalty","type":"uint256"},{"internalType":"uint256","name":"fee","type":"uint256"},{"internalType":"uint256","name":"underlyingPrecision","type":"uint256"},{"internalType":"address","name":"underlying","type":"address"},{"internalType":"address","name":"strikeAsset","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"address","name":"acoFactory","type":"address"},{"internalType":"address","name":"lendingToken","type":"address"}],"internalType":"struct ACOPoolLib.OpenPositionData","name":"data","type":"tuple"},{"internalType":"address[]","name":"openAcos","type":"address[]"}],"name":"getCollateralData","outputs":[{"internalType":"uint256","name":"underlyingBalance","type":"uint256"},{"internalType":"uint256","name":"strikeAssetBalance","type":"uint256"},{"internalType":"uint256","name":"collateralBalance","type":"uint256"},{"internalType":"uint256","name":"collateralLocked","type":"uint256"},{"internalType":"uint256","name":"collateralOnOpenPosition","type":"uint256"},{"internalType":"uint256","name":"collateralLockedRedeemable","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"underlying","type":"address"},{"internalType":"address","name":"strikeAsset","type":"address"},{"internalType":"bool","name":"isCall","type":"bool"},{"internalType":"uint256","name":"poolId","type":"uint256"}],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"lendingToken","type":"address"},{"internalType":"address","name":"strategy","type":"address"},{"internalType":"uint256","name":"baseVolatility","type":"uint256"},{"internalType":"uint256","name":"fee","type":"uint256"},{"internalType":"uint256","name":"underlyingPrice","type":"uint256"},{"internalType":"uint256","name":"underlyingPrecision","type":"uint256"},{"components":[{"internalType":"bool","name":"isCall","type":"bool"},{"internalType":"uint256","name":"strikePrice","type":"uint256"},{"internalType":"uint256","name":"expiryTime","type":"uint256"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"},{"internalType":"address","name":"underlying","type":"address"},{"internalType":"address","name":"strikeAsset","type":"address"}],"internalType":"struct ACOPoolLib.AcoData","name":"acoData","type":"tuple"},{"components":[{"internalType":"int256","name":"tolerancePriceBelowMin","type":"int256"},{"internalType":"int256","name":"tolerancePriceBelowMax","type":"int256"},{"internalType":"int256","name":"tolerancePriceAboveMin","type":"int256"},{"internalType":"int256","name":"tolerancePriceAboveMax","type":"int256"},{"internalType":"uint256","name":"minStrikePrice","type":"uint256"},{"internalType":"uint256","name":"maxStrikePrice","type":"uint256"},{"internalType":"uint256","name":"minExpiration","type":"uint256"},{"internalType":"uint256","name":"maxExpiration","type":"uint256"}],"internalType":"struct IACOPool2.PoolAcoPermissionConfigV2","name":"acoPermissionConfig","type":"tuple"}],"internalType":"struct ACOPoolLib.QuoteData","name":"data","type":"tuple"}],"name":"quote","outputs":[{"internalType":"uint256","name":"swapPrice","type":"uint256"},{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"volatility","type":"uint256"},{"internalType":"uint256","name":"collateralAmount","type":"uint256"}],"stateMutability":"view","type":"function"}]