Launchpad hook on Ethereum
Uniswap v4 Hook Contract 0x145b55f0a166b5ec7cca5f53fc6ded19f42b0040 on Ethereum · Launchpad
- Volume (24h)
- $133
- Value locked (TVL)
- $0
- All-time volume
- $133
- Pools using this hook
- 1
- Swaps (24h)
- 3 (1 traders)
- Total swaps
- 3
What it does
A launch hook that seeds and owns a token's liquidity position, applies a temporary cap on large early buys, and routes its position's trading fees to a beneficiary and treasury, while traders pay only the pool's normal fee and LPs can withdraw freely.
This read was written for the hook 0xb78f…4040 on Ethereum and reused here: the two share a code shape, so constants such as fees, owners and addresses can differ.
How it works step by step
- Hook for a single-sided token launch pool where the hook itself owns a concentrated liquidity position (range lower/upper, tick floor/ceiling).
- After each swap it checks a buy cap: during an early cap window, buys of the launched asset above a set percentage may be rejected.
- Collects trading fees earned by its own position (harvest) and records amounts owed to a beneficiary and a protocol treasury, who withdraw them later.
- Has a lock timer (lockedUntil) on its own position; outside LPs are not affected by withdrawal callbacks.
- Owner and beneficiary addresses can be changed by their holders.
- Swap behaviour
- Swaps use the pool's fee; after a swap the hook may enforce a temporary buy-size cap while caps are active, reverting oversized buys. It cannot take tokens from swaps because return deltas are disabled.
- Liquidity behaviour
- No liquidity callbacks are enabled in the address, so LPs can add and withdraw freely; the hook only manages its own seeded position through the PoolManager.
- Fee behaviour
- Uses the pool's fixed fee tier; fees earned by the hook's own position are harvested and split between a beneficiary and the protocol treasury, with exact split not verifiable from bytecode.
- Owner & admin controls
- Owner can transfer ownership and the beneficiary can be updated; an origin-only setup function initializes the pool and position once. No fee-setting or pause function is visible.
Enabled Uniswap v4 callbacks
afterSwap
afterSwap: checks swaps against the early buy cap and tracks trading state.
Security & trust assessment
Risk level: low, estimated (decoded bytecode, medium confidence).
Who controls it: An owner and beneficiary hold keys; they can only reassign roles and claim the hook position's accrued fees.
Risk to user funds: The hook cannot touch trader swap amounts or other LPs' principal; it only holds fees from its own liquidity position. LP withdrawals are unrestricted.
Security findings
- [low] Temporary buy cap: During a cap window, large buys may revert after the swap; exact cap percentage and window length are not readable from bytecode.
- [info] LP withdrawals unrestricted: Remove-liquidity callbacks and return deltas are disabled, so the hook cannot block withdrawals or skim swap amounts.
- [info] Fee custody for beneficiaries: Harvested position fees are held as owed balances and withdrawn by beneficiary/treasury; this is only the hook's own position fees.
Contract details
- Verified source
- No
- Bytecode size
- 12,358 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc20, moves-currency, ownable, self-unlock
Pools using Launchpad hook
- USDC / BLOBS (1.00% fee) — 24h volume $133, TVL $0, 3 swaps today