# C.R.E.A.M. Finance

Ethereum Mainnet documentation

{% hint style="info" %}
You can switch between Ethereum Mainnet, Binance Smart Chain and Fantom Opera in top-left corner
{% endhint %}

## Overview

### What is C.R.E.A.M. Finance?

C.R.E.A.M. Finance is a decentralized lending protocol for individuals and protocols to access financial services. The protocol is permissionless, transparent, and non-custodial.

Currently, C.R.E.A.M. is live on Ethereum, Binance Smart Chain, and Fantom.

C.R.E.A.M. Finance’s smart contract money markets are focused on longtail assets -- with the goal of increasing capital efficiency for all assets in crypto markets.

Users are able to lend any supported assets on our markets, and use the provided capital as collateral to borrow another supported asset.

C.R.E.A.M. offers a wide range of tokens on our money markets, including: stablecoins (USDT, USDC, BUSD); interest-bearing stablecoins (yCRV, yyCRV); defi tokens (YFI, SUSHI, CREAM, CREAM); LP-tokens (USDC-ETH SLP, WBTC-ETH SLP); and other cryptocurrencies (ETH, LINK). This list is not exhaustive.

Please check the link below for the latest list of supported tokens:

{% content-ref url="/pages/-MKKoTGL9RMFErxbppzr" %}
[Lending Contract Address](/lending/lending-contract-address)
{% endcontent-ref %}

### How to use C.R.E.A.M. Finance?

Borrow and lend tokens on [app.cream.finance](https://app.cream.finance/)


# Contract Address

### Cream

[0x2ba592F78dB6436527729929AAf6c908497cB200](https://etherscan.io/address/0x2ba592F78dB6436527729929AAf6c908497cB200)

### Long-term CREAM Staking Address

| Duration | Address                                                                                                               |
| -------- | --------------------------------------------------------------------------------------------------------------------- |
| 1 Year   | [0x780F75ad0B02afeb6039672E6a6CEDe7447a8b45](https://etherscan.io/address/0x780F75ad0B02afeb6039672E6a6CEDe7447a8b45) |
| 2 Year   | [0xBdc3372161dfd0361161e06083eE5D52a9cE7595](https://etherscan.io/address/0xBdc3372161dfd0361161e06083eE5D52a9cE7595) |
| 3 Year   | [0xD5586C1804D2e1795f3FBbAfB1FBB9099ee20A6c](https://etherscan.io/address/0xD5586C1804D2e1795f3FBbAfB1FBB9099ee20A6c) |
| 4 Year   | [0xE618C25f580684770f2578FAca31fb7aCB2F5945](https://etherscan.io/address/0xE618C25f580684770f2578FAca31fb7aCB2F5945) |

### Major Contract Address

{% content-ref url="/pages/-MKKoTGL9RMFErxbppzr" %}
[Lending Contract Address](/lending/lending-contract-address)
{% endcontent-ref %}

{% content-ref url="/pages/-MMV3TocqcN\_Jtp4Qpvs" %}
[CRETH2 Contract Address](/eth2/ethereum-2.0-contract-address)
{% endcontent-ref %}

### Repayment Contract Address

| Name            | Address                                                                                                               |
| --------------- | --------------------------------------------------------------------------------------------------------------------- |
| CRETH2Repayment | [0xA5462BC7BB1dd43b0Db84c2De71E34A03ac11DeB](https://etherscan.io/address/0xA5462BC7BB1dd43b0Db84c2De71E34A03ac11DeB) |
| USDCRepayment   | [0x84858f72d991f11a760dd2d26caff7962307900c](https://etherscan.io/address/0x84858f72d991f11a760dd2d26caff7962307900c) |


# Audit Report

### Trail of Bits (January 28, 2021)

Throughout this assessment, we \[Trail of Bits] sought to answer various questions about the security of CREAM. We focused on flaws that would allow an attacker to:

* Manipulate asset prices returned by the price oracles.
* Subvert the imposed caps on borrowing or supplying.
* Bypass access controls to modify contract state.

Trail of Bits [Publications GitHub](https://github.com/trailofbits/publications/blob/master/reviews/CREAMSummary.pdf)

{% file src="/files/-MYO2nqvY7BJBJ1KKIhX" %}
Audit Report - Trail of Bits
{% endfile %}


# About

## Steward

Jeffrey Huang | [twitter.com/machibigbrother](https://twitter.com/machibigbrother)


# Press Kit

Press kit and assets for media use

### Main Logo

![](/files/-MUNTUaTZshGHIodlHAo)

{% file src="/files/-MUNT8yIu6rghKf9fVMo" %}
SVG
{% endfile %}

{% file src="/files/-MUNXvsDCZzAQSSVugb4" %}
512 x 119 PNG
{% endfile %}

{% file src="/files/-MUNY0iqnWub1RIPRZCW" %}
1024 x 237 PNG
{% endfile %}

{% file src="/files/-MUNUUSUar1STtnuRI6U" %}
2048 x 474 PNG
{% endfile %}

###

### CREAM Logo

![](/files/-MUNV2d4TZjmr4haHNy5)

Intended use case: square logo, symbol, favicon

{% file src="/files/-MUNVEXJG3UJGS6FDDsL" %}
SVG
{% endfile %}

{% file src="/files/-MUNXrI9WMFye3\_hPiKI" %}
32 x 32 PNG
{% endfile %}

{% file src="/files/-MUNW-mdg5xNvwjOe2NH" %}
256 x 256 PNG
{% endfile %}

{% file src="/files/-MUNW3IvP170f1U0OCtO" %}
512 x 512 PNG
{% endfile %}

{% file src="/files/-MUNWHtcVDhyb5Cs9qYx" %}
1024 x 1024 PNG
{% endfile %}

{% file src="/files/-MUNWj\_LfS5YsJxNaE-n" %}
2048 x 2048 PNG
{% endfile %}

###

### Iron Bank

![](/files/-MUSXxFZZUnlN3lXd49B)

{% file src="/files/-MUSYSLBUaFKJgxoMbU8" %}
512 x 92 PNG
{% endfile %}

{% file src="/files/-MUSYdBcR4ZIoQtXQKZZ" %}
1024 x 185 PNG
{% endfile %}

{% file src="/files/-MUSYo3HOfu-1RLMvfS8" %}
2048 x 370 PNG
{% endfile %}


# Terms of Service

## Company and Interface Overview

This website-hosted user interface (this “Interface”) is made available by Asia Authority International CO., Ltd., a corporation organized and existing under the laws of Samoa (the “Company”).

## Terms of Use

These Terms of Use, including any documents or terms referenced within them, which includes any other terms and conditions or any agreement that the Company ( “we,” “us” and “our”) posts publicly or makes available to you or the company or other legal entity you represent (“you” or “your”) (collectively, these “Terms”), are entered into between the Company and you concerning your use of, and access to, the Company’s websites, including the Interface; web applications; mobile applications; and all associated sites linked thereto by the Interface, or us or our affiliates (collectively with any materials and services available therein, and successor website(s) or application(s) thereto, the “Site”). By accessing or using the Site or the Services, you acknowledge that you have read, understood, and agree to be bound by and comply with these Terms, including, without limitation, the mandatory arbitration provision. If you do not agree to these Terms, you must not access or use the Site or the Services.

## Modifications to These Terms

The Company may revise and update these Terms and other related Policies at our sole discretion, and any changes made are effective immediately. You are expected to check this page from time to time to monitor for any changes, and any changes made will be binding to you and your use of the Services. We reserve the right to update or change the format and content of the Website, Interface or Services in our sole discretion without notifying users.

## Eligibility

To use the Services, you must be legally able to enter into this Agreement, which typically means you must be the age of majority in your jurisdiction. You warrant that all information you provide is accurate, complete, and up to date. Additionally, you confirm that you are not a citizen, resident, or member of any jurisdiction subject to U.S. or international sanctions, nor are you subject to any sanctions by the Office of Foreign Assets Control (O.F.A.C.), including as a Specially Designated National (S.D.N.). You are responsible for ensuring that your use of the Services complies with local laws, and we encourage you to stay informed of any legal changes affecting your use.

The open-source, self-executing smart contracts deployed on various permissionless public blockchains, such as Ethereum, ARE NOT OFFERED to persons or entities who reside in, are citizens of, are located in, are incorporated in, or have a registered office in the United States of America (collectively, “US Persons”), or in **Algeria, Bangladesh, Bolivia, Belarus, Burundi, Burma (Myanmar), Canada, Cote D’Ivoire (Ivory Coast), Crimea and Sevastopol, Cuba, Democratic Republic of Congo, Ecuador, Iran, Iraq, Liberia, Libya, Mali, Morocco, Nepal, North Korea, Somalia, Sudan, Syria, Taiwan, Venezuela, Yemen,** and **Zimbabwe** (collectively, “Restricted Territories”). Moreover, NONE OF OUR OTHER SERVICES are offered to persons or entities who reside in, are located in, are incorporated in, or have a registered office in any restricted territory, including the **United States** and the **Restricted Territories** mentioned above (any such person or entity from a restricted territory, a “Restricted Person”). We do not make exceptions. Therefore, if you are a US Person or a Restricted Person, do not attempt to use our supported contracts or any of our services.

The USE OF A VIRTUAL PRIVATE NETWORK (“VPN”) to circumvent the restrictions set forth herein is strictly prohibited.

## Use of Services

As a condition to accessing or using the Services or the Site, you represent and warrant to the Company the following:

### Legal Capacity

* If you are entering into these Terms as an individual, you confirm that you are of legal age in your jurisdiction and have the legal capacity to be bound by these Terms. If you are entering into these Terms on behalf of an entity, you confirm that you have the legal authority to accept these Terms on behalf of that entity, in which case “you” will refer to the entity.

### Residency and Nationality Restrictions

* You are not a resident, national, or agent of Algeria, Bangladesh, Bolivia, Belarus, Burundi, Burma (Myanmar), Canada, Cote D’Ivoire (Ivory Coast), Crimea and Sevastopol, Cuba, Democratic Republic of Congo, Ecuador, Iran, Iraq, Liberia, Libya, Mali, Morocco, Nepal, North Korea, Somalia, Sudan, Syria, Taiwan, United States, Venezuela, Yemen, Zimbabwe or any other country to which Canada, Panama, the United States, the United Kingdom or the European Union embargoes goods or imposes similar sanctions (collectively, “Restricted Territories”);

### Sanctions List Compliance

* You are not a member of any sanctions list or equivalent maintained by the United States government, the United Kingdom government, the European Union, the United Nations, or any other applicable sanctions authority, including those of Taiwan, Samoa, or the Republic of Seychelles (collectively, “Sanctions Lists Persons”), and you do not intend to transact with any Restricted Person or Sanctions Lists Person.

### Prohibited Use of VPNs or Anonymization Tools

* You do not, and will not, use VPN software or any other privacy or anonymization tools or techniques to circumvent or attempt to bypass any restrictions that apply to the Services.

### Compliance with Applicable Laws

* Your access to the Services is not prohibited by, nor does it violate or assist in the violation of, any domestic or foreign law, rule, statute, regulation, by-law, order, protocol, code, decree, directive, requirement, or guideline in force that applies to or governs any person, property, transaction, activity, event, or other matter, including any rule, order, judgment, or directive issued by any domestic or foreign federal, provincial, state, municipal, local, or other governmental, regulatory, judicial, or administrative authority having jurisdiction over the Company, you, the Site, or the Services (collectively, “Applicable Laws”). Additionally, your access does not contribute to or facilitate any illegal activity.

## Limitations

As a condition to accessing or using the Services or the Site, you acknowledge, understand, and agree to the following:

### Inaccessibility and Operability

* From time to time, the Site and the Services may become inaccessible or inoperable for various reasons, including but not limited to: (a) equipment malfunctions; (b) periodic maintenance procedures or repairs undertaken by the Company, its suppliers, or contractors; (c) causes beyond the Company’s control or that the Company could not reasonably foresee; (d) disruptions or temporary/permanent unavailability of the underlying blockchain infrastructure; or (e) unavailability of third-party service providers or external partners for any reason.

### Right to Modify or Disable Access

* We reserve the right to disable or modify access to the Site and the Services at any time in the event of any breach of these Terms. This includes, without limitation, instances where we reasonably believe any of your representations or warranties may be untrue or inaccurate, or if you are violating or have violated any geographical restrictions that apply to the Services and/or supported contracts. We will not be liable for any losses or damages you may suffer as a result of, or in connection with, the Site or Services being inaccessible to you at any time or for any reason.

### Evolution of the Site and Services

* The Site and the Services may evolve, meaning the Company may, at its sole discretion, apply changes, replace, or discontinue the Services, either temporarily or permanently, at any time.

### Pricing Information

* The pricing information provided on the Site does not constitute an offer, a solicitation of an offer, or advice regarding, or a recommendation to enter into, any transaction with the Company.

### Company’s Role and Responsibilities

* The Company does not act as an agent for you or any other user of the Site or the Services. You are solely responsible for your use of the Services, including all transfers of Digital Assets and the custody and control of your Digital Assets.

### No Fiduciary Duties

* To the fullest extent not prohibited by Applicable Laws, we owe no fiduciary duties or liabilities to you or any other party. To the extent any such duties or liabilities may exist at law or in equity, you hereby irrevocably disclaim, waive, and eliminate those duties and liabilities.

### Tax Responsibility

* You are solely responsible for reporting and paying any taxes applicable to your use of the Services;

### No Control Over Transactions

* We have no control over, and accept no liability for, the delivery, quality, safety, legality, or any other aspect of any Digital Assets that you may transfer to or from a third party. We are not responsible for ensuring that any entity with whom you transact completes the transaction or is authorized to do so. If you experience any issues with transactions involving Digital Assets using the Services, you bear the entire risk.

## Certifications

As a condition to accessing or using the Services or the Site, you covenant to the Company the following:

### Legality of Digital Assets

* In connection with using the Services, you will only transfer legally obtained Digital Assets that belong to you.

### Compliance with Applicable Laws

* You agree to comply with all Applicable Laws in connection with your use of the Services, and you will not use the Site or the Services if the laws of your country, or any other Applicable Law, prohibit such use.

### Ownership of Digital Assets

* Any Digital Assets you use in connection with the Services are either owned by you or you are validly authorized to perform actions using those Digital Assets

### Accuracy of Information and Security

* In addition to complying with all restrictions, prohibitions, and other provisions of these Terms, you agree to ensure that all information you provide on the Site and during your use of the Services is current, complete, and accurate at all times. You also agree to maintain the security and confidentiality of your private keys associated with your public wallet address, passwords, API keys, and private keys related to your Services account and other relevant credentials.

## Prohibited Activity

By using the Services, you agree not to engage in or promote any prohibited activities, including but not limited to:

* Using the Services to engage in illegal activities, including fraud, money laundering, or any activity prohibited by applicable law;
* Circumventing or attempting to circumvent OFAC sanctions or other legal restrictions;
* Exploiting the Services for any unauthorized commercial purposes, such as reselling access or using the Services for unauthorized advertising;
* Engaging in hacking, denial-of-service attacks, or exploitation of any smart contract related to the Services, even if such actions are technically permitted by the smart contract;
* Interfering with or attempting to bypass the security features of the Services, or any third-party systems, networks, or resources associated with the provision of the Services;
* Collecting information from the Services for unauthorized purposes, including data scraping, phishing, or other unauthorized activities that disrupt other users’ access or the functionality of the Services.

## No Warranties

The Services and any information provided herein are offered on an ‘AS IS’ and ‘AS AVAILABLE’ basis. The Company disclaims any and all representations and warranties of any kind, whether express or implied, including but not limited to warranties of merchantability and fitness for a particular purpose. We disclaim any warranty regarding the accuracy, continuity, uninterrupted nature, or error-free operation of the Services or any information provided. Additionally, we do not guarantee, endorse, or assume responsibility for the accuracy, reliability, or quality of information provided by third-party services.

## No Professional Advice or Fiduciary Duties

All information provided in connection with your access and use of the Site and the Services is for informational purposes only and should not be construed as professional advice. You should not take, or refrain from taking, any action based on any information available on the Site or any other content we provide, including but not limited to blog posts, articles, links to third-party content, Discord content, news feeds, tutorials, social media content, and videos. Before making any financial, legal, or other decisions related to the Services, you should seek independent professional advice from a licensed and qualified individual in the relevant field. These Terms are not intended to, and do not, create or impose any fiduciary duties on us. You further agree that the only duties and obligations we owe you are those expressly set out in these Terms.

## Assumption of Risk

You acknowledge and agree that your use of the Services is at your own risk and that you will not hold the Company responsible for any resulting losses. All transactions on the blockchain are irreversible, final, and without refunds. The Company is not responsible for any loss or damage caused by another user’s conduct, or by authorized or unauthorized access or use of the Services, including viruses or other malicious code that may be used to affect the functionality or operation of the Services. The Company is not acting as an intermediary, agent, advisor, or custodian, and it does not have a fiduciary relationship or any obligation to you in connection with your use of the Services.

## Third-Party Resources

Use of the Interface requires users to utilize third-party self-custodial wallets to interact with the service. The Company makes no warranties, guarantees, or assumes any responsibility for the use of such wallets. Users are responsible for accepting and adhering to any terms and conditions associated with the use of third-party self-custodial wallets.

The Company is not responsible for the content, services, or promotions of any third party, including, without limitation, networks or apps such as Discord or Twitter, and makes no representations regarding the content or accuracy of third-party services or materials. If you use or access any third-party product, service, or promotion, including those accessed through the Services, you do so at your own risk. The Company does not control any third parties.

## Limitations of Liability

To the maximum extent permitted by law, neither the Company and its team members, service providers, advisors nor committee members will be liable to you for any incidental, special, punitive, exemplary or consequential damages, or damages for lost profits, lost revenues, lost savings, lost business opportunity, loss of data or goodwill, service interruption, computer damage or system failure or the cost of substitute services of any kind arising out of or relating to the access of the Interface or use of the Services or the prevention thereof.

The Company assumes no liability or responsibility for any errors, omissions, mistakes or inaccuracies of content, bugs, viruses, trojan horses, or the like that may be transmitted to or through the Interface or illegal conduct of any user.

This limitation of liability applies regardless of whether the alleged liability is based on contract, tort, negligence, strict liability, or any other basis. The exclusions and limitations of damages set forth above are fundamental elements of the basis of the bargain between the Company and you.

## Intellectual Property

The C.R.E.A.M. Finance logo, name and related logos, names, slogans, designs and media are the intellectual property of the Company or affiliates. Unauthorized use is prohibited. Nothing in the Website, Interface, or Services grants any license or rights to use these Intellectual Property without express written permission.

Use of the Website, Interface, and Services is permitted for your personal, non-commercial use only. No reproduction, distribution, modification, creation of derivative works of, public display, public performance, republishing, downloading, storing or transmitting any of the material herein and therein is permitted.

## Indemnification

You agree to indemnify, defend, and hold harmless the Company and its current and previous employees, contractors, service providers, and directors from any and all claims made by any third party due to or arising out of:

* Your breach or alleged breach of the Agreement;
* Your use or misuse of the Services;
* Your violation of any laws, rules, regulations, or court orders of any governmental authority;
* Your violation of the rights of any third party; or
* Any misrepresentation made by you.

You agree to promptly notify the Company of any claims and to cooperate in the defense of such claims. You further agree that the Company will have sole authority to assume control over the defense or settlement of any third-party claims.

## User Information

Any information we collect is subject to our Privacy Policy. When you use the Website, Interface, and/or Services, you consent to all actions taken by us with respect to your information in compliance with the Privacy Policy.

## Confidential Information

When you use or access the Website, Interface and/or Services, data may be transmitted over an open network in such a way that communications could be intercepted by third parties. This is not our responsibility or liability, and we cannot guarantee the confidentiality or security of any communication or data transmitted to us through the Website.

## Suspension of Services

We may suspend, limit or terminate your access to the Services at any time as required by applicable law or governmental authority, or if the Company, in its sole discretion, has determined you are violating these Terms. Such suspension, limitation or termination shall not be construed as a breach of these Terms by the Company.

You acknowledge and agree that we shall have no liability or obligation to you in such event that we suspend or terminate your access to the Services, and that you will not be entitled to a refund of any amounts that you have already paid to us.

## Force Majeure

We will not be responsible or liable for any failure or delay in the performance of the Site or any of the Services, nor for any loss or damage you may incur, due to circumstances or events beyond our control. These include, but are not limited to, floods, extreme weather conditions, earthquakes, epidemics, pandemics, acts of God, fires, wars, insurrections, riots, labor disputes, accidents, governmental actions, communication failures, power outages, or equipment or software malfunctions.

## Arbitration Clause

These Terms and any related actions will be governed by the Arbitration Law of Samoa and the laws of Samoa, without regard to conflict of law principles. Except as otherwise specified, the exclusive jurisdiction for any Disputes that are not subject to arbitration will be the courts located in Samoa. Both you and the Company waive any objections to jurisdiction and venue in those courts.


# Lending Contract Address

### crToken Address

| Contract                        | Address                                                                                                                                   | Flash Loans |
| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| crETH                           | [0xD06527D5e56A3495252A528C4987003b712860eE](https://etherscan.io/address/0xD06527D5e56A3495252A528C4987003b712860eE)                     | No          |
| crUSDT                          | [0x797AAB1ce7c01eB727ab980762bA88e7133d2157](https://etherscan.io/address/0x797AAB1ce7c01eB727ab980762bA88e7133d2157)                     | Yes         |
| crUSDC                          | [0x44fbebd2f576670a6c33f6fc0b00aa8c5753b322](https://etherscan.io/address/0x44fbebd2f576670a6c33f6fc0b00aa8c5753b322)                     | Yes         |
| crYFI                           | [0xCbaE0A83f4f9926997c8339545fb8eE32eDc6b76](https://etherscan.io/address/0xCbaE0A83f4f9926997c8339545fb8eE32eDc6b76)                     | Yes         |
| crBAL                           | [0xcE4Fe9b4b8Ff61949DCfeB7e03bc9FAca59D2Eb3](https://etherscan.io/address/0xcE4Fe9b4b8Ff61949DCfeB7e03bc9FAca59D2Eb3)                     | Yes         |
| crCOMP                          | [0x19D1666f543D42ef17F66E376944A22aEa1a8E46](https://etherscan.io/address/0x19D1666f543D42ef17F66E376944A22aEa1a8E46)                     | Yes         |
| crYCRV                          | [0x9baF8a5236d44AC410c0186Fe39178d5AAD0Bb87](https://etherscan.io/address/0x9baF8a5236d44AC410c0186Fe39178d5AAD0Bb87)                     | No          |
| crCREAM                         | [0x892B14321a4FCba80669aE30Bd0cd99a7ECF6aC0](https://etherscan.io/address/0x892B14321a4FCba80669aE30Bd0cd99a7ECF6aC0)                     | No          |
| crLINK                          | [0x697256CAA3cCaFD62BB6d3Aa1C7C5671786A5fD9](https://etherscan.io/address/0x697256CAA3cCaFD62BB6d3Aa1C7C5671786A5fD9)                     | Yes         |
| crLEND                          | [0x8B86e0598616a8d4F1fdAE8b59E55FB5Bc33D0d6](https://etherscan.io/address/0x8B86e0598616a8d4F1fdAE8b59E55FB5Bc33D0d6)                     | No          |
| crCRV                           | [0xc7Fd8Dcee4697ceef5a2fd4608a7BD6A94C77480](https://etherscan.io/address/0xc7Fd8Dcee4697ceef5a2fd4608a7BD6A94C77480)                     | Yes         |
| crRENBTC                        | [0x17107f40d70f4470d20CB3f138a052cAE8EbD4bE](https://etherscan.io/address/0x17107f40d70f4470d20CB3f138a052cAE8EbD4bE)                     | Yes         |
| crBUSD                          | [0x1FF8CDB51219a8838b52E9cAc09b71e591BC998e](https://etherscan.io/address/0x1FF8CDB51219a8838b52E9cAc09b71e591BC998e)                     | Yes         |
| crMTA                           | [0x3623387773010d9214B10C551d6e7fc375D31F58](https://etherscan.io/address/0x3623387773010d9214b10c551d6e7fc375d31f58)                     | Yes         |
| crYYCRV                         | [0x4EE15f44c6F0d8d1136c83EfD2e8E4AC768954c6](https://etherscan.io/address/0x4EE15f44c6F0d8d1136c83EfD2e8E4AC768954c6)                     | No          |
| crSUSHI                         | [0x338286C0BC081891A4Bda39C7667ae150bf5D206](https://etherscan.io/address/0x338286C0BC081891A4Bda39C7667ae150bf5D206)                     | Yes         |
| crFTT                           | [0x10FDBD1e48eE2fD9336a482D746138AE19e649Db](https://etherscan.io/address/0x10FDBD1e48eE2fD9336a482D746138AE19e649Db)                     | Yes         |
| crYETH                          | [0x01da76DEa59703578040012357b81ffE62015C2d](https://etherscan.io/address/0x01da76DEa59703578040012357b81ffE62015C2d)                     | No          |
| crSRM                           | [0xef58b2d5A1b8D3cDE67b8aB054dC5C831E9Bc025](https://etherscan.io/address/0xef58b2d5A1b8D3cDE67b8aB054dC5C831E9Bc025)                     | Yes         |
| crUNI                           | [0xe89a6D0509faF730BD707bf868d9A2A744a363C7](https://etherscan.io/address/0xe89a6D0509faF730BD707bf868d9A2A744a363C7)                     | Yes         |
| crWNXM                          | [0xeFF039C3c1D668f408d09dD7B63008622a77532C](https://etherscan.io/address/0xeff039c3c1d668f408d09dd7b63008622a77532c)                     | Yes         |
| crSWAG                          | [0x22B243B96495C547598D9042B6f94B01C22B2e9E](https://etherscan.io/address/0x22B243B96495C547598D9042B6f94B01C22B2e9E)                     | No          |
| crCEL                           | [0x8b3FF1ed4F36C2c2be675AFb13CC3AA5d73685a5](https://etherscan.io/address/0x8b3ff1ed4f36c2c2be675afb13cc3aa5d73685a5)                     | Yes         |
| crDPI                           | [0x2A537Fa9FFaea8C1A41D3C2B68a9cb791529366D](https://etherscan.io/address/0x2A537Fa9FFaea8C1A41D3C2B68a9cb791529366D)                     | Yes         |
| crBBTC                          | [0x7ea9C63E216D5565c3940A2B3d150e59C2907Db3](https://etherscan.io/address/0x7ea9c63e216d5565c3940a2b3d150e59c2907db3)                     | Yes         |
| crAAVE                          | [0x3225E3C669B39C7c8B3e204a8614bB218c5e31BC](https://etherscan.io/address/0x3225E3C669B39C7c8B3e204a8614bB218c5e31BC)                     | Yes         |
| crBOND                          | [0xf55BbE0255f7f4E70f63837Ff72A577fbDDbE924](https://etherscan.io/address/0xf55BbE0255f7f4E70f63837Ff72A577fbDDbE924)                     | Yes         |
| crKP3R                          | [0x903560b1CcE601794C584F58898dA8a8b789Fc5d](https://etherscan.io/address/0x903560b1CcE601794C584F58898dA8a8b789Fc5d)                     | Yes         |
| crHBTC                          | [0x054B7ed3F45714d3091e82aAd64A1588dC4096Ed](https://etherscan.io/address/0x054b7ed3f45714d3091e82aad64a1588dc4096ed)                     | Yes         |
| crHFIL                          | [0xd5103AfcD0B3fA865997Ef2984C66742c51b2a8b](https://etherscan.io/address/0xd5103afcd0b3fa865997ef2984c66742c51b2a8b)                     | Yes         |
| crCRETH2                        | [0xfd609a03B393F1A1cFcAcEdaBf068CAD09a924E2](https://etherscan.io/address/0xfd609a03b393f1a1cfcacedabf068cad09a924e2)                     | Yes         |
| crHUSD                          | [0xD692ac3245bb82319A31068D6B8412796eE85d2c](https://etherscan.io/address/0xD692ac3245bb82319A31068D6B8412796eE85d2c)                     | Yes         |
| crDAI                           | [0x92B767185fB3B04F881e3aC8e5B0662a027A1D9f](https://etherscan.io/address/0x92b767185fb3b04f881e3ac8e5b0662a027a1d9f)                     | Yes         |
| crHEGIC                         | [0x10a3da2BB0Fae4D591476fd97D6636fd172923a8](https://etherscan.io/address/0x10a3da2bb0fae4d591476fd97d6636fd172923a8)                     | Yes         |
| crESD                           | [0x3C6C553A95910F9FC81c98784736bd628636D296](https://etherscan.io/address/0x3c6c553a95910f9fc81c98784736bd628636d296)                     | Yes         |
| ~~crCOVER~~ (protocol shutdown) | \~\~\~\~[~~0x21011bc93d9e515b9511a817a1ed1d6d468f49fc~~](https://etherscan.io/address/0x21011bc93d9e515b9511a817a1ed1d6d468f49fc)\~\~\~\~ | ~~No~~      |
| cr1INCH                         | [0x85759961b116f1D36fD697855c57A6ae40793D9B](https://etherscan.io/address/0x85759961b116f1d36fd697855c57a6ae40793d9b)                     | Yes         |
| crOMG                           | [0x7Aaa323D7e398be4128c7042d197a2545f0f1fea](https://etherscan.io/address/0x7aaa323d7e398be4128c7042d197a2545f0f1fea)                     | Yes         |
| crUNI-V2-WBTC-ETH               | [0x011a014d5e8Eb4771E575bB1000318D509230Afa](https://etherscan.io/address/0x011a014d5e8eb4771e575bb1000318d509230afa)                     | No          |
| crUNI-V2-ETH-USDT               | [0xE6C3120F38F56deb38B69b65cC7dcAF916373963](https://etherscan.io/address/0xe6c3120f38f56deb38b69b65cc7dcaf916373963)                     | No          |
| crUNI-V2-USDC-ETH               | [0x4Fe11BC316B6d7A345493127fBE298b95AdaAd85](https://etherscan.io/address/0x4fe11bc316b6d7a345493127fbe298b95adaad85)                     | No          |
| crUNI-V2-DAI-ETH                | [0xcD22C4110c12AC41aCEfA0091c432ef44efaAFA0](https://etherscan.io/address/0xcd22c4110c12ac41acefa0091c432ef44efaafa0)                     | No          |
| crXSUSHI                        | [0x228619CCa194Fbe3Ebeb2f835eC1eA5080DaFbb2](https://etherscan.io/address/0x228619cca194fbe3ebeb2f835ec1ea5080dafbb2)                     | No          |
| crSLP-WBTC-ETH                  | [0x73f6cBA38922960b7092175c0aDD22Ab8d0e81fC](https://etherscan.io/address/0x73f6cba38922960b7092175c0add22ab8d0e81fc)                     | No          |
| crSLP-DAI-ETH                   | [0x38f27c03d6609a86FF7716ad03038881320BE4Ad](https://etherscan.io/address/0x38f27c03d6609a86ff7716ad03038881320be4ad)                     | No          |
| crSLP-USDC-ETH                  | [0x5EcaD8A75216CEa7DFF978525B2D523a251eEA92](https://etherscan.io/address/0x5ecad8a75216cea7dff978525b2d523a251eea92)                     | No          |
| crSLP-ETH-USDT                  | [0x5C291bc83d15f71fB37805878161718eA4b6AEe9](https://etherscan.io/address/0x5c291bc83d15f71fb37805878161718ea4b6aee9)                     | No          |
| crSLP-SUSHI-ETH                 | [0x6BA0C66C48641e220CF78177C144323b3838D375](https://etherscan.io/address/0x6ba0c66c48641e220cf78177c144323b3838d375)                     | No          |
| crSLP-YFI-ETH                   | [0xd532944df6DFd5Dd629E8772F03D4fC861873abF](https://etherscan.io/address/0xd532944df6dfd5dd629e8772f03d4fc861873abf)                     | No          |
| crWBTC                          | [0x197070723CE0D3810a0E47F06E935c30a480D4Fc](https://etherscan.io/address/0x197070723CE0D3810a0E47F06E935c30a480D4Fc)                     | Yes         |
| crSNX                           | [0xC25EAE724f189Ba9030B2556a1533E7c8A732E14](https://etherscan.io/address/0xC25EAE724f189Ba9030B2556a1533E7c8A732E14)                     | Yes         |
| crSUSD                          | [0x25555933a8246Ab67cbf907CE3d1949884E82B55](https://etherscan.io/address/0x25555933a8246Ab67cbf907CE3d1949884E82B55)                     | Yes         |
| crPICKLE                        | [0xc68251421edda00a10815e273fa4b1191fac651b](https://etherscan.io/address/0xc68251421edda00a10815e273fa4b1191fac651b)                     | Yes         |
| crAKRO                          | [0x65883978aDA0e707c3b2BE2A6825b1C4BDF76A90](https://etherscan.io/address/0x65883978ada0e707c3b2be2a6825b1c4bdf76a90)                     | Yes         |
| crBBADGER                       | [0x8B950f43fCAc4931D408F1fcdA55C6CB6cbF3096](https://etherscan.io/address/0x8b950f43fcac4931d408f1fcda55c6cb6cbf3096)                     | No          |
| crOGN                           | [0x59089279987DD76fC65Bf94Cb40E186b96e03cB3](https://etherscan.io/address/0x59089279987dd76fc65bf94cb40e186b96e03cb3)                     | Yes         |
| crAMP                           | [0x2Db6c82CE72C8d7D770ba1b5F5Ed0b6E075066d6](https://etherscan.io/address/0x2db6c82ce72c8d7d770ba1b5f5ed0b6e075066d6)                     | Yes         |
| crFRAX                          | [0xb092b4601850E23903A42EaCBc9D8A0EeC26A4d5](https://etherscan.io/address/0xb092b4601850e23903a42eacbc9d8a0eec26a4d5)                     | Yes         |
| crALPHA                         | [0x1d0986Fb43985c88Ffa9aD959CC24e6a087C7e35](https://etherscan.io/address/0x1d0986fb43985c88ffa9ad959cc24e6a087c7e35)                     | Yes         |
| crUST                           | [0x51F48b638F82e8765F7a26373A2Cb4CcB10C07af](https://etherscan.io/address/0x51f48b638f82e8765f7a26373a2cb4ccb10c07af)                     | Yes         |
| crFTM                           | [0xc36080892c64821fa8e396bc1bD8678fA3b82b17](https://etherscan.io/address/0xc36080892c64821fa8e396bc1bd8678fa3b82b17)                     | Yes         |
| crRUNE                          | [0x8379BAA817c5c5aB929b03ee8E3c48e45018Ae41](https://etherscan.io/address/0x8379BAA817c5c5aB929b03ee8E3c48e45018Ae41)                     | Yes         |
| crPERP                          | [0x299e254A8a165bBeB76D9D69305013329Eea3a3B](https://etherscan.io/address/0x299e254a8a165bbeb76d9d69305013329eea3a3b)                     | Yes         |
| crRAI                           | [0xf8445C529D363cE114148662387eba5E62016e20](https://etherscan.io/address/0xf8445C529D363cE114148662387eba5E62016e20)                     | Yes         |
| crOCEAN                         | [0x7C3297cFB4c4bbd5f44b450c0872E0ADA5203112](https://etherscan.io/address/0x7c3297cfb4c4bbd5f44b450c0872e0ada5203112)                     | Yes         |
| crRARI                          | [0x081FE64df6dc6fc70043aedF3713a3ce6F190a21](https://etherscan.io/address/0x081fe64df6dc6fc70043aedf3713a3ce6f190a21)                     | Yes         |
| crSFI                           | [0x28526Bb33d7230E65E735dB64296413731C5402e](https://etherscan.io/address/0x28526bb33d7230e65e735db64296413731c5402e)                     | Yes         |
| crYVCurve-IB                    | [0x45406ba53bB84Cd32A58e7098a2D4D1b11B107F6](https://etherscan.io/address/0x45406ba53bb84cd32a58e7098a2d4d1b11b107f6)                     | No          |
| crYVCurve-sETH                  | [0x6d1B9e01aF17Dd08d6DEc08E210dfD5984FF1C20](https://etherscan.io/address/0x6d1b9e01af17dd08d6dec08e210dfd5984ff1c20)                     | No          |
| crYVCurve-stETH                 | [0x1F9b4756B008106C806c7E64322d7eD3B72cB284](https://etherscan.io/address/0x1f9b4756b008106c806c7e64322d7ed3b72cb284)                     | No          |
| crARMOR                         | [0xab10586C918612BA440482db77549d26B7ABF8f7](https://etherscan.io/address/0xab10586C918612BA440482db77549d26B7ABF8f7)                     | Yes         |
| crARNXM                         | [0xdFFf11DFe6436e42a17B86e7F419Ac8292990393](https://etherscan.io/address/0xdFFf11DFe6436e42a17B86e7F419Ac8292990393)                     | Yes         |
| crMLN                           | [0xDbb5e3081dEf4b6cdD8864aC2aeDA4cBf778feCf](https://etherscan.io/address/0xDbb5e3081dEf4b6cdD8864aC2aeDA4cBf778feCf)                     | Yes         |
| crVSP                           | [0x71cEFCd324B732d4E058AfAcBA040d908c441847](https://etherscan.io/address/0x71cEFCd324B732d4E058AfAcBA040d908c441847)                     | Yes         |
| crVVSP                          | [0x1A122348B73B58eA39F822A89e6ec67950c2bBD0](https://etherscan.io/address/0x1A122348B73B58eA39F822A89e6ec67950c2bBD0)                     | Yes         |
| crGNO                           | [0x523EFFC8bFEfC2948211A05A905F761CBA5E8e9E](https://etherscan.io/address/0x523EFFC8bFEfC2948211A05A905F761CBA5E8e9E)                     | Yes         |
| crYVWETH                        | [0x4202D97E00B9189936EdF37f8D01cfF88BDd81d4](https://etherscan.io/address/0x4202D97E00B9189936EdF37f8D01cfF88BDd81d4)                     | No          |
| crYUSD                          | [0x4BAa77013ccD6705ab0522853cB0E9d453579Dd4](https://etherscan.io/address/0x4BAa77013ccD6705ab0522853cB0E9d453579Dd4)                     | No          |
| crSWAP                          | [0x98E329eB5aae2125af273102f3440DE19094b77c](https://etherscan.io/address/0x98E329eB5aae2125af273102f3440DE19094b77c)                     | Yes         |
| crFEI                           | [0x8C3B7a4320ba70f8239F83770c4015B5bc4e6F91](https://etherscan.io/address/0x8C3B7a4320ba70f8239F83770c4015B5bc4e6F91)                     | Yes         |
| crWOO                           | [0xE585c76573D7593ABF21537B607091F76c996E73](https://etherscan.io/address/0xE585c76573D7593ABF21537B607091F76c996E73)                     | Yes         |
| crBNT                           | [0x81E346729723C4D15d0FB1c5679b9f2926Ff13C6](https://etherscan.io/address/0x81E346729723C4D15d0FB1c5679b9f2926Ff13C6)                     | Yes         |
| crEURT                          | [0xC581b735A1688071A1746c968e0798D642EDE491](https://etherscan.io/address/0xC581b735A1688071A1746c968e0798D642EDE491)                     | Yes         |
| crPAX                           | [0xD7394428536F63d5659cc869EF69d10f9E66314B](https://etherscan.io/address/0xD7394428536F63d5659cc869EF69d10f9E66314B)                     | Yes         |
| crPAXG                          | [0x1241B10E7EA55b22f5b2d007e8fECDF73DCff999](https://etherscan.io/address/0x1241B10E7EA55b22f5b2d007e8fECDF73DCff999)                     | Yes         |
| crIBBTC                         | [0x2A867fd776B83e1bd4e13C6611AFd2F6af07EA6D](https://etherscan.io/address/0x2A867fd776B83e1bd4e13C6611AFd2F6af07EA6D)                     | Yes         |
| crLON                           | [0x250Fb308199FE8C5220509C1bf83D21d60b7f74A](https://etherscan.io/address/0x250Fb308199FE8C5220509C1bf83D21d60b7f74A)                     | Yes         |
| crYGG                           | [0x4112a717edD051F77d834A6703a1eF5e3d73387F](https://etherscan.io/address/0x4112a717edD051F77d834A6703a1eF5e3d73387F)                     | Yes         |
| crAXS                           | [0xF04ce2e71D32D789a259428ddcD02D3C9F97fb4E](https://etherscan.io/address/0xF04ce2e71D32D789a259428ddcD02D3C9F97fb4E)                     | Yes         |
| crSAND                          | [0x89e42987c39f72e2EAd95a8a5bC92114323d5828](https://etherscan.io/address/0x89e42987c39f72e2EAd95a8a5bC92114323d5828)                     | Yes         |
| crMANA                          | [0x58DA9c9fC3eb30AbBcbBAb5DDabb1E6e2eF3d2EF](https://etherscan.io/address/0x58DA9c9fC3eb30AbBcbBAb5DDabb1E6e2eF3d2EF)                     | Yes         |

### Protocol Address

| Contract              | Address                                                                                                               |
| --------------------- | --------------------------------------------------------------------------------------------------------------------- |
| Comptroller           | [0x3d5BC3c8d13dcB8bF317092d84783c2697AE9258](https://etherscan.io/address/0x3d5BC3c8d13dcB8bF317092d84783c2697AE9258) |
| Lens                  | [0xd400e22dcA840CC7E342DF1d9945684bBd587659](https://etherscan.io/address/0xd400e22dcA840CC7E342DF1d9945684bBd587659) |
| ~~Lens (deprecated)~~ | [0x69F2b8D8846e3dcd94C09e4f3CBB8d2ba8D9423f](https://etherscan.io/address/0x69F2b8D8846e3dcd94C09e4f3CBB8d2ba8D9423f) |
| FlashloanLender       | [0xa8682Cfd2B6c714d2190fA38863d545c7a0b73D5](https://etherscan.io/address/0xa8682Cfd2B6c714d2190fA38863d545c7a0b73D5) |

{% hint style="info" %}
Searching for tokens on BSC? We put them [here](https://docs.cream.finance/v/binance-smart-chain/lending/lending-contract-address)
{% endhint %}


# Collateral Factor & Reserve Factor

The reserve factor is the percentage of Fee paid to CREAM protocol. If the reserve factor is 10, then that would imply that 10% of the interest paid on the asset is for CREAM.

In the other hand, the collateral factor is the maximum you can borrow on a particular asset.

Example: The collateral factor for ETH is 75%, if the price of ETH is considered as $1000, the max you will be able to borrow in other assets is worth $750

| Token           | Collateral factor | Reserve factor |
| --------------- | ----------------- | -------------- |
| ETH             | 75%               | 25%            |
| USDT            | 75%               | 20%            |
| USDC            | 75%               | 15%            |
| YFI             | 75%               | 40%            |
| COMP            | 75%               | 40%            |
| BAL             | 60%               | 40%            |
| YCRV            | 75%               | 10%            |
| CREAM           | 75%               | 40%            |
| LINK            | 60%               | 40%            |
| ~~LEND~~        | ~~50%~~           | ~~40%~~        |
| CRV             | 60%               | 40%            |
| renBTC          | 65%               | 30%            |
| BUSD            | 75%               | 10%            |
| MTA             | 45%               | 40%            |
| yyCRV           | 75%               | 20%            |
| SUSHI           | 65%               | 40%            |
| FTT             | 45%               | 40%            |
| yETH            | 75%               | 40%            |
| SRM             | 50%               | 40%            |
| UNI             | 65%               | 40%            |
| wNXM            | 50%               | 40%            |
| SWAG            | 0%                | 50%            |
| CEL             | 45%               | 40%            |
| DPI             | 60%               | 45%            |
| BBTC            | 45%               | 30%            |
| AAVE            | 60%               | 40%            |
| BOND            | 45%               | 40%            |
| KP3R            | 45%               | 40%            |
| HBTC            | 45%               | 30%            |
| HFIL            | 0%                | 40%            |
| CRETH2          | 60%               | 40%            |
| HUSD            | 0%                | 20%            |
| DAI             | 75%               | 20%            |
| HEGIC           | 25%               | 40%            |
| ESD             | 60%               | 50%            |
| COVER           | 45%               | 100%           |
| 1INCH           | 45%               | 40%            |
| OMG             | 45%               | 40%            |
| UNI-V2-WBTC-ETH | 75%               | 40%            |
| UNI-V2-ETH-USDT | 70%               | 40%            |
| UNI-V2-USDC-ETH | 75%               | 40%            |
| UNI-V2-DAI-ETH  | 75%               | 40%            |
| xSUSHI          | 60%               | 40%            |
| SLP-WBTC-ETH    | 75%               | 40%            |
| SLP-DAI-ETH     | 75%               | 40%            |
| SLP-USDC-ETH    | 75%               | 40%            |
| SLP-ETH-USDT    | 70%               | 40%            |
| SLP-SUSHI-ETH   | 75%               | 40%            |
| SLP-YFI-ETH     | 60%               | 40%            |
| WBTC            | 75%               | 25%            |
| SNX             | 45%               | 40%            |
| sUSD            | 45%               | 20%            |
| PICKLE          | 45%               | 40%            |
| AKRO            | 25%               | 40%            |
| bBADGER         | 60%               | 40%            |
| OGN             | 45%               | 40%            |
| AMP             | 45%               | 45%            |
| FRAX            | 60%               | 50%            |
| ALPHA           | 60%               | 40%            |
| UST             | 45%               | 20%            |
| FTM             | 25%               | 40%            |
| RUNE            | 60%               | 40%            |
| PERP            | 45%               | 40%            |
| RAI             | 45%               | 40%            |
| OCEAN           | 45%               | 40%            |
| RARI            | 25%               | 40%            |
| SFI             | 25%               | 40%            |
| yvCurve-IB      | 75%               | 40%            |
| yvCurve-sETH    | 60%               | 40%            |
| yvCurve-stETH   | 60%               | 40%            |
| ARMOR           | 0%                | 40%            |
| arNXM           | 0%                | 40%            |
| MLN             | 25%               | 40%            |
| VSP             | 25%               | 40%            |
| VVSP            | 25%               | 40%            |
| GNO             | 25%               | 40%            |
| yvWETH          | 75%               | 20%            |
| yUSD            | 75%               | 20%            |
| SWAP            | 25%               | 40%            |
| FEI             | 25%               | 20%            |
| WOO             | 25%               | 40%            |
| BNT             | 40%               | 40%            |
| EURT            | 60%               | 20%            |
| PAX             | 75%               | 10%            |
| PAXG            | 60%               | 40%            |
| ibBTC           | 45%               | 30%            |
| LON             | 45%               | 40%            |
| YGG             | 45%               | 40%            |
| AXS             | 45%               | 40%            |
| SAND            | 45%               | 40%            |
| MANA            | 45%               | 40%            |

{% hint style="info" %}
Searching for tokens on BSC? We put them [here](https://docs.cream.finance/v/binance-smart-chain/lending/collateral-factor-and-reserve-factor)
{% endhint %}


# Interest Rate Model

## APY Function

**Borrow APY**

\= \[1 + Base + Multiplier \* min(UtilizationRate, Kink) + max(JumpMultiplier \* UtilizationRate - Kink, 0)] ^ 2102400 - 1

**Supply APY**

\= Distribute (Interest Paid by Borrowers Per Block - Reserve) to all suppliers, and convert it into APY

\= Distribute \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) to all suppliers, and convert it into APY

\= {\[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply}, and convert it into APY

\= {1 + \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply} ^ BlocksPerYear - 1

\= **{1+\[(1+Borrow APY)^(1/BlocksPerYear)-1]\*(1-Reserve Factor)\*Utilization Rate}^BlocksPerYear-1**

{% hint style="info" %}
BlocksPerYear = 2,102,400 (15 sec per block)
{% endhint %}

{% hint style="info" %}
Find other variables in [Markets](https://app.cream.finance/markets/v1)
{% endhint %}

## Major

![](/files/-MecNL8oZiS-F0r-8wne)

| Parameter        | Value                                                                                                                                                                   |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Category         | Major                                                                                                                                                                   |
| Tokens           | <p>ETH, WBTC, renBTC, BBTC, HBTC, WBTC, yvWETH, ibBTC</p><p><br>UNI-V2-WBTC-ETH, UNI-V2-ETH-USDT, UNI-V2-DAI-ETH, UNI-V2-USDC-ETH</p><p>yvCurve-sETH, yvCurve-stETH</p> |
| Base             | 0%                                                                                                                                                                      |
| Multiplier       | 15%                                                                                                                                                                     |
| JumpMultiplier   | 200%                                                                                                                                                                    |
| Kink 1           | 80%                                                                                                                                                                     |
| Kink 2           | 90%                                                                                                                                                                     |
| Contract Address | [0x812C0b2a2A0A74f6f6ed620Fbd2B67Fec7DB2190](https://etherscan.io/address/0x812C0b2a2A0A74f6f6ed620Fbd2B67Fec7DB2190)                                                   |

## Stable

![](/files/-Mecvadd04MaeVRFVLaI)

| Parameter        | Value                                                                                                                 |
| ---------------- | --------------------------------------------------------------------------------------------------------------------- |
| Category         | Stable                                                                                                                |
| Tokens           | USDT, USDC, DAI, BUSD, yCRV, HUSD, sUSD, FRAX, UST, yvCurve-IB, yUSD, FEI, PAX, EURT                                  |
| Base             | 0%                                                                                                                    |
| Multiplier       | 18%                                                                                                                   |
| JumpMultiplier   | 800%                                                                                                                  |
| Kink 1           | 80%                                                                                                                   |
| Kink 2           | 90%                                                                                                                   |
| Contract Address | [0xE7dB46742c51a7bd64b8D83b8201239D759786bE](https://etherscan.io/address/0xE7dB46742c51a7bd64b8D83b8201239D759786bE) |

## Governance + Seed

![](/files/-MfHVQTTiisDMldTfQAm)

| Parameter        | Value                                                                                                                                                                                                                                                                                                          |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Category         | Governance & Seeds                                                                                                                                                                                                                                                                                             |
| Tokens           | COMP, BAL, YFI, LINK, CREAM, AAVE, CRV, MTA, SRM, FTT, UNI, SUSHI, wNXM, CEL, DPI, BOND, KP3R, HFIL, HEGIC, ESD, COVER, 1INCH, OMG, xSUSHI, SNX, PICKLE, AKRO, bBADGER, OGN, ALPHA, FTM, RUNE, PERP, RAI, OCEAN, RARI, SFI, ARMOR, arNXM, MLN, VSP, VVSP, GNO, SWAP, WOO, BNT, PAXG, LON, YGG, AXS, SAND, MANA |
| Base             | 0%                                                                                                                                                                                                                                                                                                             |
| Multiplier       | 20%                                                                                                                                                                                                                                                                                                            |
| JumpMultiplier   | 500%                                                                                                                                                                                                                                                                                                           |
| Kink 1           | 70%                                                                                                                                                                                                                                                                                                            |
| Kink 2           | 80%                                                                                                                                                                                                                                                                                                            |
| Contract Address | [0xbadaC56c9aca307079e8B8FC699987AAc89813ee](https://etherscan.io/address/0xbadaC56c9aca307079e8B8FC699987AAc89813ee)                                                                                                                                                                                          |

## SushiSwap Liquidity Provider token (SLP)

![](/files/-MURb37lksX0H2X2HZI-)

| Parameter        | Value                                                                                                                   |
| ---------------- | ----------------------------------------------------------------------------------------------------------------------- |
| Category         | SLP                                                                                                                     |
| Tokens           | <p>SLP-WBTC-ETH,</p><p>SLP-DAI-ETH,</p><p>SLP-USDC-ETH,</p><p>SLP-ETH-USDT,</p><p>SLP-SUSHI-ETH,</p><p>SLP-YFI-ETH,</p> |
| Base             | 10%                                                                                                                     |
| Multiplier       | 55%                                                                                                                     |
| JumpMultiplier   | 180%                                                                                                                    |
| Kink             | 50%                                                                                                                     |
| Contract Address | [0x66FB6cf0Af2Cb8f967F2439Ea855387cB431Fed8](https://etherscan.io/address/0x66FB6cf0Af2Cb8f967F2439Ea855387cB431Fed8)   |

### AMP (exploit)

| Parameter        | Value                                                                                                                 |
| ---------------- | --------------------------------------------------------------------------------------------------------------------- |
| Category         | AMP                                                                                                                   |
| Tokens           | AMP                                                                                                                   |
| Base             | 0%                                                                                                                    |
| Multiplier       | 0%                                                                                                                    |
| JumpMultiplier   | 0%                                                                                                                    |
| Kink             | 100%                                                                                                                  |
| Contract Address | [0x73D06034Ae98E2Af4eA4E0fA0320cdEf1561f493](https://etherscan.io/address/0x73D06034Ae98E2Af4eA4E0fA0320cdEf1561f493) |


# Price Oracle

How C.R.E.A.M. Finance get token price

{% hint style="info" %}
We have Chainlink as our main price oracle
{% endhint %}

### Chainlink

For the following tokens, we use price feed provided by Chainlink:

ETH / BTC / USDT / USDC / YFI / COMP / BAL / LINK / CRV / BUSD / UNI / wNXM / AAVE / DAI / 1INCH / CEL / COVER / FTT / HEGIC / KP3R / MTA / OMG / SRM / SNX / sUSD / SUSHI / CREAM / DPI / UST / FTM / RUNE / PERP / OCEAN / RAI / RARI / HUSD / AKRO / AMP / SFI / MLN / VSP / GNO / SWAP / FEI / WOO / BNT / PAX / PAXG / LON / YGG / AXS / SAND / MANA / FRAX

For the following BTC-pegged tokens, we use BTC price instead:

* WBTC
* renBTC
* BBTC
* HBTC
* ibBTC

### LP Tokens

For SushiSwap LP tokens / Uniswap LP tokens, we use [Fair LP Pricing](https://blog.alphafinance.io/fair-lp-token-pricing/) introduced by [Alpha Finance](https://alphafinance.io/).

Price for underlying asset is retrieved from Chainlink price feed.

See [source code](https://github.com/CreamFi/compound-protocol/blob/master/contracts/PriceOracleProxy.sol#L288) for the implementation.

### Contract

For the following tokens, we fetch price from contracts directly:

yUSD (v1) / yETH / yCRV / xSushi / bBadger / yvCurve-IB / yvCurve-sETH / yvCurve-stETH / VVSP / yvWETH (v2) / yUSD (v2)

### C.R.E.A.M. Finance

For the other tokens, we use our own price oracle to get the price.

### Price Oracle Address

| Contract                          | Address                                                                                                                    |
| --------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| v1PriceOracle                     | [0x9A975fe93CFf8b0387b958adB9082B0ed0659AD2](https://etherscan.io/address/0x9a975fe93cff8b0387b958adb9082b0ed0659ad2)      |
| PriceOracleProxy                  | [0x338EEE1F7B89CE6272f302bDC4b952C13b221f1d](https://etherscan.io/address/0x338EEE1F7B89CE6272f302bDC4b952C13b221f1d)      |
| ~~PriceOracleProxy (deprecated)~~ | [0x647A539282e8456A64DFE28923B7999b66091488](https://etherscan.io/address/0x647a539282e8456a64dfe28923b7999b66091488#code) |
| ~~PriceOracleProxy (deprecated)~~ | [0x940ce2a25b0BA48d213AcC13AbC21d9Fee2Ed6Dd](https://etherscan.io/address/0x940ce2a25b0BA48d213AcC13AbC21d9Fee2Ed6Dd)      |
| ~~PriceOracleProxy (deprecated)~~ | [0x9a5135157a74b753d11197a821e7f199f5b2fed0](https://etherscan.io/address/0x9a5135157a74b753d11197a821e7f199f5b2fed0)      |


# iceCREAM Tokenomics

Currently Phase 1

### Summary

iceCREAM turns CREAM into a productive asset. It will have the same three main use cases as CRV - voting, staking, and boosting.

### How iceCREAM works:

* Lock CREAM between 1 week to 4 years to receive iceCREAM.
* iceCREAM is non-transferable and non-tradeable.
* 50%+ of Protocol Reserves going forward will be distributed as ycrvIB tokens to iceCREAM stakers.
* 1 iceCREAM = 1 vote in the future of C.R.E.A.M. Finance governance.
* \[phase 2] iceCREAM staked translates to voting power which can be used to determine allocation of CREAM token liquidity mining by chain and market (e.g.- Ethereum, ETH).

If liquidity mining is enabled on borrow markets (more on this as part of phase 2)

* Once you vote, your vote will remain directed at pools unless modified.
* Users will have the ability to change their votes every week and will be able to allocate their iceCREAM to different pools.
* iceCREAM allows the user to control CREAM emissions across all C.R.E.A.M. markets in the future.
* iceCREAM increases emission from a base factor of 0.4 to a max of 2.5x, the more iceCREAM you stake, the more CREAM you earn.

### Minting iceCREAM

Assuming 1000 CREAM locked:

| minted | locked  |
| ------ | ------- |
| 1000   | 4 years |
| 250    | 1 year  |
| 127.4  | 6 month |
| 63.7   | 3 month |
| 21.23  | 1 month |
| 4.79   | 1 week  |

iceCREAM decays linearly over time. At the unlock date of CREAM, your iceCREAM balance would be 0.

### Long-Term Staking CREAM can vote

For the early supporters of C.R.E.A.M. Finance who locked their CREAM in the long-term staking program, these token holders should be entitled to governance alongside iceCREAM holders, but will not be eligible for emission boosts.

### References

* [iceCREAM staking](https://app.cream.finance/stake/iceCream)
* [iceCREAM proposal](https://vote.cream.finance/#/cream-finance.eth/proposal/QmdS9VhXsBE8wRdLMqKCmYL8XfXcqNth1jgphhRxMhnxo8)
* [oSUSHI](https://forum.sushi.com/t/sushinomics-introducing-osushi/4055)
* [veToken](https://ve-token-voting.vercel.app/)


# iceCREAM Mechanism Phase 1

![](/files/-MgtTG2dDoQkQMjKmTtX)

## Components

### Lending Protocol

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>

{% content-ref url="/pages/-MKKoTGL9RMFErxbppzr" %}
[Lending Contract Address](/lending/lending-contract-address)
{% endcontent-ref %}

{% content-ref url="/pages/-MO9jL-Ld4PA89E75S34" %}
[Broken mention](broken://pages/-MO9jL-Ld4PA89E75S34)
{% endcontent-ref %}

### Reserve Manager

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](https://etherscan.io/address/0x0C5Bf19618A8FCDdb132d82BC6c5ea736A1beAED)

### Burners

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.

![](/files/-MgtTM4BKq4JJcSi2ybp)

Source: <https://github.com/CreamFi/curve-dao-contracts>

### Fee Distributor & Voting Escrow

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](https://etherscan.io/address/0x0Ca0f068edad122f09a39f99E7E89E705d6f6Ace)

Voting Escrow: [0x3986425b96F11972d31C78ff340908832C5c0043](https://etherscan.io/address/0x3986425b96F11972d31C78ff340908832C5c0043)


# iceCREAM Mechanism Phase 2

### Gauge Voting

(to be discussed)


# crTokens

Shout out to our community member Ivan Flores for the hard work and contribution

## Introduction

Each asset supported by the C.R.E.A.M. Protocol is integrated through a crToken contract, which is an [EIP-20](https://eips.ethereum.org/EIPS/eip-20) compliant representation of balances supplied to the protocol. By minting crTokens, users (1) earn interest through the crToken's exchange rate, which increases in value relative to the underlying asset, and (2) gain the ability to use crTokens as collateral.

crTokens are the primary means of interacting with the C.R.E.A.M. Protocol; when a user mints, redeems, borrows, repays a borrow, liquidates a borrow, or transfers crTokens, she will do so using the crToken contract.

There are currently two types of crTokens: CErc20 and CEther. Though both types expose the EIP-20 interface, CErc20 wraps an underlying ERC-20 asset, while CEther simply wraps Ether itself. As such, the core functions which involve transferring an asset into the protocol have slightly different interfaces depending on the type, each of which is shown below.

## Mint

The mint function transfers an asset into the protocol, which begins accumulating interest based on the current Supply Rate for the asset. The user receives a quantity of crTokens equal to the underlying tokens supplied, divided by the current [Exchange Rate](https://docs.cream.finance/api/crtokens#exchange-rate).

### CErc20

```jsx
function mint(uint mintAmount) returns (uint)
```

`msg.sender:` The account which shall supply the asset, and own the minted cTokens.

`mintAmount`: The amount of the asset to be supplied, in units of the underlying asset.

`RETURN:` 0 on success, otherwise an Error code

Before supplying an asset, users must first approve the crToken to access their token balance.

### CEther

```jsx
function mint() payable
```

`msg.valuepayable:` The amount of ether to be supplied, in wei.

`msg.sender:` The account which shall supply the ether, and own the minted cTokens.

`RETURN:` No return, reverts on error.

### Solidity

```jsx
Erc20 underlying = Erc20(0xToken...);     // get a handle for the underlying asset contract
CErc20 crToken = CErc20(0x3FDA...);        // get a handle for the corresponding cToken contract
underlying.approve(address(cToken), 100); // approve the transfer
assert(crToken.mint(100) == 0);            // mint the cTokens and assert there is no error
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDB...);
await crToken.methods.mint().send({from: myAccount, value: 50});
```

## **Redeem**

The redeem function converts a specified quantity of crTokens into the underlying asset, and returns them to the user. The amount of underlying tokens received is equal to the quantity of crTokens redeemed, multiplied by the current [Exchange Rate](https://docs.cream.finance/api/crtokens#exchange-rate). The amount redeemed must be less than the user's Account Liquidity and the market's available liquidity.

### CErc20 / CEther

```jsx
function redeem(uint redeemTokens) returns (uint)
```

`msg.sender:` The account to which redeemed funds shall be transferred.

`redeemTokens:` The number of cTokens to be redeemed.

`RETURN:` 0 on success, otherwise an Error code

### **Solidity**

```jsx
CEther crToken = CEther(0x3FDB...);
require(crToken.redeem(7) == 0, "something went wrong");
```

### **Web3 1.0**

```jsx
const crToken = CErc20.at(0x3FDA...);
crToken.methods.redeem(1).send({from: ...});
```

## **Redeem Underlying**

The redeem underlying function converts crTokens into a specified quantity of the underlying asset, and returns them to the user. The amount of crTokens redeemed is equal to the quantity of underlying tokens received, divided by the current [Exchange Rate](https://docs.cream.finance/api/crtokens#exchange-rate). The amount redeemed must be less than the user's Account Liquidity and the market's available liquidity.

### CErc20 / CEther

```jsx
function redeemUnderlying(uint redeemAmount) returns (uint)
```

### Solidity

```jsx
CEther crToken = CEther(0x3FDB...);
require(crToken.redeemUnderlying(50) == 0, "something went wrong");
```

### Web3 1.0

```jsx
const crToken = CErc20.at(0x3FDA...);
crToken.methods.redeemUnderlying(10).send({from: ...});
```

## **Borrow**

The borrow function transfers an asset from the protocol to the user, and creates a borrow balance which begins accumulating interest based on the Borrow Rate for the asset. The amount borrowed must be less than the user's Account Liquidity and the market's available liquidity.

To borrow Ether, the borrower must be 'payable' (solidity).

### **CErc20 / CEther**

```jsx
function borrow(uint borrowAmount) returns (uint)
```

`msg.sender:` The account to which redeemed funds shall be transferred.

`borrowAmount:` The number of crTokens to be borrowed

`RETURN:` 0 on success, otherwise an Error code

### Solidity

```jsx
CEther crToken = CEther(0x3FDB...);
require(crToken.redeemUnderlying(50) == 0, "got collateral?");
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDA...);
await crToken.methods.borrow(50).send({from: 0xMyAccount});
```

## **Repay Borrow**

The repay function transfers an asset into the protocol, reducing the user's borrow balance.

### **CErc20**

```jsx
function repayBorrow(uint borrowAmount) returns (uint)
```

`msg.sender:` The account to which borrowed the asset, and shall repay the borrow.

`borrowAmount:` The amount of the underlying borrowed asset to be repaid. A value of -1 (i.e. 2^256 - 1) can be used to repay the full amount.

`RETURN:` 0 on success, otherwise an Error code

Before repaying an asset, users must first approve the crToken to access their token balance.

### CEther

```jsx
function repayBorrow() payable
```

`msg.value` payable: The amount of ether to be repaid, in wei.

`msg.sender:` The account which borrowed the asset, and shall repay the borrow

`RETURN:` 0 on success, otherwise an Error code

### Solidity

```jsx
CEther crToken = CEther(0x3FDB...);
require(crToken.repayBorrow.value(100() == 0, "transfer approved?");const crToken = CErc20.at(0x3FDA...);
crToken.methods.repayBorrow(10000).send({from: ...});
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDA...);
await crToken.methods.borrow(50).send({from: 0xMyAccount});
```

## **Repay Borrow Behalf**

The repay function transfers an asset into the protocol, reducing the target user's borrow balance.

### CErc20

```jsx
function repayBorrowBehalf(address borrower, uint repayAmount) returns (uint)
```

`msg.sender:` The account to which shall repay the borrow

`borrowAmount:` The account which borrowed the asset to be repaid.

`repayAmount`: The amount of the underlying borrowed asset to be repaid. A value of -1 (i.e. 2^256 - 1) can be used to repay the full amount.

`RETURN:` 0 on success, otherwise an Error code

Before repaying an asset, users must first approve the crToken to access their token balance.

### **CEther**

```jsx
function repayBorrowBehalf(address borrower) payable
```

`msg.valuepayable:` The amount of ether to be repaid, in wei.

`msg.sender:` The account which shall repay the borrow.

`borrower:` The account which borrowed the asset to be repaid.

`RETURN:` No return, reverts on error.

### **Solidity**

```jsx
CEther crToken = CEther(0x3FDB...);
require(crToken.repayBorrowBehalf.value(100)(0xBorrower) == 0, "transfer approved?");
```

### **Web3 1.0**

```jsx
const crToken = CErc20.at(0x3FDA...);
await crToken.methods.repayBorrowBehalf(0xBorrower, 10000).send({from: 0xPayer});
```

## **Liquidate Borrow**

A user who has negative account liquidity is subject to liquidation by other users of the protocol to return his/her account liquidity back to positive (i.e. above the collateral requirement). When a liquidation occurs, a liquidator may repay some or all of an outstanding borrow on behalf of a borrower and in return receive a discounted amount of collateral held by the borrower; this discount is defined as the liquidation incentive.

A liquidator may close up to a certain fixed percentage (i.e. close factor) of any individual outstanding borrow of the underwater account. When collateral is seized, the liquidator is transferred crTokens which they may redeem the same as if they had supplied the asset themselves. Users must approve each crToken contract before calling liquidate (i.e. on the borrowed asset which they are repaying), as they are transferring funds into the contract.

### **CErc20**

```jsx
function liquidateBorrow(address borrower, uint amount, address collateral) returns (uint)
```

`msg.sender:` The account which shall liquidate the borrower by repaying their debt and seizing their collateral.

`borrower:` The account with negative account liquidity that shall be liquidated.

`repayAmount:` The amount of the borrowed asset to be repaid and converted into collateral, specified in units of the underlying borrowed asset.

`cTokenCollateral:` The address of the crToken currently held as collateral by a borrower, that the liquidator shall seize.

`RETURN:` 0 on success, otherwise an Error code

Before supplying an asset, users must first approve the crToken to access their token balance.

### CEther

```jsx
function liquidateBorrow(address borrower, address crTokenCollateral) payable
```

`msg.valuepayable:` The amount of ether to be repaid and converted into collateral, in wei.

`msg.sender:` The account which shall liquidate the borrower by repaying their debt and seizing their collateral.

`borrower:` The account with negative [account liquidity](https://compound.finance/docs/comptroller#account-liquidity) that shall be liquidated.

`crTokenCollateral:` The address of the crToken currently held as collateral by a borrower, that the liquidator shall seize.

`RETURN:` No return, reverts on error.

### Solidity

```jsx
CEther crToken = CEther(0x3FDB...);
CErc20 crTokenCollateral = CErc20(0x3FDA...);
require(crToken.liquidateBorrow.value(100)(0xBorrower, crTokenCollateral) == 0, "borrower underwater??");
```

### **Web3 1.0**

```jsx
const crToken = CErc20.at(0x3FDA...);
const crTokenCollateral = CEther.at(0x3FDB...);
await crToken.methods.liquidateBorrow(0xBorrower, 33, crTokenCollateral).send({from: 0xLiquidator});
```

## **Exchange Rate**

Each crToken is convertible into an ever increasing quantity of the underlying asset, as interest accrues in the market. The exchange rate between a crToken and the underlying asset is equal to:

```jsx
exchangeRate = (getCash() + totalBorrows() - totalReserves()) / totalSupply()
```

### CErc20/CEther

```jsx
function exchangeRateCurrent() returns (uint)
```

### Solidity

```jsx
CErc20 crToken = CrToken(0x3FDA...);
uint exchangeRateMantissa = crToken.exchangeRateCurrent();
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDB...);
const exchangeRate = (await crToken.methods.exchangeRateCurrent().call()) / 1e18;
```

Tip: note the use of call vs. send to invoke the function from off-chain without incurring gas costs.

## Get Cash

Cash is the amount of underlying balance owned by this crToken contract. One may query the total amount of cash currently available to this market.

### CErc20/CEther

```jsx
function getCash() returns (unit)
```

`RETURN:` The quantity of underlying asset owned by the contract.

### Solidity

```jsx
CErc20 crToken = CrToken(0x3FDA...);
uint cash = crToken.getCash();
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDB...);
const cash = (await crToken.methods.getCash().call());
```

## Total Borrow

Total Borrows is the amount of underlying currently loaned out by the market, and the amount upon which interest is accumulated to suppliers of the market.

### CErc20/CEther

```jsx
function totalBorrowCurrent() returns (unit)
```

`RETURN:` The total amount of borrowed underlying, with interest.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint borrows = crToken.totalBorrowsCurrent();
```

### Web3 1.0

```jsx
crToken = CEther.at(0x3FDB...);
const borrows = (await crToken.methods.totalBorrowsCurrent().call());
```

## Borrow Balance

A user who borrows assets from the protocol is subject to accumulated interest based on the current borrow rate. Interest is accumulated every block and integrations may use this function to obtain the current value of a user's borrow balance with interest.

### CErc20/CEther

```jsx
function borrowBalanceCurrent(addressacount) returns (unit)
```

`RETURN:` The total amount of borrowed underlying, with interest.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint borrows = crToken.borrowBalanceCurrent(msg.caller);
```

### Web3 1.0

```jsx
crToken = CEther.at(0x3FDB...);
const borrows = await crToken.methods.totalBorrowsCurrent(account).call();
```

## Borrow Rate

At any point in time one may query the contract to get the current borrow rate per block.

### CErc20/CEther

```jsx
function borrowRatePerBlock() returns (unit)
```

`RETURN:` The total amount of borrowed underlying, with interest.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint borrowRateMantissa = crToken.borrowRatePerBlock();
```

### Web3 1.0

```jsx
crToken = CEther.at(0x3FDB...);
const borrowRate = (await crToken.methods.borrowRatePerBlock().call());
```

## Total Supply

Total Supply is the number of tokens currently in circulation in this crToken market. It is part of the EIP-20 interface of the crToken contract.

### CErc20/CEther

```jsx
function totalSupply() returns (unit)
```

`RETURN:` The total number of tokens in circulation for the market.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint tokens = crToken.totalSupply();
```

### Web3 1.0

```jsx
crToken = CEther.at(0x3FDB...);
const tokens = (await crToken.methods.totalSupply().call());
```

## Underlying Balance

The user's underlying balance, representing their assets in the protocol, is equal to the user's crToken balance multiplied by the Exchange Rate.

### CErc20/CEther

```jsx
function balanceOfUnderlying(address account) returns (unit)
```

`account:` The account to get the underlying balance of.

`RETURN:` The amount of underlying currently owned by the account.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint tokens = crToken.balanceOfUnderlying(msg.caller);
```

### Web3 1.0

```jsx
crToken = CEther.at(0x3FDB...);
const tokens = await crToken.methods.balanceOfUnderlying(account).call();
```

## Supply Rate

At any point in time one may query the contract to get the current supply rate per block. The supply rate is derived from the borrow rate, reserve factor and the amount of total borrows.

### CErc20/CEther

```jsx
function supplyRatePerBlock() returns (unit)
```

`RETURN:` The current supply rate as an unsigned integer, scaled by 1e18.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint supplyRateMantissa = crToken.supplyRatePerBlock();
```

### Web3 1.0

```jsx
const cToken = CEther.at(0x3FDB...);
const supplyRate = (await cToken.methods.supplyRatePerBlock().call()) / 1e18;
```

## Total Reserves

Reserves are an accounting entry in each crToken contract that represents a portion of historical interest set aside as cash which can be withdrawn or transferred through the protocol's governance. A small portion of borrower interest accrues into the protocol, determined by the reserve factor.

### CErc20/CEther

```jsx
function totalReserves() returns (unit)
```

`RETURN:` The total amount of reserves held in the market

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint reserves = crToken.totalReserves();
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDB...);
const reserves = (await crToken.methods.totalReserves().call());
```

## Reserve Factor

The reserve factor defines the portion of borrower interest that is converted into reserves.

### CErc20/CEther

```jsx
function reserveFactorMantissa() returns (unit)
```

`RETURN:` The current reserve factor as an unsigned itneger, scaled by 1e18.

### Solidity

```jsx
CErc20 crToken = CToken(0x3FDA...);
uint reserveFactorMantissa = crconst cToken = CEther.at(0x3FDB...);
const reserveFactor = (await cToken.methods.reserveFactorMantissa().call()) / 1e18;Token.reserveFactorMantissa();
```

### Web3 1.0

```jsx
const crToken = CEther.at(0x3FDB...);
const reserves = (await crToken.methods.totalReserves().call());
```


# Key Events

## crTokens

| Event                                                                                                                | Description                                |
| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------------ |
| Mint(address minter, uint mintAmount, uint mintTokens)                                                               | Emitted upon a successful Mint             |
| Redeem(address redeemer, uint redeemAmount, uint redeemTokens)                                                       | Emitted upon a successful Redeem           |
| Borrow(address borrower, uint borrowAmount, uint accountBorrows, uint totalBorrows)                                  | Emitted upon a successful Borrow           |
| RepayBorrow(address payer, address borrower, uint repayAmount, uint accountBorrows, uint totalBorrows)               | Emitted upon a successful Repay Borrow     |
| LiquidateBorrow(address liquidator, address borrower, uint repayAmount, address crTokenCollateral, uint seizeTokens) | Emitted upon a successful Liquidate Borrow |


# Error Codes

{% content-ref url="/pages/-MY0XDnLB\_rUBC1BEe8r" %}
[crTokens](/developer/error-codes/crtokens)
{% endcontent-ref %}

{% content-ref url="/pages/-MY0XGG2Cma3mfFx2OqY" %}
[Comptroller](/developer/error-codes/comptroller)
{% endcontent-ref %}


# crTokens

## Error codes

| Code | Name                              | Description                                                                                                                                                                  |
| ---- | --------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 0    | NO\_ERROR                         | Not a failure.                                                                                                                                                               |
| 1    | UNAUTHORIZED                      | The sender is not authorized to perform this action.                                                                                                                         |
| 2    | BAD\_INPUT                        | An invalid argument was supplied by the caller.                                                                                                                              |
| 3    | COMPTROLLER\_REJECTION            | The action would violate the comptroller policy.                                                                                                                             |
| 4    | COMPTROLLER\_CALCULATION\_ERROR   | An internal calculation has failed in the comptroller.                                                                                                                       |
| 5    | INTEREST\_RATE\_MODEL\_ERROR      | The interest rate model returned an invalid value.                                                                                                                           |
| 6    | INVALID\_ACCOUNT\_PAIR            | The specified combination of accounts is invalid.                                                                                                                            |
| 7    | INVALID\_CLOSE\_AMOUNT\_REQUESTED | The amount to liquidate is invalid.                                                                                                                                          |
| 8    | INVALID\_COLLATERAL\_FACTOR       | The collateral factor is invalid.                                                                                                                                            |
| 9    | MATH\_ERROR                       | A math calculation error occurred.                                                                                                                                           |
| 10   | MARKET\_NOT\_FRESH                | Interest has not been properly accrued.                                                                                                                                      |
| 11   | MARKET\_NOT\_LISTED               | The market is not currently listed by its comptroller.                                                                                                                       |
| 12   | TOKEN\_INSUFFICIENT\_ALLOWANCE    | ERC-20 contract must allow Money Market contract to call transferFrom. The current allowance is either 0 or less than the requested supply, repayBorrow or liquidate amount. |
| 13   | TOKEN\_INSUFFICIENT\_BALANCE      | Caller does not have sufficient balance in the ERC-20 contract to complete the desired action.                                                                               |
| 14   | TOKEN\_INSUFFICIENT\_CASH         | The market does not have a sufficient cash balance to complete the transaction. You may attempt this transaction again later.                                                |
| 15   | TOKEN\_TRANSFER\_IN\_FAILED       | Failure in ERC-20 when transfering token into the market.                                                                                                                    |
| 16   | TOKEN\_TRANSFER\_OUT\_FAILED      | Failure in ERC-20 when transfering token out of the market.                                                                                                                  |

## Failure Info

| Code | Name                                                              |
| ---- | ----------------------------------------------------------------- |
| 0    | ACCEPT\_ADMIN\_PENDING\_ADMIN\_CHECK                              |
| 1    | ACCRUE\_INTEREST\_ACCUMULATED\_INTEREST\_CALCULATION\_FAILED      |
| 2    | ACCRUE\_INTEREST\_BORROW\_RATE\_CALCULATION\_FAILED               |
| 3    | ACCRUE\_INTEREST\_NEW\_BORROW\_INDEX\_CALCULATION\_FAILED         |
| 4    | ACCRUE\_INTEREST\_NEW\_TOTAL\_BORROWS\_CALCULATION\_FAILED        |
| 5    | ACCRUE\_INTEREST\_NEW\_TOTAL\_RESERVES\_CALCULATION\_FAILED       |
| 6    | ACCRUE\_INTEREST\_SIMPLE\_INTEREST\_FACTOR\_CALCULATION\_FAILED   |
| 7    | BORROW\_ACCUMULATED\_BALANCE\_CALCULATION\_FAILED                 |
| 8    | BORROW\_ACCRUE\_INTEREST\_FAILED                                  |
| 9    | BORROW\_CASH\_NOT\_AVAILABLE                                      |
| 10   | BORROW\_FRESHNESS\_CHECK                                          |
| 11   | BORROW\_NEW\_TOTAL\_BALANCE\_CALCULATION\_FAILED                  |
| 12   | BORROW\_NEW\_ACCOUNT\_BORROW\_BALANCE\_CALCULATION\_FAILED        |
| 13   | BORROW\_MARKET\_NOT\_LISTED                                       |
| 14   | BORROW\_COMPTROLLER\_REJECTION                                    |
| 15   | LIQUIDATE\_ACCRUE\_BORROW\_INTEREST\_FAILED                       |
| 16   | LIQUIDATE\_ACCRUE\_COLLATERAL\_INTEREST\_FAILED                   |
| 17   | LIQUIDATE\_COLLATERAL\_FRESHNESS\_CHECK                           |
| 18   | LIQUIDATE\_COMPTROLLER\_REJECTION                                 |
| 19   | LIQUIDATE\_COMPTROLLER\_CALCULATE\_AMOUNT\_SEIZE\_FAILED          |
| 20   | LIQUIDATE\_CLOSE\_AMOUNT\_IS\_UINT\_MAX                           |
| 21   | LIQUIDATE\_CLOSE\_AMOUNT\_IS\_ZERO                                |
| 22   | LIQUIDATE\_FRESHNESS\_CHECK                                       |
| 23   | LIQUIDATE\_LIQUIDATOR\_IS\_BORROWER                               |
| 24   | LIQUIDATE\_REPAY\_BORROW\_FRESH\_FAILED                           |
| 25   | LIQUIDATE\_SEIZE\_BALANCE\_INCREMENT\_FAILED                      |
| 26   | LIQUIDATE\_SEIZE\_BALANCE\_DECREMENT\_FAILED                      |
| 27   | LIQUIDATE\_SEIZE\_COMPTROLLER\_REJECTION                          |
| 28   | LIQUIDATE\_SEIZE\_LIQUIDATOR\_IS\_BORROWER                        |
| 29   | LIQUIDATE\_SEIZE\_TOO\_MUCH                                       |
| 30   | MINT\_ACCRUE\_INTEREST\_FAILED                                    |
| 31   | MINT\_COMPTROLLER\_REJECTION                                      |
| 32   | MINT\_EXCHANGE\_CALCULATION\_FAILED                               |
| 33   | MINT\_EXCHANGE\_RATE\_READ\_FAILED                                |
| 34   | MINT\_FRESHNESS\_CHECK                                            |
| 35   | MINT\_NEW\_ACCOUNT\_BALANCE\_CALCULATION\_FAILED                  |
| 36   | MINT\_NEW\_TOTAL\_SUPPLY\_CALCULATION\_FAILED                     |
| 37   | MINT\_TRANSFER\_IN\_FAILED                                        |
| 38   | MINT\_TRANSFER\_IN\_NOT\_POSSIBLE                                 |
| 39   | REDEEM\_ACCRUE\_INTEREST\_FAILED                                  |
| 40   | REDEEM\_COMPTROLLER\_REJECTION                                    |
| 41   | REDEEM\_EXCHANGE\_TOKENS\_CALCULATION\_FAILED                     |
| 42   | REDEEM\_EXCHANGE\_AMOUNT\_CALCULATION\_FAILED                     |
| 43   | REDEEM\_EXCHANGE\_RATE\_READ\_FAILED                              |
| 44   | REDEEM\_FRESHNESS\_CHECK                                          |
| 45   | REDEEM\_NEW\_ACCOUNT\_BALANCE\_CALCULATION\_FAILED                |
| 46   | REDEEM\_NEW\_TOTAL\_SUPPLY\_CALCULATION\_FAILED                   |
| 47   | REDEEM\_TRANSFER\_OUT\_NOT\_POSSIBLE                              |
| 48   | REDUCE\_RESERVES\_ACCRUE\_INTEREST\_FAILED                        |
| 49   | REDUCE\_RESERVES\_ADMIN\_CHECK                                    |
| 50   | REDUCE\_RESERVES\_CASH\_NOT\_AVAILABLE                            |
| 51   | REDUCE\_RESERVES\_FRESH\_CHECK                                    |
| 52   | REDUCE\_RESERVES\_VALIDATION                                      |
| 53   | REPAY\_BEHALF\_ACCRUE\_INTEREST\_FAILED                           |
| 54   | REPAY\_BORROW\_ACCRUE\_INTEREST\_FAILED                           |
| 55   | REPAY\_BORROW\_ACCUMULATED\_BALANCE\_CALCULATION\_FAILED          |
| 56   | REPAY\_BORROW\_COMPTROLLER\_REJECTION                             |
| 57   | REPAY\_BORROW\_FRESHNESS\_CHECK                                   |
| 58   | REPAY\_BORROW\_NEW\_ACCOUNT\_BORROW\_BALANCE\_CALCULATION\_FAILED |
| 59   | REPAY\_BORROW\_NEW\_TOTAL\_BALANCE\_CALCULATION\_FAILED           |
| 60   | REPAY\_BORROW\_TRANSFER\_IN\_NOT\_POSSIBLE                        |
| 61   | SET\_COLLATERAL\_FACTOR\_OWNER\_CHECK                             |
| 62   | SET\_COLLATERAL\_FACTOR\_VALIDATION                               |
| 63   | SET\_COMPTROLLER\_OWNER\_CHECK                                    |
| 64   | SET\_INTEREST\_RATE\_MODEL\_ACCRUE\_INTEREST\_FAILED              |
| 65   | SET\_INTEREST\_RATE\_MODEL\_FRESH\_CHECK                          |
| 66   | SET\_INTEREST\_RATE\_MODEL\_OWNER\_CHECK                          |
| 67   | SET\_MAX\_ASSETS\_OWNER\_CHECK                                    |
| 68   | SET\_ORACLE\_MARKET\_NOT\_LISTED                                  |
| 69   | SET\_PENDING\_ADMIN\_OWNER\_CHECK                                 |
| 70   | SET\_RESERVE\_FACTOR\_ACCRUE\_INTEREST\_FAILED                    |
| 71   | SET\_RESERVE\_FACTOR\_ADMIN\_CHECK                                |
| 72   | SET\_RESERVE\_FACTOR\_FRESH\_CHECK                                |
| 73   | SET\_RESERVE\_FACTOR\_BOUNDS\_CHECK                               |
| 74   | TRANSFER\_COMPTROLLER\_REJECTION                                  |
| 75   | TRANSFER\_NOT\_ALLOWED                                            |
| 76   | TRANSFER\_NOT\_ENOUGH                                             |
| 77   | TRANSFER\_TOO\_MUCH                                               |


# Comptroller

## Error Codes

| Code | Name                            | Description                                                                          |
| ---- | ------------------------------- | ------------------------------------------------------------------------------------ |
| 0    | NO\_ERROR                       | Not a failure.                                                                       |
| 1    | UNAUTHORIZED                    | The sender is not authorized to perform this action.                                 |
| 2    | COMPTROLLER\_MISMATCH           | Liquidation cannot be performed in markets with different comptrollers.              |
| 3    | INSUFFICIENT\_SHORTFALL         | The account does not have sufficient shortfall to perform this action.               |
| 4    | INSUFFICIENT\_LIQUIDITY         | The account does not have sufficient liquidity to perform this action.               |
| 5    | INVALID\_CLOSE\_FACTOR          | The close factor is not valid.                                                       |
| 6    | INVALID\_COLLATERAL\_FACTOR     | The collateral factor is not valid.                                                  |
| 7    | INVALID\_LIQUIDATION\_INCENTIVE | The liquidation incentive is invalid.                                                |
| 8    | MARKET\_NOT\_ENTERED            | The market has not been entered by the account.                                      |
| 9    | MARKET\_NOT\_LISTED             | The market is not currently listed by the comptroller.                               |
| 10   | MARKET\_ALREADY\_LISTED         | An admin tried to list the same market more than once.                               |
| 11   | MATH\_ERROR                     | A math calculation error occurred.                                                   |
| 12   | NONZERO\_BORROW\_BALANCE        | The action cannot be performed since the account carries a borrow balance.           |
| 13   | PRICE\_ERROR                    | The comptroller could not obtain a required price of an asset.                       |
| 14   | REJECTION                       | The comptroller rejects the action requested by the market.                          |
| 15   | SNAPSHOT\_ERROR                 | The comptroller could not get the account borrows and exchange rate from the market. |
| 16   | TOO\_MANY\_ASSETS               | Attempted to enter more markets than are currently supported.                        |
| 17   | TOO\_MUCH\_REPAY                | Attempted to repay more than is allowed by the protocol.                             |

## Failure Info

| Code | Name                                            |
| ---- | ----------------------------------------------- |
| 0    | ACCEPT\_ADMIN\_PENDING\_ADMIN\_CHECK            |
| 1    | ACCEPT\_PENDING\_IMPLEMENTATION\_ADDRESS\_CHECK |
| 2    | EXIT\_MARKET\_BALANCE\_OWED                     |
| 3    | EXIT\_MARKET\_REJECTION                         |
| 4    | SET\_CLOSE\_FACTOR\_OWNER\_CHECK                |
| 5    | SET\_CLOSE\_FACTOR\_VALIDATION                  |
| 6    | SET\_COLLATERAL\_FACTOR\_OWNER\_CHECK           |
| 7    | SET\_COLLATERAL\_FACTOR\_NO\_EXISTS             |
| 8    | SET\_COLLATERAL\_FACTOR\_VALIDATION             |
| 9    | SET\_COLLATERAL\_FACTOR\_WITHOUT\_PRICE         |
| 10   | SET\_IMPLEMENTATION\_OWNER\_CHECK               |
| 11   | SET\_LIQUIDATION\_INCENTIVE\_OWNER\_CHECK       |
| 12   | SET\_LIQUIDATION\_INCENTIVE\_VALIDATION         |
| 13   | SET\_MAX\_ASSETS\_OWNER\_CHECK                  |
| 14   | SET\_PENDING\_ADMIN\_OWNER\_CHECK               |
| 15   | SET\_PENDING\_IMPLEMENTATION\_OWNER\_CHECK      |
| 16   | SET\_PRICE\_ORACLE\_OWNER\_CHECK                |
| 17   | SUPPORT\_MARKET\_EXISTS                         |
| 18   | SUPPORT\_MARKET\_OWNER\_CHECK                   |


# Subgraph (GraphQL)

{% hint style="info" %}
Everyone is welcomed to use our API key <mark style="background-color:yellow;"><mark style="color:purple;">`5059cba3a9ff00f6d6878c45a8fc304e`<mark style="color:purple;"></mark> to make queries on the subgraphs below
{% endhint %}

### Lending

* Playground: <https://thegraph.com/explorer/subgraph?id=0x197939c1ca20c2b506d6811d8b6cdb3394471074-0&view=Overview>&#x20;
* Query URL: `https://gateway.thegraph.com/api/5059cba3a9ff00f6d6878c45a8fc304e/subgraphs/id/0x197939c1ca20c2b506d6811d8b6cdb3394471074-0`

### Iron Bank

* Playground: <https://thegraph.com/explorer/subgraph?id=0x197939c1ca20c2b506d6811d8b6cdb3394471074-1&view=Overview>
* Query URL: `https://gateway.thegraph.com/api/5059cba3a9ff00f6d6878c45a8fc304e/subgraphs/id/0x197939c1ca20c2b506d6811d8b6cdb3394471074-1`


# Testnet

## Contract Deployment Script

[GitHub repo](https://github.com/CreamFi/cream-deployment)

### Installation

```
git clone https://github.com/CreamFi/cream-deployment
cd cream-deployment
yarn install
```

### Setup

```
cp .env.default .env
```

Fill in environment variables

### Deploy

```
npx hardhat run scripts/deployComptroller.js --network <NETWORK>
```

### App in Testnet

We support Göerli. Go to [testnet.cream.finance](https://testnet.cream.finance)


# What is Ethereum 2.0

Ethereum 2.0 (hereinafter referred to as ETH2) is the upcoming major upgrade to Ethereum Mainnet. It refers to a set of interconnected upgrades that will make Ethereum more scalable, more secure, and more sustainable. These upgrades are being built by multiple teams from across the Ethereum ecosystem.

The following are the broad design goals for ETH2:

* to minimize complexity, even at the cost of some losses in efficiency
* to remain live through major network partitions and when very large portions of nodes go offline
* to select all components such that they are either quantum secure or can be easily swapped out for quantum secure counterparts when available
* to utilize crypto and design techniques that allow for a large participation of validators in total and per unit time
* to allow for a typical consumer laptop with `O(C)` resources to process/validate `O(1)` shards (including any system level validation such as the beacon chain)

### More Scalable

Ethereum needs to support 1000s of transactions per second, to make applications faster and cheaper to use.

### More Secure

Ethereum needs to be more secure. As the adoption of Ethereum grows, the protocol needs to become more secure against all forms of attack.

### More Sustainable

Ethereum needs to be better for the environment. The technology today requires too much computing power and energy.

{% hint style="info" %}
More details can be found in [Ethereum Foundation Website](https://ethereum.org/en/eth2/get-involved/)
{% endhint %}


# Why Stake for CRETH2

{% hint style="danger" %}

1. CRETH2 deposits have ended for C.R.E.A.M. Finance
2. Existing CRETH2 token holders can exchange CRETH2 for ETH when The Merge is complete. More info: [https://ethereum.org/en/upgrades](https://ethereum.org/en/upgrades/)
   {% endhint %}

Eventually, people will migrate from ETH to ETH2, but here we offer more benefits for staking ETH in C.R.E.A.M. Finance during the migration process.

Users on C.R.E.A.M. will be able to stake ETH and also use this staked position (CRETH2, the proof token) as collateral on the C.R.E.A.M. lending platform to borrow assets. This means by staking ETH with C.R.E.A.M., users can earn staking rewards, potential supply yield, in addition to having borrowing power on the C.R.E.A.M. lending platform.

In short:

1. Stake ETH and get reward from ETH2 migration
2. Use proof token CRETH2 as collateral to borrow assets, **which is exclusive in C.R.E.A.M.**
3. Stake CRETH2 in reward pool to get CREAM, **which is also exclusive in C.R.E.A.M.**

### **How to Get Reward from ETH2 Migration**

That's the best part. To get reward, you don't have to do anything except staking!

Just like Miners benefit from their contribution to Ethereum, Validators also benefit from their contribution to Ethereum 2.0. Once you stake ETH and get CRETH2 back, you become one of the Validators of ETH2 migration. Validators get rewarded for proposing and attesting to blocks. The rewards are tied to the overall amount of ETH staked in the network. More details and reward formula can be found in the [Launchpad](https://launchpad.ethereum.org/).

And we do all the Validator works for you :)

Finally, when ETH2 is ready, you can unwrap CRETH2 to ETH2 with a better exchange rate than ETH to CRETH2, and that's where you get the reward. Do whatever you want with CRETH2, but hold it when ETH2 is launched, if you want to get Validator reward.

### **Risks You Should Know Before Staking**

Once staking in ETH2, you will **NOT** be able to withdraw your deposits until Ethereum Foundation finishes Ethereum 2.0 migration, which is [estimated to deliver in 2021](https://ethereum.org/en/eth2).

However, your ETH is pretty safe, for the only place these ETH could be sent to is the ETH2 deposit contract. No one can move those ETH away from the CRETH2 contract, including the team. Check out [the contract](https://etherscan.io/address/0xcbc1065255cbc3ab41a6868c22d1f1c573ab89fd#code) to verify.

Also, this is a custodial service, and it will incur 8% fee on your Validator reward while you unwrap your CRETH2. You should do your own research on the whole ETH2 migration plan, understand what is custodial / non-custodial service, and use at your own risk.


# Migration Schedule

## Ethereum 2.0 Migration Schedule

ETH2 will be released in several phases.

![](/files/-MM_8jkXvtrsM5Jgy8gD)

Phase 0 contains all of the machinery behind ETH2's PoS consensus, it tracks the validators and their balances.

Phase 1 handles adding, storing, and retrieving the data associated with ETH2's shards.

Phase 1.5 updates Ethereum as we know it today from PoW to PoS by making it a shard under 2.

Phase 2 adds execution to the remaining ETH2 shards which enables smart contracts to run on all of the shards.

### The Beacon Chain

[Beacon Chain](https://ethereum.org/en/eth2/beacon-chain/) is known as phase 0 in the roadmap. The beacon chain doesn't change anything about the Ethereum we use today. It will coordinate the network, and introduces proof-of-stake to the Ethereum ecosystem.

This is estimated to deliver in Dec 01, 2020.

### Shard Chains

[Shard Chains](https://ethereum.org/en/eth2/shard-chains/) is included in phase 1 and phase 2. Sharding is a multi-phase upgrade to improve Ethereum’s scalability and capacity. Shard chains spread the network's load across 64 new chains. They make it easier to run a node by keeping hardware requirements low.

This is estimated to deliver in 2021.

### The Docking

[Docking mainnet with ETH2](https://ethereum.org/en/eth2/docking/) is known as phase 1.5 in the roadmap. Eventually the current Ethereum mainnet will "dock" with the rest of the ETH2 upgrades. The docking will merge "ETH1" mainnet with the ETH2 beacon chain and sharding system. This will mark the end of proof-of-work for Ethereum, and the full transition to proof of stake.

This is estimated to deliver in 2022.

## C.R.E.A.M. to Ethereum 2.0 Schedule

### Conservative Migration

For the safety of the protocol, the migration process will be done conservatively.

We will not deposit a large batch to [ETH2 deposit contract](https://etherscan.io/address/0x00000000219ab540356cbb839cbe05303d7705fa). Once we verify that the whole mechanism is stable and robust after phase 0 kicks off, we will continuously deposit to ETH2 contract.

However, full plan is hard to reveal at the moment, for other than stable and safety there are still factors affecting our implementation like reward model and APR. The effect of these factors are dynamically changing and we will find the way to balance and optimize them all.

### Transactions

| Number     | ETH   | Transaction Address                                                                                                                                              |
| ---------- | ----- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 0          | 32    | [0xee65019cfd98cd7c70d1fafb7ddf16692d8d5d4b9a6d308c55d4109d3671cf32](https://etherscan.io/tx/0xee65019cfd98cd7c70d1fafb7ddf16692d8d5d4b9a6d308c55d4109d3671cf32) |
| 1 \~ 19    | 608   | [0xf8516ee875af706f4fb59627e33d1258780521502d96888226c5b5af219ac1bc](https://etherscan.io/tx/0xf8516ee875af706f4fb59627e33d1258780521502d96888226c5b5af219ac1bc) |
| 20 \~ 119  | 3,200 | [0xed3859672bc9a40ae6588ad85e4e426c0bcc8b90a46fe929a041c32a894b46e1](https://etherscan.io/tx/0xed3859672bc9a40ae6588ad85e4e426c0bcc8b90a46fe929a041c32a894b46e1) |
| 120 \~ 149 | 960   | [0x60c51dd40578a71981da88674894e5330c5bcf0fc825d2e0692030414e375dc6](https://etherscan.io/tx/0x60c51dd40578a71981da88674894e5330c5bcf0fc825d2e0692030414e375dc6) |
| 150 \~ 249 | 3,200 | [0x0d4f41b1a23a383dd2aeb9ce66f00467196a3f5ac3c09b90d674f4ca2e964d7d](https://etherscan.io/tx/0x0d4f41b1a23a383dd2aeb9ce66f00467196a3f5ac3c09b90d674f4ca2e964d7d) |
| 250 \~ 349 | 3,200 | [0x712d549398bc116dd618e3ad0da26599e8bba3632a029a8443cc338d297a69b9](https://etherscan.io/tx/0x712d549398bc116dd618e3ad0da26599e8bba3632a029a8443cc338d297a69b9) |
| 350 \~ 449 | 3,200 | [0xd0f7f9889efa7fb6aca7f3c5c8c5bbc2fbbdbd4154c096755f21470e6c7ce3ee](https://etherscan.io/tx/0xd0f7f9889efa7fb6aca7f3c5c8c5bbc2fbbdbd4154c096755f21470e6c7ce3ee) |
| 450 \~ 499 | 1,600 | [0xddfd735cb8f0ed15fc360b6e02ff5483639490c4657f2422fb2eaae1f73ab088](https://etherscan.io/tx/0xddfd735cb8f0ed15fc360b6e02ff5483639490c4657f2422fb2eaae1f73ab088) |
| 500 \~ 529 | 960   | [0x39d906b37c5be86199637f8d324834ac69fe82921dc6d20e62f306334413db81](https://etherscan.io/tx/0x39d906b37c5be86199637f8d324834ac69fe82921dc6d20e62f306334413db81) |
| 530 \~ 579 | 1600  | [0x2a8b43c163c45a9e422a933512cef90a5d52651c31f542a81f6a9e3eabc0e410](https://etherscan.io/tx/0x2a8b43c163c45a9e422a933512cef90a5d52651c31f542a81f6a9e3eabc0e410) |
| 580 \~ 609 | 960   | [0xb4e80df35055d38817f2a2c3a384bf1153a11f8dffa6c2dd73b8c311f59027a7](https://etherscan.io/tx/0xb4e80df35055d38817f2a2c3a384bf1153a11f8dffa6c2dd73b8c311f59027a7) |
| 610 \~ 709 | 3,200 | [0xb0e1e99cfa3fe9bb94e543511bcfee36d4882264a1fb8a58be8225a0220d5592](https://etherscan.io/tx/0xb0e1e99cfa3fe9bb94e543511bcfee36d4882264a1fb8a58be8225a0220d5592) |
| 710 \~ 749 | 1,280 | [0x6faf632cb3c37b19da98823a6a73d5de3e29fc8ce81a0c34ac1d2c57132d79d2](https://etherscan.io/tx/0x6faf632cb3c37b19da98823a6a73d5de3e29fc8ce81a0c34ac1d2c57132d79d2) |
| 750 \~ 769 | 640   | [0xb86d0f862470af94e88487ab867d199405da2a3619a85c1a7d19413d798e390a](https://etherscan.io/tx/0xb86d0f862470af94e88487ab867d199405da2a3619a85c1a7d19413d798e390a) |
| 770 \~ 779 | 320   | [0xcac0edf507dca7b8b10c350e41fdb8a3dba61c9c7cca69f450fd3ed5f5269885](https://etherscan.io/tx/0xcac0edf507dca7b8b10c350e41fdb8a3dba61c9c7cca69f450fd3ed5f5269885) |
| 780 \~ 784 | 160   | [0x38d8b9cd4d37a0d974df7a3fec4cf13b6c5f7d7b3b484e144e37392eb28818a4](https://etherscan.io/tx/0x38d8b9cd4d37a0d974df7a3fec4cf13b6c5f7d7b3b484e144e37392eb28818a4) |
| 785 \~ 786 | 64    | [0xa0a492a7bce3e00c8924d7ed22e245c7ed460fb4a56dc2d73d910da470541be9](https://etherscan.io/tx/0xa0a492a7bce3e00c8924d7ed22e245c7ed460fb4a56dc2d73d910da470541be9) |

{% file src="/files/SHdbD4fPRoDidTvcl5HJ" %}


# CRETH2 Contract Address

### Ethereum 2.0 Deposit Contract

[0x00000000219ab540356cbb839cbe05303d7705fa](https://etherscan.io/address/0x00000000219ab540356cbb839cbe05303d7705fa)

### CRETH2 Deposit Contract

[~~0xcbc1065255cbc3ab41a6868c22d1f1c573ab89fd~~](https://etherscan.io/address/0xcbc1065255cbc3ab41a6868c22d1f1c573ab89fd#code) (exploited)

[0x49D72e3973900A195A155a46441F0C08179FdB64](https://etherscan.io/address/0x49D72e3973900A195A155a46441F0C08179FdB64)

### Staking Reward Pool

| Contract       | Address                                                                                                               |
| -------------- | --------------------------------------------------------------------------------------------------------------------- |
| ~~CRETH2~~     | [0x9d2850c3112b5fb851c4aae23c1e97c1736898cb](https://etherscan.io/address/0x9d2850c3112b5fb851c4aae23c1e97c1736898cb) |
| ~~CRETH/WETH~~ | [0x2689008DCda0c2b744B344B9e5a3D5A042c227Da](https://etherscan.io/address/0x2689008DCda0c2b744B344B9e5a3D5A042c227Da) |


# Swap

Cream Swap is a fork of Balancer. After Yearn merger, we chose to deprecate Swap and focus on Lending.

Cream Swap TVL on [Defipulse](https://defipulse.com/c.r.e.a.m.-swap)

{% content-ref url="/pages/-MKKmcSp0oAF5am6ZRLl" %}
[Swap v1](/legacy/swap/swap-v1)
{% endcontent-ref %}

{% content-ref url="/pages/-MKKj1tXnRkjMxogV9Ix" %}
[Swap v2](/legacy/swap/swap-v2)
{% endcontent-ref %}


# Swap v1

Balancer Core Concept

### BFactory

[0xf8062Eedf80D8D2527cE89435f670cb996aB4e54](https://etherscan.io/address/0xf8062Eedf80D8D2527cE89435f670cb996aB4e54)

### BPool

| Pair           | Address                                                                                                               |
| -------------- | --------------------------------------------------------------------------------------------------------------------- |
| CREAM/USDC     | [0x4Fd2d9d6eF05E13Bf0B167509151A4EC3D4d4b93](https://etherscan.io/address/0x4Fd2d9d6eF05E13Bf0B167509151A4EC3D4d4b93) |
| CREAM/WETH     | [0xa49b3c7C260ce8A7C665e20Af8aA6E099A86cf8A](https://etherscan.io/address/0xa49b3c7c260ce8a7c665e20af8aa6e099a86cf8a) |
| crCREAM/crYFI  | [0xA65405e0dD378C65308deAE51dA9e3BcEBb81261](https://etherscan.io/address/0xA65405e0dD378C65308deAE51dA9e3BcEBb81261) |
| crYETH/crYYCRV | [0xB3284F2F22563F27cEF2912637b6A00F162317c4](https://etherscan.io/address/0xB3284F2F22563F27cEF2912637b6A00F162317c4) |
| YETH/WETH      | [0x6a3B875854f5518E85Ef97620c5e7de75bbc3fA0](https://etherscan.io/address/0x6a3B875854f5518E85Ef97620c5e7de75bbc3fA0) |
| yyCRV/USDC     | [0x661b94d96ADb18646e791A06576F7905a8d1BEF6](https://etherscan.io/address/0x661b94d96ADb18646e791A06576F7905a8d1BEF6) |
| YFI/USDC       | [0x7350c6D00D63AB5988250aea347f277c19BEA785](https://etherscan.io/address/0x7350c6D00D63AB5988250aea347f277c19BEA785) |
| 80UNI/20WETH   | [0x02566303a0e860ec66d3b79168459978b1b00c8e](https://etherscan.io/address/0x02566303a0e860ec66d3b79168459978b1b00c8e) |
| 50CREAM/50UNI  | [0x408e75C26e6182476940ece5b0Ba6491b4F13359](https://etherscan.io/address/0x408e75C26e6182476940ece5b0Ba6491b4F13359) |
| 80FARM/20WETH  | [0x655AD905dEc61E4Fb7d4840a1F450685801511b2](https://etherscan.io/address/0x655AD905dEc61E4Fb7d4840a1F450685801511b2) |
| 95cyUSD/5CREAM | [0xaAF841fd6409c136FA4b960e22A92B45B26c9b41](https://etherscan.io/address/0xaAF841fd6409c136FA4b960e22A92B45B26c9b41) |

### Subgraph

{% embed url="<https://thegraph.com/explorer/subgraph/creamfinancedev/cream-swap-beta>" %}

### Staking Rewards Pool

| LPToken        | Address                                                                                                               |
| -------------- | --------------------------------------------------------------------------------------------------------------------- |
| CREAM/USDC     | [0x1676fc274B65966ED0c6438a26d34c6C92A5981C](https://etherscan.io/address/0x1676fc274B65966ED0c6438a26d34c6C92A5981C) |
| CREAM/WETH     | [0x43a8ecE49718E22D21077000768afF91849BCEfF](https://etherscan.io/address/0x43a8ecE49718E22D21077000768afF91849BCEfF) |
| crCREAM/crYFI  | [0xCC5f8cA88cAbA27f15746aeb481F0C446991F863](https://etherscan.io/address/0xCC5f8cA88cAbA27f15746aeb481F0C446991F863) |
| crYETH/crYYCRV | [0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a](https://etherscan.io/address/0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a) |
| YETH/WETH      | [0xCF679b2E16498a866Bd4CBda60d42f208084c6E1](https://etherscan.io/address/0xCF679b2E16498a866Bd4CBda60d42f208084c6E1) |
| yyCRV/USDC     | [0xB8c3a282De181889EF20488e73e7A149a8C1bFe1](https://etherscan.io/address/0xB8c3a282De181889EF20488e73e7A149a8C1bFe1) |
| YFI/USDC       | [0x2ab765c2b4a4e197fbae769f86870f2310a04d61](https://etherscan.io/address/0x2ab765c2b4a4e197fbae769f86870f2310a04d61) |
| UNI/WETH       | [0xe539416a21F6D7eF7e143f1435484d333c274480](https://etherscan.io/address/0xe539416a21F6D7eF7e143f1435484d333c274480) |
| UNI/CREAM      | [0x1E5fe7bAd3672D0d0cc041B7154331EE461C3349](https://etherscan.io/address/0x1e5fe7bad3672d0d0cc041b7154331ee461c3349) |
| cyUSD/CREAM    | [0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA](https://etherscan.io/address/0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA) |


# Swap v2

Balancer Core Concept

### BFactory

| Version | Address                                                                                                               |
| ------- | --------------------------------------------------------------------------------------------------------------------- |
| v2.1    | [0x0d3303ffaf107cd732396570bf07b2dbd79b619f](https://etherscan.io/address/0x0d3303ffaf107cd732396570bf07b2dbd79b619f) |
| v2      | [0x136d6F80Bb3A853D151686BFED2c9309Aea6dDec](https://etherscan.io/address/0x136d6f80bb3a853d151686bfed2c9309aea6ddec) |

### BPool

| Pair               | Address                                                                                                               |
| ------------------ | --------------------------------------------------------------------------------------------------------------------- |
| SWAG/USDC          | [0x69c2Fe4F5dFA40Dd6d09FAdd0681F9364A1aadA0](https://etherscan.io/address/0x69c2fe4f5dfa40dd6d09fadd0681f9364a1aada0) |
| SWAG/CREAM         | [0x73be65b1800c2ADa9592E17c22C1BcCc1481BC95](https://etherscan.io/address/0x73be65b1800c2ada9592e17c22c1bccc1481bc95) |
| SWAG/CREAM 80%/20% | [0x6c19E4CC4c87adB224697A1022F262b424F44d46](https://etherscan.io/address/0x6c19e4cc4c87adb224697a1022f262b424f44d46) |
| CRETH2/WETH        | [0xbc338CA728a5D60Df7bc5e3AF5b6dF9DB697d942](https://etherscan.io/address/0xbc338CA728a5D60Df7bc5e3AF5b6dF9DB697d942) |

### Subgraph

{% embed url="<https://thegraph.com/explorer/subgraph/creamfinancedev/cream-swap-v2>" %}

### Staking Rewards Pool

| LPToken            | Address                                                                                                               |
| ------------------ | --------------------------------------------------------------------------------------------------------------------- |
| SWAG/USDC          | [0xB6bcb077b9fBafcF47E7662C9a7c6D46d5c0c8f1](https://etherscan.io/address/0xB6bcb077b9fBafcF47E7662C9a7c6D46d5c0c8f1) |
| SWAG/CREAM         | [0x6da2226C90a0b2bD799a16b5521270BC2231D242](https://etherscan.io/address/0x6da2226C90a0b2bD799a16b5521270BC2231D242) |
| SWAG/CREAM 80%/20% | [0x8fcb0cA2e16cAb45F8f0C6304d2a022B6dcDA3f3](https://etherscan.io/address/0x8fcb0ca2e16cab45f8f0c6304d2a022b6dcda3f3) |
| CRETH2             | [0x9D2850c3112b5fb851c4aAE23c1E97C1736898cb](https://etherscan.io/address/0x9d2850c3112b5fb851c4aae23c1e97c1736898cb) |
| CRETH2/WETH        | [0x2689008DCda0c2b744B344B9e5a3D5A042c227Da](https://etherscan.io/address/0x2689008DCda0c2b744B344B9e5a3D5A042c227Da) |


# Reward Pool Contract Address

{% hint style="danger" %}
Inactive Pool
{% endhint %}

| Contract             | Address                                                                                                                   |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Balancer (v4)        | [0xCcD5cb3401704AF8462a4FFE708a180d3C5c4Da0](https://etherscan.io/address/0xCcD5cb3401704AF8462a4FFE708a180d3C5c4Da0)     |
| Uniswap              | [0x65bC20147E2cA6F3bf0819c38E519F8792043b36](https://etherscan.io/address/0x65bC20147E2cA6F3bf0819c38E519F8792043b36)     |
| CREAM/USDC           | [0x1676fc274B65966ED0c6438a26d34c6C92A5981C](https://etherscan.io/address/0x1676fc274B65966ED0c6438a26d34c6C92A5981C)     |
| CREAM/WETH           | [0x43a8ecE49718E22D21077000768afF91849BCEfF](https://etherscan.io/address/0x43a8ecE49718E22D21077000768afF91849BCEfF)     |
| crCREAM/crYFI        | [0xCC5f8cA88cAbA27f15746aeb481F0C446991F863](https://etherscan.io/address/0xCC5f8cA88cAbA27f15746aeb481F0C446991F863)     |
| crYETH/crYYCRV       | [0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a](https://etherscan.io/address/0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a)     |
| YETH/WETH            | [0xCF679b2E16498a866Bd4CBda60d42f208084c6E1](https://etherscan.io/address/0xCF679b2E16498a866Bd4CBda60d42f208084c6E1)     |
| yyCRV/USDC           | [0xB8c3a282De181889EF20488e73e7A149a8C1bFe1](https://etherscan.io/address/0xB8c3a282De181889EF20488e73e7A149a8C1bFe1)     |
| YFI/USDC             | [0x2ab765c2b4a4e197fbae769f86870f2310a04d61](https://etherscan.io/address/0x2ab765c2b4a4e197fbae769f86870f2310a04d61)     |
| ~~crCREAM (Legacy)~~ | [~~0x71A808Fd21171d992ebc17678e8ae139079922d0~~](https://etherscan.io/address/0x71A808Fd21171d992ebc17678e8ae139079922d0) |
| crCREAM              | [0x224061756c150e5048a1e4a3E6E066db35037462](https://etherscan.io/address/0x224061756c150e5048a1e4a3E6E066db35037462)     |
| UNI/WETH             | [0xe539416a21F6D7eF7e143f1435484d333c274480](https://etherscan.io/address/0xe539416a21F6D7eF7e143f1435484d333c274480)     |
| UNI/CREAM            | [0x1E5fe7bAd3672D0d0cc041B7154331EE461C3349](https://etherscan.io/address/0x1e5fe7bad3672d0d0cc041b7154331ee461c3349)     |
| crCREAM (7 day lock) | [0x3ba3C0e8a9E5F4a01ce8e086B3d8e8a603a2129E](https://etherscan.io/address/0x3ba3C0e8a9E5F4a01ce8e086B3d8e8a603a2129E)     |
| cyUSD                | [0x0b471a71c3f6d4aADc7eb20AaB7D730Ae385e150](https://etherscan.io/address/0x0b471a71c3f6d4aADc7eb20AaB7D730Ae385e150)     |
| cyUSD/CREAM          | [0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA](https://etherscan.io/address/0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA)     |


# Inactive Staking pools Address

{% hint style="warning" %}
These are inactive pools
{% endhint %}

| Name                 | Address                                                                                                               |
| -------------------- | --------------------------------------------------------------------------------------------------------------------- |
| CREAM/USDC           | [0x1676fc274B65966ED0c6438a26d34c6C92A5981C](https://etherscan.io/address/0x1676fc274B65966ED0c6438a26d34c6C92A5981C) |
| CREAM/WETH           | [0x43a8ecE49718E22D21077000768afF91849BCEfF](https://etherscan.io/address/0x43a8ecE49718E22D21077000768afF91849BCEfF) |
| crCREAM (7 day lock) | [0x3ba3C0e8a9E5F4a01ce8e086B3d8e8a603a2129E](https://etherscan.io/address/0x3ba3C0e8a9E5F4a01ce8e086B3d8e8a603a2129E) |
| cyUSD                | [0x0b471a71c3f6d4aADc7eb20AaB7D730Ae385e150](https://etherscan.io/address/0x0b471a71c3f6d4aADc7eb20AaB7D730Ae385e150) |
| cyUSD/CREAM          | [0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA](https://etherscan.io/address/0xAE76E0D0C4767E94Eb2898f42A96696Ae0061cEA) |
| Balancer (v4)        | [0xCcD5cb3401704AF8462a4FFE708a180d3C5c4Da0](https://etherscan.io/address/0xCcD5cb3401704AF8462a4FFE708a180d3C5c4Da0) |
| Uniswap              | [0x65bC20147E2cA6F3bf0819c38E519F8792043b36](https://etherscan.io/address/0x65bC20147E2cA6F3bf0819c38E519F8792043b36) |
| crCREAM/crYFI        | [0xCC5f8cA88cAbA27f15746aeb481F0C446991F863](https://etherscan.io/address/0xCC5f8cA88cAbA27f15746aeb481F0C446991F863) |
| crYETH/crYYCRV       | [0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a](https://etherscan.io/address/0xD032BfeDC68CE5067E3E0b766Dbcf653ceEA541a) |
| YETH/WETH            | [0xCF679b2E16498a866Bd4CBda60d42f208084c6E1](https://etherscan.io/address/0xCF679b2E16498a866Bd4CBda60d42f208084c6E1) |
| yyCRV/USDC           | [0xB8c3a282De181889EF20488e73e7A149a8C1bFe1](https://etherscan.io/address/0xB8c3a282De181889EF20488e73e7A149a8C1bFe1) |


# creamY

### Address

| Contract     | Address                                                                                                               |
| ------------ | --------------------------------------------------------------------------------------------------------------------- |
| Normalizer   | [0x3Ce448Eea6a158DD5937D5e9137e6b9eCe69014a](https://etherscan.io/address/0x3Ce448Eea6a158DD5937D5e9137e6b9eCe69014a) |
| creamY       | [0x1D09144F3479bb805CB7c92346987420BcbDC10C](https://etherscan.io/address/0x1D09144F3479bb805CB7c92346987420BcbDC10C) |
| Reserve Pool | [0x590BB03b651129c7931D1cC3128F50868178dA50](https://etherscan.io/address/0x590BB03b651129c7931D1cC3128F50868178dA50) |

### Supported Tokens

| Token          | Address                                    | Supported |
| -------------- | ------------------------------------------ | --------- |
| USDT           | 0xdAC17F958D2ee523a2206206994597C13D831ec7 | Y         |
| USDC           | 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 | Y         |
| BUSD           | 0x4Fabb145d64652a948d72533023f6E7A623C7C53 | Y         |
| TUSD           | 0x0000000000085d4780B73119b644AE5ecd22b376 | Y         |
|                |                                            |           |
| crUSDT         | 0x797AAB1ce7c01eB727ab980762bA88e7133d2157 | Y         |
| crUSDC         | 0x44fbeBd2F576670a6C33f6Fc0B00aA8c5753b322 | Y         |
| crBUSD         | 0x1FF8CDB51219a8838b52E9cAc09b71e591BC998e | Y         |
|                |                                            |           |
| yCRV           | 0xdF5e0e81Dff6FAF3A7e52BA697820c5e32D806A8 | Y         |
|                |                                            |           |
| yUSDT (iearn)  | 0x83f798e925BcD4017Eb265844FDDAbb448f1707D | Y         |
| yUSDC (iearn)  | 0xd6aD7a6750A7593E092a9B218d66C0A814a3436e | Y         |
| yTUSD (iearn)  | 0x73a052500105205d34Daf004eAb301916DA8190f | Y         |
|                |                                            |           |
| yyCRV (yvault) | 0x5dbcF33D8c2E976c6b560249878e6F1491Bca25c | Y         |
|                |                                            |           |
| cUSDT          | 0xf650C3d88D12dB855b8bf7D11Be6C55A4e07dCC9 | Y         |
| cUSDC          | 0x39AA39c021dfbaE8faC545936693aC917d5E7563 | Y         |


# C.R.E.A.M. Finance

Binance Smart Chain documentation

{% hint style="info" %}
You can switch between Ethereum Mainnet, Binance Smart Chain and Fantom Opera in top-left corner
{% endhint %}

## Overview

### What is C.R.E.A.M. Finance?

C.R.E.A.M. Finance is a decentralized lending protocol for individuals and protocols to access financial services. The protocol is permissionless, transparent, and non-custodial.

Currently, C.R.E.A.M. is live on Ethereum, Binance Smart Chain, and Fantom.

C.R.E.A.M. Finance’s smart contract money markets are focused on longtail assets -- with the goal of increasing capital efficiency for all assets in crypto markets.

Users are able to lend any supported assets on our markets, and use the provided capital as collateral to borrow another supported asset.

C.R.E.A.M. offers a wide range of tokens on our money markets, including: stablecoins (USDT, USDC, BUSD); interest-bearing stablecoins (yCRV, yyCRV); defi tokens (YFI, SUSHI, CREAM, CREAM); LP-tokens (USDC-ETH SLP, WBTC-ETH SLP); and other cryptocurrencies (ETH, LINK). This list is not exhaustive.

Please check the link below for the latest list of supported tokens:

{% content-ref url="/pages/-MKKrF7Auu-moU2zCAsB" %}
[Lending Contract Address](/binance-smart-chain/lending/lending-contract-address)
{% endcontent-ref %}

### How to Use C.R.E.A.M. Finance?

Borrow and lend tokens on [app.cream.finance](https://app.cream.finance/)


# Flash Loans

## Overview

C.R.E.A.M. is bringing Flash Loans to our money markets.

Flash Loans allow developers access to undercollateralized loans, provided that the borrowed amount (and fee) is returned within one transaction block.

Flash Loans offer a wide range of use cases, including democratized liquidations, arbitrage, collateral swapping and interest rate swapping.

1. Using C.R.E.A.M. Flash Loans devs **interact with CToken contract,** instead of the lending pool.
2. Flash Loan fee is 0.03%

Our BSC markets comply to EIP-3156 interfaces natively. The old flashloanLender is no longer workable. Users should call flashloan on specific market with the following interface:

```
/**
 * @notice Flash loan funds to a given account.
 * @param receiver The receiver address for the funds
 * @param token The loan currency. Must match the address of this contract's underlying.
 * @param amount The amount of the funds to be loaned
 * @param data The other data
 * @return uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
 */
function flashLoan(
    ERC3156FlashBorrowerInterface receiver,
    address token,
    uint256 amount,
    bytes calldata data
) external returns (bool);
```

{% hint style="info" %}
Not all markets have Flash Loans
{% endhint %}

{% content-ref url="/pages/-MKKrF7Auu-moU2zCAsB" %}
[Lending Contract Address](/binance-smart-chain/lending/lending-contract-address)
{% endcontent-ref %}

## Step by step guide

Please refer to Ethereum mainnet's [documentation](https://docs.cream.finance/flash-loans#step-by-step-guide).


# Lending Contract Address

### crToken address

| Contract               | Address                                                                                                              | Flash Loans |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------- | ----------- |
| crBNB                  | [0x1ffe17b99b439be0afc831239ddecda2a790ff3a](https://bscscan.com/address/0x1ffe17b99b439be0afc831239ddecda2a790ff3a) | No          |
| crWBNB                 | [0x15CC701370cb8ADA2a2B6f4226eC5CF6AA93bC67](https://bscscan.com/address/0x15cc701370cb8ada2a2b6f4226ec5cf6aa93bc67) | Yes         |
| crBUSD                 | [0x2bc4eb013ddee29d37920938b96d353171289b7c](https://bscscan.com/address/0x2bc4eb013ddee29d37920938b96d353171289b7c) | Yes         |
| crBTCB                 | [0x11883Cdea6bAb720092791cc89affa54428Ce069](https://bscscan.com/address/0x11883Cdea6bAb720092791cc89affa54428Ce069) | Yes         |
| crXRP                  | [0xAa46e2c21B7763a73DB48e9b318899253E66e20C](https://bscscan.com/address/0xAa46e2c21B7763a73DB48e9b318899253E66e20C) | Yes         |
| crBCH                  | [0xCb87Cee8c77CdFD310fb3C58ff72e688d46f90b1](https://bscscan.com/address/0xCb87Cee8c77CdFD310fb3C58ff72e688d46f90b1) | Yes         |
| crETH                  | [0xb31f5d117541825D6692c10e4357008EDF3E2BCD](https://bscscan.com/address/0xb31f5d117541825D6692c10e4357008EDF3E2BCD) | Yes         |
| crLTC                  | [0x8cc7E2a6de999758499658bB702143FD025E09B2](https://bscscan.com/address/0x8cc7E2a6de999758499658bB702143FD025E09B2) | Yes         |
| crUSDT                 | [0xEF6d459FE81C3Ed53d292c936b2df5a8084975De](https://bscscan.com/address/0xEF6d459FE81C3Ed53d292c936b2df5a8084975De) | Yes         |
| crLINK                 | [0x3942936782d788ce69155F776A51A5F1C9dd9B22](https://bscscan.com/address/0x3942936782d788ce69155F776A51A5F1C9dd9B22) | Yes         |
| crDOT                  | [0x53D88d2ffDBE71E81D95b08AE0cA49D0C4A8515f](https://bscscan.com/address/0x53D88d2ffDBE71E81D95b08AE0cA49D0C4A8515f) | Yes         |
| crADA                  | [0x81C15D3E956e55e77E1f3F257f0A65Bd2725fC55](https://bscscan.com/address/0x81c15d3e956e55e77e1f3f257f0a65bd2725fc55) | Yes         |
| crCREAM                | [0x426D6D53187be3288fe37f214e3F6901D8145b62](https://bscscan.com/address/0x426D6D53187be3288fe37f214e3F6901D8145b62) | No          |
| crBAND                 | [0x738f3810b3dA0F3e6dC8C689D0d72f3b4992c43b](https://bscscan.com/address/0x738f3810b3dA0F3e6dC8C689D0d72f3b4992c43b) | Yes         |
| crEOS                  | [0x19eE64850862cFd234e20c0db4edA286f12ec907](https://bscscan.com/address/0x19ee64850862cfd234e20c0db4eda286f12ec907) | Yes         |
| crDAI                  | [0x9095e8d707E40982aFFce41C61c10895157A1B22](https://bscscan.com/address/0x9095e8d707e40982affce41c61c10895157a1b22) | Yes         |
| crXTZ                  | [0xE692714717a89E4F2ab89dd17d8DDdD7bb52De8e](https://bscscan.com/address/0xe692714717a89e4f2ab89dd17d8dddd7bb52de8e) | Yes         |
| crFIL                  | [0x1aF8c1C3AD36A041cb6678feD86B1E095004fd16](https://bscscan.com/address/0x1af8c1c3ad36a041cb6678fed86b1e095004fd16) | Yes         |
| crYFI                  | [0xEA466cd2583A0290b9E7b987a769a7Eb468FB0A5](https://bscscan.com/address/0xea466cd2583a0290b9e7b987a769a7eb468fb0a5) | Yes         |
| crUNI                  | [0x3B0Be453a4008EBc2eDd457e7Bd355f1C5469d68](https://bscscan.com/address/0x3b0be453a4008ebc2edd457e7bd355f1c5469d68) | Yes         |
| crATOM                 | [0x0E9d900C884964dC4B26db96Ba113825B1a09Baa](https://bscscan.com/address/0x0e9d900c884964dc4b26db96ba113825b1a09baa) | Yes         |
| crUSDC                 | [0xD83C88DB3A6cA4a32FFf1603b0f7DDce01F5f727](https://bscscan.com/address/0xd83c88db3a6ca4a32fff1603b0f7ddce01f5f727) | Yes         |
| crALPHA                | [0x264Bc4Ea2F45cF6331AD6C3aC8d7257Cf487FcbC](https://bscscan.com/address/0x264bc4ea2f45cf6331ad6c3ac8d7257cf487fcbc) | Yes         |
| crTWT                  | [0x2d3bfaDF9BC94E3Ab796029A030e863F1898aA06](https://bscscan.com/address/0x2d3bfaDF9BC94E3Ab796029A030e863F1898aA06) | Yes         |
| crCAKE                 | [0xbf9b95b78bc42f6cf53ff2a0ce19d607cfe1ff82](https://bscscan.com/address/0xbf9b95b78bc42f6cf53ff2a0ce19d607cfe1ff82) | Yes         |
| crXVS                  | [0x4ebdef163ff08ac1d56a89bafefd6c01cc28a48f](https://bscscan.com/address/0x4ebdef163ff08ac1d56a89bafefd6c01cc28a48f) | Yes         |
| crBAT                  | [0x4cB7F1f4aD7a6b53802589Af3B90612C1674Fec4](https://bscscan.com/address/0x4cb7f1f4ad7a6b53802589af3b90612c1674fec4) | Yes         |
| crVAI                  | [0x84902bd5ccef97648Bf69C5096729A9367043bEb](https://bscscan.com/address/0x84902bd5ccef97648bf69c5096729a9367043beb) | Yes         |
| crAUTO                 | [0xF77DF34F4Bf632Fb5CA928592a73a29A42BCf0B1](https://bscscan.com/address/0xf77df34f4bf632fb5ca928592a73a29a42bcf0b1) | Yes         |
| crRENBTC               | [0x7F746A80506a4cafA39938f7C08Ad59cFa6dE418](https://bscscan.com/address/0x7f746a80506a4cafa39938f7c08ad59cfa6de418) | Yes         |
| crRENZEC               | [0xbE7E1d74AcAE787355169bC61A8729b2040fCe6b](https://bscscan.com/address/0xbe7e1d74acae787355169bc61a8729b2040fce6b) | Yes         |
| crBETH                 | [0xDCf60E349a5AAeeEcdd2fb6772931FBF3486eD1C](https://bscscan.com/address/0xdcf60e349a5aaeeecdd2fb6772931fbf3486ed1c) | Yes         |
| crIOTX                 | [0xc17C8C5b8bB9456c624f8534FdE6cBda2451488C](https://bscscan.com/address/0xc17c8c5b8bb9456c624f8534fde6cbda2451488c) | Yes         |
| crSXP                  | [0xa8D75A0D17D2f4F2f4673975Ab8470269D019c96](https://bscscan.com/address/0xa8d75a0d17d2f4f2f4673975ab8470269d019c96) | Yes         |
| crSUSHI                | [0x9B53e7D5e3F6Cc8694840eD6C9f7fee79e7Bcee5](https://bscscan.com/address/0x9b53e7d5e3f6cc8694840ed6c9f7fee79e7bcee5) | Yes         |
| crCAKE-LP-CAKE-BNB v1  | [0x36CdF5972aCA2b70F10D0f7aF0D95871ABC065d9](https://bscscan.com/address/0x36cdf5972aca2b70f10d0f7af0d95871abc065d9) | No          |
| crCAKE-LP-BNB-BUSD v1  | [0x26A490a0F419DcFBEd97E568403654c2746a7110](https://bscscan.com/address/0x26a490a0f419dcfbed97e568403654c2746a7110) | No          |
| crCAKE-LP-BTCB-BNB v1  | [0xe39b9E0366940Eb3CA62b85Ffae838eF0f8B14e0](https://bscscan.com/address/0xe39b9e0366940eb3ca62b85ffae838ef0f8b14e0) | No          |
| crCAKE-LP-ETH-BNB v1   | [0x5Fa61a5A65920F90Af970B13b7f28DaEef0440B7](https://bscscan.com/address/0x5fa61a5a65920f90af970b13b7f28daeef0440b7) | No          |
| crCAKE-LP-USDT-BUSD v1 | [0x19b08fF7D90d63ad109c6FaBB8e0fcC866477A41](https://bscscan.com/address/0x19b08ff7d90d63ad109c6fabb8e0fcc866477a41) | No          |
| crCAKE-LP-CAKE-BNB v2  | [0x98b7871702B602E65eAEF46051D75ca334f872D0](https://bscscan.com/address/0x98b7871702b602e65eaef46051d75ca334f872d0) | No          |
| crCAKE-LP-BUSD-BNB v2  | [0x7FD568d6a1a11B19427c8cCb90F7bB80E4Ab1C5F](https://bscscan.com/address/0x7fd568d6a1a11b19427c8ccb90f7bb80e4ab1c5f) | No          |
| crCAKE-LP-BTCB-BNB v2  | [0x5eA2dD1DE21Ed3b5316CEF89985EDc66cF9b2a0E](https://bscscan.com/address/0x5ea2dd1de21ed3b5316cef89985edc66cf9b2a0e) | No          |
| crCAKE-LP-ETH-BNB v2   | [0x9972Dd9912367cF395bEA752ad49D81f33F7cA85](https://bscscan.com/address/0x9972dd9912367cf395bea752ad49d81f33f7ca85) | No          |
| crCAKE-LP-USDT-BUSD v2 | [0x04c61EF58a6f1D6c572045a39A5434Ab9Dee69Fb](https://bscscan.com/address/0x04c61ef58a6f1d6c572045a39a5434ab9dee69fb) | No          |

### Protocol address

| Contract        | Address                                                                                                                   |
| --------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Cream           | [0xd4CB328A82bDf5f03eB737f37Fa6B370aef3e888](https://bscscan.com/address/0xd4CB328A82bDf5f03eB737f37Fa6B370aef3e888)      |
| Comptroller     | [0x589de0f0ccf905477646599bb3e5c622c84cc0ba](https://bscscan.com/address/0x589de0f0ccf905477646599bb3e5c622c84cc0ba)      |
| PriceOracle     | [0xa82958C9f2Ff63f6D2DC7d8Ee22AE69fD0819477](https://bscscan.com/address/0xa82958C9f2Ff63f6D2DC7d8Ee22AE69fD0819477)      |
| Lens            | [0x1A014Ffe0cd187A298a7E79BA5ab05538686ea4a](https://bscscan.com/address/0x1A014Ffe0cd187A298a7E79BA5ab05538686ea4a#code) |
| FlashloanLender | [0xb7132898491431B63c7C90DF31F13dC6dC414b5a](https://bscscan.com/address/0xb7132898491431B63c7C90DF31F13dC6dC414b5a)      |

### Other address

| Contract                   | Address                                                                                                              |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| Comptroller Implementation | [0x49a08f9f445af5734cf15a1deab3b1c6a7988fb4](https://bscscan.com/address/0x49a08f9f445af5734cf15a1deab3b1c6a7988fb4) |
| PriceOracleV1              | [0x541876d6e61a200efD99711c5fDa1F7A50D14847](https://bscscan.com/address/0x541876d6e61a200efD99711c5fDa1F7A50D14847) |


# Collateral Factor & Reserve Factor

| Contract             | Collateral factor | Reserve factor |
| -------------------- | ----------------- | -------------- |
| BNB                  | 75%               | 15%            |
| BUSD                 | 75%               | 10%            |
| BTCB                 | 75%               | 25%            |
| XRP                  | 75%               | 25%            |
| LTC                  | 75%               | 25%            |
| BCH                  | 75%               | 25%            |
| ETH                  | 75%               | 25%            |
| USDT                 | 75%               | 20%            |
| LINK                 | 50%               | 40%            |
| DOT                  | 50%               | 40%            |
| ADA                  | 75%               | 40%            |
| CREAM                | 75%               | 40%            |
| BAND                 | 50%               | 40%            |
| EOS                  | 75%               | 40%            |
| DAI                  | 75%               | 20%            |
| XTZ                  | 50%               | 40%            |
| FIL                  | 50%               | 40%            |
| YFI                  | 50%               | 40%            |
| UNI                  | 65%               | 40%            |
| ATOM                 | 50%               | 40%            |
| USDC                 | 75%               | 20%            |
| ALPHA                | 50%               | 40%            |
| TWT                  | 50%               | 40%            |
| CAKE                 | 75%               | 40%            |
| XVS                  | 50%               | 40%            |
| BAT                  | 0%                | 40%            |
| VAI                  | 0%                | 40%            |
| AUTO                 | 25%               | 40%            |
| renBTC               | 0%                | 40%            |
| renZEC               | 0%                | 40%            |
| BETH                 | 70%               | 20%            |
| IOTX                 | 40%               | 40%            |
| SXP                  | 50%               | 40%            |
| SUSHI                | 65%               | 40%            |
| CAKE-LP-CAKE-BNB v1  | 50%               | 100%           |
| CAKE-LP-BNB-BUSD v1  | 75%               | 100%           |
| CAKE-LP-BTCB-BNB v1  | 75%               | 100%           |
| CAKE-LP-ETH-BNB v1   | 75%               | 100%           |
| CAKE-LP-USDT-BUSD v1 | 75%               | 100%           |
| WBNB                 | 75%               | 15%            |
| CAKE-LP-CAKE-BNB v2  | 50%               | 100%           |
| CAKE-LP-BUSD-BNB v2  | 75%               | 100%           |
| CAKE-LP-BTCB-BNB v2  | 75%               | 100%           |
| CAKE-LP-ETH-BNB v2   | 75%               | 100%           |
| CAKE-LP-USDT-BUSD v2 | 75%               | 100%           |


# Interest Rate Model

## APY Function

**Borrow APY**

\= \[1 + Base + Multiplier \* min(UtilizationRate, Kink) + max(JumpMultiplier \* UtilizationRate - Kink, 0)] ^ 10512000 - 1

**Supply APY**

\= Distribute (Interest Paid by Borrowers Per Block - Reserve) to all suppliers, and convert it into APY

\= Distribute \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) to all suppliers, and convert it into APY

\= {\[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply}, and convert it into APY

\= {1 + \[(1 + Borrow APY) ^ (1/BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply} ^ BlocksPerYear - 1

\= **{1+\[(1+Borrow APY)^(1/BlocksPerYear)-1]\*(1-Reserve Factor)\*Utilization Rate}^BlocksPerYear-1**

{% hint style="info" %}
BlocksPerYear = 10,512,000 (3 sec per block)
{% endhint %}

{% hint style="info" %}
Find other variables in [Markets](https://app.cream.finance/markets)
{% endhint %}

## Major

![](/files/-MeyhNPyd_SGxgs6t9oD)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Major                                                                                                                |
| Tokens           | BTCB, XRP, LTC, BCH, ETH, ADA, EOS, XTZ, renBTC, renZEC, BETH, WBNB                                                  |
| Base             | 0%                                                                                                                   |
| Multiplier       | 15%                                                                                                                  |
| JumpMultiplier   | 200%                                                                                                                 |
| Kink 1           | 80%                                                                                                                  |
| Kink 2           | 90%                                                                                                                  |
| Contract Address | [0xd68F6C83E160d86bF1fC0120a0D96A74cF291Bff](https://bscscan.com/address/0xd68F6C83E160d86bF1fC0120a0D96A74cF291Bff) |

## Stable

![](/files/-MeyhooS3AqFaWto4BNT)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Stable                                                                                                               |
| Tokens           | BUSD, USDT, DAI, USDC, VAI                                                                                           |
| Base             | 0%                                                                                                                   |
| Multiplier       | 18%                                                                                                                  |
| JumpMultiplier   | 800%                                                                                                                 |
| Kink 1           | 80%                                                                                                                  |
| Kink 2           | 90%                                                                                                                  |
| Contract Address | [0x8122E8585724BFd0A5964847fAe47c949B90B899](https://bscscan.com/address/0x8122E8585724BFd0A5964847fAe47c949B90B899) |

## Governance + Seed

![](/files/-MfHVQTTiisDMldTfQAm)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Governance & Seeds                                                                                                   |
| Tokens           | DOT, LINK, CREAM, BAND, FIL, YFI, UNI, ATOM, ALPHA, TWT, CAKE, XVS, BAT, AUTO, IOTX, SXP, SUSHI                      |
| Base             | 0%                                                                                                                   |
| Multiplier       | 20%                                                                                                                  |
| JumpMultiplier   | 500%                                                                                                                 |
| Kink 1           | 70%                                                                                                                  |
| Kink 2           | 80%                                                                                                                  |
| Contract Address | [0xEb689084bD7990604Eef53376D269f87CB12cA63](https://bscscan.com/address/0xEb689084bD7990604Eef53376D269f87CB12cA63) |

## Cake Liquidity Provider token (CakeLP)

![](/files/-Mb9Y3_YCzFjfWI-mt6e)

| Parameter        | Value                                                                                                                              |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| Category         | CakeLP                                                                                                                             |
| Tokens           | <p>CAKE-LP-CAKE-BNB v2</p><p>CAKE-LP-BNB-BUSD v2</p><p>CAKE-LP-BTCB-BNB v2</p><p>CAKE-LP-ETH-BNB v2</p><p>CAKE-LP-USDT-BUSD v2</p> |
| Base             | 10%                                                                                                                                |
| Multiplier       | 55%                                                                                                                                |
| JumpMultiplier   | 180%                                                                                                                               |
| Kink             | 50%                                                                                                                                |
| Contract Address | [0x0A4F9Ab20A56DD4624266c610B5F960Bd72C5710](https://bscscan.com/address/0x0A4F9Ab20A56DD4624266c610B5F960Bd72C5710)               |

### BNB

![](/files/JNHRBXhrBG9F2nOPc3CZ)

| Parameter        | Value                                                                                                                    |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Category         | BNB                                                                                                                      |
| Tokens           | BNB                                                                                                                      |
| Base             | 0%                                                                                                                       |
| Multiplier       | 8%                                                                                                                       |
| JumpMultiplier   | 550%                                                                                                                     |
| Kink 1           | 70%                                                                                                                      |
| Kink 2           | 95%                                                                                                                      |
| Contract Address | [0x92F70dE2D257f9a381AF47191506851aB405e8Ba](https://www.bscscan.com/address/0x92F70dE2D257f9a381AF47191506851aB405e8Ba) |


# Price Oracle

{% hint style="info" %}
Currently we use Band Protocol and our main Price Oracle on BSC, except VAI
{% endhint %}

| Contract         | Address                                                                                                              |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| PriceOracleProxy | [0xab548FFf4Db8693c999e98551C756E6C2948C408](https://bscscan.com/address/0xab548fff4db8693c999e98551c756e6c2948c408) |
| v1PriceOracle    | [0x9cF84A3cBd5368bFC08412851c4f2015eE078c2f](https://bscscan.com/address/0x9cf84a3cbd5368bfc08412851c4f2015ee078c2f) |


# C.R.E.A.M. Finance

Arbitrum documentation

{% hint style="info" %}
You can switch between Ethereum Mainnet, Binance Smart Chain and Fantom Opera in top-left corner
{% endhint %}

## Overview

### What is C.R.E.A.M. Finance

C.R.E.A.M. Finance is a decentralized lending protocol for individuals and protocols to access financial services. The protocol is permissionless, transparent, and non-custodial.

Currently, C.R.E.A.M. is live on Ethereum, Binance Smart Chain, and Fantom.

C.R.E.A.M. Finance’s smart contract money markets are focused on longtail assets -- with the goal of increasing capital efficiency for all assets in crypto markets.

Users are able to lend any supported assets on our markets, and use the provided capital as collateral to borrow another supported asset.

C.R.E.A.M. offers a wide range of tokens on our money markets, including: stablecoins (USDT, USDC, BUSD); interest-bearing stablecoins (yCRV, yyCRV); defi tokens (YFI, SUSHI, CREAM, CREAM); LP-tokens (USDC-ETH SLP, WBTC-ETH SLP); and other cryptocurrencies (ETH, LINK). This list is not exhaustive.

Please check the link below for the latest list of supported tokens:

{% content-ref url="/pages/-MKKrF7Auu-moU2zCAsB" %}
[Lending Contract Address](/arbitrum/lending/lending-contract-address)
{% endcontent-ref %}

### How to Use C.R.E.A.M. Finance?

Borrow and lend tokens on [app.cream.finance](https://app.cream.finance/)


# Flash Loans

conforming to EIP-3156

## Overview

C.R.E.A.M. is bringing Flash Loans to our money markets.

Flash Loans allow developers access to undercollateralized loans, provided that the borrowed amount (and fee) is returned within one transaction block.

Flash Loans offer a wide range of use cases, including democratized liquidations, arbitrage, collateral swapping and interest rate swapping.

Our Flash Loans feature is very similar to [AAVE Flash Loans V1](https://aave.com/flash-loans), except C.R.E.A.M. Flash Loans are implemented on crToken.

There are 3 major differences between C.R.E.A.M. Flash Loans and AAVE v1 Flash Loans:

1. Using C.R.E.A.M. Flash Loans devs **interact with flashLoanLender contract ,** instead of the lending pool.
2. C.R.E.A.M has deployed two flashLoanLenders that conform to EIP-3156; one for Lending and one for IronBank.
3. Fee is cheaper. C.R.E.A.M. fee is 0.03%

{% hint style="info" %}
Not all markets support Flash Loan. Check out [Contract Address](/arbitrum/lending/lending-contract-address#crtoken-address).
{% endhint %}

## flashloanLender

[0x4eCEDdF62277eD78623f9A94995c680f8fd6C00e](https://arbiscan.io/address/0x4eCEDdF62277eD78623f9A94995c680f8fd6C00e)

## Step by step guide

Please refer to Ethereum mainnet's [documentation](https://docs.cream.finance/flash-loans-1/flash-loans-eip-3156).


# Lending Contract Address

### crToken address

| Contract | Address                                                                                                              | Flash Loans |
| -------- | -------------------------------------------------------------------------------------------------------------------- | ----------- |
| crETH    | [0x5441090C0401EE256b09DEb35679Ad175d1a0c97](https://arbiscan.io/address/0x5441090C0401EE256b09DEb35679Ad175d1a0c97) | Yes         |
| crUSDC   | [0xd5794ea7b269dB3a0CCB396774Cc2D0936FFBD86](https://arbiscan.io/address/0xd5794ea7b269dB3a0CCB396774Cc2D0936FFBD86) | Yes         |
| crUSDT   | [0x5eb35dAF9EF97E9e8cc33C486Bad884a62CAe9Ce](https://arbiscan.io/address/0x5eb35dAF9EF97E9e8cc33C486Bad884a62CAe9Ce) | Yes         |

### Protocol address

| Contract    | Address                                                                                                              |
| ----------- | -------------------------------------------------------------------------------------------------------------------- |
| CREAM       | [0xf4d48ce3ee1ac3651998971541badbb9a14d7234](https://arbiscan.io/address/0xf4d48ce3ee1ac3651998971541badbb9a14d7234) |
| Comptroller | [0xbadaC56c9aca307079e8B8FC699987AAc89813ee](https://arbiscan.io/address/0xbadaC56c9aca307079e8B8FC699987AAc89813ee) |
| PriceOracle | [0xE82225bA6BeD28406912522F01C7102DD9f07e78](https://arbiscan.io/address/0xE82225bA6BeD28406912522F01C7102DD9f07e78) |
| Lens        | [0x139Dd8Bb6355d20342e08ff013150b1aE5040a42](https://arbiscan.io/address/0x139Dd8Bb6355d20342e08ff013150b1aE5040a42) |

### Other address

| Contract                   | Address                                                                                                              |
| -------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| Comptroller Implementation | [0xcc3E89fBc10e155F1164f8c9Cf0703aCDe53f6Fd](https://arbiscan.io/address/0xcc3E89fBc10e155F1164f8c9Cf0703aCDe53f6Fd) |
| PriceOracleV1              | [0x20ca53e2395fa571798623f1cfbd11fe2c114c24](https://arbiscan.io/address/0x20ca53e2395fa571798623f1cfbd11fe2c114c24) |


# Collateral Factor & Reserve Factor

| Contract | Collateral factor | Reserve factor |
| -------- | ----------------- | -------------- |
| ETH      | 75%               | 15%            |
| USDC     | 75%               | 10%            |
| USDT     | 75%               | 10%            |


# Interest Rate Model

## APY Function

**Borrow APY**

\= \[1 + Base + Multiplier \* min(UtilizationRate, Kink) + max(JumpMultiplier \* UtilizationRate - Kink, 0)] ^ 2102400 - 1

**Supply APY**

\= Distribute (Interest Paid by Borrowers Per Block - Reserve) to all suppliers, and convert it into APY

\= Distribute \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) to all suppliers, and convert it into APY

\= {\[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply}, and convert it into APY

\= {1 + \[(1 + Borrow APY) ^ (1/BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply} ^ BlocksPerYear - 1

\= **{1+\[(1+Borrow APY)^(1/BlocksPerYear)-1]\*(1-Reserve Factor)\*Utilization Rate}^BlocksPerYear-1**

{% hint style="info" %}
BlocksPerYear = 2,102,400 (15 sec per block)
{% endhint %}

{% hint style="info" %}
Find other variables in [Markets](https://app.cream.finance/markets/arbitrum)
{% endhint %}

## Major

![](/files/-MeyhNPyd_SGxgs6t9oD)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Major                                                                                                                |
| Tokens           | ETH                                                                                                                  |
| Base             | 0%                                                                                                                   |
| Multiplier       | 15%                                                                                                                  |
| JumpMultiplier   | 200%                                                                                                                 |
| Kink 1           | 80%                                                                                                                  |
| Kink 2           | 90%                                                                                                                  |
| Contract Address | [0x3FaE5e5722C51cdb5B0afD8c7082e8a6AF336Ee8](https://arbiscan.io/address/0x3FaE5e5722C51cdb5B0afD8c7082e8a6AF336Ee8) |

## Stable

![](/files/-MeyhooS3AqFaWto4BNT)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Stable                                                                                                               |
| Tokens           | USDC, USDT                                                                                                           |
| Base             | 0%                                                                                                                   |
| Multiplier       | 18%                                                                                                                  |
| JumpMultiplier   | 800%                                                                                                                 |
| Kink 1           | 80%                                                                                                                  |
| Kink 2           | 90%                                                                                                                  |
| Contract Address | [0x7ef18d0a9C3Fb1A716FF6c3ED0Edf52a2427F716](https://arbiscan.io/address/0x7ef18d0a9C3Fb1A716FF6c3ED0Edf52a2427F716) |

## Governance + Seed

![](/files/-MfHVQTTiisDMldTfQAm)

| Parameter        | Value                                                                                                                |
| ---------------- | -------------------------------------------------------------------------------------------------------------------- |
| Category         | Governance & Seeds                                                                                                   |
| Tokens           |                                                                                                                      |
| Base             | 0%                                                                                                                   |
| Multiplier       | 20%                                                                                                                  |
| JumpMultiplier   | 500%                                                                                                                 |
| Kink 1           | 70%                                                                                                                  |
| Kink 2           | 80%                                                                                                                  |
| Contract Address | [0x5Dc3A30d8c5937f1529C3c93507C16d86A17072A](https://arbiscan.io/address/0x5Dc3A30d8c5937f1529C3c93507C16d86A17072A) |


# Price Oracle

{% hint style="info" %}
Currently we use Chainlink as our major price oracle
{% endhint %}

| Contract            | Address                                                                                                              |
| ------------------- | -------------------------------------------------------------------------------------------------------------------- |
| PriceOracleProxyUSD | [0xE82225bA6BeD28406912522F01C7102DD9f07e78](https://arbiscan.io/address/0xE82225bA6BeD28406912522F01C7102DD9f07e78) |
| v1PriceOracle       | [0x20ca53e2395fa571798623f1cfbd11fe2c114c24](https://arbiscan.io/address/0x20ca53e2395fa571798623f1cfbd11fe2c114c24) |


# C.R.E.A.M. Finance

Polygon documentation

{% hint style="info" %}
You can switch between Ethereum Mainnet, Binance Smart Chain and Fantom Opera in top-left corner
{% endhint %}

## Overview

### What is C.R.E.A.M. Finance?

C.R.E.A.M. Finance is a decentralized lending protocol for individuals and protocols to access financial services. The protocol is permissionless, transparent, and non-custodial.

Currently, C.R.E.A.M. is live on Ethereum, Binance Smart Chain, and Fantom.

C.R.E.A.M. Finance’s smart contract money markets are focused on longtail assets -- with the goal of increasing capital efficiency for all assets in crypto markets.

Users are able to lend any supported assets on our markets, and use the provided capital as collateral to borrow another supported asset.

C.R.E.A.M. offers a wide range of tokens on our money markets, including: stablecoins (USDT, USDC, BUSD); interest-bearing stablecoins (yCRV, yyCRV); defi tokens (YFI, SUSHI, CREAM, CREAM); LP-tokens (USDC-ETH SLP, WBTC-ETH SLP); and other cryptocurrencies (ETH, LINK). This list is not exhaustive.

Please check the link below for the latest list of supported tokens:

{% content-ref url="/pages/-MKKoTGL9RMFErxbppzr" %}
[Lending Contract Address](/polygon/lending/lending-contract-address)
{% endcontent-ref %}

### How to use C.R.E.A.M. Finance?

Borrow and lend tokens on [app.cream.finance](https://app.cream.finance/)


# Flash Loans

## Overview

C.R.E.A.M. is bringing Flash Loans to our money markets.

Flash Loans allow developers access to undercollateralized loans, provided that the borrowed amount (and fee) is returned within one transaction block.

Flash Loans offer a wide range of use cases, including democratized liquidations, arbitrage, collateral swapping and interest rate swapping.

Our Flash Loans feature is very similar to [AAVE Flash Loans V1](https://aave.com/flash-loans), except C.R.E.A.M. Flash Loans are implemented on crToken.

There are 3 major differences between C.R.E.A.M. Flash Loans and AAVE v1 Flash Loans:

1. Using C.R.E.A.M. Flash Loans devs **interact with flashLoanLender contract ,** instead of the lending pool.
2. C.R.E.A.M has deployed two flashLoanLenders that conform to EIP-3156; one for Lending and one for IronBank.
3. Fee is cheaper. C.R.E.A.M. fee is 0.03%

{% hint style="info" %}
Not all markets support Flash Loan. Check out [Contract Address](/polygon/lending/lending-contract-address#crtoken-address).
{% endhint %}

## flashloanLender

[0xb3c68d69E95B095ab4b33B4cB67dBc0fbF3Edf56](https://polygonscan.com/address/0xb3c68d69E95B095ab4b33B4cB67dBc0fbF3Edf56)

## Step by step guide

Please refer to Ethereum mainnet's [documentation](https://docs.cream.finance/flash-loans-1/flash-loans-eip-3156).


# Lending Contract Address

### crToken Address

| Contract | Address                                                                                                                  | Flash Loans |
| -------- | ------------------------------------------------------------------------------------------------------------------------ | ----------- |
| crMATIC  | [0x3FaE5e5722C51cdb5B0afD8c7082e8a6AF336Ee8](https://polygonscan.com/address/0x3fae5e5722c51cdb5b0afd8c7082e8a6af336ee8) | Yes         |
| crUSDC   | [0x73CF8c5D14Aa0EbC89f18272A568319F5BAB6cBD](https://polygonscan.com/address/0x73CF8c5D14Aa0EbC89f18272A568319F5BAB6cBD) | Yes         |
| crUSDT   | [0xf976C9bc0E16B250E0B1523CffAa9E4c07Bc5C8a](https://polygonscan.com/address/0xf976C9bc0E16B250E0B1523CffAa9E4c07Bc5C8a) | Yes         |
| crDAI    | [0x4eCEDdF62277eD78623f9A94995c680f8fd6C00e](https://polygonscan.com/address/0x4eCEDdF62277eD78623f9A94995c680f8fd6C00e) | Yes         |
| crWETH   | [0x7ef18d0a9C3Fb1A716FF6c3ED0Edf52a2427F716](https://polygonscan.com/address/0x7ef18d0a9C3Fb1A716FF6c3ED0Edf52a2427F716) | Yes         |
| crWBTC   | [0x5Dc3A30d8c5937f1529C3c93507C16d86A17072A](https://polygonscan.com/address/0x5Dc3A30d8c5937f1529C3c93507C16d86A17072A) | Yes         |
| crLINK   | [0x20d5d319C2964ecb52e1B006a4C059b7f6d6ad0a](https://polygonscan.com/address/0x20d5d319C2964ecb52e1B006a4C059b7f6d6ad0a) | Yes         |
| crSUSHI  | [0x468a7BF78f11Da82c90b17a93adb7B14999aF5AB](https://polygonscan.com/address/0x468a7BF78f11Da82c90b17a93adb7B14999aF5AB) | Yes         |
| crCRV    | [0xE82225bA6BeD28406912522F01C7102DD9f07e78](https://polygonscan.com/address/0xE82225bA6BeD28406912522F01C7102DD9f07e78) | Yes         |
| crQUICK  | [0x2eE80614Ccbc5e28654324a66A396458Fa5cD7Cc](https://polygonscan.com/address/0x2eE80614Ccbc5e28654324a66A396458Fa5cD7Cc) | Yes         |
| crAAVE   | [0x4486835e0C567A320C0636d8F6e6e6679A46a271](https://polygonscan.com/address/0x4486835e0c567a320c0636d8f6e6e6679a46a271) | Yes         |
| crDPI    | [0xfBbfa5fd64246046e683c423aa2AB0470fbD328D](https://polygonscan.com/address/0xfBbfa5fd64246046e683c423aa2AB0470fbD328D) | Yes         |
| crFXS    | [0x9B21EB2E30D8320c3c1b8d8465284D78E58cB971](https://polygonscan.com/address/0x9B21EB2E30D8320c3c1b8d8465284D78E58cB971) | Yes         |
| crSNX    | [0xd4409B8D17d5d49a7ed9Ae734B0E8EdBa29b9FFA](https://polygonscan.com/address/0xd4409B8D17d5d49a7ed9Ae734B0E8EdBa29b9FFA) | Yes         |
| crUNI    | [0x7ea7174dD0CB4Ab84f42177F01e9a8a79475d381](https://polygonscan.com/address/0x7ea7174dD0CB4Ab84f42177F01e9a8a79475d381) | Yes         |
| crIBBTC  | [0x98182BF525A4252C436ac349a4b79c7E6cd0EB7A](https://polygonscan.com/address/0x98182BF525A4252C436ac349a4b79c7E6cd0EB7A) | Yes         |

### Protocol Address

| Contract    | Address                                                                                                                  |
| ----------- | ------------------------------------------------------------------------------------------------------------------------ |
| Comptroller | [0x20CA53E2395FA571798623F1cFBD11Fe2C114c24](https://polygonscan.com/address/0x20CA53E2395FA571798623F1cFBD11Fe2C114c24) |
| Lens        | [0x139Dd8Bb6355d20342e08ff013150b1aE5040a42](https://polygonscan.com/address/0x139Dd8Bb6355d20342e08ff013150b1aE5040a42) |


# Collateral Factor & Reserve Factor

The reserve factor is the percentage of Fee paid to CREAM protocol. If the reserve factor is 10, then that would imply that 10% of the interest paid on the asset is for CREAM.

In the other hand, the collateral factor is the maximum you can borrow on a particular asset.

Example: The collateral factor for ETH is 75%, if the price of ETH is considered as $1000, the max you will be able to borrow in other assets is worth $750

| Token | Collateral Factor | Reserve Factor |
| ----- | ----------------- | -------------- |
| MATIC | 75%               | 10%            |
| USDC  | 85%               | 10%            |
| USDT  | 75%               | 10%            |
| DAI   | 80%               | 10%            |
| WETH  | 82.5%             | 10%            |
| WBTC  | 75%               | 10%            |
| LINK  | 65%               | 20%            |
| SUSHI | 45%               | 20%            |
| CRV   | 45%               | 20%            |
| QUICK | 45%               | 20%            |
| AAVE  | 65%               | 20%            |
| DPI   | 45%               | 20%            |
| FXS   | 45%               | 20%            |
| SNX   | 45%               | 20%            |
| UNI   | 65%               | 20%            |
| ibBTC | 65%               | 10%            |


# Interest Rate Model

## APY Function

**Borrow APY**

\= \[1 + Base + Multiplier \* min(UtilizationRate, Kink) + max(JumpMultiplier \* UtilizationRate - Kink, 0)] ^ 15768000 - 1

**Supply APY**

\= Distribute (Interest Paid by Borrowers Per Block - Reserve) to all suppliers, and convert it into APY

\= Distribute \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) to all suppliers, and convert it into APY

\= {\[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply}, and convert it into APY

\= {1 + \[(1 + Borrow APY) ^ (1 / BlocksPerYear) - 1] \* Total Borrow \* (1 - Reserve Factor) / Total Supply} ^ BlocksPerYear - 1

\= **{1+\[(1+Borrow APY)^(1/BlocksPerYear)-1]\*(1-Reserve Factor)\*Utilization Rate}^BlocksPerYear-1**

{% hint style="info" %}
BlocksPerYear = 15,768,000 (2 sec per block)
{% endhint %}

{% hint style="info" %}
Find other variables in [Markets](https://app.cream.finance/markets)
{% endhint %}

## Major

![](/files/-MdMON6tU8KjLiYlbDYm)

| Parameter        | Value                                                                                                                    |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Category         | Major                                                                                                                    |
| Tokens           | MATIC, WETH, WBTC, ibBTC                                                                                                 |
| Base             | 0%                                                                                                                       |
| Multiplier       | 15%                                                                                                                      |
| JumpMultiplier   | 500%                                                                                                                     |
| Kink 1           | 80%                                                                                                                      |
| Kink 2           | 90%                                                                                                                      |
| Contract Address | [0xB1FD648D8CA4bE22445963554b85AbbFC210BC83](https://polygonscan.com/address/0xB1FD648D8CA4bE22445963554b85AbbFC210BC83) |

## Stable

![](/files/-MdMLOOaAC-oXb_-If8v)

| Parameter        | Value                                                                                                                    |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Category         | Stable                                                                                                                   |
| Tokens           | USDT, USDC, DAI                                                                                                          |
| Base             | 0%                                                                                                                       |
| Multiplier       | 23%                                                                                                                      |
| JumpMultiplier   | 800%                                                                                                                     |
| Kink 1           | 80%                                                                                                                      |
| Kink 2           | 90%                                                                                                                      |
| Contract Address | [0x379555965fcdbA7A40e8B5b5eF4786f51ADeeF31](https://polygonscan.com/address/0x379555965fcdbA7A40e8B5b5eF4786f51ADeeF31) |

## Governance

![](/files/-MdMOaArrJwLDIvr_qP9)

| Parameter        | Value                                                                                                                    |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------ |
| Category         | Governance                                                                                                               |
| Tokens           | LINK, SUSHI, CRV, QUICK, AAVE, DPI, FXS, SNX, UNI                                                                        |
| Base             | 0%                                                                                                                       |
| Multiplier       | 20%                                                                                                                      |
| JumpMultiplier   | 500%                                                                                                                     |
| Kink 1           | 70%                                                                                                                      |
| Kink 2           | 80%                                                                                                                      |
| Contract Address | [0x06288754f31d100039b21e62a429e4B81E56B626](https://polygonscan.com/address/0x06288754f31d100039b21e62a429e4B81E56B626) |


# Price Oracle

How C.R.E.A.M. Finance get token price

{% hint style="info" %}
We use Chainlink as our major price oracle
{% endhint %}

### Chainlink

For the following tokens, we use price feed provided by Chainlink:

MATIC / USDC / USDT / DAI / WETH / WBTC / LINK / SUSHI / AAVE / DPI / FXS / SNX / UNI

For the following BTC-pegged tokens, we use BTC price instead:

* ibBTC

### C.R.E.A.M. Finance

For the other tokens, we use our own price oracle to get the price.

### Price Oracle Address

| Contract            | Address                                                                                                                  |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| v1PriceOracle       | [0x0a4AcCD9D150AD4DDC7eA2e6151243CE668Bf2f5](https://polygonscan.com/address/0x0a4AcCD9D150AD4DDC7eA2e6151243CE668Bf2f5) |
| PriceOracleProxyUSD | [0x812C0b2a2A0A74f6f6ed620Fbd2B67Fec7DB2190](https://polygonscan.com/address/0x812C0b2a2A0A74f6f6ed620Fbd2B67Fec7DB2190) |


