Reserves

The funds received by the protocol, such as liquidity provider deposits or premiums, are stored in reserves. A reserve is a base contract that holds assets (USDC). We have two types of reserves: eTokens and Premiums Accounts.

Each reserve might have an asset management strategy to get additional returns from the managed assets. This strategy, an additional implementation contract that runs with delegatecall, will invest the reserves' funds to get the returns and should be able to de-invest them when needed.

An asset management strategy can be something as simple as a contract that deposits the USDC in AAVE, accruing the interests. When the funds are needed, the contract withdraws them from AAVE.

Other more aggressive or complex asset management strategies can be implemented, including using ERC-4626 vaults or asset management protocols like Enzyme Finance.

The returns coming from the asset management strategy will be treated differently depending on the specific reserve:

  • ETokens: the yields of the asset management strategy generate an increase in the total supply, distributing the yield to all the LPs in proportion to their share of the liquidity pool.

  • Premiums Accounts: in this case, the yields will have a treatment similar to the earned pure premiums precedence explained here.

Cash Movements

OperationIn/OutSource/Target

deposit

In

eToken

withdraw

Out

eToken

newPolicy

In

  • Ensuro Treasury

  • Partner

  • Premiums Account

  • Junior eToken

  • Senior eToken

See Premium Split

resolvePolicy

Out

  1. Premiums Account

  2. Junior eToken

  3. Senior eToken

See precedence order.

expirePolicy

Internal

Internal loan repayment from Premiums Account --> eToken

Last updated