# V2 is a Separate Contract

The V1 registry is immutable by design and can be found at address [0x00000000000076A84feF008CDAbe6409d2FE638B](https://etherscan.io/address/0x00000000000076a84fef008cdabe6409d2fe638b) across a variety of EVM chains.

The V2 registry is also immutable by design and can be found at address [0x00000000000000447e69651d841bD8D104Bed493](https://etherscan.io/address/0x00000000000000447e69651d841bd8d104bed493) across a variety of EVM chains.

So the connotations of a centralized admin unilaterally pushing new code into a proxy contract do not apply here. V1 registry will continue to live on, it cannot be stopped. However V2 is far more powerful, gas-efficient, and user-friendly. The Delegate Market is also built on top of V2 not V1. The delegate.xyz frontend will offer users a one-click batch migration option to port their data from V1 into V2, and will focus its flows on V2.&#x20;

Apps are encouraged to update their integrations as soon as possible, please reach out with any questions while following the instructions in [V1 → V2 migration](/upgrade-to-v2/v1-v2-migration.md).

## Gas Benchmarking Improvements

<table><thead><tr><th width="288">Method</th><th>Registry V1</th><th>Registry V2</th><th>Improvement</th></tr></thead><tbody><tr><td>multicall (all+contract+erc721)</td><td>662,728</td><td>355,751</td><td>46.4% cheaper</td></tr><tr><td>delegateAll</td><td>211,709</td><td>140,425</td><td>33.7% cheaper</td></tr><tr><td>delegateContract</td><td>232,298</td><td>124,201</td><td>46.5% cheaper</td></tr><tr><td>delegateERC721</td><td>218,721</td><td>146,829</td><td>32.9% cheaper</td></tr><tr><td>delegateERC20</td><td>n/a</td><td>146,290</td><td></td></tr><tr><td>delegateERC1155</td><td>n/a</td><td>168,850</td><td></td></tr><tr><td>checkDelegateForAll</td><td>7,588</td><td>3,002</td><td>60.5% cheaper</td></tr><tr><td>checkDelegateForContract</td><td>7,786</td><td>5,491</td><td>29.5% cheaper</td></tr><tr><td>checkDelegateForERC721</td><td>11,186</td><td>7,932</td><td>20.1% cheaper</td></tr><tr><td>checkDelegateForERC20</td><td>n/a</td><td>7,882</td><td></td></tr><tr><td>checkDelegateForERC1155</td><td>n/a</td><td>7,932</td><td></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.delegate.xyz/upgrade-to-v2/v2-is-a-separate-contract.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.
