Skip to content

Network and contracts

Chain settings, contract addresses, pairs and protocol constants.

Network

Network
Robinhood Chain
Chain ID
4663
Native asset
ETH
Public RPC
https://robinhood-mainnet.g.alchemy.com/v2/alch_jWNbqre0R7t7OvbAAE3-G
Explorer
https://robinhoodchain.blockscout.com
First block
93,140,866

Contract addresses

This website only reads these contracts and sends your transactions to them. They work the same without it. Every token also has its own contract, created by the Launcher.

Launcher

Creates tokens with an open pair, checks every rule with the Rulebook, opens each token's bonding curve and creates its pool.

0xFc7931816e1b9ddc87B6C284765B5AFD593F0404Explorer for Launcher (opens in a new tab)

Fee Hook

The Uniswap v4 hook on every CAST pool. Runs each token's bonding curve, charges the sealed fees in the paired asset, and adds the pool's only liquidity when the token graduates. It refuses every other liquidity change.

0x7F6AdEeF151b0079e10EDf9C96647Bd84567aAccExplorer for Fee Hook (opens in a new tab)

Router

Buys and sells in the paired asset. Tells the Fee Hook who is trading, so Hold Streak discounts apply. It only trades CAST tokens, and while a token's max wallet applies it is the only router that can buy it.

0xbDDC1Bc49902C4afe3396ED0e2A11Cf8747275E4Explorer for Router (opens in a new tab)

Quoter

Read-only fee quotes from the same fee maths the hook charges with. This site's numbers come from here.

0xAD9CFf7FdcD136C92365C8409A41760a9736Dec9Explorer for Quoter (opens in a new tab)

Rulebook

The safety limits and the grading formula. Validates every launch and grades any token.

0xC1e9104F6015679c17f2E27C28D3B7910eFf181AExplorer for Rulebook (opens in a new tab)

Pairs

The approved list of assets a token can be paired with, and the bonding curve for each. Only the Fee Recipient's controller can change it, and only for new launches.

0x5a1Ad5EFD9bbd34Bc9a73c595Ec42D1B196Af9fCExplorer for Pairs (opens in a new tab)

Fee Recipient

Sets where CAST's 20% share is paid. Its controller, meant to be a CAST multisig (a Safe), can change that address and manage the pair list, nothing else.

0x1352B6EA4a6eDf1E08c2d478CD67dE5E2897c718Explorer for Fee Recipient (opens in a new tab)

Pool Manager

The Uniswap v4 PoolManager that holds every CAST pool, and the tokens and paired asset each bonding curve holds, as the Fee Hook's claims.

0x8366a39CC670B4001A1121B8F6A443A643e40951Explorer for Pool Manager (opens in a new tab)

Pairs

A token can be paired with any asset on the approved list kept by the Pairs contract (CastPairs). ETH, as address(0), is listed from the start. Each pair also sets the bonding curve new tokens start on: a virtual reserve, which sets the opening price, and a graduation target, which is how much of the asset the curve raises before the token graduates into its pool. Every target is about $10,000 of its asset, and every virtual reserve is 30/85 of its target, so tokens open and graduate at about the same dollar value whatever they're paired with.

The table shows each curve for a token with no creator allocation. About 79.3% of the tokens are sold on the curve, and the other 20.7% go into the pool at graduation. 1 billion tokens open at about a third of the target (about $3,300) and graduate at about 4.83 times the target (about $48,000).

PairDecimalsGraduation targetOpens at (1B tokens)Graduates at (1B tokens)Address
ETHEther184.2 ETH1.381 ETH20.3 ETHaddress(0), native ETH
USDGGlobal Dollar610,000 USDG3,289 USDG48,333 USDG0x5fc5…d168
AAPLApple1828.9 AAPL9.506 AAPL139.7 AAPL0xaF3D…93f9
NVDANVIDIA1846.2 NVDA15.2 NVDA223.3 NVDA0xd060…9EEC
TSLATesla1828.4 TSLA9.341 TSLA137.3 TSLA0x322F…3b2d
SPYSPDR S&P 500 ETF Trust1813.1 SPY4.309 SPY63.32 SPY0x117c…4C0C

On the curve, the price of one whole token in whole units of the pair is (virtualPair + raised) / (virtualToken - sold) * 10 ** (18 - decimals), read from the Fee Hook's curves(token). After graduation it comes from the pool: 10 ** (18 - decimals) / s ** 2, where s = sqrtPriceX96 / 2 ** 96. Paired asset and price has code.

FunctionWhat it does
listPair(asset, virtualReserve, graduationTarget)Lists an asset, or reopens a closed one, and sets the curve new launches use. Only the Fee Recipient's controller. Reverts with BadCurve(virtualPair, target, market) if the curve wouldn't work for every launch.
closePair(asset)Stops new launches with the asset. Tokens already paired with it keep trading. Only the Fee Recipient's controller.
isOpen(asset)Whether new launches can pair with the asset.
curveFor(asset)Returns (virtualReserve, graduationTarget) for a new launch. Reverts with PairNotOpen(asset) if the asset isn't open.
assets()Every asset ever listed, open or closed, in the order they were first listed.
pairs(asset)Returns (listed, open, virtualReserve, graduationTarget).
The list can't touch a launched token
Listing a pair, closing it or changing its curve only affects new launches. A launched token's paired asset is fixed in its contract and its curve is fixed in the Fee Hook. It keeps trading on its curve until it graduates, then in its pool with its liquidity locked forever.

Bonding curve

The Fee Hook runs every token's bonding curve inside the token's own pool, and graduates it into that pool when the curve has raised its target. These are the parts of the hook that deal with the curve. Graduation explains what happens step by step.

NameWhat it is
curves(token)Returns (virtualPair, virtualToken, raised, sold, target, curveTokens, poolTokens, graduated). Progress to graduation is raised / target.
openCurve(token, virtualPair, target, market)Opens a new token's curve and returns the price its pool starts at. Only the Launcher, once per token.
CurveOpenedEvent: a token's curve opened, with its reserves, target, curveTokens, poolTokens and the pool's starting sqrtPriceX96.
CurveTradeEvent: one trade on the curve, with the amounts, fees and the curve's raised and sold totals after it.
GraduatedEvent: the token moved into its pool, with what went into the position, its liquidity and price.
CurveIsExactInputOnly()The curve only takes exact-input trades.
SellExceedsCurve(tokens, sold)The curve only buys back up to what it has sold.
OnlyGraduationAddsLiquidity()Nobody can add liquidity to a CAST pool. The hook adds the only position itself, at graduation.
LiquidityLockedForever()Nobody can remove liquidity from a CAST pool.
CurveAlreadyOpen(), CurveNotOpen()A curve can only be opened once, and a pool can only be created for a token whose curve is open.

Topics for each event are on Events and indexing.

Constants

The same for every token, fixed in the contracts:

ConstantValueMeaning
Total supply1_000_000_000e181 billion tokens, 18 decimals. Never more.
CAST share2000 bps20% of every sealed fee
Pool fee30000.3% Uniswap LP fee, from graduation on, left in the pool. Not charged on the curve
Tick spacing60Uniswap v4 pool tick spacing
currency0pairAsset()Always the paired asset (native ETH is address(0)), so a buy is always zeroForOne
Graduation targetPer pairWhat the curve raises before the token graduates. Set in the Pairs contract. See Pairs above
Virtual reservePer pair30/85 of the graduation target. Sets the curve's opening price
Reward stream86400 sHolder rewards pay out over 24 hours
Breakpoints8Most points one schedule can have
No cap10000 bpsA max wallet at or above this means no cap

Source code

The contracts are written in Solidity 0.8.26 on Uniswap v4. Verified source will be published on the explorer with the mainnet deployment. Until then, the behaviour these docs describe can be checked by reading the contracts directly, as in Reading token state.

Check addresses here
Look-alike tokens and contracts exist on Robinhood Chain. Always take CAST and pair addresses from this page.
Popular
  • QuickstartGet started · Set up a wallet, get free test funds and buy your first CAST token.
  • Launch a tokenGet started · Pick a pair and a template, check the grade and seal your rules in one transaction.
  • Fees and Bot TaxConcepts · The three fees a trade can pay, who receives them, and a worked example.
  • Network and contractsDevelopers · Chain settings, contract addresses, pairs and protocol constants.
  • RisksTrust and safety · What sealed rules protect you from, and what they don't.

Connect wallet

New to wallets? Start here.
By connecting, you agree to the Terms and Privacy Policy.