SOURCE on Ethereum
Uniswap v4 Hook Contract 0x65c0e98a4fe050e64e16754119c76eebd4e660cc on Ethereum · Rewards · Verified contract
- Volume (24h)
- $0
- Value locked (TVL)
- $1.62K
- All-time volume
- $1.10M
- Pools using this hook
- 1
- Swaps (24h)
- 0 (0 traders)
- Total swaps
- 6,616
What it does
SRC is a fixed-supply ERC20 that is also its own Uniswap v4 hook: it taxes ETH/SRC swaps (2% buy, 4% sell, paid in ETH) and distributes those ETH fees pro-rata to SRC holders who claim them.
How it works step by step
- Binds one canonical ETH/SRC pool permanently on first initialization through beforeInitialize.
- Charges 2% ETH fee on buys and 4% ETH fee on sells through v4 hook fee and delta mechanisms.
- Distributes all collected ETH fees to SRC holders via cumulative reward-per-share accounting settled on every transfer.
- Lets holders claim accrued ETH rewards at any time, which also refreshes their 24-hour reclaim window.
- Allows a fixed reserve wallet to sweep rewards unclaimed for 24 hours, crediting them to the reserve's own pending.
- Rewrites one of 16 cosmetic Living Source instruction slots on qualifying swaps and seals an immutable release every 32 changes.
- Swap behaviour
- On the bound ETH/SRC pool, exact-in buys skim a 2% ETH fee in beforeSwap, sells and exact-out buys take their fee in afterSwap, and exact-out sells revert. Swaps of at least 25 SRC also advance one slot of the Living Source program. LP fee is overridden to zero.
- Liquidity behaviour
- No liquidity callbacks. Hook permissions do not include liquidity hooks.
- Fee behaviour
- Buy fee 2% (BUY_FEE_BPS 200) and sell fee 4% (SELL_FEE_BPS 400), charged in native ETH only and 100% routed to the holder reward pool. Buy exact-in fee is taken in beforeSwap; sell and exact-out buy fees are taken in afterSwap via take and returned as hook delta. LP fee is overridden to 0. Wallet-to-wallet transfers are fee-free.
- Owner & admin controls
- Ownable owner exists only to renounce; owner has no power over fees, pausing, lists, or upgrades (no proxy, no mint after deployment). Owner receives the full 100,000 SRC supply at deployment. No admin controls over reward or Living Source mechanics.
Enabled Uniswap v4 callbacks
beforeInitialize, beforeSwap, afterSwap, beforeSwapReturnDelta, afterSwapReturnDelta
beforeInitialize binds the single canonical ETH/SRC pool permanently. beforeSwap skims the ETH fee on exact-in buys and rejects exact-out sells. afterSwap takes remaining ETH fees, banks them into the reward accumulator, and advances the Living Source program on swaps of at least 25 SRC. beforeSwapReturnDelta and afterSwapReturnDelta allow the hook to take ETH fees from swap deltas.
Security & trust assessment
Risk level: low (verified source, high confidence).
Who controls it: Owner cannot change fees, pause trading, blacklist addresses, mint, or upgrade. Ownership can be renounced. Reserve wallet is immutable and can only claim rewards that have been unclaimed for 24 hours; it cannot touch holder SRC or receive normal swap fees directly.
Risk to user funds: Hook holds ETH fees only until they are claimed; it cannot move SRC held by users and cannot block transfers. Holder ETH is solvent by construction (rewardLiabilities tracked). Worst case exposure is a stale reward being reclaimed to the reserve after 24 hours of inactivity.
Security findings
- [info] Hook holds fee ETH: Swap fees are taken in ETH via PoolManager.take and returned as hook delta, so the hook holds ETH between taking and paying out claims.
- [medium] Unclaimed rewards can be swept by a fixed reserve: reclaim and reclaimMany are permissionless and can move stale holder rewards into the reserve's pending balance after 24 hours of inactivity. Reserve is set at deployment and cannot be changed.
- [low] Program slot is manipulable but cosmetic: Living Source slot is derived from block and swap values; a trader can choose swap size to influence the slot. Documented as cosmetic, not used for any balance, fee or permission.
- [info] Exact-out sells unsupported: Exact-out sells revert with ExactOutSellUnsupported, so integrators using exact-out sell routes will fail.
Contract details
- Verified source
- Yes (SOURCE)
- Compiler
- solc 0.8.26+commit.8a97fa7a
- Bytecode size
- 11,474 bytes
- Upgradeable proxy
- No
- Detected patterns
- erc20, moves-currency, ownable, return-delta, rewards, tax
Pools using SOURCE
- ETH / SRC (Dynamic fee) — 24h volume $0, TVL $1.62K, 0 swaps today