Contracts and addresses
Chameleon uses three contracts that already exist on Robinhood Chain and adds one of its own.
Network
| Field | Value |
|---|---|
| Chain | Robinhood Chain |
| Chain id | 4663 (0x1237) |
| RPC | https://rpc.mainnet.chain.robinhood.com (public, accepts browser requests) |
| Block time | about 0.1 s |
| Gas price | about 0.02 gwei at the time of writing |
Already deployed
| Contract | Address | Role |
|---|---|---|
| ERC-5564 announcer | 0x55649E01B5Df198D18D95b5cc5051630cfD45564 | Emits the Announcement events scanners read. |
| ERC-6538 registry | 0x6538E6bf4B0eBd30A8Ea093027Ac2422ce5d6538 | Optional place to publish a meta-address. |
| Pons V2 factory | 0x7eD598BcEf8bd9Edd8C97A195C6d13f40801EC7e | Creates the curves. Emits TokenLaunched(token, curve, deployer, ...). |
Both ERC-5564 contracts were checked on chain: they have code at the standard addresses.
Chameleon
| Contract | Address |
|---|---|
| ChameleonRouter | Listed here and in site/assets/js/config.js once deployed. |
The Pons curve functions Chameleon relies on
| Function | Selector |
|---|---|
buy(uint256 quoteIn, uint256 minOut, address recipient) payable | 0x59a87bc1 |
sell(uint256 tokensIn, uint256 minQuoteOut, address recipient) | 0xd04c6983 |
token() | 0xfc0c546a |
getReserves() | 0x0902f1ac |
graduated() | 0xe7c2b772 |
The curve emits CurveBuy(buyer, recipient, quoteIn, tokensOut, fee, tax) on a buy. buyer is the caller of the curve, which is the router when you use Chameleon.
Events you will meet
| Event | Topic 0 |
|---|---|
Announcement(uint256 indexed schemeId, address indexed stealthAddress, address indexed caller, bytes ephemeralPubKey, bytes metadata) | 0x5f0eab8057630ba7676c49b4f21a0231414e79474595be8e4c432fbf6bf0f4e7 |
TokenLaunched(address indexed token, address indexed curve, address indexed deployer, address pairToken, uint256 launchConfigId, uint256 graduationThreshold) | 0x8d4aad4953d0ca700d468f3753aa14432d1b35b43ec6409f051fb6aa43a89607 |
Source
contracts/src/ChameleonRouter.sol, Solidity 0.8.26, built with Foundry, optimizer on, EVM version cancun. Tests are in contracts/test/.