# Base

The list below does not cover all the implementation contracts. If you want to see the full list of deployed contracts, check the[ IPOR Addresses File on GitHub](https://github.com/IPOR-Labs/ipor-abi/tree/main/mainnet/mainnet-arbitrum).&#x20;

In the list below, contracts marked as "**upgradeable**" can be updated by the IPOR Protocol team. That means the logic of those contracts can be modified as they are running. The reason for upgradability is adding new functionality and, if necessary, bug fixing.&#x20;

Each modification is done via a timelock contract and multi-sig contract. For the detailed list of governing accounts and multisigs, refer to the [Governing Multisig Wallets](broken://pages/5r8tyY2uVx8IosK1Tvle). If the contract is not marked as "upgradable," it indicates that this contract is immutable and can not be changed.&#x20;

### IPOR Protocol Router

<table><thead><tr><th width="163.33333333333331">Name</th><th width="348">Address </th><th width="117">Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>IPOR Protocol Router</td><td>0x21d337eBF86E584e614ecC18A2B1144D3C375918</td><td><a href="https://basescan.org/address/0x21d337eBF86E584e614ecC18A2B1144D3C375918">BaseScan</a></td><td>true</td></tr></tbody></table>

### IPOR Oracle

<table><thead><tr><th width="163.33333333333331">Name</th><th width="348">Address </th><th width="116">Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>IPOR Oracle</td><td>0x85564fb392e18A84A64343A3FB65839206936C0f</td><td><a href="https://basescan.org/address/0x85564fb392e18A84A64343A3FB65839206936C0f">BaseScan</a></td><td>true</td></tr></tbody></table>

### AMM

<table><thead><tr><th width="163.33333333333331">Name</th><th width="348">Address </th><th>Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>AMM Swaps Lens</td><td>0x6834BdFe5864c6B1703B999D04B092229A322943</td><td><a href="https://basescan.org/address/0x6834BdFe5864c6B1703B999D04B092229A322943">BaseScan</a></td><td>false</td></tr><tr><td>AMM Open Swap Service wstETH</td><td>0xFbE094Bcc8731fa45Eb88850592248e5D6aC9472</td><td><a href="https://basescan.org/address/0xFbE094Bcc8731fa45Eb88850592248e5D6aC9472">BaseScan</a></td><td>false</td></tr><tr><td>AMM Open Swap Service USDC</td><td>0xdF884ccEf3F18b107e0B9423aaE3b605461bB54d</td><td><a href="https://basescan.org/address/0xdF884ccEf3F18b107e0B9423aaE3b605461bB54d">BaseScan</a></td><td>false</td></tr><tr><td>AMM Close Swap Service wstETH</td><td>0xD3626cf9DC33bB6bdEcc6CC1E2b6a6A69B561FAF</td><td><a href="https://basescan.org/address/0xD3626cf9DC33bB6bdEcc6CC1E2b6a6A69B561FAF">BaseScan</a></td><td>false</td></tr><tr><td>AMM Close Swap Service USDC</td><td>0x8572Eb57F92F50913d9dA78E5C6a8065b0449A3D</td><td><a href="https://basescan.org/address/0x8572Eb57F92F50913d9dA78E5C6a8065b0449A3D">BaseScan</a></td><td>false</td></tr><tr><td>AMM Pools Lens</td><td>0xa4989A9225f6DD130e8Ce4a4b5ef7902c8c389dc</td><td><a href="https://basescan.org/address/0xa4989A9225f6DD130e8Ce4a4b5ef7902c8c389dc">BaseScan</a></td><td>false</td></tr><tr><td>AMM Pools Service wstETH</td><td>0x2bb871aC1823c7A7daeF9c00198E3f996C65401C</td><td><a href="https://basescan.org/address/0x2bb871aC1823c7A7daeF9c00198E3f996C65401C">BaseScan</a></td><td>false</td></tr><tr><td>AMM Pools Service USDC</td><td>0x12bDfdBF97D68fc3CCC45Ef6E9c3Ca2c1F3F7522</td><td><a href="https://basescan.org/address/0x12bDfdBF97D68fc3CCC45Ef6E9c3Ca2c1F3F7522">BaseScan</a></td><td>false</td></tr><tr><td>AMM Treasury wstETH</td><td>0x09388e18d5C331449C6eF636726dD1fd007b8DDf</td><td><a href="https://basescan.org/address/0x09388e18d5C331449C6eF636726dD1fd007b8DDf">BaseScan</a></td><td>true</td></tr><tr><td>AMM Treasury USDC</td><td>0x1AbA7a3C3bec8139B10a4807087084064A454a24</td><td><a href="https://basescan.org/address/0x1AbA7a3C3bec8139B10a4807087084064A454a24">BaseScan</a></td><td>true</td></tr><tr><td>AMM Storage USDC</td><td>0x86d94f5BACb94DaC2088a0096e88b06b1944AB1d</td><td><a href="https://basescan.org/address/0x86d94f5BACb94DaC2088a0096e88b06b1944AB1d">BaseScan</a></td><td>true</td></tr><tr><td>AMM Storage wstETH</td><td>0x29399D76921e23314Ae259Cf5E17116f48AE65b7</td><td><a href="https://basescan.org/address/0x29399D76921e23314Ae259Cf5E17116f48AE65b7">BaseScan</a></td><td>true</td></tr><tr><td>AMM Governance Service</td><td>0x498eB532c9D3b4Cf20351b8767Dceb4B5D28FE4c</td><td><a href="https://basescan.org/address/0x498eB532c9D3b4Cf20351b8767Dceb4B5D28FE4c">BaseScan</a></td><td>false</td></tr></tbody></table>

### Spread

<table><thead><tr><th width="163.33333333333331">Name</th><th width="343">Address </th><th>Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>Spread WstEth</td><td>0x3D21ADf3b0Ff5B3fDfFC8D5FFa6634Bd65949924</td><td><a href="https://basescan.org/address/0x3D21ADf3b0Ff5B3fDfFC8D5FFa6634Bd65949924">BaseScan</a></td><td>false</td></tr></tbody></table>

### Liquidity mining

<table><thead><tr><th width="163.33333333333331">Name</th><th width="324">Address </th><th>Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>Liquidity Mining</td><td>0xE9331948766593EE9CeBBB426faE317b44DaF0f2</td><td><a href="https://basescan.org/address/0xE9331948766593EE9CeBBB426faE317b44DaF0f2">BaseScan</a></td><td>true</td></tr><tr><td>Liquidity Mining Lens</td><td>0xF9f7FFd661F4C8De141732EEE07CEE7447C013d4</td><td><a href="https://basescan.org/address/0xF9f7FFd661F4C8De141732EEE07CEE7447C013d4">BaseScan</a></td><td>false</td></tr><tr><td>Power Token</td><td>0xA8799d46a00AD19B2EbD0D0D18792B4BAF26C0CC</td><td><a href="https://basescan.org/address/0xA8799d46a00AD19B2EbD0D0D18792B4BAF26C0CC">BaseScan</a></td><td>true</td></tr><tr><td>Power Token Lens</td><td>0x4084e842E232d8b4460DEB0Bf792e94d513caa33</td><td><a href="https://basescan.org/address/0x4084e842E232d8b4460DEB0Bf792e94d513caa33">BaseScan</a></td><td>false</td></tr><tr><td>Stake Service</td><td>0x15AA5cd0ED90C77B8D5a6F6b163Cf8D374Eff55b</td><td><a href="https://basescan.org/address/0x15AA5cd0ED90C77B8D5a6F6b163Cf8D374Eff55b">BaseScan</a></td><td>true</td></tr><tr><td>FlowsService</td><td>0xDB6b7c05e2ce7A1F0F0ee8eed788E5d52c909def</td><td><a href="https://basescan.org/address/0xDB6b7c05e2ce7A1F0F0ee8eed788E5d52c909def">BaseScan</a></td><td>false</td></tr></tbody></table>

### Tokens

<table><thead><tr><th width="183.33333333333331">Name</th><th width="273">Address </th><th>Links </th><th data-type="checkbox">Upgradable</th></tr></thead><tbody><tr><td>IPOR Token</td><td>0xbd4e5C2f8dE5065993d29A9794E2B7cEfc41437A</td><td><a href="https://basescan.org/address/0xbd4e5c2f8de5065993d29a9794e2b7cefc41437a#readContract%23F9">BaseScan</a></td><td>false</td></tr><tr><td>ipwstETH</td><td>0xff7907CDCA84DB03f09702A4A49C262908AF48Af</td><td><a href="https://basescan.org/address/0xff7907CDCA84DB03f09702A4A49C262908AF48Af">BaseScan</a></td><td>false</td></tr><tr><td>ipUSDC</td><td>0x4AEE7072AC1a49A3F84D0A95e32F3B7D1C97fB30</td><td><a href="https://basescan.org/address/0x4AEE7072AC1a49A3F84D0A95e32F3B7D1C97fB30">BaseScan</a></td><td>false</td></tr></tbody></table>


---

# 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.ipor.io/ipor-derivatives/developers-docs/deployed-contracts/arbitrum-1.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.
