# Адреса контрактов

Развернутые адреса контрактов в средах Rome.

## Адреса прекомпилированных контрактов (все среды)

Эти адреса встроены в программу Rome EVM и одинаковы везде.

| Прекомпиляция             | Адрес                                        | Интерфейс                 |
| ------------------------- | -------------------------------------------- | ------------------------- |
| ecrecover                 | `0x0000000000000000000000000000000000000001` | Стандартный Ethereum      |
| SHA-256                   | `0x0000000000000000000000000000000000000002` | Стандартный Ethereum      |
| RIPEMD-160                | `0x0000000000000000000000000000000000000003` | Стандартный Ethereum      |
| Идентичность              | `0x0000000000000000000000000000000000000004` | Стандартный Ethereum      |
| BN254 ecAdd               | `0x0000000000000000000000000000000000000006` | Стандартный Ethereum      |
| BN254 ecMul               | `0x0000000000000000000000000000000000000007` | Стандартный Ethereum      |
| BN254 ecPairing           | `0x0000000000000000000000000000000000000008` | Стандартный Ethereum      |
| Blake2f                   | `0x0000000000000000000000000000000000000009` | Стандартный Ethereum      |
| **SPL Token**             | `0xff00000000000000000000000000000000000005` | `ISplToken`               |
| **Ассоциированный токен** | `0xFF00000000000000000000000000000000000006` | `IAssociatedSplToken`     |
| **Системная программа**   | `0xfF00000000000000000000000000000000000007` | `ISystemProgram`          |
| **CPI**                   | `0xFF00000000000000000000000000000000000008` | `ICrossProgramInvocation` |
| **Вывод**                 | `0x4200000000000000000000000000000000000016` | `IWithdraw`               |

## Devnet (montispl)

**ID программы Rome EVM:** `RD2Gg7Lcnv62XmRHAzxh6fQQfMRzHtN5LeKPVBhYU5S`

### Мост ERC20-SPL

| Контракт        | Адрес                                        |
| --------------- | -------------------------------------------- |
| ERC20SPLFactory | `0xfd21da046c282e1d36cc45e46d9599cff5742f2b` |

### Интеграция Meteora

| Контракт             | Адрес                                        |
| -------------------- | -------------------------------------------- |
| MeteoraDAMMv1Factory | `0x054b3c6c826ffa58e5047e72c8ae42cc3af51de2` |
| DAMMv1Pool (пул 1)   | `0xA52DeA8D3f512Bf28A0689823A4D9f36A370e7A5` |
| DAMMv1Pool (пул 2)   | `0x3a3DF0Eb4276c627aE8ef56E8Eaf27A8D4505657` |

### Шлюз оракула V2

| Контракт                          | Адрес                                        |
| --------------------------------- | -------------------------------------------- |
| OracleAdapterFactory              | `0xa4647955a16b72d15f13b51b5277036755d297be` |
| PythPullAdapter (реализация)      | `0x4fd11aed44ee5f71df22fb804cfcbb4c50535db9` |
| SwitchboardV3Adapter (реализация) | `0xb57e3589b880aa3f6b66ce2df6aa42cd9c36925e` |
| BatchReader                       | `0x70da375e5680f84032f5b15d35ba0e6f9871d3fd` |

**Конфигурация фабрики:**

* ID программы получателя Pyth: `0x0cb7fabb52f7a648bb5b317d9a018b9057cb024774fafe01e6c4df98cc385881`
* ID программы Switchboard: `0x068851c68c6832f02fa581b1bf491b77ca41776ba2b988b5a6faba8ee3a2ec90`
* Максимальная допустимая устарелость по умолчанию: 60 секунд

### Потоки данных оракулов

| Поток                         | Адрес адаптера                               | Источник                                                  |
| ----------------------------- | -------------------------------------------- | --------------------------------------------------------- |
| SOL/USD (Switchboard)         | `0xF0864572019c295407CF2ed46e6FD3615e10E19d` | Агрегатор: `GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR` |
| SOL/USD (Pyth V1, устаревший) | `0x170dDC928429FC1A55Dc31c7f5793fc1b2Afea08` | —                                                         |
| BTC/USD (Pyth V1, устаревший) | `0xaF9b0a1F94FAa8d36F67a6057cd9aC0Aa16BCa07` | —                                                         |
| ETH/USD (Pyth V1, устаревший) | `0x8a67386F90b5422D3B61e9a5e4BD1986A216D98D` | —                                                         |

## ID программ Solana

| Программа                   | ID                                             | Назначение                                |
| --------------------------- | ---------------------------------------------- | ----------------------------------------- |
| SPL Token                   | `TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA`  | Стандартная программа SPL Token           |
| SPL Token-2022              | `TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb`  | SPL Token нового поколения с расширениями |
| Ассоциированный токен       | `ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL` | Деривация и создание ATA                  |
| Системная программа         | `11111111111111111111111111111111`             | Создание аккаунтов, переводы SOL          |
| Метаданные токенов Metaplex | `metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s`  | Метаданные NFT/токена                     |

## Среды

| Окружение         | ID цепочек | Шаблон RPC                                           | Статус  |
| ----------------- | ---------- | ---------------------------------------------------- | ------- |
| Локальная         | `1001`     | `localhost:9090` (Proxy), `localhost:8545` (OP-Geth) | Dev     |
| Devnet (montispl) | `200002`   | `montispl.devnet.romeprotocol.xyz`                   | Активно |
| Testnet (Martius) | `121214`   | `martius-i.testnet.romeprotocol.xyz`                 | Активно |
| Testnet (Caelian) | `121215`   | `caelian-i.testnet.romeprotocol.xyz`                 | Активно |

## Примечания

* Все адреса devnet были развернуты 2026-04-02
* Адреса прекомпилированных контрактов жестко зашиты в программу Rome EVM — они не меняются между средами
* Потоки данных оракулов используют минимальные прокси-клоны EIP-1167 — у каждого потока есть уникальный адрес клона, указывающий на общую реализацию
* Устаревшие потоки Pyth V1 по-прежнему работают, однако для новых интеграций рекомендуется V2 (через OracleAdapterFactory)


---

# 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/ru/spravochnik/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.
