# Mayachain

El Dorado utilizes Maya Protocol as the underlying infrastructure to provide cross-chain swaps and yield on your native Layer 1 assets; so what is Maya Protocol?

### Intro To Maya Protocol <a href="#about" id="about"></a>

MAYAChain is a decentralised cross-chain liquidity protocol which uses the [Tendermint](https://tendermint.com/) consensus engine, [Cosmos-SDK](https://cosmos.network/) state machine, and GG20 [Threshold Signature Scheme](https://eprint.iacr.org/2019/114.pdf) (TSS). It does not peg or wrap assets, it manages funds directly in on-chain vaults, and secures those funds using economic security. It could be described as a "cross-chain automated market maker (AMM), like Uniswap".

### Innovations <a href="#innovations" id="innovations"></a>

There are numerous innovations in the MAYAChain Protocol that were built with first principles to be decentralized, resistant to capture, and as sustainable as possible.

1. **Capped Proof Of Bond** validator selection keeps the network decentralized and Nakamoto Coefficient high.
2. **3-Day Validator Churning** stops validator stagnation, proves spendability of funds and upgrades the network with minimal governance.
3. **Asynchronous Network Upgrades** allows validators to upgrade to a new protocol version in their own time, with the network upgrading without ever breaking consensus.
4. **Chain-agnostic Bifrost Protocol** handles UTXO, EVM, BFT, and Cryptonote chain connections with minimal core-logic nuances.
5. **Incentive Pendulum** streams rewards to Validators and Liquidity Providers to target a Network Security ratio that always keeps funds secured.
6. **Continuous Liquidity Pools** that allows single-sided liquidity provision and uses liquidity-sensitive fees to resist price attacks.
7. **Swap Queue** that orders swaps based on price impact in each block, which stops sandwich attacks and most other forms of Miner Extractable Value (MEV).
8. **Liquidity Synths** to enable fast low-fee swaps across L1 pools and power single-sided Savers. Synths are a hybrid collateralized-pegged asset design that contribute to liquidity.
9. **Derived Asset Collateral** to enable L1 lending, using the CACAO asset to underwrite the liability. This enables no interest, no liquidation, no expiry loans.

### 3 Pillars of MAYAChain: Security, Liquidity, Volume <a href="#id-3-pillars-of-mayachain-security-liquidity-volume" id="id-3-pillars-of-mayachain-security-liquidity-volume"></a>

MAYAChain contributors work to three goals:

1. Improve the **Security** of the network, via either **Functional** (Solvency Checker, Node Pause, TxOut Throttler), **Procedural** (MAYASec, Stagenet testing, PR reviews) or **Economic** (CACAO in the bond, or value of the $CACAO in the bond) Security.
2. Improve the **Liquidity** of the network, via Total Value Locked (TVL), or better UX around providing liquidity (Savers).
3. Improve the **Volume** of the network, via Swap UX (Synths, Order Books), or wallet Integrations (Quotes Endpoint, Dev UX, Business Development)

You can learn how MAYAChain works here: [How It Works](https://docs.mayaprotocol.com/maya-protocol-docs/how-it-works)

### MAYAChain Finance <a href="#mayachain-finance" id="mayachain-finance"></a>

Building on the foundation of liquidity pools, MAYAChain pursues three important financial primitives:

1. Allow a user to **Swap** {*Asset X on Chain A*}, to {*Asset Y on Chain B*}.
2. Allow a user to **Save** {*Asset X on Chain A*}.
3. Allow a user to **Lend** {*Asset X on Chain A*}, to **Borrow** {*Asset Y on Chain B*}.

<https://gitlab.com/mayachain/docs/one-stop-shop/-/blob/main/maya-protocol-docs/broken-reference/README.md>

### MAYANodes <a href="#mayanodes" id="mayanodes"></a>

MAYANodes service the MAYAChain network, of which there is intended to be initially 100, but can scale to 250+. The design goal of MAYAChain is such that anyone can join the network with the required funds (permissionless) and be anonymous, yet still be secure. MAYAChain takes this a step further by having a high churn schedule, kicking out nodes continuously. This high-churn network ensures that it is censorship-resistant, evades capture and resists centralisation. Each MAYANode is comprised of several independent servers in a cluster, which run full-nodes for each connected chain. \
\
[Node Operators](https://docs.mayaprotocol.com/maya-protocol-docs/roles/node-operators)

### Developers <a href="#developers" id="developers"></a>

Developers build products that integrate with MAYAChain, such as wallets, exchanges, and other services. Developers simply need to connect to Midgard, but they should also consider running their own nodes in order to increase the resilience, decentralization, and security of the network. \
\
The order of integration is as follows:

1. Connect to MAYAChain via Midgard or MAYANode.
2. Use data provided to display pools, assets, users, as well as get quotes for swaps/savers/lending.
3. Use existing wallet infrastructure to send L1 transactions
4. Use `xchainjs` packages to sign transactions and broadcast.

Learn more about integration at [MAYAChain Introduction](https://docs.mayaprotocol.com/mayachain-dev-docs/introduction).&#x20;

### CONTRIBUTING <a href="#contributing" id="contributing"></a>

MAYAChain is a public project. If you want to join the community or work on MAYAChain Core join the [Discord](https://discord.gg/mayaprotocol).

For more information and a complete Guide to Maya Protocol Please refer to the [Gitbook](https://docs.mayaprotocol.com/readme-1/introduction).


---

# 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.eldorito.club/el-dorito/integrations/mayachain.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.
