# CoreStorage

The `CoreStorage.sol` contract is responsible for storing the core storage variables and mappings used by the Unlockd Protocol.

### Key storage variables:

`_moduleLookup`: Mapping of module IDs to their implementation addresses.

`_proxyLookup`: Mapping of module IDs to their proxy addresses (only for single-proxy modules).

`_trustedSenders`: Mapping of proxy addresses to their trusted sender information.

`_aclManager`: Address of the ACL (Access Control List) manager contract.

`_walletRegistry`: Address of the wallet registry contract.

`_allowedControllers`: Address of the allowed controllers contract.

`_reserveOracle`: Address of the reserve oracle contract.

`_signer`: Address of the signer used for signature verification.

`_uTokenVault`: Address of the UToken vault contract.

`_safeERC721`: Address of the SafeERC721 contract.

`_signNonce`: Mapping of addresses to their current signature nonce.

`_allowedCollections`: Mapping of collection addresses to their allowed reserve types.

`_allowedMarketAdapter`: Mapping of market adapter addresses to their active status.

`_loans`: Mapping of loan IDs to their corresponding loan data.

`_orders`: Mapping of order IDs to their corresponding order data.


---

# 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://devs.unlockd.finance/storage/corestorage.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.
