> ## Documentation Index
> Fetch the complete documentation index at: https://docs.optimism.io/llms.txt
> Use this file to discover all available pages before exploring further.

# OP Stack preinstalls

> Learn how to use preinstalls on your chain.

This guide explains OP Stack preinstalls and what they bring to developers.
To go to production on a new chain, developers need their core contracts: Gnosis Safes, the 4337 entrypoint, create2deployer, etc. On a blank EVM, these contracts can take weeks to be deployed. Now, core contracts come *preinstalled* on the OP Stack -- no third party deployment necessary.
Whether hacking alone or starting the next big rollup, developers can start using their favorite contracts as soon as they spin up their chain.

Preinstalls place these core smart contracts at their usual addresses in the L2 genesis state, to ensure that they're usable as soon as a chain is initialized.
With these contracts preinstalled at set addresses, developers can also expect all these contracts to be present at set addresses on OP Stack chains.

<Info>
  Preinstalls are automatically enabled for all new OP chains after Ecotone.
</Info>

## Contracts and deployed addresses

This table lists the specific contracts to be pre/deployed for new OP Chains.

| Contract                                                                                                                            | Deployed Address for New OP Chains                                                                                                                                   |
| ----------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`Safe`](https://github.com/safe-global/safe-smart-account/blob/v1.3.0/contracts/GnosisSafe.sol)                                    | referencing the [artifacts file](https://github.com/ethereum-optimism/optimism/blob/v1.1.4/op-bindings/artifacts.json): `0x69f4D1788e39c87893C980c06EdF4b7f686e2938` |
| [`SafeL2`](https://github.com/safe-global/safe-smart-account/blob/v1.3.0/contracts/GnosisSafeL2.sol)                                | `0xfb1bffC9d739B8D520DaF37dF666da4C687191EA`                                                                                                                         |
| [`MultiSend`](https://github.com/safe-global/safe-smart-account/blob/v1.3.0/contracts/libraries/MultiSend.sol)                      | `0x998739BFdAAdde7C933B942a68053933098f9EDa`                                                                                                                         |
| [`MultiSendCallOnly`](https://github.com/safe-global/safe-smart-account/blob/v1.3.0/contracts/libraries/MultiSendCallOnly.sol)      | `0xA1dabEF33b3B82c7814B6D82A79e50F4AC44102B`                                                                                                                         |
| [Safe Singleton Factory](https://github.com/safe-global/safe-singleton-factory/blob/main/source/deterministic-deployment-proxy.yul) | `0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7`                                                                                                                         |
| [`Multicall3`](https://github.com/mds1/multicall/tree/main)                                                                         | `0xcA11bde05977b3631167028862bE2a173976CA11`                                                                                                                         |
| [`create2Deployer`](https://github.com/pcaversaccio/create2deployer)                                                                | `0x13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2`                                                                                                                         |
| [`CreateX`](https://github.com/pcaversaccio/createx)                                                                                | `0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed`                                                                                                                         |
| [Arachnid's Deterministic Deployment Proxy](https://github.com/Arachnid/deterministic-deployment-proxy)                             | `0x4e59b44847b379578588920cA78FbF26c0B4956C`                                                                                                                         |
| [`Permit2`](https://github.com/Uniswap/permit2)                                                                                     | `0x000000000022D473030F116dDEE9F6B43aC78BA3`                                                                                                                         |
| [ERC-4337 v0.6.0 `EntryPoint`](https://github.com/eth-infinitism/account-abstraction/tree/v0.6.0)                                   | `0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789`   <br /> `SenderCreator` dependency @ `0x7fc98430eAEdbb6070B35B39D798725049088348` on ETH mainnet                       |
| [ERC-4337 v0.6.0 `SenderCreator`](https://github.com/eth-infinitism/account-abstraction/tree/v0.6.0)                                | `0x7fc98430eAEdbb6070B35B39D798725049088348`                                                                                                                         |
| [ERC-4337 v0.7.0 `EntryPoint`](https://github.com/eth-infinitism/account-abstraction/tree/v0.7.0)                                   | `0x0000000071727De22E5E9d8BAf0edAc6f37da032`   <br /> `SenderCreator` dependency @ `0xEFC2c1444eBCC4Db75e7613d20C6a62fF67A167C` on ETH mainnet                       |
| [ERC-4337 v0.7.0 `SenderCreator`](https://github.com/eth-infinitism/account-abstraction/tree/v0.7.0)                                | `0xEFC2c1444eBCC4Db75e7613d20C6a62fF67A167C`                                                                                                                         |
