Skip to content

Contracts in genesis

These contracts are part of the genesis, so they exist from block 0 and come back at the same addresses after a testnet reset. Use them instead of deploying your own copies. The source of truth is testnet/contracts.json.

Contract Address About
EIP-4788 beacon block roots 0x000F3df6D732807Ef1319fB7B8bB8522d0Beac02 EIP-4788
EIP-2935 historical block hashes 0x0000F90827F1C53a10cb7A02335B175320002935 EIP-2935
EIP-7002 withdrawal requests 0x00000961Ef480Eb55e80D19ad83579A64c007002 EIP-7002
EIP-7251 consolidation requests 0x0000BBdDc7CE488642fb579F8B00f3a590007251 EIP-7251
Deposit contract 0x00000000219ab540356cBB839Cbe05303d7705Fa Validator deposits, same bytecode as Ethereum mainnet
Deterministic deployment proxy (CREATE2) 0x4e59b44847b379578588920cA78FbF26c0B4956C Arachnid deterministic-deployment-proxy; calldata = salt (32 bytes) ++ init code
Safe singleton factory 0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7 Safe’s CREATE2 factory, used to deploy Safe contracts at their canonical addresses
CreateX 0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed CreateX: CREATE, CREATE2 and CREATE3 with front-running protection
Multicall3 0xcA11bde05977b3631167028862bE2a173976CA11 Multicall3: batch reads and calls in one request
WANE (wrapped ANE) 0x1600000000000000000000000000000000000001 Wrapped ANE (ERC-20, 18 decimals); WETH9 bytecode

WANE is wrapped ANE: ANE as an ERC-20 token, for contracts that only handle tokens.