# Core Contracts

The Core Contracts form the backbone of Peridot Protocol, managing critical lending and borrowing logic, user vault balances, and core financial operations. These contracts handle asset collateralization, interest accrual, liquidity management, and risk governance directly on-chain.

***

### 📌 Primary Responsibilities

The Core Contracts oversee:

* **Collateral Management**:\
  Accepting user deposits, tracking collateral, and maintaining accurate user positions.
* **Borrowing & Repayment Logic**:\
  Handling user loan requests, calculating borrow limits based on collateral, and managing repayments.
* **Interest Calculation & Distribution**:\
  Continuously calculating dynamic interest rates based on utilization, managing interest accrual, and ensuring accurate APY distributions.
* **Liquidation Operations**:\
  Triggering and managing liquidations when collateral values fall below set thresholds.

***

### 🔍 Core Contract Components

The Core Contract suite comprises the following essential contracts:

* **Peridottroller**:\
  The central controller managing all lending market operations, collateral factors, borrow limits, and liquidation processes.
* **PERC20 (Peridot ERC20 Asset Tokens)**:\
  Interest-bearing token contracts representing user deposits, allowing users to earn APY on their supplied assets.
* **PEther (Peridot Native Asset Contract)**:\
  A specialized interest-bearing token contract designed explicitly for the native blockchain asset (e.g., ETH), facilitating direct native asset deposits and withdrawals.

***

<figure><img src="/files/jT7OnlIEK5JP21i1vu37" alt=""><figcaption></figcaption></figure>

### ⚙️ Technical Implementation

Each Core Contract is:

* Carefully audited and rigorously tested for security and reliability.
* Designed for composability and modularity, allowing for straightforward expansion and upgrades.
* Integrated directly with the Cross-Chain Contracts to seamlessly handle multi-chain user interactions and asset transfers.

***

For in-depth technical specifics on each Core Contract (Peridottroller, PERC20, PEther), including interfaces, implementation details, and usage instructions, please visit their respective subpages.


---

# 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://peridot-finance.gitbook.io/peridot-protocol/technical-architecture/evm/core-contracts.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.
