Block Deployed | 15684640 | 7724484 | 11150062 | |
---|---|---|---|---|
Diamond Contracts | Mainnet | Goerli | Rinkeby | |
Diamond.sol |
Core meTokens protocol proxy contract. Through it you can query all meTokens facets and return stored meTokens protocol data. | 0x0B4ec400e8D10218D0869a5b0036eA4BCf92d905 | 0xBdC97D61E8198880c966716df8613cb2fE073D90 | 0x357d636c40A8E3FbFC983D960292D9fEf56104cb |
DiamondCutFacet.sol |
Called by governance to add, replace, and remove functions of a facet, as well as add new facets to meTokens protocol. | 0x82419BBb80C20BA4945Af39a11e26d3Be13E8C3C | 0x899Ea44C5140a66d83C44E5B856e9feEf3aa87d6 | 0x7c7aa31bb530a4B9b6E4F3d0d1a22C92e35d1EFA |
DiamondLoupeFacet.sol |
Provides helper functions for tools to look at the meTokens diamond and query information such as all facet addresses and their function selectors. | 0x59F96e820A1f11Ad6FAeEE11513Ed163B109494B | 0x6c8E3DF44E602aBf638e083e4BD3039BA3707133 | 0x5B76A197e8E546c2F728d678DC36b747B1295021 |
OwnershipFacet.sol |
Provides access control for meTokens protocol. Learn more HERE. | 0xBf4c9c5eaf23C0210b343896Ad0aECb70d74bCFb | 0x8c9ce2b1DaD40EA6fd95C0acFbEA977519De5099 | 0xd97f0E387f2A57662a231d61400ed55AcD0b4c74 |
Core Contracts | ||||
MeTokenRegistryFacet.sol |
Manages all state for a meToken within meTokens protocol. From it you can create your meToken and subscribe to a hub, resubscribe your meToken to a different hub, and transfer ownership of your meToken to another user. | 0x8b91FcF2230ab04A46e2D83aaF062EC1B5AAAa5c | 0xab90dDCBD864c4D6f51B20d969E06d70399aB79d | 0x4194072271Ac8b48aC593aF8e41ef421Eee1d592 |
FoundryFacet.sol |
Manages all minting and burning of meTokens, enables the donation of assets to a meToken owner, and provides calculations for the amount of meTokens minted from mint() and assets returned from burn() . |
0xA56AAF637b057a5EDf7b7252D0B7280042E71335 | 0x09a2e447ED411EaC76c5aff9168bde1f9D4B154f | 0xa09fb72e6befFce4761F427A899556D7c4b18CBB |
HubFacet.sol |
Manages all hubs for meTokens protocol. A hub is a unique configuration for a bonding curve of which any meToken can subscribe to. When a meToken is subscribed to a hub, it will also use that hubs’ vault and underlying asset. | 0x4555cf6E984186F6C0dfeba1A26764b21553B39f | 0xa6A9320205A290903DA361b8a2073284787acF7f | 0x94458A55f626A551C3776B731981c8849c1E0E64 |
FeeFacet.sol |
Manages the fee rates for using meTokens, controlled by governance with a max rate of 5%. Fees for interacting with meTokens protocol may exist for: | |||
• Minting a meToken | ||||
• Burning a meToken as a user for the underlying asset | ||||
• Burning a meToken as the meToken issuer for the underlying asset | 0x3FC010F716A77d065D0c98663eB1Ce6a291edBAA | 0x13cD4179405356Ed7E54E0bB08358815Bb1Aa5e4 | 0x29BD82e1c0D845ffd641A5184eE3ece0eF151e19 | |
CurveFacet.sol |
Provides additional views into using the meTokens curve. This curve is identical to Bancor with an additional formula to calculate minting from 0 supply. | 0x480e29421F2b490d014468D5C527516Ee7f86f10 | 0xE4EDc07ccB3591ADeDa26d965bdE988Ec75a2Dc7 | 0xD1F3a93D5D241D24d5f81048A94D4F78d7d9a250 |
Registry Contracts | ||||
VaultRegistry.sol |
Manages approved vaults for a hub to use. | 0x3b1265e3997349B100764BA08416CCc277fbeeFb | 0x9e624C959bf9b69b833Acebdc80a4BC33751a42e | 0xf6Fb5D7dDC4fE2d3dbC6193F65bF7DDa844773e9 |
MigrationRegistry.sol |
Manages all migration routes for if a meToken changes its’ underlying asset by resubscribing to a different hub which uses a different vault and/or asset. | 0x247f600bAa33A3aAb7f93d6774Cb689ABC897517 | 0x8Ec7eA65769D8162b7706DD48F03d3dCc241ECAE | 0x73A6EABAf8b5E8A5A231b39d6baB16C3d5F25CEE |
Vault Contracts | ||||
SingleAssetVault.sol |
Base meTokens protocol vault which manages basic ERC20-like underlying assets of created meTokens. | 0x6BB0B4889663f507f50110B1606CE80aBe9a738d | 0x47fF07BfD0cdFaD6650177f661E8cC977FA8Bf36 | 0x2Dc5b10F1Bf395795b0c993Ccf031DC8E5b29491 |
SameAssetTransferMigration.sol |
Provides a SingleAssetVault to hold a meTokens’ underlying asset for when a meToken resubscribes to a different hub with the same underlying asset. |
|||
UniswapSingleTransferMigration.sol |
Provides a SingleAssetVault that instantly swaps a meTokens’ underlying asset to a new asset when the meToken is resubscribing to a different hub with a different underlying asset. It uses Chainlink’s Feed Registry to fetch the spot price of the asset and provides a max slippage protection of 5%. |
|||
Implementation Contracts | ||||
MeTokenFactory.sol |
Creates and deploys a users’ meToken based on the ERC20 standard. | 0x8D4ee3599aF814bF3Aa884c161f0dE81d9e97225 | 0x88B30Fe63473EeB33a0E2E8e46563c265AC3FD49 | 0x899716ba52378CaA30259A576F4c89329e512915 |
MeToken.sol |
This ERC20 contract defines every user-created MeToken and is created through the MeTokenFactory . |
|||
Auxiliary Contracts | ||||
MinimalFowarder.sol |
meTokens Protocol deployment of Open Zeppelin’s Minimal Fowarder. | 0x5fFb9EDD354f71AbE7F8bb26B8d9577D92B3efFd | 0xDE0a3a8946116f9b06Dfbc28252584c500a11cd7 | |
MetaTx EOA |
External Owned Account wallet that is paying for gas via meta-transactions for select community members | 0x060b688084e9ed9e5d69f045462ca82de55e41cd |
<aside> ⚠️ Note: Rinkeby contracts are deprecated
</aside>