v2.5 — Default AMM
v2.5 is the default protocol version and the primary trading interface on UnitFlow Finance. It uses a constant-product AMM model (x × y = k) with a single fee tier per pool.
Contracts (Arc Testnet)
| Contract | Address |
|---|---|
| Factory | 0xd67F63A4F26a497b364d1C82e6747Aec8B5743a5 |
| Liquidity Router | 0x0ef57CC428c851e9a9b7cD97190EF3D3EFe4B631 |
| Swap Router | 0x4AA8c7Ac458479d9A4FA5c1481e03061ac76824A |
| WUSDC | 0x911b4000D3422F482F4062a913885f7b035382Df |
Features
- Constant-product AMM pools
- Multi-hop routing (up to 3 hops via graph-based BFS router)
- Direct pool creation via Factory
- LP token minting and redemption
- Slippage control (0–50% normal, 0–99% Degen Mode)
- Price chart (1H / 4H / 1D / 1W timeframes)
- Route visualization showing the full swap path
- URL parameter support for token pre-selection
- WUSDC ↔ native USDC wrapping handled transparently
Swap Components
V25SwapCard— main swap interfaceV25TokenSelector— token picker with searchRouteVisualization— displays the routing pathTradingChart— price chart using lightweight-charts
Liquidity Components
V25AddLiquidity— add liquidity formV25RemoveLiquidity— remove liquidity with percentage sliderV25CreatePair— create a new pool pairV25MyPools— user's active positionsV25PairsList— all available pairs
Data Hooks
useV25Swap— swap executionuseV25AmountOut— output amount estimationuseV25PoolExists— pool existence checkuseV25PoolInfo— pool reserves and metadatauseV25Liquidity— add/remove liquidityuseMultiHopSwap— multi-hop routinguseUserLPBalances— user LP token balances
WUSDC Handling
Arc Testnet's native USDC (0x3600...0000) is not directly compatible with the AMM contracts. The DEX wraps it as WUSDC for pool interactions. ThegetDisplayTokenAddress utility maps WUSDC back to native USDC for display purposes, so users always see "USDC" in the UI.