{"name":"Liquidmint","configured":false,"chain":{"id":4663,"name":"Robinhood Chain","explorer":"https://robinhoodchain.blockscout.com"},"contracts":{"launcher":null,"hook":null,"tokenImplementation":null,"treasury":null,"poolManager":"0x8366a39CC670B4001A1121B8F6A443A643e40951","universalRouter":"0x8876789976dEcBfCbBbe364623C63652db8C0904","v4Quoter":"0x8Dc178eFB8111BB0973Dd9d722ebeFF267c98F94","stateView":"0xF3334192D15450CdD385c8B70e03f9A6bD9E673b","permit2":"0x000000000022D473030F116dDEE9F6B43aC78BA3","multicall3":"0xcA11bde05977b3631167028862bE2a173976CA11"},"pool":{"currency0":"0x0000000000000000000000000000000000000000","currency0Meaning":"native ETH, always","currency1Meaning":"the token, always","fee":"static, the creator's choice at launch: 0, 3000 (0.3%), 5000 (0.5%) or 10000 (1%); read it from the pool key. It is paid on top of the hook's protocol fee and goes to liquidity providers","tickSpacing":200,"hooks":null,"initialTick":204400,"note":"Price = ETH per token = 1 / (sqrtPriceX96 / 2^96)^2. Total supply 1,000,000,000 tokens at launch."},"fees":{"protocolFeePct":1,"protocolFee":"1% of what the trader pays in, taken by the hook itself on the INPUT currency (buys in ETH, sells in tokens), split 85/15 between creator and platform by default; outside liquidity providers cannot dilute it","poolFeeOptionsPct":[0,0.3,0.5,1],"poolFee":"chosen by the creator at launch (launchWithOptions), 0 by default, fixed for the token's life, paid on top of the protocol fee, earned by liquidity providers","defaultCreatorShareBps":null,"launchFeeWei":null,"launchesPaused":null},"launchTax":{"startFeePct":null,"baseFeePct":null,"windowSeconds":null,"shape":"linear decay from startFeePct to baseFeePct over windowSeconds, counted from the launch block's timestamp","appliesTo":"buys only (ETH in); sells are never taxed; the launcher's own first buy in the launch transaction pays only the base fee; there is no whitelist","destination":"burned (never paid to the creator or the platform)","read":"hook.currentFee(sender, poolKey, zeroForOne) for the protocol fee right now; hook.taxEth(poolId) for the tax held by the hook until the launcher sweeps and burns it; every fee is announced by the hook's FeeTaken event","quotes":"Uniswap's V4Quoter runs the real swap, so its quotes already include the hook's current fee; a quote is computed at the latest block's time, so right after a launch it can be worse than what a transaction mined a moment later pays"},"swaps":{"swapEvent":"the PoolManager's Swap event reports the POOL-LEVEL amounts, NET of the hook's fee: what a trader actually paid = the pool-level input + the hook's FeeTaken fee for the same swap (same transaction and pool)","exactInput":"an exact-input swap that the pool cannot fill in full reverts with PartialFill (the fee was taken on the whole input)","holdings":"the hook takes its ETH fee from the PoolManager's own ETH balance while the buyer's ETH is not yet paid in, so a buy (fee up to 99% in the launch window) needs that balance to cover the fee"},"burn":{"platform":"ALL of the platform's token-side fees are burned, on every token, by a fixed rule in the launcher (no setting turns it off)","creatorPledge":"launcher.burnBpsOf(token): share (basis points) of the creator's token-side fees burned on every collection; fixed at launch","counter":"launcher.feeBurned(token): tokens burned out of fees so far"},"recognise":["Listen to TokenCreated(token, creator, name, symbol) on the launcher","or: PoolManager Initialize events whose hooks field equals the Liquidmint hook","confirm with launcher.launchOf(token): the creator is not the zero address","a pool for the same token with a different hook is NOT ours"],"events":[{"name":"TokenCreated","signature":"TokenCreated(address,address,string,string)","topic0":"0xd5d05a8421149c74fd223cfc823befb883babf9bf0b0e4d6bf9c8fdb70e59bb4"},{"name":"TokenLaunched","signature":"TokenLaunched(address,address,bytes32,uint16,uint256,uint256)","topic0":"0xdb653d9b1ab7180b64367761830c0f179697f80ef30518ae5c57d15d193cb045"},{"name":"FeesCollected","signature":"FeesCollected(address,uint256,uint256,uint256,uint256,uint256)","topic0":"0xafaf36277fa8ba33159f6c848d1abc449f7088296a631cc23ab278089077270d"},{"name":"FeeTokensBurned","signature":"FeeTokensBurned(address,uint256,uint256)","topic0":"0xd73754d39d1aa0ad215853f3d96fe15aae624d8c80d67d45182e1de6bf7f98f4"},{"name":"PayoutProposed","signature":"PayoutProposed(address,address,uint64)","topic0":"0x5c452240ce691963bd28ae11aabb810102af332dfa15369ef531425d221cfe55"},{"name":"PayoutChanged","signature":"PayoutChanged(address,address)","topic0":"0x58a5ff072be0c939808b8ba8c3c7009527337e9b9a3b050f8cc0221b09e1a3c1"},{"name":"PayoutCredited","signature":"PayoutCredited(address,uint256)","topic0":"0xfa0ea8a012f094d1b6f48df9238391dcbfbbda9acf72c5fa9b26c32451e98a61"},{"name":"Claimed","signature":"Claimed(address,uint256)","topic0":"0xd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a"},{"name":"CreatorBpsChanged","signature":"CreatorBpsChanged(uint16)","topic0":"0xa4c02a8c60acb61d54741b069157ad64f0e1f1dd035602a9cbbd7278d71ad573"},{"name":"LaunchesPaused","signature":"LaunchesPaused(bool)","topic0":"0x9db7e995f72cf48cec75587f3da433a60fdca8fb8bb4fcfea16d7fbc2e4751d8"}],"hookEvents":[{"name":"FeeTaken","signature":"FeeTaken(bytes32,bool,uint256,uint24)","topic0":"0x1f8f211cefe95b4ded59b51db3356ecc6ee1e5774998f6f48436db4dd6d17bcf"}],"abis":{"launcher":"/api/abi/launcher","token":"/api/abi/token","hook":"/api/abi/hook"},"hookFunctions":["BASE_FEE","START_FEE","WINDOW","afterSwap","beforeInitialize","beforeRemoveLiquidity","beforeSwap","currentFee","ethFees","launchedAt","launcher","poolManager","sweep","taxEth","tokenFees"],"contact":null}