# Contract-Adressen

Bereitgestellte Vertragsadressen in den Rome-Umgebungen.

## Precompile-Adressen (alle Umgebungen)

Diese Adressen sind im Rome-EVM-Programm fest eingebaut und überall gleich.

| Precompile            | Adresse                                      | Schnittstelle             |
| --------------------- | -------------------------------------------- | ------------------------- |
| ecrecover             | `0x0000000000000000000000000000000000000001` | Standard-Ethereum         |
| SHA-256               | `0x0000000000000000000000000000000000000002` | Standard-Ethereum         |
| RIPEMD-160            | `0x0000000000000000000000000000000000000003` | Standard-Ethereum         |
| Identität             | `0x0000000000000000000000000000000000000004` | Standard-Ethereum         |
| BN254 ecAdd           | `0x0000000000000000000000000000000000000006` | Standard-Ethereum         |
| BN254 ecMul           | `0x0000000000000000000000000000000000000007` | Standard-Ethereum         |
| BN254 ecPairing       | `0x0000000000000000000000000000000000000008` | Standard-Ethereum         |
| Blake2f               | `0x0000000000000000000000000000000000000009` | Standard-Ethereum         |
| **SPL Token**         | `0xff00000000000000000000000000000000000005` | `ISplToken`               |
| **Zugehöriges Token** | `0xFF00000000000000000000000000000000000006` | `IAssociatedSplToken`     |
| **Systemprogramm**    | `0xfF00000000000000000000000000000000000007` | `ISystemProgram`          |
| **CPI**               | `0xFF00000000000000000000000000000000000008` | `ICrossProgramInvocation` |
| **Abheben**           | `0x4200000000000000000000000000000000000016` | `IWithdraw`               |

## Devnet (montispl)

**Rome EVM-Programm-ID:** `RD2Gg7Lcnv62XmRHAzxh6fQQfMRzHtN5LeKPVBhYU5S`

### ERC20-SPL-Bridge

| Vertrag         | Adresse                                      |
| --------------- | -------------------------------------------- |
| ERC20SPLFactory | `0xfd21da046c282e1d36cc45e46d9599cff5742f2b` |

### Meteora-Integration

| Vertrag              | Adresse                                      |
| -------------------- | -------------------------------------------- |
| MeteoraDAMMv1Factory | `0x054b3c6c826ffa58e5047e72c8ae42cc3af51de2` |
| DAMMv1Pool (Pool 1)  | `0xA52DeA8D3f512Bf28A0689823A4D9f36A370e7A5` |
| DAMMv1Pool (Pool 2)  | `0x3a3DF0Eb4276c627aE8ef56E8Eaf27A8D4505657` |

### Oracle Gateway V2

| Vertrag                                | Adresse                                      |
| -------------------------------------- | -------------------------------------------- |
| OracleAdapterFactory                   | `0xa4647955a16b72d15f13b51b5277036755d297be` |
| PythPullAdapter (Implementierung)      | `0x4fd11aed44ee5f71df22fb804cfcbb4c50535db9` |
| SwitchboardV3Adapter (Implementierung) | `0xb57e3589b880aa3f6b66ce2df6aa42cd9c36925e` |
| BatchReader                            | `0x70da375e5680f84032f5b15d35ba0e6f9871d3fd` |

**Factory-Konfiguration:**

* Pyth-Receiver-Programm-ID: `0x0cb7fabb52f7a648bb5b317d9a018b9057cb024774fafe01e6c4df98cc385881`
* Switchboard-Programm-ID: `0x068851c68c6832f02fa581b1bf491b77ca41776ba2b988b5a6faba8ee3a2ec90`
* Standardmäßige maximale Aktualitätsgrenze: 60 Sekunden

### Oracle-Feeds

| Feed                        | Adapter-Adresse                              | Quelle                                                     |
| --------------------------- | -------------------------------------------- | ---------------------------------------------------------- |
| SOL/USD (Switchboard)       | `0xF0864572019c295407CF2ed46e6FD3615e10E19d` | Aggregator: `GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR` |
| SOL/USD (Pyth V1, veraltet) | `0x170dDC928429FC1A55Dc31c7f5793fc1b2Afea08` | —                                                          |
| BTC/USD (Pyth V1, veraltet) | `0xaF9b0a1F94FAa8d36F67a6057cd9aC0Aa16BCa07` | —                                                          |
| ETH/USD (Pyth V1, veraltet) | `0x8a67386F90b5422D3B61e9a5e4BD1986A216D98D` | —                                                          |

## Solana-Programm-IDs

| Programm                 | ID                                             | Zweck                                               |
| ------------------------ | ---------------------------------------------- | --------------------------------------------------- |
| SPL Token                | `TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA`  | Standard SPL-Token-Programm                         |
| SPL Token-2022           | `TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb`  | SPL-Token der nächsten Generation mit Erweiterungen |
| Zugehöriges Token        | `ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL` | ATA-Ableitung und -Erstellung                       |
| Systemprogramm           | `11111111111111111111111111111111`             | Kontenerstellung, SOL-Überweisungen                 |
| Metaplex-Token-Metadaten | `metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s`  | NFT-/Token-Metadaten                                |

## Umgebungen

| Umgebung          | Chain-IDs | RPC-Muster                                           | Status |
| ----------------- | --------- | ---------------------------------------------------- | ------ |
| Lokal             | `1001`    | `localhost:9090` (Proxy), `localhost:8545` (OP-Geth) | Dev    |
| Devnet (montispl) | `200002`  | `montispl.devnet.romeprotocol.xyz`                   | Aktiv  |
| Testnet (Martius) | `121214`  | `martius-i.testnet.romeprotocol.xyz`                 | Aktiv  |
| Testnet (Caelian) | `121215`  | `caelian-i.testnet.romeprotocol.xyz`                 | Aktiv  |

## Hinweise

* Alle Devnet-Adressen wurden am 2026-04-02 bereitgestellt
* Precompile-Adressen sind im Rome-EVM-Programm fest codiert — sie ändern sich nicht zwischen den Umgebungen
* Oracle-Feeds verwenden EIP-1167-Minimal-Proxy-Klone — jeder Feed hat eine eindeutige Klonadresse, die auf die gemeinsame Implementierung verweist
* Legacy-Pyth-V1-Feeds sind weiterhin in Betrieb, aber V2 (über OracleAdapterFactory) wird für neue Integrationen empfohlen


---

# 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.rome.builders/de/referenz/contract-addresses.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.
