> For the complete documentation index, see [llms.txt](https://docs-v4.venus.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-v4.venus.io/technical-reference/reference-core-pool.md).

# Core Pool

“Core Pool” is a product label, not a single contract architecture. Select the reference for the deployment you are integrating with.

## Architecture map

| Deployment                                                                 | Comptroller architecture                            | Market architecture                                                              | Source repository                                                 |
| -------------------------------------------------------------------------- | --------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| BNB Chain Core Pool                                                        | Unitroller proxy → Diamond → selector-routed facets | VBep20Delegator/VBep20Delegate for ERC-20 assets; standalone VBNB for native BNB | [venus-protocol](https://github.com/VenusProtocol/venus-protocol) |
| Ethereum, opBNB, Arbitrum, ZKsync, Optimism, Base, and Unichain Core Pools | BeaconProxy Comptroller                             | BeaconProxy VToken                                                               | [isolated-pools](https://github.com/VenusProtocol/isolated-pools) |

{% hint style="danger" %}
Do not use the BNB Core Pool ABI for a Core Pool on another network. Those deployments use the same architecture as the contracts historically documented under “Isolated Pools,” even when the pool is named Core Pool in the interface.
{% endhint %}

## Choose the correct reference

For the BNB Chain Core Pool, use:

* [BNB Core Comptroller](/technical-reference/reference-core-pool/comptroller.md)
* [BNB Core vTokens](/technical-reference/reference-core-pool/vtoken.md)
* [Diamond Comptroller architecture](/technical-reference/reference-technical-articles/diamond-comptroller.md)

For every other Core Pool, use:

* [BeaconProxy Comptroller](/technical-reference/reference-isolated-pools/comptroller/comptroller.md)
* [BeaconProxy VToken](/technical-reference/reference-isolated-pools/vtoken/vtoken.md)

The deployed address determines the runtime version. Resolve the proxy or beacon implementation at the block you are querying, then use an ABI generated from that implementation. Current market and Comptroller addresses are listed in [Deployed Markets](/deployed-contracts/markets.md).

## Generated API pages

Many child pages are generated from a repository source release. They describe that source contract, but they do not prove that every selector is available at every deployed address. For BNB Diamond functions, query the live selector map. For beacon-based deployments, resolve the live beacon implementation.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs-v4.venus.io/technical-reference/reference-core-pool.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
