FewETHHook on Ethereum

Uniswap v4 Hook Contract 0x8c3aae3bb65c5e08d25d9723e8b2e91f0ae22888 on Ethereum · Custom pricing · Verified contract

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$0
Pools using this hook
1
Swaps (24h)
0 (0 traders)
Total swaps
492

What it does

A 1:1 ETH to fwWETH wrapper implemented as a Uniswap v4 pool hook, so swapping between ETH and fwWETH converts at par without AMM pricing.

How it works step by step

  • Validates in beforeInitialize that the pool pairs ETH with fwWETH and uses a zero fee tier.
  • Allows liquidity additions through beforeAddLiquidity without custom logic.
  • On each swap, takes the input token from the pool manager into the hook.
  • Converts ETH to WETH to fwWETH on wrap, or fwWETH to WETH to ETH on unwrap, at 1:1.
  • Settles the output token back to the pool manager and returns a before-swap delta that overrides AMM pricing.
Swap behaviour
Each swap is a 1:1 conversion. On wrap, the hook takes ETH, deposits it into WETH, wraps it to fwWETH and settles fwWETH to the pool manager. On unwrap, the reverse happens. The hook returns a before-swap delta so the pool's curve math is bypassed.
Liquidity behaviour
beforeAddLiquidity simply allows liquidity additions. No remove-liquidity callbacks are enabled. Liquidity is ordinary pool liquidity between ETH and fwWETH.
Fee behaviour
Pool must be initialized with fee 0 (enforced in beforeInitialize). The hook returns a zero LP fee override of 0 from beforeSwap, and the swap is fully 1:1 via return deltas, so no fee is charged.
Owner & admin controls
No admin controls found. No owner, pause, upgrade or parameter-setter functions in the verified source; the wrapper, WETH and pool manager addresses are immutable constructor arguments.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, beforeSwap, beforeSwapReturnDelta

beforeInitialize validates the pool pair is ETH and fwWETH with zero fee. beforeAddLiquidity allows liquidity provision. beforeSwap performs the wrap or unwrap and returns a before-swap delta that replaces the AMM math with a 1:1 conversion. beforeSwapReturnDelta lets the hook settle its own delta against the pool manager.

Security & trust assessment

Risk level: low (verified source, high confidence).

Who controls it: No privileged roles are exposed, so there is no admin key that can change behaviour. Trust is placed in the immutable fwWETH wrapper contract and the WETH contract, whose behaviour the hook cannot influence after deployment.

Risk to user funds: Users' swap funds pass through the hook contract during wrap or unwrap, so the hook temporarily holds funds during each swap, but it cannot withdraw them to an arbitrary address. Balances are constrained by the immutable wrapper and WETH contracts.

Security findings

  • [info] Return delta takes over swap pricing: beforeSwap returns a before-swap delta that fully overrides the pool's pricing, executing a 1:1 wrap or unwrap. The hook takes the input from the swapper via _take and settles the output, so it sits in the token flow of every swap.
  • [low] Swap liveness depends on hook inventory: Wrapping and unwrapping depend on the hook's own ETH and fwWETH balances. If the hook holds insufficient balance, the swap reverts with InsufficientBalance rather than falling back to the pool.
  • [info] Unlimited WETH approval to wrapper: The hook approves WETH to fwWETH for unlimited amount in its constructor. This is a standard pattern but means the wrapper contract can pull all WETH held by the hook.
  • [low] Unchecked ERC-20 transfer return value: _pay transfers tokens directly with token.transfer without checking the return value, relying on the token to revert on failure.

Contract details

Verified source
Yes (FewETHHook)
Compiler
solc 0.8.26+commit.8a97fa7a
Bytecode size
6,901 bytes
Upgradeable proxy
No
Detected patterns
return-delta

Pools using FewETHHook