Address Contract Verified
Address
0x67C472fdD2851666aBE99B1Ec0F091cE3e06c365
Balance
0 ETH
Nonce
1
Code Size
1387 bytes
Creator
0x2D407dDb...d45C at tx 0x5637c4c6...608868
Indexed Transactions
0
Contract Bytecode
1387 bytes
0x608060405234801561001057600080fd5b50600436106100415760003560e01c806310d1e85c1461004657806339b37ab0146100d45780633d57b2a914610103575b600080fd5b6100d26004803603608081101561005c57600080fd5b6001600160a01b03823516916020810135916040820135919081019060808101606082013564010000000081111561009357600080fd5b8201836020820111156100a557600080fd5b803590602001918460018302840111640100000000831117156100c757600080fd5b50909250905061012c565b005b6100f1600480360360208110156100ea57600080fd5b50356102c3565b60408051918252519081900360200190f35b6100d26004803603606081101561011957600080fd5b5080359060208101359060400135610389565b738e595470ed749b85c6f7669de83eae304c2ec68f6001600160a01b031663a0712d68856040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561018657600080fd5b505af115801561019a573d6000803e3d6000fd5b505050506000828260208110156101b057600080fd5b506040805163317afabb60e21b815291356004830181905290519092507341c84c0e2ee0b740cf0d31f63f3b6f627dc6b3939163c5ebeaec91602480830192600092919082900301818387803b15801561020957600080fd5b505af115801561021d573d6000803e3d6000fd5b50506040805163a9059cbb60e01b815273c3d03e4f041fd4cd388c549ee2a29a9e5075882f600482015260248101859052905173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2935063a9059cbb925060448083019260209291908290030181600087803b15801561028f57600080fd5b505af11580156102a3573d6000803e3d6000fd5b505050506040513d60208110156102b957600080fd5b5050505050505050565b600080600073c3d03e4f041fd4cd388c549ee2a29a9e5075882f6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561031557600080fd5b505afa158015610329573d6000803e3d6000fd5b505050506040513d606081101561033f57600080fd5b50805160209091015190925090506dffffffffffffffffffffffffffff80821685026103e8029083168590036103e502600081838161037a57fe5b04600101979650505050505050565b6000546001600160a01b031633146103a057600080fd5b604080516323b872dd60e01b8152336004820152306024820152604481018390529051737589c9e17bcfce1ccaa1f921196fda177f0207fc916323b872dd9160648083019260209291908290030181600087803b15801561040057600080fd5b505af1158015610414573d6000803e3d6000fd5b505050506040513d602081101561042a57600080fd5b50506040805160208181018590528251808303820181528284019384905263022c0d9f60e01b909352604482018681526000606484018190523060848501819052608060a48601908152865160c4870152865173c3d03e4f041fd4cd388c549ee2a29a9e5075882f9763022c0d9f978c97959694959194939260e4909101918501908083838a5b838110156104c95781810151838201526020016104b1565b50505050905090810190601f1680156104f65780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561051857600080fd5b505af115801561052c573d6000803e3d6000fd5b5050505050505056fea2646970667358221220d162787e0511e61cb8fcff735774f00626c9ca7d8d3cbf52505f8cc5872ab97264736f6c63430007060033
Verified Source Code Full Match
Compiler: v0.7.6+commit.7338295f
EVM: istanbul
Optimization: Yes (200 runs)
lev.sol 77 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.5;
interface IERC20 {
function totalSupply() external view returns (uint256);
function decimals() external view returns (uint256);
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}
interface ISushiswapV2Pair {
function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast);
function mint(address to) external returns (uint liquidity);
function burn(address to) external returns (uint amount0, uint amount1);
function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external;
function sync() external;
}
interface IComptroller {
function enterMarkets(address[] memory cTokens) external;
}
interface cyToken {
function borrow(uint) external;
function mint(uint) external;
function redeem(uint) external;
function repayBorrow(uint) external;
}
contract xVault {
address owner;
IComptroller constant COMPTROLLER = IComptroller(0xAB1c342C7bf5Ec5F02ADEA1c2270670bCa144CbB);
address constant cyDAI = address(0x8e595470Ed749b85C6F7669de83EAe304C2ec68F);
address constant cyWETH = address(0x41c84c0e2EE0b740Cf0d31F63f3B6F627DC6b393);
address constant cyY3CRV = address(0x7589C9E17BCFcE1Ccaa1f921196FDa177F0207Fc);
ISushiswapV2Pair constant WETHDAI = ISushiswapV2Pair(0xC3D03e4F041Fd4cD388c549Ee2A29a9E5075882f);
address constant WETH = address(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2);
address constant DAI = address(0x6B175474E89094C44Da98b954EedeAC495271d0F);
constructor() {
owner = msg.sender;
address[] memory _markets = new address[](3);
_markets[0] = cyDAI;
_markets[1] = cyWETH;
_markets[2] = cyY3CRV;
COMPTROLLER.enterMarkets(_markets);
IERC20(DAI).approve(cyDAI, uint(-1));
}
function open(uint dai, uint weth, uint mamt) external {
require(owner == msg.sender);
IERC20(cyY3CRV).transferFrom(msg.sender, address(this), mamt);
WETHDAI.swap(dai, 0, address(this), abi.encode(weth));
}
function fee(uint amount0) external view returns (uint) {
(uint112 daiReserves, uint112 wethReserves,) = WETHDAI.getReserves();
uint numerator = wethReserves * amount0 * 1000;
uint denominator = (daiReserves - amount0) * 997;
uint wethAmount = numerator / denominator + 1;
return wethAmount;
}
function uniswapV2Call(address sender, uint amount0, uint amount1, bytes calldata data) external {
cyToken(cyDAI).mint(amount0);
(uint repay) = abi.decode(data, (uint));
cyToken(cyWETH).borrow(repay);
IERC20(WETH).transfer(address(WETHDAI), repay);
}
}
Read Contract
fee 0x39b37ab0 → uint256
Write Contract 2 functions
These functions modify contract state and require a wallet transaction to execute.
open 0x3d57b2a9
uint256 dai
uint256 weth
uint256 mamt
uniswapV2Call 0x10d1e85c
address sender
uint256 amount0
uint256 amount1
bytes data
Recent Transactions
No transactions found for this address