Save Wrapper
The Save Wrapper bundles utility functions together to simplify multiple interactions with mStable's smart contract calls into one single call. Contract is immutable.
Ethereum Mainnet
Name | Contract | Address |
Save Wrapper |
function saveAndStake (address _mAsset, address _save, address _vault, uint256 _amount) external
Simply saves an mAsset and then into the vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_amount | uint256 | Units of mAsset to deposit to savings |
function saveAndStake (address _mAsset, address _save, address _vault, uint256 _amount, address _referrer) external
Simply saves an mAsset and then into the vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_amount | uint256 | Units of mAsset to deposit to savings |
_referrer | address | Referrer address for this deposit. |
function saveViaMint (address _mAsset, address _bAsset, address _save, address _vault, uint256 _amount, uint256 _minOut, bool _stake) external
Mints an mAsset and then deposits to Save/Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_bAsset | address | bAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_amount | uint256 | Amount of bAsset to mint with |
_minOut | uint256 | Min amount of mAsset to get back |
_stake | bool | Add the imAsset to the Boosted Savings Vault? |
function saveViaMint (address _mAsset, address _bAsset, address _save, address _vault, uint256 _amount, uint256 _minOut, bool _stake, address _referrer) external
Mints an mAsset and then deposits to Save/Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_bAsset | address | bAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_amount | uint256 | Amount of bAsset to mint with |
_minOut | uint256 | Min amount of mAsset to get back |
_stake | bool | Add the imAsset to the Boosted Savings Vault |
_referrer | address | Referrer address for this deposit. |
function saveViaSwap (address _mAsset, address _save, address _vault, address _feeder, address _fAsset, uint256 _fAssetQuantity, uint256 _minOutputQuantity, bool _stake) external
Swaps fAsset for mAsset and then deposits to Save/Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_feeder | address | Feeder Pool address |
_fAsset | address | fAsset address |
_fAssetQuantity | uint256 | Quantity of fAsset sent |
_minOutputQuantity | uint256 | Min amount of mAsset to be swapped and deposited |
_stake | bool | Deposit the imAsset in the Savings Vault? |
function saveViaSwap (address _mAsset, address _save, address _vault, address _feeder, address _fAsset, uint256 _fAssetQuantity, uint256 _minOutputQuantity, bool _stake, address _referrer) external
Swaps fAsset for mAsset and then deposits to Save/Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted Savings Vault address |
_feeder | address | Feeder Pool address |
_fAsset | address | fAsset address |
_fAssetQuantity | uint256 | Quantity of fAsset sent |
_minOutputQuantity | uint256 | Min amount of mAsset to be swapped and deposited |
_stake | bool | Deposit the imAsset in the Savings Vault? |
_referrer | address | Referrer address for this deposit. |
function saveViaUniswapETH (address _mAsset, address _save, address _vault, address _uniswap, uint256 _amountOutMin, address[] _path, uint256 _minOutMStable, bool _stake) external
Buys a bAsset on Uniswap with ETH, then mints imAsset via mAsset, optionally staking in the Boosted Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted vault address |
_uniswap | address | Uniswap router address |
_amountOutMin | uint256 | Min uniswap output in bAsset units |
_path | address[] | Sell path on Uniswap (e.g. [WETH, DAI]) |
_minOutMStable | uint256 | Min amount of mAsset to receive |
_stake | bool | Add the imAsset to the Savings Vault? |
function saveViaUniswapETH (address _mAsset, address _save, address _vault, address _uniswap, uint256 _amountOutMin, address[] _path, uint256 _minOutMStable, bool _stake, address _referrer) external
Buys a bAsset on Uniswap with ETH, then mints imAsset via mAsset,optionally staking in the Boosted Savings Vault
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_save | address | Save address |
_vault | address | Boosted vault address |
_uniswap | address | Uniswap router address |
_amountOutMin | uint256 | Min uniswap output in bAsset units |
_path | address[] | Sell path on Uniswap (e.g. [WETH, DAI]) |
_minOutMStable | uint256 | Min amount of mAsset to receive |
_stake | bool | Add the imAsset to the Savings Vault? |
_referrer | address | Referrer address for this deposit. |
function estimate_saveViaUniswapETH (address _mAsset, address _uniswap, uint256 _ethAmount, address[] _path) external returns (uint256 out)
Gets estimated mAsset output from a WETH > bAsset > mAsset trade
Parameter | Type | Description |
---|---|---|
_mAsset | address | mAsset address |
_uniswap | address | Uniswap router address |
_ethAmount | uint256 | ETH amount to sell |
_path | address[] | Sell path on Uniswap (e.g. [WETH, DAI]) |
Last modified 1yr ago