[{"type":"constructor","inputs":[{"name":"_poolManager","type":"address","internalType":"contract IPoolManager"},{"name":"_owner","type":"address","internalType":"address"},{"name":"_router","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"ACTED_ALLOWLIST","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_BURN","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_BUYBACK","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_BUYBACK_SAVED","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_DYNAMIC_FEE","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_EXIT_CLOCK","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_LAUNCH_FEE","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_MAX_TX","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_REFERRAL","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_SANDWICH","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_SNIPE_CAP","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_SPLIT","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_TAX","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"ACTED_WALLET_CAP","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"BUYBACK_MAX_PERCENT","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"MAX_PAYEES","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"PROTOCOL_FEE_SHARE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"PROTOCOL_TAX_SHARE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"REFERRAL_SHARE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"afterAddLiquidity","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"tuple","internalType":"struct ModifyLiquidityParams","components":[{"name":"tickLower","type":"int24","internalType":"int24"},{"name":"tickUpper","type":"int24","internalType":"int24"},{"name":"liquidityDelta","type":"int256","internalType":"int256"},{"name":"salt","type":"bytes32","internalType":"bytes32"}]},{"name":"","type":"int256","internalType":"BalanceDelta"},{"name":"","type":"int256","internalType":"BalanceDelta"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"int256","internalType":"BalanceDelta"}],"stateMutability":"pure"},{"type":"function","name":"afterDonate","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"pure"},{"type":"function","name":"afterInitialize","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"uint160","internalType":"uint160"},{"name":"","type":"int24","internalType":"int24"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"pure"},{"type":"function","name":"afterRemoveLiquidity","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"tuple","internalType":"struct ModifyLiquidityParams","components":[{"name":"tickLower","type":"int24","internalType":"int24"},{"name":"tickUpper","type":"int24","internalType":"int24"},{"name":"liquidityDelta","type":"int256","internalType":"int256"},{"name":"salt","type":"bytes32","internalType":"bytes32"}]},{"name":"","type":"int256","internalType":"BalanceDelta"},{"name":"","type":"int256","internalType":"BalanceDelta"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"int256","internalType":"BalanceDelta"}],"stateMutability":"pure"},{"type":"function","name":"afterSwap","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"params","type":"tuple","internalType":"struct SwapParams","components":[{"name":"zeroForOne","type":"bool","internalType":"bool"},{"name":"amountSpecified","type":"int256","internalType":"int256"},{"name":"sqrtPriceLimitX96","type":"uint160","internalType":"uint160"}]},{"name":"delta","type":"int256","internalType":"BalanceDelta"},{"name":"hookData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"int128","internalType":"int128"}],"stateMutability":"nonpayable"},{"type":"function","name":"allowlisted","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"beforeAddLiquidity","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"tuple","internalType":"struct ModifyLiquidityParams","components":[{"name":"tickLower","type":"int24","internalType":"int24"},{"name":"tickUpper","type":"int24","internalType":"int24"},{"name":"liquidityDelta","type":"int256","internalType":"int256"},{"name":"salt","type":"bytes32","internalType":"bytes32"}]},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"view"},{"type":"function","name":"beforeDonate","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"pure"},{"type":"function","name":"beforeInitialize","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"uint160","internalType":"uint160"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"view"},{"type":"function","name":"beforeRemoveLiquidity","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"","type":"tuple","internalType":"struct ModifyLiquidityParams","components":[{"name":"tickLower","type":"int24","internalType":"int24"},{"name":"tickUpper","type":"int24","internalType":"int24"},{"name":"liquidityDelta","type":"int256","internalType":"int256"},{"name":"salt","type":"bytes32","internalType":"bytes32"}]},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"}],"stateMutability":"pure"},{"type":"function","name":"beforeSwap","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"params","type":"tuple","internalType":"struct SwapParams","components":[{"name":"zeroForOne","type":"bool","internalType":"bool"},{"name":"amountSpecified","type":"int256","internalType":"int256"},{"name":"sqrtPriceLimitX96","type":"uint160","internalType":"uint160"}]},{"name":"hookData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes4","internalType":"bytes4"},{"name":"","type":"int256","internalType":"BeforeSwapDelta"},{"name":"","type":"uint24","internalType":"uint24"}],"stateMutability":"nonpayable"},{"type":"function","name":"claim","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"claimFrom","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"ids","type":"bytes32[]","internalType":"PoolId[]"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"claimProtocolFees","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"claimable","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"distribute","inputs":[{"name":"id","type":"bytes32","internalType":"PoolId"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"extrasOf","inputs":[{"name":"id","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Extras","components":[{"name":"walletCapWindow","type":"uint32","internalType":"uint32"},{"name":"exitStartFee","type":"uint24","internalType":"uint24"},{"name":"exitPeriod","type":"uint32","internalType":"uint32"},{"name":"walletCap","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"factory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"flows","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"second","type":"uint32","internalType":"uint32"},{"name":"bought","type":"uint112","internalType":"uint112"},{"name":"sold","type":"uint112","internalType":"uint112"}],"stateMutability":"view"},{"type":"function","name":"holdings","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"amount","type":"uint128","internalType":"uint128"},{"name":"since","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"lastBuyBlock","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"payeesOf","inputs":[{"name":"id","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"","type":"tuple[]","internalType":"struct Payee[]","components":[{"name":"wallet","type":"address","internalType":"address"},{"name":"share","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"payoutsOf","inputs":[{"name":"id","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Payouts","components":[{"name":"payeeShare","type":"uint24","internalType":"uint24"},{"name":"payeeCount","type":"uint8","internalType":"uint8"},{"name":"buybackShare","type":"uint24","internalType":"uint24"},{"name":"buybackEvery","type":"uint16","internalType":"uint16"},{"name":"burnShare","type":"uint24","internalType":"uint24"}]}],"stateMutability":"view"},{"type":"function","name":"poolManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IPoolManager"}],"stateMutability":"view"},{"type":"function","name":"pools","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"creator","type":"address","internalType":"address"},{"name":"launchTime","type":"uint64","internalType":"uint64"},{"name":"liquidity","type":"uint128","internalType":"uint128"}],"stateMutability":"view"},{"type":"function","name":"protocolFees","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"register","inputs":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"Currency"},{"name":"currency1","type":"address","internalType":"Currency"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"contract IHooks"}]},{"name":"s","type":"tuple","internalType":"struct CaptainHookV2.Setup","components":[{"name":"creator","type":"address","internalType":"address"},{"name":"liquidity","type":"uint128","internalType":"uint128"},{"name":"rules","type":"tuple","internalType":"struct Rules","components":[{"name":"baseFee","type":"uint24","internalType":"uint24"},{"name":"dynamicFee","type":"bool","internalType":"bool"},{"name":"dynBase","type":"uint24","internalType":"uint24"},{"name":"dynMax","type":"uint24","internalType":"uint24"},{"name":"dynSensitivity","type":"uint16","internalType":"uint16"},{"name":"snipeWindow","type":"uint16","internalType":"uint16"},{"name":"snipeStartFee","type":"uint24","internalType":"uint24"},{"name":"maxTxWindow","type":"uint32","internalType":"uint32"},{"name":"buyTax","type":"uint24","internalType":"uint24"},{"name":"sellTax","type":"uint24","internalType":"uint24"},{"name":"sandwichGuard","type":"bool","internalType":"bool"},{"name":"allowlistWindow","type":"uint16","internalType":"uint16"},{"name":"payouts","type":"bool","internalType":"bool"},{"name":"extras","type":"bool","internalType":"bool"}]},{"name":"caps","type":"tuple","internalType":"struct Caps","components":[{"name":"snipeMaxBuy","type":"uint128","internalType":"uint128"},{"name":"maxTxAmount","type":"uint128","internalType":"uint128"}]},{"name":"payouts","type":"tuple","internalType":"struct Payouts","components":[{"name":"payeeShare","type":"uint24","internalType":"uint24"},{"name":"payeeCount","type":"uint8","internalType":"uint8"},{"name":"buybackShare","type":"uint24","internalType":"uint24"},{"name":"buybackEvery","type":"uint16","internalType":"uint16"},{"name":"burnShare","type":"uint24","internalType":"uint24"}]},{"name":"extras","type":"tuple","internalType":"struct Extras","components":[{"name":"walletCapWindow","type":"uint32","internalType":"uint32"},{"name":"exitStartFee","type":"uint24","internalType":"uint24"},{"name":"exitPeriod","type":"uint32","internalType":"uint32"},{"name":"walletCap","type":"uint128","internalType":"uint128"}]},{"name":"payees","type":"tuple[]","internalType":"struct Payee[]","components":[{"name":"wallet","type":"address","internalType":"address"},{"name":"share","type":"uint24","internalType":"uint24"}]},{"name":"allowlist","type":"address[]","internalType":"address[]"},{"name":"vestWallet","type":"address","internalType":"address"},{"name":"vested","type":"uint256","internalType":"uint256"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"router","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"royalties","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"rulesOf","inputs":[{"name":"id","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Rules","components":[{"name":"baseFee","type":"uint24","internalType":"uint24"},{"name":"dynamicFee","type":"bool","internalType":"bool"},{"name":"dynBase","type":"uint24","internalType":"uint24"},{"name":"dynMax","type":"uint24","internalType":"uint24"},{"name":"dynSensitivity","type":"uint16","internalType":"uint16"},{"name":"snipeWindow","type":"uint16","internalType":"uint16"},{"name":"snipeStartFee","type":"uint24","internalType":"uint24"},{"name":"maxTxWindow","type":"uint32","internalType":"uint32"},{"name":"buyTax","type":"uint24","internalType":"uint24"},{"name":"sellTax","type":"uint24","internalType":"uint24"},{"name":"sandwichGuard","type":"bool","internalType":"bool"},{"name":"allowlistWindow","type":"uint16","internalType":"uint16"},{"name":"payouts","type":"bool","internalType":"bool"},{"name":"extras","type":"bool","internalType":"bool"}]},{"name":"","type":"tuple","internalType":"struct Caps","components":[{"name":"snipeMaxBuy","type":"uint128","internalType":"uint128"},{"name":"maxTxAmount","type":"uint128","internalType":"uint128"}]}],"stateMutability":"view"},{"type":"function","name":"setFactory","inputs":[{"name":"_factory","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"newOwner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unlockCallback","inputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"function","name":"vaults","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"}],"outputs":[{"name":"eth","type":"uint128","internalType":"uint128"},{"name":"swaps","type":"uint64","internalType":"uint64"},{"name":"lastAt","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"walletBought","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"walletFlows","inputs":[{"name":"","type":"bytes32","internalType":"PoolId"},{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"second","type":"uint32","internalType":"uint32"},{"name":"bought","type":"uint112","internalType":"uint112"},{"name":"sold","type":"uint112","internalType":"uint112"}],"stateMutability":"view"},{"type":"event","name":"Allowlisted","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"wallets","type":"address[]","indexed":false,"internalType":"address[]"}],"anonymous":false},{"type":"event","name":"BoughtBack","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"eth","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"tokens","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"sqrtPriceX96","type":"uint160","indexed":false,"internalType":"uint160"}],"anonymous":false},{"type":"event","name":"Claimed","inputs":[{"name":"account","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":false,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Distributed","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"FactorySet","inputs":[{"name":"factory","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnershipTransferred","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"newOwner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PayeesSet","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"payees","type":"tuple[]","indexed":false,"internalType":"struct Payee[]","components":[{"name":"wallet","type":"address","internalType":"address"},{"name":"share","type":"uint24","internalType":"uint24"}]}],"anonymous":false},{"type":"event","name":"ReferralPaid","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"referrer","type":"address","indexed":true,"internalType":"address"},{"name":"trader","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Registered","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"creator","type":"address","indexed":true,"internalType":"address"},{"name":"rules","type":"tuple","indexed":false,"internalType":"struct Rules","components":[{"name":"baseFee","type":"uint24","internalType":"uint24"},{"name":"dynamicFee","type":"bool","internalType":"bool"},{"name":"dynBase","type":"uint24","internalType":"uint24"},{"name":"dynMax","type":"uint24","internalType":"uint24"},{"name":"dynSensitivity","type":"uint16","internalType":"uint16"},{"name":"snipeWindow","type":"uint16","internalType":"uint16"},{"name":"snipeStartFee","type":"uint24","internalType":"uint24"},{"name":"maxTxWindow","type":"uint32","internalType":"uint32"},{"name":"buyTax","type":"uint24","internalType":"uint24"},{"name":"sellTax","type":"uint24","internalType":"uint24"},{"name":"sandwichGuard","type":"bool","internalType":"bool"},{"name":"allowlistWindow","type":"uint16","internalType":"uint16"},{"name":"payouts","type":"bool","internalType":"bool"},{"name":"extras","type":"bool","internalType":"bool"}]},{"name":"caps","type":"tuple","indexed":false,"internalType":"struct Caps","components":[{"name":"snipeMaxBuy","type":"uint128","internalType":"uint128"},{"name":"maxTxAmount","type":"uint128","internalType":"uint128"}]},{"name":"payouts","type":"tuple","indexed":false,"internalType":"struct Payouts","components":[{"name":"payeeShare","type":"uint24","internalType":"uint24"},{"name":"payeeCount","type":"uint8","internalType":"uint8"},{"name":"buybackShare","type":"uint24","internalType":"uint24"},{"name":"buybackEvery","type":"uint16","internalType":"uint16"},{"name":"burnShare","type":"uint24","internalType":"uint24"}]},{"name":"extras","type":"tuple","indexed":false,"internalType":"struct Extras","components":[{"name":"walletCapWindow","type":"uint32","internalType":"uint32"},{"name":"exitStartFee","type":"uint24","internalType":"uint24"},{"name":"exitPeriod","type":"uint32","internalType":"uint32"},{"name":"walletCap","type":"uint128","internalType":"uint128"}]}],"anonymous":false},{"type":"event","name":"Swapped","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"PoolId"},{"name":"trader","type":"address","indexed":true,"internalType":"address"},{"name":"buy","type":"bool","indexed":false,"internalType":"bool"},{"name":"amountIn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amountOut","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"fee","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"tax","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"burned","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"feeRate","type":"uint24","indexed":false,"internalType":"uint24"},{"name":"acted","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"sqrtPriceX96","type":"uint160","indexed":false,"internalType":"uint160"}],"anonymous":false},{"type":"error","name":"AlreadyRegistered","inputs":[]},{"type":"error","name":"BadPayees","inputs":[]},{"type":"error","name":"BuyTooLarge","inputs":[]},{"type":"error","name":"ExactOutputNotSupported","inputs":[]},{"type":"error","name":"FactoryAlreadySet","inputs":[]},{"type":"error","name":"HookNotImplemented","inputs":[]},{"type":"error","name":"LiquidityLocked","inputs":[]},{"type":"error","name":"NotAllowlisted","inputs":[]},{"type":"error","name":"NotFactory","inputs":[]},{"type":"error","name":"NotOpenYet","inputs":[]},{"type":"error","name":"NotPoolManager","inputs":[]},{"type":"error","name":"NotRegistered","inputs":[]},{"type":"error","name":"NothingToClaim","inputs":[]},{"type":"error","name":"PartialFill","inputs":[]},{"type":"error","name":"RouterOnly","inputs":[]},{"type":"error","name":"SameBlockSell","inputs":[]},{"type":"error","name":"SwapTooLarge","inputs":[]},{"type":"error","name":"WalletCapReached","inputs":[]},{"type":"error","name":"ZeroAddress","inputs":[]}]