iceCREAM Mechanism Phase 1
Last updated
Last updated
The lending protocol includes the comptroller, cToken markets, and cTokenAdmin. Every market will generate reserves. CTokenAdmin is a new contract that controls the cToken market. In addition to normal access control in cToken, it allows a specific reserve manager to extract reserves.
Source: https://github.com/CreamFi/compound-protocol
The reserve manager is the hub of reserves extraction. It snapshots all the cToken reserves and everyone could trigger the extraction (with a 1-day cooldown period). It should take a ratio (currently 50%) of reserves and send them to the burners.
Source: https://github.com/CreamFi/reserve-manager
Reserve Manager: 0x0C5Bf19618A8FCDdb132d82BC6c5ea736A1beAED
Burners are a group of token converters. They will burn tokens into USDC, and USDC burner will convert USDC into yvCurve-IB token. There is a special component called manual burner. It's used for tokens whose onchain liquidity (Ethereum) is not deep enough. The manual burner is an EOA that will send the tokens to a centralized exchange or another network to convert manually. In the end, all tokens will be converted to yvCurve-IB token and send to the fee distributor.
Source: https://github.com/CreamFi/curve-dao-contracts
The fee distributor and the voting escrow are the final stops of iceCream phase 1. The fee distributor stores all the reserves in yvCurve-IB and it handles the fee distribution among all the iceCream stakers. The voting escrow (iceCream) is where users stake their CREAM tokens. Users could claim the rewards here.
Source: https://github.com/CreamFi/curve-dao-contracts
Fee Distributor: 0x0Ca0f068edad122f09a39f99E7E89E705d6f6Ace
Voting Escrow: 0x3986425b96F11972d31C78ff340908832C5c0043