PackedFeeHook on Ethereum
Uniswap v4 Hook Contract 0xb3a92b1cdcf6e5f6717aaeda563bdb39ca9a68c0 on Ethereum · Launchpad · Verified contract
- Volume (24h)
- $0
- Value locked (TVL)
- $0.24
- All-time volume
- $1.33
- Pools using this hook
- 2
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 5
What it does
This launchpad fee hook charges every swap a fixed fee of up to 6% to the creator-owned LP position, and adds a 90% surcharge only on outsiders' buys in the launch block to deter snipers.
How it works step by step
- Serves launchpad pools opened by a registered factory's pool contracts, and only works with dynamic-fee pools.
- Every swap pays a fixed resting fee (1% base plus the creator tax), set once when the pool opens and capped at 6%.
- Buys made in the same block the pool opens, other than those placed by the pool contract itself, pay an extra 90% anti-sniping surcharge.
- Only the pool contract can add liquidity, so all fees go to its single position, and the surcharge portion is tracked for the creator.
- Has no owner and no setters, and never moves token balances itself.
- Swap behaviour
- Each swap is charged the pool's resting fee of up to 6% as the LP fee. A buy of the coin in the launch block by anyone other than the pool contract pays an additional 90% of its input, while sells are never surcharged.
- Liquidity behaviour
- Only the pool's own contract can add liquidity, and every other depositor is rejected. The hook never runs on withdrawals, so it cannot block or charge removals.
- Fee behaviour
- The resting fee is between 0.0001% and 6% (1% base plus a creator tax of up to 5%), fixed at pool initialization. Launch-block buys by outsiders pay up to 96% in total. All fees accrue to the pool contract's LP position, and the surcharge part is recorded for the creator.
- Owner & admin controls
- No admin controls found. All terms are set once at pool creation, and the fee constants are hard-coded.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeAddLiquidity, beforeSwap, afterSwap
beforeInitialize: only allows registered factory pools, requires a dynamic fee, and records the fee terms; beforeAddLiquidity: restricts deposits to the pool contract; beforeSwap: sets the per-swap fee including the launch-block surcharge; afterSwap: records how much of each fee was surcharge.
Security & trust assessment
Risk level: medium (verified source, high confidence).
Who controls it: There is no owner. The factory registry decides which pool contracts may open pools, and each pool's creator tax is read from the pool contract once at initialization, capped at 5%.
Risk to user funds: Outside the launch block, traders pay the fixed LP fee of at most 6%. Launch-block buyers can pay up to 96% of their input. The hook holds no funds and cannot lock or drain LP principal.
Security findings
- [medium] 90% launch-block buy surcharge: Buys placed in the pool's opening block by anyone other than the pool contract pay an extra 90% fee on top of the resting fee of up to 6%. This is intentional anti-sniping logic, applies only during that one block, and never applies to sells.
- [info] Liquidity restricted to pool contract: Third parties cannot provide liquidity. The hook has no remove-liquidity callbacks, so it cannot block withdrawals.
- [info] Immutable, no owner: The contract is not a proxy and has no setters. It never transfers tokens or uses return deltas.
Contract details
- Verified source
- Yes (PackedFeeHook)
- Compiler
- solc 0.8.28+commit.7893614a
- Bytecode size
- 4,294 bytes
- Upgradeable proxy
- No
Pools using PackedFeeHook
- ETH / CRABBO (Dynamic fee) — 24h volume $0, TVL $0.23, 0 swaps today
- ETH / BITCAT (Dynamic fee) — 24h volume $0, TVL <$0.01, 0 swaps today