# Contracts & Tokens

## Core

{% tabs %}
{% tab title="Mainnet" %}

| Token                                | Address                                                                                                                           | Description                                                        |
| ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| [MEGA](https://megaeth.com)          | [`0x28B7E77f82B25B95953825F1E3eA0E36c1c29861`](https://megaeth.blockscout.com/address/0x28B7E77f82B25B95953825F1E3eA0E36c1c29861) | MegaETH's native protocol token.                                   |
| WETH                                 | [`0x4200000000000000000000000000000000000006`](https://megaeth.blockscout.com/address/0x4200000000000000000000000000000000000006) | Wrapped Ether — an ERC-20 version of ETH for use in dApps.         |
| [Multicall3](https://multicall3.com) | [`0xcA11bde05977b3631167028862bE2a173976CA11`](https://megaeth.blockscout.com/address/0xcA11bde05977b3631167028862bE2a173976CA11) | Utility contract that batches multiple calls into one transaction. |
| {% endtab %}                         |                                                                                                                                   |                                                                    |
| {% endtabs %}                        |                                                                                                                                   |                                                                    |

## Stablecoins

{% tabs %}
{% tab title="Mainnet" %}

| Token                         | Address                                                                                                                           | Description                                                                          |
| ----------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| [CUSD](https://www.cap.app)   | [`0xcCcc62962d17b8914c62D74FfB843d73B2a3cccC`](https://megaeth.blockscout.com/address/0xcCcc62962d17b8914c62D74FfB843d73B2a3cccC) | Dollar-pegged stablecoin by Cap Finance.                                             |
| [STCUSD](https://www.cap.app) | [`0x88887bE419578051FF9F4eb6C858A951921D8888`](https://megaeth.blockscout.com/address/0x88887bE419578051FF9F4eb6C858A951921D8888) | Yield-bearing version of CUSD — grows in value as Cap's protocol earns returns.      |
| [USDM](https://megaeth.com)   | [`0xFAfDdbb3FC7688494971a79cc65DCa3EF82079E7`](https://megaeth.blockscout.com/address/0xFAfDdbb3FC7688494971a79cc65DCa3EF82079E7) | MegaETH's native stablecoin, backed by U.S. Treasury-based reserves.                 |
| [USDmY](https://megaeth.com)  | [`0x2eA493384F42d7Ea78564F3EF4C86986eAB4a890`](https://megaeth.blockscout.com/address/0x2eA493384F42d7Ea78564F3EF4C86986eAB4a890) | Yield-bearing version of USDM — holders earn returns from the underlying reserves.   |
| [USDe](https://ethena.fi)     | [`0x5d3a1Ff2b6BAb83b63cd9AD0787074081a52ef34`](https://megaeth.blockscout.com/address/0x5d3a1Ff2b6BAb83b63cd9AD0787074081a52ef34) | Synthetic dollar by Ethena Labs, backed by crypto assets and hedged with futures.    |
| [sUSDe](https://ethena.fi)    | [`0x211Cc4DD073734dA055fbF44a2b4667d5E5fE5d2`](https://megaeth.blockscout.com/address/0x211Cc4DD073734dA055fbF44a2b4667d5E5fE5d2) | Staked USDe — grows in value over time as it earns Ethena protocol revenue.          |
| [USDT0](https://usdt0.to)     | [`0xB8CE59FC3717ada4C02eaDF9682A9e934F625ebb`](https://megaeth.blockscout.com/address/0xB8CE59FC3717ada4C02eaDF9682A9e934F625ebb) | Cross-chain USDT by Tether and LayerZero, usable across 15+ blockchains. 6 decimals. |
| {% endtab %}                  |                                                                                                                                   |                                                                                      |
| {% endtabs %}                 |                                                                                                                                   |                                                                                      |

## ETH Liquid Staking & Restaking

{% tabs %}
{% tab title="Mainnet" %}

| Token                                  | Address                                                                                                                           | Description                                                                       |
| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| [ezETH](https://www.renzoprotocol.com) | [`0x09601A65e7de7BC8A19813D263dD9E98bFdC3c57`](https://megaeth.blockscout.com/address/0x09601A65e7de7BC8A19813D263dD9E98bFdC3c57) | Renzo restaked ETH — earns staking and restaking rewards simultaneously.          |
| [pufETH](https://www.puffer.fi)        | [`0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF`](https://megaeth.blockscout.com/address/0x37D6382B6889cCeF8d6871A8b60E667115eDDBcF) | Puffer Finance liquid restaking token — earns staking and restaking rewards.      |
| [rsETH](https://kelpdao.xyz)           | [`0xc3eACf0612346366Db554C991D7858716db09f58`](https://megaeth.blockscout.com/address/0xc3eACf0612346366Db554C991D7858716db09f58) | Kelp DAO restaked ETH — earns restaking rewards on top of regular staking yields. |
| [wrsETH](https://kelpdao.xyz)          | [`0x4Fc44BE15e9B6E30C1E774E2C87A21D3E8b5403F`](https://megaeth.blockscout.com/address/0x4Fc44BE15e9B6E30C1E774E2C87A21D3E8b5403F) | Wrapped rsETH — cross-chain version of rsETH by Kelp DAO.                         |
| [wstETH](https://lido.fi)              | [`0x601aC63637933D88285A025C685AC4e9a92a98dA`](https://megaeth.blockscout.com/address/0x601aC63637933D88285A025C685AC4e9a92a98dA) | Lido wrapped staked ETH — staking rewards accrue in the token's value.            |
| {% endtab %}                           |                                                                                                                                   |                                                                                   |
| {% endtabs %}                          |                                                                                                                                   |                                                                                   |

## BTC

{% tabs %}
{% tab title="Mainnet" %}

| Token                               | Address                                                                                                                           | Description                                                                       |
| ----------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- |
| BTC.b                               | [`0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072`](https://megaeth.blockscout.com/address/0xB0F70C0bD6FD87dbEb7C10dC692a2a6106817072) | Bridged Bitcoin — real BTC bridged onto EVM chains. 8 decimals.                   |
| [LBTC](https://www.lombard.finance) | [`0xecAc9C5F704e954931349Da37F60E39f515c11c1`](https://megaeth.blockscout.com/address/0xecAc9C5F704e954931349Da37F60E39f515c11c1) | Lombard staked BTC — earns native Bitcoin yield while usable in DeFi. 8 decimals. |
| [WBTC](https://wbtc.network)        | [`0x32090fB1399a31cC095e6341a6353b7c09ba84FB`](https://megaeth.blockscout.com/address/0x32090fB1399a31cC095e6341a6353b7c09ba84FB) | Wrapped Bitcoin by BitGo — backed 1:1 by BTC held in custody. 8 decimals.         |
| {% endtab %}                        |                                                                                                                                   |                                                                                   |
| {% endtabs %}                       |                                                                                                                                   |                                                                                   |

## Other Tokens

{% tabs %}
{% tab title="Mainnet" %}

| Token                              | Address                                                                                                                           | Description                                                                                |
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| CROWN                              | [`0xf7d2F0d0b0517CBDbf87C86910ce10FaAab3589D`](https://megaeth.blockscout.com/address/0xf7d2F0d0b0517CBDbf87C86910ce10FaAab3589D) | Crown Credits — a token native to MegaETH.                                                 |
| [MegaSIR](https://www.sir.trading) | [`0x9367A0c482703d8d9bda995B03f8E71056a72500`](https://megaeth.blockscout.com/address/0x9367A0c482703d8d9bda995B03f8E71056a72500) | SIR Trading token — a leverage protocol with no liquidations or funding fees. 12 decimals. |
| [WSOL](https://wormhole.com)       | [`0x9a96E366F6b2ED5850A38B58D355a80aFD998411`](https://megaeth.blockscout.com/address/0x9a96E366F6b2ED5850A38B58D355a80aFD998411) | Solana's native SOL token bridged via Wormhole. 9 decimals.                                |

{% hint style="info" %}
This list is sourced from the [mega-tokenlist](https://github.com/megaeth-labs/mega-tokenlist) registry. If a token you are looking for is not listed, check the registry for the latest additions.
{% endhint %}
{% endtab %}
{% endtabs %}

## OP Stack Predeploys

These contracts are predeployed at fixed addresses on all OP Stack chains. The addresses are the same on both MegaETH Mainnet and Testnet.

| Contract                                                                                                                  | Address                                      | Description                                        |
| ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------- | -------------------------------------------------- |
| [L2CrossDomainMessenger](https://docs.optimism.io/op-stack/protocol/smart-contracts#l2crossdomainmessenger)               | `0x4200000000000000000000000000000000000007` | Send and receive messages between L1 and L2.       |
| [L2StandardBridge](https://docs.optimism.io/op-stack/protocol/smart-contracts#l2standardbridge)                           | `0x4200000000000000000000000000000000000010` | Bridge ETH and ERC-20 tokens between L1 and L2.    |
| [GasPriceOracle](https://docs.optimism.io/op-stack/protocol/smart-contracts#gaspriceoracle)                               | `0x420000000000000000000000000000000000000F` | L1 fee estimation for transactions.                |
| [SequencerFeeVault](https://docs.optimism.io/op-stack/protocol/smart-contracts#sequencerfeevault)                         | `0x4200000000000000000000000000000000000011` | Holds fees collected by the sequencer.             |
| [OptimismMintableERC20Factory](https://docs.optimism.io/op-stack/protocol/smart-contracts#optimismmintableerc20factory)   | `0x4200000000000000000000000000000000000012` | Create bridgeable ERC-20 tokens on L2.             |
| [L2ERC721Bridge](https://docs.optimism.io/op-stack/protocol/smart-contracts#l2erc721bridge)                               | `0x4200000000000000000000000000000000000014` | Bridge ERC-721 (NFT) tokens between L1 and L2.     |
| [L1Block](https://docs.optimism.io/op-stack/protocol/smart-contracts#l1block)                                             | `0x4200000000000000000000000000000000000015` | Access the latest known L1 block info from L2.     |
| [L2ToL1MessagePasser](https://docs.optimism.io/op-stack/protocol/smart-contracts#l2tol1messagepasser)                     | `0x4200000000000000000000000000000000000016` | Send messages from L2 to L1 (used by withdrawals). |
| [OptimismMintableERC721Factory](https://docs.optimism.io/op-stack/protocol/smart-contracts#optimismmintableerc721factory) | `0x4200000000000000000000000000000000000017` | Create bridgeable ERC-721 tokens on L2.            |
| [GovernanceToken](https://docs.optimism.io/op-stack/protocol/smart-contracts#governancetoken)                             | `0x4200000000000000000000000000000000000042` | OP governance token (EIP-2612 support).            |

{% hint style="info" %}
WETH and Multicall3 are also OP Stack predeploys/preinstalls — they are listed under [Core](#core) above. For full details, see the OP Stack [predeploys](https://docs.optimism.io/op-stack/protocol/smart-contracts#layer-2-contracts-predeploys) documentation.
{% endhint %}

## OP Stack Preinstalls

These contracts come preinstalled on OP Stack chains at their standard addresses. The addresses are the same on both MegaETH Mainnet and Testnet.

| Contract                                                                                         | Address                                      | Description                                  |
| ------------------------------------------------------------------------------------------------ | -------------------------------------------- | -------------------------------------------- |
| [Safe](https://github.com/safe-global/safe-smart-account)                                        | `0x69f4D1788e39c87893C980c06EdF4b7f686e2938` | Gnosis Safe multisig wallet.                 |
| [SafeL2](https://github.com/safe-global/safe-smart-account)                                      | `0xfb1bffC9d739B8D520DaF37dF666da4C687191EA` | Gnosis Safe optimized for L2.                |
| [MultiSend](https://github.com/safe-global/safe-smart-account)                                   | `0x998739BFdAAdde7C933B942a68053933098f9EDa` | Batch multiple Safe transactions.            |
| [MultiSendCallOnly](https://github.com/safe-global/safe-smart-account)                           | `0xA1dabEF33b3B82c7814B6D82A79e50F4AC44102B` | Batch multiple read-only calls via Safe.     |
| [Safe Singleton Factory](https://github.com/safe-global/safe-singleton-factory)                  | `0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7` | Deterministic deployment for Safe contracts. |
| [create2Deployer](https://github.com/pcaversaccio/create2deployer)                               | `0x13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2` | Deploy contracts to deterministic addresses. |
| [CreateX](https://github.com/pcaversaccio/createx)                                               | `0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed` | Advanced deterministic contract deployment.  |
| [Deterministic Deployment Proxy](https://github.com/Arachnid/deterministic-deployment-proxy)     | `0x4e59b44847b379578588920cA78FbF26c0B4956C` | Arachnid's CREATE2 factory.                  |
| [Permit2](https://github.com/Uniswap/permit2)                                                    | `0x000000000022D473030F116dDEE9F6B43aC78BA3` | Uniswap's universal token approval contract. |
| [ERC-4337 EntryPoint v0.6](https://github.com/eth-infinitism/account-abstraction/tree/v0.6.0)    | `0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789` | Account abstraction entry point (v0.6).      |
| [ERC-4337 SenderCreator v0.6](https://github.com/eth-infinitism/account-abstraction/tree/v0.6.0) | `0x7fc98430eAEdbb6070B35B39D798725049088348` | Creates sender contracts for ERC-4337 v0.6.  |
| [ERC-4337 EntryPoint v0.7](https://github.com/eth-infinitism/account-abstraction/tree/v0.7.0)    | `0x0000000071727De22E5E9d8BAf0edAc6f37da032` | Account abstraction entry point (v0.7).      |
| [ERC-4337 SenderCreator v0.7](https://github.com/eth-infinitism/account-abstraction/tree/v0.7.0) | `0xEFC2c1444eBCC4Db75e7613d20C6a62fF67A167C` | Creates sender contracts for ERC-4337 v0.7.  |

{% hint style="info" %}
For full details, see the OP Stack [preinstalls](https://docs.optimism.io/op-stack/features/preinstalls#contracts-and-deployed-addresses) documentation.
{% endhint %}

## L1 Contracts (Ethereum)

{% tabs %}
{% tab title="Mainnet" %}

| Name                                     | Address                                                                                                                 | Notes                                                                     |
| ---------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| L1StandardBridgeProxy (Canonical Bridge) | [`0x0CA3A2FBC3D770b578223FBB6b062fa875a2eE75`](https://etherscan.io/address/0x0CA3A2FBC3D770b578223FBB6b062fa875a2eE75) | Send ETH here to [bridge](/user-guide/bridge.md) from Ethereum to MegaETH |
| OptimismPortalProxy                      | [`0x7f82f57F0Dd546519324392e408b01fcC7D709e8`](https://etherscan.io/address/0x7f82f57F0Dd546519324392e408b01fcC7D709e8) | Entry point for deposits and withdrawals                                  |
| DisputeGameFactoryProxy                  | [`0x8546840adf796875cd9aacc5b3b048f6b2c9d563`](https://etherscan.io/address/0x8546840adf796875cd9aacc5b3b048f6b2c9d563) | Creates dispute games for fault proofs                                    |
| SystemConfigProxy                        | [`0x1ED92E1bc9A2735216540EDdD0191144681cb77E`](https://etherscan.io/address/0x1ED92E1bc9A2735216540EDdD0191144681cb77E) | On-chain system configuration                                             |
| L1CrossDomainMessengerProxy              | [`0x6C7198250087B29A8040eC63903Bc130f4831Cc9`](https://etherscan.io/address/0x6C7198250087B29A8040eC63903Bc130f4831Cc9) | Cross-domain message passing                                              |
| L1ERC721BridgeProxy                      | [`0x3D8ee269F87A7f3F0590c5C0d825FFF06212A242`](https://etherscan.io/address/0x3D8ee269F87A7f3F0590c5C0d825FFF06212A242) | Bridge ERC-721 tokens between L1 and L2                                   |
| OptimismMintableERC20FactoryProxy        | [`0xF875030B9464001fC0f964E47546b0AFEEbD7C61`](https://etherscan.io/address/0xF875030B9464001fC0f964E47546b0AFEEbD7C61) | Create bridgeable ERC-20 tokens on L1                                     |
| SuperchainConfigProxy                    | [`0x5d0ff601bc8580d8682c0462df55343cb0b99285`](https://etherscan.io/address/0x5d0ff601bc8580d8682c0462df55343cb0b99285) | Superchain-wide configuration                                             |
| ProtocolVersionsProxy                    | [`0x150355311f965af4937fcca526f9df0573fd5b85`](https://etherscan.io/address/0x150355311f965af4937fcca526f9df0573fd5b85) | Protocol version tracking                                                 |
| USDM                                     | [`0xEc2AF1C8B110a61fD9C3Fa6a554a031Ca9943926`](https://etherscan.io/address/0xEc2AF1C8B110a61fD9C3Fa6a554a031Ca9943926) |                                                                           |

MegaETH's L1 contracts are from OP Stack's [op-contracts/v3.0.0 release](https://github.com/ethereum-optimism/optimism/tree/backports/op-contracts/v3.0.0/packages/contracts-bedrock). See OP Stack docs for [descriptions of these contracts](https://docs.optimism.io/op-stack/protocol/smart-contracts#l1-contract-details).
{% endtab %}
{% endtabs %}

## Adding a Token to the Registry

To get your token listed, submit a pull request to the [mega-tokenlist](https://github.com/megaeth-labs/mega-tokenlist) repository.

{% stepper %}
{% step %}

#### Create a token folder

Create `data/YOUR_TOKEN/` in the repository.
{% endstep %}

{% step %}

#### Add token metadata

Create a `data.json` file with your token's name, symbol, decimals, and per-chain addresses.

```json
{
  "name": "My Token",
  "symbol": "MTK",
  "decimals": 18,
  "tokens": {
    "megaeth": {
      "address": "0xYourTokenAddress",
      "isOrigin": true,
      "mechanism": "native"
    }
  }
}
```

If the token is bridged from Ethereum, include both chains:

```json
{
  "name": "My Token",
  "symbol": "MTK",
  "decimals": 18,
  "tokens": {
    "ethereum": {
      "address": "0xEthereumAddress",
      "isOrigin": true,
      "mechanism": "lock",
      "bridge": "0xBridgeOrLockboxAddress"
    },
    "megaeth": {
      "address": "0xMegaETHAddress",
      "isOrigin": false,
      "mechanism": "mint",
      "bridge": "0xMintEndpointAddress"
    }
  }
}
```

{% endstep %}

{% step %}

#### Add a logo

Add a `logo.svg` or `logo.png` (256×256 recommended) to the same folder.
{% endstep %}

{% step %}

#### Submit a PR

Open a pull request. Once merged, the token will appear in the generated tokenlist.
{% endstep %}
{% endstepper %}

{% hint style="info" %}
EVM addresses must be checksummed ([EIP-55](https://eips.ethereum.org/EIPS/eip-55)). For the full data schema and bridge mechanism types (`native`, `lock`, `mint`, `burn`), see the [mega-tokenlist README](https://github.com/megaeth-labs/mega-tokenlist#token-data-schema).
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.megaeth.com/developer-docs/overview-1/contracts.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
