# Devs

- [Smart Contract Architecture](https://docs.ionprotocol.io/devs/smart-contract-architecture.md)
- [Home](https://docs.ionprotocol.io/devs/smart-contract-architecture/home.md)
- [Admin](https://docs.ionprotocol.io/devs/smart-contract-architecture/admin.md)
- [ProxyAdmin](https://docs.ionprotocol.io/devs/smart-contract-architecture/admin/proxyadmin.md)
- [TransparentUpgradeableProxy](https://docs.ionprotocol.io/devs/smart-contract-architecture/admin/transparentupgradeableproxy.md)
- [ITransparentUpgradeableProxy](https://docs.ionprotocol.io/devs/smart-contract-architecture/admin/itransparentupgradeableproxy.md)
- [Flash](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash.md)
- [LRT](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lrt.md)
- [RsEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lrt/rsethhandler.md)
- [EzEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lrt/ezethhandler.md)
- [RswEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lrt/rswethhandler.md)
- [WeEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lrt/weethhandler.md)
- [LST](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lst.md)
- [SwEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lst/swethhandler.md)
- [EthXHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lst/ethxhandler.md)
- [WstEthHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/lst/wstethhandler.md)
- [BalancerFlashloanDirectMintHandler constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/balancerflashloandirectminthandler-constants.md)
- [BalancerFlashloanDirectMintHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/balancerflashloandirectminthandler.md)
- [PtHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/pthandler.md)
- [IonHandlerBase](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/ionhandlerbase.md)
- [UniswapFlashloanBalancerSwapHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/uniswapflashloanbalancerswaphandler.md)
- [UniswapFlashswapDirectMintHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/uniswapflashswapdirectminthandler.md)
- [UniswapFlashswapDirectMintHandlerWithDust](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/uniswapflashswapdirectminthandlerwithdust.md)
- [UniswapFlashswapHandler](https://docs.ionprotocol.io/devs/smart-contract-architecture/flash/uniswapflashswaphandler.md)
- [Join](https://docs.ionprotocol.io/devs/smart-contract-architecture/join.md)
- [GemJoin](https://docs.ionprotocol.io/devs/smart-contract-architecture/join/gemjoin.md)
- [Libraries](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries.md)
- [LRT](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lrt.md)
- [KelpDaoLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lrt/kelpdaolibrary.md)
- [EtherFiLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lrt/etherfilibrary.md)
- [RestakedSwellLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lrt/restakedswelllibrary.md)
- [RenzoLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lrt/renzolibrary.md)
- [LST](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lst.md)
- [StaderLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lst/staderlibrary.md)
- [LidoLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lst/lidolibrary.md)
- [SwellLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/lst/swelllibrary.md)
- [math](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/math.md)
- [WadRayMath constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/math/wadraymath-constants.md)
- [WadRayMath](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/math/wadraymath.md)
- [uniswap](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/uniswap.md)
- [UniswapOracleLibrary](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/uniswap/uniswaporaclelibrary.md)
- [TickMath](https://docs.ionprotocol.io/devs/smart-contract-architecture/libraries/uniswap/tickmath.md)
- [Oracles](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles.md)
- [Reserve](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve.md)
- [LRT](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lrt.md)
- [EzEthWstEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lrt/ezethwstethreserveoracle.md)
- [RsEthWstEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lrt/rsethwstethreserveoracle.md)
- [RswEthWstEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lrt/rswethwstethreserveoracle.md)
- [WeEthWstEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lrt/weethwstethreserveoracle.md)
- [LST](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lst.md)
- [SwEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lst/swethreserveoracle.md)
- [EthXReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lst/ethxreserveoracle.md)
- [WstEthReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/lst/wstethreserveoracle.md)
- [Pendle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/pendle.md)
- [EzEthPtReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/pendle/ezethptreserveoracle.md)
- [RsEthPtReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/pendle/rsethptreserveoracle.md)
- [RswEthPtReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/pendle/rswethptreserveoracle.md)
- [WeEthPtReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/pendle/weethptreserveoracle.md)
- [ReserveOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/reserveoracle.md)
- [ReserveFeed](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/reservefeed.md)
- [ReserveOracle constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/reserve/reserveoracle-constants.md)
- [Spot](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot.md)
- [LRT](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lrt.md)
- [EzEthWstEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lrt/ezethwstethspotoracle.md)
- [RsEthWstEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lrt/rsethwstethspotoracle.md)
- [RswEthWstEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lrt/rswethwstethspotoracle.md)
- [WeEthWstEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lrt/weethwstethspotoracle.md)
- [LST](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst.md)
- [EthXSpotOracle constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst/ethxspotoracle-constants.md)
- [EthXSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst/ethxspotoracle.md)
- [IRedstonePriceFeed](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst/iredstonepricefeed.md)
- [SwEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst/swethspotoracle.md)
- [WstEthSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/lst/wstethspotoracle.md)
- [SpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/spotoracle.md)
- [PtSpotOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/oracles/spot/ptspotoracle.md)
- [Periphery](https://docs.ionprotocol.io/devs/smart-contract-architecture/periphery.md)
- [IonInvariants](https://docs.ionprotocol.io/devs/smart-contract-architecture/periphery/ioninvariants.md)
- [IonLens](https://docs.ionprotocol.io/devs/smart-contract-architecture/periphery/ionlens.md)
- [IlkSlot0](https://docs.ionprotocol.io/devs/smart-contract-architecture/periphery/ilkslot0.md)
- [IonRegistry](https://docs.ionprotocol.io/devs/smart-contract-architecture/periphery/ionregistry.md)
- [Token](https://docs.ionprotocol.io/devs/smart-contract-architecture/token.md)
- [IERC20Errors](https://docs.ionprotocol.io/devs/smart-contract-architecture/token/ierc20errors.md)
- [RewardToken](https://docs.ionprotocol.io/devs/smart-contract-architecture/token/rewardtoken.md)
- [Vault](https://docs.ionprotocol.io/devs/smart-contract-architecture/vault.md)
- [VaultFactory](https://docs.ionprotocol.io/devs/smart-contract-architecture/vault/vaultfactory.md)
- [Vault](https://docs.ionprotocol.io/devs/smart-contract-architecture/vault/vault.md)
- [Whitelist](https://docs.ionprotocol.io/devs/smart-contract-architecture/whitelist.md)
- [YieldOracle constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/yieldoracle-constants.md)
- [YieldOracle](https://docs.ionprotocol.io/devs/smart-contract-architecture/yieldoracle.md)
- [YieldOracleNull](https://docs.ionprotocol.io/devs/smart-contract-architecture/yieldoraclenull.md)
- [YieldOraclePendle](https://docs.ionprotocol.io/devs/smart-contract-architecture/yieldoraclependle.md)
- [Errors](https://docs.ionprotocol.io/devs/smart-contract-architecture/errors.md)
- [Constants](https://docs.ionprotocol.io/devs/smart-contract-architecture/constants.md)
- [Seaport Leverage and Deleverage](https://docs.ionprotocol.io/devs/smart-contract-architecture/seaport-leverage-and-deleverage.md)
- [Deployed Contracts](https://docs.ionprotocol.io/devs/deployed-contracts.md): Mainnet Smart Contract Addresses


---

# 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.ionprotocol.io/devs.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.
