Skip to main content

Documentation

PoolKey data, quote behavior, and acceptance criteria for aggregators integrating FewToken liquidity on Uniswap v4.

Structured reference
TOC available

FewToken liquidity on Uniswap v4

Few Protocol wraps supported assets into ERC-20 FewTokens. These FewTokens can trade against other FewTokens or connect back to their underlying assets through Uniswap v4 wrapper hooks.

All pools on this page use the Ethereum mainnet PoolManager: 0x000000000004444c5dc75cB358380D2e3dE08A90. A pool is identified by its complete PoolKey:

currency0
currency1
fee
tickSpacing
hooks

The pool ID is the hash of this key. Aggregators must keep every field exactly as published because changing the fee, tick spacing, currency order, or hook address identifies a different pool.

Primary FewToken pools on Ethereum

The 25 Ethereum mainnet pools below are Ring's primary FewToken pools on Uniswap v4. The set contains 16 FewToken trading pools and nine wrapper pools. Pools are listed alphabetically within each type; their order does not indicate priority.

The machine-readable integration manifest contains the same 25 pools with their complete PoolKey, initialization block, initialization transaction, initial sqrtPriceX96, and initial tick.

FewToken trading pools

These pools trade one FewToken against another through standard Uniswap v4 concentrated liquidity. They have no hook.

PairTypecurrency0currency1FeeTick spacingHookPool IDLinks
fwDAI / fwUSDTFewToken TradingfwDAI
0x8a6fe57c08c84e0f4ee97aae68a62e820a37d259
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0x279b3de65ea3f86261c507a6f0ef6471908e6f41ef1a82e166d8387032f2836dUniswap Explorer
Init tx
fwEUROC / fwUSDTFewToken TradingfwEUROC
0x88cb762635408db93e0970a8d41b7c4692cc6ab3
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0x278f11274052a2e85cf010cc2c895b769e71cd25e490f3881d876f6dc5c1ba98Uniswap Explorer
Init tx
fwUSDC / fwDAIFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwDAI
0x8a6fe57c08c84e0f4ee97aae68a62e820a37d259
500 (0.05%)10None0xb3026b10bb2ef58c7f7f572ec750656f13ddf3449433c2cf81d3943accd8fbfeUniswap Explorer
Init tx
fwUSDC / fwEUROCFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwEUROC
0x88cb762635408db93e0970a8d41b7c4692cc6ab3
500 (0.05%)10None0x4a4ed1af49b5ed3a5c3e4a01931979a4bf6192e8de0a9b4f7f19895669cafef9Uniswap Explorer
Init tx
fwUSDC / fwUSDeFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwUSDe
0x459f878908b5d6e8a0f2eb089b0cd29d9766afe5
500 (0.05%)10None0xdb73646599452fc04ef24c85701b1f9da9653d1ae918b188308aace3d0796de5Uniswap Explorer
Init tx
fwUSDC / fwUSDRFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwUSDR
0x29a294f8fe285dfb259705213e375ecb7fcf9d9b
500 (0.05%)10None0x2c24e189a517bb2cb9920157af067b4aa0f894696628f387d52dd46a0fe44904Uniswap Explorer
Init tx
fwUSDC / fwUSDSFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwUSDS
0xd777151c92c05fea839b2c21b345a78e1f1163fe
500 (0.05%)10None0xfce820cbcba5623dabb0e4c269847abb9a6587f4c4f45538058739a224fdb74eUniswap Explorer
Init tx
fwUSDC / fwUSDTFewToken TradingfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0x6199c1a871328a693bbc9cd80a7e4874a4a7e2ebc862b51fa04bb6b587dbac47Uniswap Explorer
Init tx
fwUSDe / fwDAIFewToken TradingfwUSDe
0x459f878908b5d6e8a0f2eb089b0cd29d9766afe5
fwDAI
0x8a6fe57c08c84e0f4ee97aae68a62e820a37d259
500 (0.05%)10None0x46931d2a68b5207eeed8a05d4d5373409f6de46a7d608520dbb340192876cd77Uniswap Explorer
Init tx
fwUSDe / fwUSDSFewToken TradingfwUSDe
0x459f878908b5d6e8a0f2eb089b0cd29d9766afe5
fwUSDS
0xd777151c92c05fea839b2c21b345a78e1f1163fe
500 (0.05%)10None0xfdd2e0f6ef7f0eb6f1fe367c9f4f2c62e3409eac786554983b6fdfb9dd31c29cUniswap Explorer
Init tx
fwUSDe / fwUSDTFewToken TradingfwUSDe
0x459f878908b5d6e8a0f2eb089b0cd29d9766afe5
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0x6fbffe7837d4e26d990281df43bc760ebc866a04914ab9457383152e2f5776ddUniswap Explorer
Init tx
fwUSDR / fwDAIFewToken TradingfwUSDR
0x29a294f8fe285dfb259705213e375ecb7fcf9d9b
fwDAI
0x8a6fe57c08c84e0f4ee97aae68a62e820a37d259
500 (0.05%)10None0x726b804bbb82b6fc2338d8604e9ca627ba2cddc9000ffcf6eeba430e93261beaUniswap Explorer
Init tx
fwUSDR / fwUSDSFewToken TradingfwUSDR
0x29a294f8fe285dfb259705213e375ecb7fcf9d9b
fwUSDS
0xd777151c92c05fea839b2c21b345a78e1f1163fe
500 (0.05%)10None0x39a15c04c518118b62a08407bf5bf9479d8f5c01905d2a7764c812f74414cba1Uniswap Explorer
Init tx
fwUSDR / fwUSDTFewToken TradingfwUSDR
0x29a294f8fe285dfb259705213e375ecb7fcf9d9b
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0xd14e79ec722a4755872f54f860d70ed144c21c70d6b5bbbf5086e91b49609583Uniswap Explorer
Init tx
fwUSDS / fwUSDTFewToken TradingfwUSDS
0xd777151c92c05fea839b2c21b345a78e1f1163fe
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
500 (0.05%)10None0x8d029076eb683707baaf2f614bbdf364729e438594aa6b0b34f9672f4bd2949cUniswap Explorer
Init tx
fwWBTC / fwcbBTCFewToken TradingfwWBTC
0x2078f336fdd260f708bec4a20c82b063274e1b23
fwcbBTC
0xdbf1703e5d29afefbf1bd958ce7a6023c67f3e5d
100 (0.01%)1None0x2dbdb92a8162fb5d7709d39d34a4ecf6de6cbc64122bfc1c4a6b75b29a8429adUniswap Explorer
Init tx

Wrapper pools

These pools connect an underlying asset with its FewToken representation through a token-specific wrapper hook.

PairTypecurrency0currency1FeeTick spacingHookPool IDLinks
cbBTC / fwcbBTCWrappercbBTC
0xcbb7c0000ab88b473b1f5afd9ef808440eed33bf
fwcbBTC
0xdbf1703e5d29afefbf1bd958ce7a6023c67f3e5d
0 (0%)1FewCBBTCHook
0x8347b7a3807c681513d2b51b8223e59aa16a2888
0x8f8b0b21fb429ffb5210f2bf0f8b7cb267b944a0c61beaae35f20f6839c0f33bUniswap Explorer
Init tx
DAI / fwDAIWrapperDAI
0x6b175474e89094c44da98b954eedeac495271d0f
fwDAI
0x8a6fe57c08c84e0f4ee97aae68a62e820a37d259
0 (0%)1FewDAIHook
0x85b648a64aed6307d5d5ce26e6ae086c17bde888
0xf906beb74154ca4d057b7079c90eb1044efaf40ef468e62ec983930cf80a1e2bUniswap Explorer
Init tx
ETH / fwWETHWrapperETH
0x0000000000000000000000000000000000000000
fwWETH
0xa250cc729bb3323e7933022a67b52200fe354767
0 (0%)1FewETHHook
0x044301939deb7ca53c4733dd4d9b3bc5ea0c6888
0x7a5a8f5a36a6a2e9961caf6bb047a5a7580d0fe16a532aad93efc596028dfa54Uniswap Explorer
Init tx
fwUSDC / USDCWrapperfwUSDC
0x0492560fa7cfd6a85e50d8be3f77318994f8f429
USDC
0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
0 (0%)1FewUSDCHook
0x4b2eb653d13e6c9ac5a0a01fde22f2c8d6592888
0x5837e6b4fd4b8193f2f7a8b4490c0f154344bb9a52b36a885578ff6d3193fc47Uniswap Explorer
Init tx
fwWBTC / WBTCWrapperfwWBTC
0x2078f336fdd260f708bec4a20c82b063274e1b23
WBTC
0x2260fac5e5542a773aa44fbcfedf7c193bc2c599
0 (0%)1FewWBTCHook
0x0fe942afdb2f51e25cbf892aad175c6a574f2888
0x18605c7a76101aeccc414cc300dd5e5ae44b30d6c247ba164ccd88952c259735Uniswap Explorer
Init tx
fwweETH / weETHWrapperfwweETH
0x9553d5f1f564ede30f5a9f0274cd0af7a00546e7
weETH
0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee
0 (0%)1FewweETHHook
0x877323adbf747f85eb8d182d42f01f34a5492888
0x6933dfbf7441cc4ee4439843fdd464e215a6c90f07c5a769198e2a047f1f3f3eUniswap Explorer
Init tx
UNI / fwUNIWrapperUNI
0x1f9840a85d5af5bf1d1762f925bdaddc4201f984
fwUNI
0xe8e1f50392bd61d0f8f48e8e7af51d3b8a52090a
0 (0%)1FewUNIHook
0x4b3e2a8cf36c7eb0fba2a5b39b20c896c6f22888
0x301d41ff23b73b209ab2b1112f4effd0d8ff978ec29d743c1431463f84cbec24Uniswap Explorer
Init tx
USDT / fwUSDTWrapperUSDT
0xdac17f958d2ee523a2206206994597c13d831ec7
fwUSDT
0xef87f4608e601e8564800265aee1c1ffadf73283
0 (0%)1FewUSDTHook
0xbadf77d50478b4432ef1f243b9c0bc7869486888
0x7db868544c8f7f6ddb107c7749c94f03c9e0155f2138aef3f8a020e4a469d95aUniswap Explorer
Init tx
wstETH / fwwstETHWrapperwstETH
0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0
fwwstETH
0xb90e63487bc6a4fa3d58f707510dab3c28a63137
0 (0%)1FewwstETHHook
0x75ae0292e8ad3ab60b9a1a7b3046d3f4abdfa888
0xe7c2f30fd89238331b0e3e6ac6351578d5e3091b7839eff321c29cf88e17274eUniswap Explorer
Init tx

Machine-readable integration manifest

The Ethereum integration manifest lists the 25 pools covered by this guide and provides the PoolKey and initialization data needed for ingestion and testing. It is not a live liquidity or quote API. Integrators should read current pool state from Ethereum PoolManager before quoting or routing.

The top-level schemaVersion changes when the JSON structure changes. manifestVersion increments when the listed pool set or one of its published parameters changes. updatedAt records when the manifest was last updated. Each entry has this structure:

{
"pair": "fwUSDC/fwUSDT",
"type": "FewToken Trading",
"currency0": {
"name": "fwUSDC",
"address": "0x0492560fa7cfd6a85e50d8be3f77318994f8f429",
"etherscan": "https://etherscan.io/address/0x0492560fa7cfd6a85e50d8be3f77318994f8f429"
},
"currency1": {
"name": "fwUSDT",
"address": "0xef87f4608e601e8564800265aee1c1ffadf73283",
"etherscan": "https://etherscan.io/address/0xef87f4608e601e8564800265aee1c1ffadf73283"
},
"fee": {
"raw": 500,
"percent": "0.05%"
},
"tickSpacing": 10,
"hook": null,
"poolId": "0x6199c1a871328a693bbc9cd80a7e4874a4a7e2ebc862b51fa04bb6b587dbac47",
"poolKey": {
"currency0": "0x0492560fa7cfd6a85e50d8be3f77318994f8f429",
"currency1": "0xef87f4608e601e8564800265aee1c1ffadf73283",
"fee": 500,
"tickSpacing": 10,
"hooks": "0x0000000000000000000000000000000000000000"
},
"initialization": {
"block": 22041949,
"transactionHash": "0x3e613b39a343e8e71cf720ce2d933bc284d72b21a0ed035bcd29fd2ae615e52a",
"sqrtPriceX96": "79228162514264337593543950336",
"tick": 0
}
}

The currency0 and currency1 fields use the order required by the PoolKey. The pair label follows that order, not a preferred base or quote convention.

Quoting FewToken trading pools

Read each pool through its exact PoolKey and the current PoolManager state. A quote must account for the current square-root price, active liquidity, initialized ticks, LP fee, swap direction, and requested amount.

The trading pools use standard Uniswap v4 fee units:

  • 100 means 0.01%
  • 500 means 0.05%
  • 3000 means 0.3%

Use the v4 Quoter or an equivalent state-simulation path. A recognized token or pool ID is not sufficient if the quote engine cannot read the pool, simulate the swap, and return an executable result.

Quoting and executing wrapper pools

A wrapper pool converts between an underlying asset and its FewToken representation. Its token-specific hook wraps or unwraps during beforeSwap and returns the swap delta to PoolManager.

The listed wrapper pools use:

fee: 0 (0%)
tickSpacing: 1
initial sqrtPriceX96: 79228162514264337593543950336
initial tick: 0
hookData: 0x

Quote both directions with the exact PoolKey. The conversion is designed around a 1:1 wrapper path, but the quote engine should use the hook's returned deltas instead of hardcoding an output amount. Contract state, token behavior, protocol charges, gas, or product-specific fees can still affect execution.

The ETH wrapper pool uses native ETH, represented by address(0), as currency0. WETH is used inside FewETHHook; it is not a currency in that pool's PoolKey.

Wrapper pools can be used as route edges. An aggregator can wrap an input asset, trade through one or more FewToken pools, and unwrap the output in the same route. Calldata must include the exact PoolKey, direction, amount, slippage protection, and hookData required by the execution path.

Integration completion criteria

FewToken liquidity support is complete when:

  • all 25 listed pools can be discovered by their complete PoolKey
  • the quote engine can read current pool state and return valid quotes when the pool supports the requested size
  • a pool can enter the route when it improves the quote
  • the router can produce executable calldata with the correct currencies, fee, tick spacing, hook, direction, amount, slippage protection, and hook data
  • at least one mainnet transaction succeeds through a FewToken trading pool and at least one succeeds through a wrapper-hook pool
  • the quote response or transaction trace identifies the FewToken pool or the aggregator's FewToken liquidity source

Technical references