> For the complete documentation index, see [llms.txt](https://docs.matchain.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.matchain.io/development/contracts.md).

# Contracts

## L1/L2 System Contracts

System contracts on Layer1 and Layer2 are an important part of the OP ecosystem. We're using these system contracts to do the following tasks:

* Sending messages between L1 and L2
* Sending tokens between L1 and L2
* Querying information about the current L1 data fee
* And lots more

## Matchain Utility Contracts&#x20;

Matchain's utility contracts encompass essential components that facilitate seamless decentralized exchanges and token operations within the ecosystem.

* **MSwap (Uniswap V2 Fork)**: A decentralized exchange platform enabling efficient token swaps.
* **Token Contracts on Matchain Mainnet**: Contracts governing native tokens, ensuring secure and reliable transactions.

Access here: <https://rollup-info.altlayer.io/oram-primary-compromise/matchain_mainnet>

<figure><img src="/files/bW0d4lHcH4vlWNPoHp08" alt=""><figcaption></figcaption></figure>

## Infrasctucture Contract Addresses Deployed on BSC

| Name                              | Contract Address                                                                                                     |
| --------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| AddressManager                    | [0xA1bd6CFBeB4571DFE48F1a9b04434b90424793b3](https://bscscan.com/address/0xA1bd6CFBeB4571DFE48F1a9b04434b90424793b3) |
| AnchorStateRegistry               | [0x5aef0FA679Fb4F94247b6Eaa40dc83e61d77CEfd](https://bscscan.com/address/0x5aef0FA679Fb4F94247b6Eaa40dc83e61d77CEfd) |
| AnchorStateRegistryProxy          | [0xC9c271e4C17B425A0E75498796B4344F34A3c088](https://bscscan.com/address/0xc9c271e4c17b425a0e75498796b4344f34a3c088) |
| DelayedWETH                       | [0xDD1C904796de39DB09151dc19dE1A712b3f73593](https://bscscan.com/address/0xDD1C904796de39DB09151dc19dE1A712b3f73593) |
| DelayedWETHProxy                  | [0xCbb02dC5a6c4963BF8d251360a5b707e181F6705](https://bscscan.com/address/0xcbb02dc5a6c4963bf8d251360a5b707e181f6705) |
| DisputeGameFactory                | [0x1B7ACA1E23073AF8087FaA3b08018B30d51AB905](https://bscscan.com/address/0x1B7ACA1E23073AF8087FaA3b08018B30d51AB905) |
| DisputeGameFactoryProxy           | [0x79D340Bb55D3207B291c8E41eF08799F64435558](https://bscscan.com/address/0x79D340Bb55D3207B291c8E41eF08799F64435558) |
| L1CrossDomainMessenger            | [0x017D33C1529beF374Ff7930aF5b801c1518AF116](https://bscscan.com/address/0x017D33C1529beF374Ff7930aF5b801c1518AF116) |
| L1CrossDomainMessengerProxy       | [0x0F2B34bbD5eF129bc4A3c6BdFF7525FB29A069CF](https://bscscan.com/address/0x0F2B34bbD5eF129bc4A3c6BdFF7525FB29A069CF) |
| L1ERC721Bridge                    | [0x7334D3C4580df30BEFFffb96A5651D0d884DD2F3](https://bscscan.com/address/0x7334D3C4580df30BEFFffb96A5651D0d884DD2F3) |
| L1ERC721BridgeProxy               | [0x218630c31a47E0dF1d5954d0bEe1C209dfA37546](https://bscscan.com/address/0x218630c31a47E0dF1d5954d0bEe1C209dfA37546) |
| L1StandardBridge                  | [0x7520BF610183F1d72eef5fbc085fa0e7fEd24461](https://bscscan.com/address/0x7520BF610183F1d72eef5fbc085fa0e7fEd24461) |
| L1StandardBridgeProxy             | [0x5238cfD4dD0238b51Fa11B6Aa9F076a6BF95BCe9](https://bscscan.com/address/0x5238cfD4dD0238b51Fa11B6Aa9F076a6BF95BCe9) |
| L2OutputOracle                    | [0x0c284A030Ac8F2D23eEff46c783b15A750e473d3](https://bscscan.com/address/0x0c284A030Ac8F2D23eEff46c783b15A750e473d3) |
| L2OutputOracleProxy               | [0xc18EBF62817A4ec94C5a4f4978E913975baa6Fc1](https://bscscan.com/address/0xc18EBF62817A4ec94C5a4f4978E913975baa6Fc1) |
| Mips                              | [0x3968a4834919e5e5396E21dC254719e46BdFa030](https://bscscan.com/address/0x3968a4834919e5e5396E21dC254719e46BdFa030) |
| OptimismMintableERC20Factory      | [0x91330629B4B833a7344F391995fDFBac3CfBD1Bc](https://bscscan.com/address/0x91330629B4B833a7344F391995fDFBac3CfBD1Bc) |
| OptimismMintableERC20FactoryProxy | [0x6337C0f283A59E85295741a47Ca2a263A785576d](https://bscscan.com/address/0x6337C0f283A59E85295741a47Ca2a263A785576d) |
| OptimismPortal                    | [0xEa6F37dEE3151EA12Ccc5df59C9ae8b195066f57](https://bscscan.com/address/0xEa6F37dEE3151EA12Ccc5df59C9ae8b195066f57) |
| OptimismPortal2                   | [0x5d31d786Bb2E9c2cC879e74592e35d11cc087c98](https://bscscan.com/address/0x5d31d786Bb2E9c2cC879e74592e35d11cc087c98) |
| OptimismPortalProxy               | [0x48896b23756f528649B21a87c70823124aBE04b3](https://bscscan.com/address/0x48896b23756f528649B21a87c70823124aBE04b3) |
| PreimageOracle                    | [0x89B86Ecf687c261C1E5DF8c547b95e99669F5c07](mailto:undefined)                                                       |
| ProtocolVersions                  | [0x1032a8D41470bE109e0CC6030377d2b5C64AB745](https://bscscan.com/address/0x1032a8D41470bE109e0CC6030377d2b5C64AB745) |
| ProtocolVersionsProxy             | [0xa39B63CF7e17A666CFeea1Cb0743d6dE29a99D38](https://bscscan.com/address/0xa39B63CF7e17A666CFeea1Cb0743d6dE29a99D38) |
| ProxyAdmin                        | [0x689B77b3564f57d338E6f3E108C60bec937C8510](https://bscscan.com/address/0x689B77b3564f57d338E6f3E108C60bec937C8510) |
| SafeProxyFactory                  | [0xa6B71E26C5e0845f74c812102Ca7114b6a896AB2](mailto:undefined)                                                       |
| SafeSingleton                     | [0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552](https://bscscan.com/address/0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552) |
| SuperchainConfig                  | [0x7E0666f2810cC7831f9cCbdDF6bc20075D362cc3](https://bscscan.com/address/0x7E0666f2810cC7831f9cCbdDF6bc20075D362cc3) |
| SuperchainConfigProxy             | [0xcaBac58bb498b01cB975fC530f3D4E723a44Db8d](https://bscscan.com/address/0xcaBac58bb498b01cB975fC530f3D4E723a44Db8d) |
| SystemConfig                      | [0xE5a08DD2E2006C2a515efa869AE9137873B681F3](https://bscscan.com/address/0xE5a08DD2E2006C2a515efa869AE9137873B681F3) |
| SystemConfigProxy                 | [0xb0C62648C5837a8e98bbe02e06D2fcD049BBfA82](https://bscscan.com/address/0xb0C62648C5837a8e98bbe02e06D2fcD049BBfA82) |
| SystemOwnerSafe                   | [0x00D576F15A953296521E265d358eF8ECF305fe10](https://bscscan.com/address/0x00D576F15A953296521E265d358eF8ECF305fe10) |

## Deploy Config

| Name                                     | Value                                                                                                                |
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| finalSystemOwner                         | [0x815A3283fd4a866d8D533fC979d8d81e8E035C13](https://bscscan.com/address/0x815A3283fd4a866d8D533fC979d8d81e8E035C13) |
| superchainConfigGuardian                 | 0x19dDA1593Cd663941eEdE1E3d80f46d5Dd537B2b                                                                           |
| l1StartingBlockTag                       | 0x6eff1b5ef9a0e5c176b37a1a74d01c57a53bbe293b3fb3314f730e3327851150                                                   |
| l1ChainID                                | 56                                                                                                                   |
| l2ChainID                                | 698                                                                                                                  |
| l1BlockTime                              | 3                                                                                                                    |
| l2BlockTime                              | 1                                                                                                                    |
| maxSequencerDrift                        | 1800                                                                                                                 |
| sequencerWindowSize                      | 14400                                                                                                                |
| channelTimeout                           | 1200                                                                                                                 |
| p2pSequencerAddress                      | 0x558BBcD1320e5007176d910B62Dbe82B800EDe94                                                                           |
| batchInboxAddress                        | 0xFF000000000000000000000000000000002ba2ba                                                                           |
| batchSenderAddress                       | 0x80c519e4Be85C1e5381DB4A79Dedd6E4959BC74b                                                                           |
| l2OutputOracleSubmissionInterval         | 3600                                                                                                                 |
| l2OutputOracleStartingBlockNumber        | 0                                                                                                                    |
| l2OutputOracleStartingTimestamp          | 1721308788                                                                                                           |
| l2OutputOracleProposer                   | 0x038A3c6f91618C881C9636cE540c7A242Da3E2bd                                                                           |
| l2OutputOracleChallenger                 | 0x1643e4516Dd59326E45FEe22fEf14901B422E706                                                                           |
| finalizationPeriodSeconds                | 604800                                                                                                               |
| proxyAdminOwner                          | 0x6E6d437694911A0C212Eed6C4DA63709A3e45f27                                                                           |
| baseFeeVaultRecipient                    | 0xC840ABb22F8e8558562aAF41CEDC263E8cb510e6                                                                           |
| l1FeeVaultRecipient                      | 0xC840ABb22F8e8558562aAF41CEDC263E8cb510e6                                                                           |
| sequencerFeeVaultRecipient               | 0xC840ABb22F8e8558562aAF41CEDC263E8cb510e6                                                                           |
| baseFeeVaultMinimumWithdrawalAmount      | 0x853a0d2313c0000                                                                                                    |
| l1FeeVaultMinimumWithdrawalAmount        | 0x853a0d2313c0000                                                                                                    |
| sequencerFeeVaultMinimumWithdrawalAmount | 0x853a0d2313c0000                                                                                                    |
| baseFeeVaultWithdrawalNetwork            | 0                                                                                                                    |
| l1FeeVaultWithdrawalNetwork              | 0                                                                                                                    |
| sequencerFeeVaultWithdrawalNetwork       | 0                                                                                                                    |
| gasPriceOracleOverhead                   | 2100                                                                                                                 |
| gasPriceOracleScalar                     | 1000000                                                                                                              |
| enableGovernance                         | FALSE                                                                                                                |
| governanceTokenSymbol                    | OP                                                                                                                   |
| governanceTokenName                      | Optimism                                                                                                             |
| governanceTokenOwner                     | 0x06eAb05e05b366431CCD81E006d5FCa197A1D9B0                                                                           |
| l2GenesisBlockGasLimit                   | 0x5f5e100                                                                                                            |
| l2GenesisBlockBaseFeePerGas              | 0x5f5e100                                                                                                            |
| l2GenesisRegolithTimeOffset              | 0x0                                                                                                                  |
| l2GenesisDeltaTimeOffset                 | 0x0                                                                                                                  |
| l2GenesisCanyonTimeOffset                | 0x0                                                                                                                  |
| l2GenesisEcotoneTimeOffset               | 0x0                                                                                                                  |
| eip1559Denominator                       | 8                                                                                                                    |
| eip1559DenominatorCanyon                 | 8                                                                                                                    |
| eip1559Elasticity                        | 2                                                                                                                    |
| systemConfigStartBlock                   | 0                                                                                                                    |
| requiredProtocolVersion                  | 0x0000000000000000000000000000000000000000000000000000000000000000                                                   |
| recommendedProtocolVersion               | 0x0000000000000000000000000000000000000000000000000000000000000000                                                   |
| fundDevAccounts                          | FALSE                                                                                                                |
| useFaultProofs                           | FALSE                                                                                                                |
| proofMaturityDelaySeconds                | 302400                                                                                                               |
| disputeGameFinalityDelaySeconds          | 302400                                                                                                               |
| respectedGameType                        | 0                                                                                                                    |
| faultGameWithdrawalDelay                 | 604800                                                                                                               |
| faultGameAbsolutePrestate                | 0x03c7ae758795765c6664a5d39bf63841c71ff191e9189522bad8ebff5d4eca98                                                   |
| faultGameMaxDepth                        | 50                                                                                                                   |
| faultGameMaxDuration                     | 2400                                                                                                                 |
| faultGameGenesisBlock                    | 0                                                                                                                    |
| faultGameGenesisOutputRoot               | 0x0000000000000000000000000000000000000000000000000000000000000000                                                   |
| faultGameSplitDepth                      | 14                                                                                                                   |
| preimageOracleMinProposalSize            | 10000                                                                                                                |
| preimageOracleChallengePeriod            | 120                                                                                                                  |
| usePlasma                                | FALSE                                                                                                                |
| daChallengeWindow                        | 3600                                                                                                                 |
| daResolveWindow                          | 3600                                                                                                                 |
| daBondSize                               | 103486250000000000                                                                                                   |
| daResolverRefundPercentage               | 100                                                                                                                  |

## Infrasctucture Contract Addresses Deployed on Matchain

| Name                         | Address                                                                                                                   |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Multicall3                   | [0xcA11bde05977b3631167028862bE2a173976CA11](https://www.matchscan.io/address/0xcA11bde05977b3631167028862bE2a173976CA11) |
| OptimismMintableERC20Factory | [0x70E1176C170DE7aBCe9762E1C689ea8379e185b3](https://www.matchscan.io/address/0x70E1176C170DE7aBCe9762E1C689ea8379e185b3) |

## Key parameters

| Name                                                                     | Introduction                                                                                                                      |
| ------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------- |
| l1BlockTime                                                              | the rollup block interval                                                                                                         |
| l2OutputOracleSubmissionInterval                                         | The L2 block interval for submiting OutputRoot to L2OutputOracle (how many l2 block submit once)                                  |
| channelTimeout                                                           | Maximum number of L1 blocks that a transaction channel frame can be considered valid                                              |
| finalizationPeriodSeconds                                                | Number of seconds that a proposal must be available to challenge before it is considered finalized by the OptimismPortal contract |
| proxyAdminOwner                                                          | The proxy owner for layer1 contract, the most important key for op                                                                |
| finalSystemOwner                                                         | The owner of the contract SystemConfig                                                                                            |
| baseFeeVaultRecipient / l1FeeVaultRecipient / sequencerFeeVaultRecipient | The fee that the rollup withdraw from rollup users                                                                                |
| batchSenderAddress                                                       | Used in op-batcher to submit rollup block to layer1                                                                               |
| l2OutputOracleProposer                                                   | Used in op-proposer to submit OutputRoot to layer1                                                                                |
| gasPriceOracleOverhead                                                   | The initial value of the gas overhead in the GasPriceOracle predeploy                                                             |
| gasPriceOracleScalar                                                     | The initial value of the gas scalar in the GasPriceOracle predeploy                                                               |
| l2GenesisBlockGasLimit                                                   | Initial block gas limit                                                                                                           |
| l2GenesisBlockBaseFeePerGas                                              | Initial base fee                                                                                                                  |

## Matchain Mainnet Utility Contracts

### Oku (Uniswap V3 Fork)

* Oku Open Source Github
* Uniswap V3 SDK

| Contract                                          | Address                                    |
| ------------------------------------------------- | ------------------------------------------ |
| v3CoreFactoryAddress                              | 0xcb2436774C3e191c85056d248EF4260ce5f27A9D |
| multicall2Address                                 | 0x5d6b0f5335ec95cD2aB7E52f2A0750dd86502435 |
| proxyAdminAddress                                 | 0x0d922Fb1Bc191F64970ac40376643808b4B74Df9 |
| tickLensAddress                                   | 0xB3309C48F8407651D918ca3Da4C45DE40109E641 |
| nftDescriptorLibraryAddressV1\_3\_0               | 0xE3dbcD53f4Ce1b06Ab200f4912BD35672e68f1FA |
| nonfungibleTokenPositionDescriptorAddressV1\_3\_0 | 0x454050C4c9190390981Ac4b8d5AFcd7aC65eEffa |
| descriptorProxyAddress                            | 0x38EB9e62ABe4d3F70C0e161971F29593b8aE29FF |
| nonfungibleTokenPositionManagerAddress            | 0x743E03cceB4af2efA3CC76838f6E8B50B63F184c |
| v3MigratorAddress                                 | 0x8B3c541c30f9b29560f56B9E44b59718916B69EF |
| v3StakerAddress                                   | 0x5911cB3633e764939edc2d92b7e1ad375Bb57649 |
| quoterV2Address                                   | 0xaa52bB8110fE38D0d2d2AF0B85C3A3eE622CA455 |
| swapRouter02                                      | 0x807F4E281B7A3B324825C64ca53c69F0b418dE40 |
| UniversalRouter                                   | 0x9db70E29712Cc8Af10c2B597BaDA6784544FF407 |
| Permit2                                           | 0xB952578f3520EE8Ea45b7914994dcf4702cEe578 |

## **Token Contracts**

| Contract                          | Address                                                                                                               |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `USDT`                            | [0xa0e73E30945B80010503E68e53AbFd0B6B6a6ed9](https://matchscan.io/address/0xa0e73E30945B80010503E68e53AbFd0B6B6a6ed9) |
| `Bridged USDC (Hyperlane) (USDC)` | [0x679Dc08cC3A4acFeea2f7CAFAa37561aE0b41Ce7](https://matchscan.io/token/0x679Dc08cC3A4acFeea2f7CAFAa37561aE0b41Ce7)   |
| `WBNB`                            | [0x4200000000000000000000000000000000000006](https://matchscan.io/token/0x4200000000000000000000000000000000000006)   |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.matchain.io/development/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.
