ro0t.
$ ro0t docs init/contracts

Contracts

Deployed addresses on HyperEVM (chain id 999).

updated 2026-09-04

note

Mainnet addresses are listed here once deployed. Until then the site runs on testnet.

init contracts

ContractPurposeAddress
Ro0tRegistryAddress book of contract versions; only the Timelock can append. Answers factoryOf(token) and isFeeSplitter(addr).0x0ececd769631dd20b2e61a1209cd50d30dcb6031
InitFactorycreateToken: takes a warm slot, writes name and symbol, registers the token, wraps the 0.02 HYPE launch fee, performs the opening buy. Guardian can pause launches.0x82556c490f008047af379b6d7b05989442248fcd
InitSlotWarmerPrepares warm slots in big blocks: clone token, mint 1B, create and initialise the HyperSwap 1% pool, mint the one-sided position to the locker. Permissionless, small reward.0x629894bf206154af46d7325e8a893a40d9a32cba
InitGatewaybuy / sell / quotes for pre-bond tokens: 0.25% fee, sniper guard, bond progress, automatic bond or unlock inside the first trade after the waiting period.0xb70bcfacdff3eddcf61bc0de246bdf359ae2ec5b
InitLockerHolds every liquidity NFT forever; no transfer or withdraw function. collect(token) forwards WHYPE fees to the FeeSplitter and burns the token side.0xbb4a9e1d6d537f1ecbab024641c465da6f3bd414
FeeSplitterReceives every WHYPE fee and splits it by immutable percentages; escrow, bonus, permissionless flush and claim.0x3eed8e8ccbb9164bcaee68a7362844632f1a2cd1
Ro0tStakingRO0T staking with 7 day WHYPE streaming and pendingPot. This is the instance the FeeSplitter above pays into.0xfc69f873679823d349cb34b472f191d7d1e19301
WHYPEWrapped HYPE (canonical on the chain). Add this to your wallet to see fee payouts.0x5555555555555555555555555555555555555555

Every launched token is an InitToken clone (EIP-1167) of one implementation contract. Its address is on each token page. The token has no owner, no mint, no tax and no blacklist; its only special logic is the pre-bond transfer gate described in the whitepaper.

Deployment block: 45015609.

RO0T contracts

RO0T has not launched on this chain. Addresses (launcher, token, locker, vesting, bootstrap) will be listed after the TGE.

HyperSwap (external)

ContractPurposeAddress
HyperSwap SwapRouter02Used by the gateway and by the RO0T trade tab.0x6D99e7f6747AF2cDbB5164b6DD50e40D4fDe1e77
HyperSwap QuoterV2Used for live quotes.0x03A918028f22D9E1473B7959C927AD7425A45C7C

Other HyperSwap V3 addresses used at deploy time (factory, position manager, tick lens) are taken from HyperSwap's official documentation and re-verified by chain id and code hash before each deployment. Mainnet: Factory 0xB1c0fa0B789320044A6F623cFe5eBda9562602E3, NonfungiblePositionManager 0x6eDA206207c09e5428F281761DdC0D300851fBC8, WHYPE 0x5555555555555555555555555555555555555555. Testnet: Factory 0x22B0768972bB7f1F5ea7a8740BB8f94b32483826, NonfungibleTokenPositionManager 0x09Aca834543b5790DB7a52803d5F9d48c5b87e80.

Verifying for yourself

  • Source code is public in the ro0t repository under contracts/src, built with Foundry (via_ir, EVM version Cancun). Deployed bytecode will be verified on the block explorer and Sourcify.
  • The registry answers factoryOf(token), so you can check that a token claiming to be an init launch really was created by the listed factory.
  • Fee accounting is fully public: FeeSplitter.bucketTotal() must never exceed its WHYPE balance; the buckets are shown live on /stats and both values can be read from the contract.

Next: Security & audits →

Roles (mainnet, planned)

Who can do what once init is on mainnet. Every power is either a pause or a 48-hour timelock; nothing here can change fee percentages or move liquidity.

roleaddresspower
treasury0x23feDbA8638b341a9d11d767733018FF88978e74receives the treasury share of fees. Becomes a 2-of-3 Safe before launch.
team vesting0x90f67311ea2F57598099cA5D1f953588Dd6b6A3Freceives the team allocation as it vests (12-month cliff, then 36 months).
timelock owner0xBA76B56f7a2DA0E7bc3172A34ee8c9C7ECFb0DA7proposes and executes timelock actions (add a registry version, unpause) after a 48-hour delay.
guardian0xb0259Fc3f72b216D8Ec413ba1cdd74fF6AfB8444can pause new launches and warming immediately. Cannot touch trading, claims or fees.
deployer0x986C830688E6C1E8eAfef944A5F978332984fB3fsigns the deployment once; holds no power afterwards.
warmer0x0774cc9c347d9E875F75282F16168383F32d2c6Bkeeps warm slots stocked and runs upkeep. Anyone may do the same.
note

The Safe and the timelock contract are created right before the mainnet deployment; their addresses will be added here, and the deployment will use them instead of the individual wallets.