PositionManager on Base

Uniswap v4 Hook Contract 0xf785bb58059fab6fb19bdda2cb9078d9e546efdc on Base · Launchpad · Verified contract

Volume (24h)
$0
Value locked (TVL)
$0
All-time volume
$58.40M
Pools using this hook
30,096
Swaps (24h)
132 (50 traders)
Total swaps
413,238

What it does

A Flaunch launchpad hook that deploys memecoins into a Uniswap v4 pool with a timed fair launch, dynamic fee capture, and an ETH-backed BidWall that supports the price.

How it works step by step

  • Deploys a memecoin and ERC721 ownership token for the creator when flaunched.
  • Initializes a Uniswap v4 pool with a fair launch single-sided position and blocks sells and external liquidity changes during the window.
  • Captures dynamic swap fees via an owner-set fee calculator and splits them among creator, BidWall, treasury and protocol.
  • Deposits accumulated ETH fees into a BidWall single-sided position that repositions below spot.
  • Burns unsold fair launch supply after the window and closes the fair launch position into the pool.
Swap behaviour
Before swaps, scheduled launches are enforced and sells are blocked during fair launch while buys are filled from the fair launch position; internal swaps of accumulated token fees run first. After swaps, the hook captures a dynamic fee, takes a share as referrer or protocol and distributes accumulated ETH fees.
Liquidity behaviour
Adding or removing liquidity by external users is blocked during the fair launch window (beforeAddLiquidity and beforeRemoveLiquidity revert unless sender is BidWall or FairLaunch). After launch, the hook deposits accumulated ETH fees into a single-sided BidWall position that is repositioned on thresholds or staleness, and closes the fair launch position into the pool, burning unsold supply to dead address.
Fee behaviour
Swap fees are captured in afterSwap and beforeSwap via an external IFeeCalculator (dynamic fee) set by the owner, then split among creator, BidWall, treasury and protocol according to FeeDistribution. Pool fee field is 0 and a referrer may receive a share. Fair-launch swaps also pay fees captured in native token.
Owner & admin controls
Owner (protocolOwner, Solady Ownable) can call setFlaunch, setInitialPrice, setFeeCalculator, setFairLaunchFeeCalculator, setFeeDistribution, setProtocolFeeDistribution, setReferralEscrow and transfer or renounce ownership via a two-step handover. BidWall owner can set swap fee threshold and stale time window. Creators can disable their memecoin's BidWall and set per-pool fee allocations.

Enabled Uniswap v4 callbacks

beforeInitialize, beforeAddLiquidity, afterAddLiquidity, beforeRemoveLiquidity, afterRemoveLiquidity, beforeSwap, afterSwap, afterDonate, beforeSwapReturnDelta, afterSwapReturnDelta

beforeInitialize blocks direct pool initialization. beforeAddLiquidity and beforeRemoveLiquidity enforce the fair launch lock. afterAddLiquidity, afterRemoveLiquidity and afterDonate emit state update events. beforeSwap enforces scheduled launch timing, blocks token sells during fair launch, fills swaps from the fair launch position, performs internal swaps of pooled token fees, and checks BidWall staleness. afterSwap captures and distributes fees and tracks swaps. beforeSwapReturnDelta and afterSwapReturnDelta are used to take fees from swaps by returning deltas.

Security & trust assessment

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

Who controls it: The protocol owner can replace the flaunch contract, initial price logic, fee calculators and fee distribution, which could change fees or pricing for future pools. The owner can also transfer ownership or set escrow addresses. Creators can disable and close their BidWall, moving its liquidity and ETH to the treasury.

Risk to user funds: The hook holds pooled memecoin and native token through fair launch and BidWall positions, and takes fee deltas from every swap. It can block sells during the fair launch window and can route fees to other recipients per owner-set distribution. Funds are not directly withdrawable by the owner, but the owner controls fee parameters and external contract dependencies that affect user outcomes.

Security findings

  • [medium] Owner-adjustable dynamic fees and fee split: Owner can swap the fee calculator and fee distribution, so swap fees applied by the hook can be changed by a privileged key after pools are live.
  • [medium] Fair launch sell and liquidity lock: During the fair launch window, sells of the memecoin are reverted and external liquidity changes are blocked, so holders cannot exit by selling until the window ends.
  • [info] Hook takes swap deltas and holds funds: The hook takes fees via beforeSwapReturnDelta and afterSwapReturnDelta, and holds ETH and memecoin balances in pool positions, BidWall and fair launch accounting.
  • [low] Irreversible burns and treasury transfers: Unsold fair launch supply is burned to 0x...dEaD and BidWall liquidity can be moved to treasury by the creator, which are one-way actions.
  • [info] Ownable, non-upgradeable: Contract uses Solady Ownable with a two-step handover and guards owner initialization, and is not an upgradeable proxy in the provided source.

Contract details

Verified source
Yes (PositionManager)
Compiler
solc 0.8.28+commit.7893614a
Bytecode size
24,458 bytes
Upgradeable proxy
No
Detected patterns
dynamic-fee, erc6909-claims, launchpad, moves-currency, ownable, return-delta, self-unlock, tax

Pools using PositionManager