More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 5,801 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Dodo Mutli Swap | 32507059 | 650 days ago | IN | 0 AVAX | 0.01530075 | ||||
Mix Swap | 30819566 | 690 days ago | IN | 0.1 AVAX | 0.00655272 | ||||
Mix Swap | 30817284 | 690 days ago | IN | 0 AVAX | 0.0096823 | ||||
Mix Swap | 30816106 | 690 days ago | IN | 0 AVAX | 0.0068682 | ||||
Mix Swap | 30816044 | 690 days ago | IN | 0 AVAX | 0.00681287 | ||||
Dodo Mutli Swap | 30764335 | 692 days ago | IN | 0 AVAX | 0.00756617 | ||||
Mix Swap | 30755976 | 692 days ago | IN | 0 AVAX | 0.0054667 | ||||
Mix Swap | 30681713 | 694 days ago | IN | 0.00015 AVAX | 0.00175264 | ||||
Mix Swap | 30681555 | 694 days ago | IN | 0.00027 AVAX | 0.00148674 | ||||
Mix Swap | 30681234 | 694 days ago | IN | 0.0003 AVAX | 0.00182549 | ||||
Mix Swap | 30680490 | 694 days ago | IN | 0.00045 AVAX | 0.0014404 | ||||
Mix Swap | 30677743 | 694 days ago | IN | 0.0005 AVAX | 0.00139935 | ||||
Mix Swap | 30677634 | 694 days ago | IN | 0.00025 AVAX | 0.00139673 | ||||
Mix Swap | 30677499 | 694 days ago | IN | 0.00037 AVAX | 0.001409 | ||||
Mix Swap | 30456400 | 699 days ago | IN | 0.00043 AVAX | 0.00139705 | ||||
Mix Swap | 30451480 | 699 days ago | IN | 0.00032 AVAX | 0.00140704 | ||||
Mix Swap | 30450753 | 699 days ago | IN | 0.00031 AVAX | 0.00139935 | ||||
Mix Swap | 30448738 | 699 days ago | IN | 0.00039 AVAX | 0.00139705 | ||||
Mix Swap | 30448521 | 699 days ago | IN | 0.00022 AVAX | 0.00167156 | ||||
Mix Swap | 30447579 | 699 days ago | IN | 0.00044 AVAX | 0.00140736 | ||||
Mix Swap | 30446083 | 699 days ago | IN | 0.00029 AVAX | 0.00140736 | ||||
Mix Swap | 30445287 | 699 days ago | IN | 0.00046 AVAX | 0.00140104 | ||||
Mix Swap | 30442220 | 699 days ago | IN | 0.00015 AVAX | 0.00140704 | ||||
Mix Swap | 30439879 | 699 days ago | IN | 0.00015 AVAX | 0.00140526 | ||||
Mix Swap | 30434524 | 699 days ago | IN | 0.00032 AVAX | 0.00983987 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
32575717 | 649 days ago | 0.0346 AVAX | ||||
32575717 | 649 days ago | 0.0346 AVAX | ||||
32563870 | 649 days ago | 12 AVAX | ||||
32563870 | 649 days ago | 12 AVAX | ||||
32563658 | 649 days ago | 12 AVAX | ||||
32563658 | 649 days ago | 12 AVAX | ||||
32563625 | 649 days ago | 12 AVAX | ||||
32563625 | 649 days ago | 12 AVAX | ||||
32559611 | 649 days ago | 87 AVAX | ||||
32559611 | 649 days ago | 87 AVAX | ||||
32553500 | 649 days ago | 0.005 AVAX | ||||
32553500 | 649 days ago | 0.005 AVAX | ||||
32550837 | 649 days ago | 1.98602 AVAX | ||||
32550837 | 649 days ago | 1.98602 AVAX | ||||
32543990 | 650 days ago | 12.26325994 AVAX | ||||
32543990 | 650 days ago | 12.26325994 AVAX | ||||
32543279 | 650 days ago | 11.45 AVAX | ||||
32543279 | 650 days ago | 11.45 AVAX | ||||
32542953 | 650 days ago | 11.83 AVAX | ||||
32542953 | 650 days ago | 11.83 AVAX | ||||
32513977 | 650 days ago | 1 AVAX | ||||
32513977 | 650 days ago | 1 AVAX | ||||
32512855 | 650 days ago | 20 AVAX | ||||
32512855 | 650 days ago | 20 AVAX | ||||
32499186 | 651 days ago | 0.54968 AVAX |
Loading...
Loading
Contract Name:
DODORouteProxy
Compiler Version
v0.6.9+commit.3e3065ac
Contract Source Code (Solidity)
/** *Submitted for verification at snowscan.xyz on 2021-12-21 */ // File: contracts/intf/IDODOApprove.sol /* Copyright 2020 DODO ZOO. SPDX-License-Identifier: Apache-2.0 */ pragma solidity 0.6.9; pragma experimental ABIEncoderV2; interface IDODOApprove { function claimTokens(address token,address who,address dest,uint256 amount) external; function getDODOProxy() external view returns (address); } // File: contracts/lib/InitializableOwnable.sol /** * @title Ownable * @author DODO Breeder * * @notice Ownership related functions */ contract InitializableOwnable { address public _OWNER_; address public _NEW_OWNER_; bool internal _INITIALIZED_; // ============ Events ============ event OwnershipTransferPrepared(address indexed previousOwner, address indexed newOwner); event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); // ============ Modifiers ============ modifier notInitialized() { require(!_INITIALIZED_, "DODO_INITIALIZED"); _; } modifier onlyOwner() { require(msg.sender == _OWNER_, "NOT_OWNER"); _; } // ============ Functions ============ function initOwner(address newOwner) public notInitialized { _INITIALIZED_ = true; _OWNER_ = newOwner; } function transferOwnership(address newOwner) public onlyOwner { emit OwnershipTransferPrepared(_OWNER_, newOwner); _NEW_OWNER_ = newOwner; } function claimOwnership() public { require(msg.sender == _NEW_OWNER_, "INVALID_CLAIM"); emit OwnershipTransferred(_OWNER_, _NEW_OWNER_); _OWNER_ = _NEW_OWNER_; _NEW_OWNER_ = address(0); } } // File: contracts/SmartRoute/DODOApproveProxy.sol interface IDODOApproveProxy { function isAllowedProxy(address _proxy) external view returns (bool); function claimTokens(address token,address who,address dest,uint256 amount) external; } /** * @title DODOApproveProxy * @author DODO Breeder * * @notice Allow different version dodoproxy to claim from DODOApprove */ contract DODOApproveProxy is InitializableOwnable { // ============ Storage ============ uint256 private constant _TIMELOCK_DURATION_ = 3 days; mapping (address => bool) public _IS_ALLOWED_PROXY_; uint256 public _TIMELOCK_; address public _PENDING_ADD_DODO_PROXY_; address public immutable _DODO_APPROVE_; // ============ Modifiers ============ modifier notLocked() { require( _TIMELOCK_ <= block.timestamp, "SetProxy is timelocked" ); _; } constructor(address dodoApporve) public { _DODO_APPROVE_ = dodoApporve; } function init(address owner, address[] memory proxies) external { initOwner(owner); for(uint i = 0; i < proxies.length; i++) _IS_ALLOWED_PROXY_[proxies[i]] = true; } function unlockAddProxy(address newDodoProxy) public onlyOwner { _TIMELOCK_ = block.timestamp + _TIMELOCK_DURATION_; _PENDING_ADD_DODO_PROXY_ = newDodoProxy; } function lockAddProxy() public onlyOwner { _PENDING_ADD_DODO_PROXY_ = address(0); _TIMELOCK_ = 0; } function addDODOProxy() external onlyOwner notLocked() { _IS_ALLOWED_PROXY_[_PENDING_ADD_DODO_PROXY_] = true; lockAddProxy(); } function removeDODOProxy (address oldDodoProxy) public onlyOwner { _IS_ALLOWED_PROXY_[oldDodoProxy] = false; } function claimTokens( address token, address who, address dest, uint256 amount ) external { require(_IS_ALLOWED_PROXY_[msg.sender], "DODOApproveProxy:Access restricted"); IDODOApprove(_DODO_APPROVE_).claimTokens( token, who, dest, amount ); } function isAllowedProxy(address _proxy) external view returns (bool) { return _IS_ALLOWED_PROXY_[_proxy]; } } // File: contracts/intf/IERC20.sol /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function name() external view returns (string memory); function symbol() external view returns (string memory); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); } // File: contracts/intf/IWETH.sol interface IWETH { function totalSupply() 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 src, address dst, uint256 wad ) external returns (bool); function deposit() external payable; function withdraw(uint256 wad) external; } // File: contracts/lib/SafeMath.sol /** * @title SafeMath * @author DODO Breeder * * @notice Math operations with safety checks that revert on error */ library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "MUL_ERROR"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { require(b > 0, "DIVIDING_ERROR"); return a / b; } function divCeil(uint256 a, uint256 b) internal pure returns (uint256) { uint256 quotient = div(a, b); uint256 remainder = a - quotient * b; if (remainder > 0) { return quotient + 1; } else { return quotient; } } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SUB_ERROR"); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "ADD_ERROR"); return c; } function sqrt(uint256 x) internal pure returns (uint256 y) { uint256 z = x / 2 + 1; y = x; while (z < y) { y = z; z = (x / z + z) / 2; } } } // File: contracts/lib/SafeERC20.sol /** * @title SafeERC20 * @dev Wrappers around ERC20 operations that throw on failure (when the token * contract returns false). Tokens that return no value (and instead revert or * throw on failure) are also supported, non-reverting calls are assumed to be * successful. * To use this library you can add a `using SafeERC20 for ERC20;` statement to your contract, * which allows you to call the safe operations as `token.safeTransfer(...)`, etc. */ library SafeERC20 { using SafeMath for uint256; function safeTransfer( IERC20 token, address to, uint256 value ) internal { _callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value)); } function safeTransferFrom( IERC20 token, address from, address to, uint256 value ) internal { _callOptionalReturn( token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value) ); } function safeApprove( IERC20 token, address spender, uint256 value ) internal { // safeApprove should only be called when setting an initial allowance, // or when resetting it to zero. To increase and decrease it, use // 'safeIncreaseAllowance' and 'safeDecreaseAllowance' // solhint-disable-next-line max-line-length require( (value == 0) || (token.allowance(address(this), spender) == 0), "SafeERC20: approve from non-zero to non-zero allowance" ); _callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value)); } /** * @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement * on the return value: the return value is optional (but if data is returned, it must not be false). * @param token The token targeted by the call. * @param data The call data (encoded using abi.encode or one of its variants). */ function _callOptionalReturn(IERC20 token, bytes memory data) private { // We need to perform a low level call here, to bypass Solidity's return data size checking mechanism, since // we're implementing it ourselves. // A Solidity high level call has three parts: // 1. The target address is checked to verify it contains contract code // 2. The call itself is made, and success asserted // 3. The return value is decoded, which in turn checks the size of the returned data. // solhint-disable-next-line max-line-length // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = address(token).call(data); require(success, "SafeERC20: low-level call failed"); if (returndata.length > 0) { // Return data is optional // solhint-disable-next-line max-line-length require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed"); } } } // File: contracts/SmartRoute/lib/UniversalERC20.sol library UniversalERC20 { using SafeMath for uint256; using SafeERC20 for IERC20; IERC20 private constant ETH_ADDRESS = IERC20(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE); function universalTransfer( IERC20 token, address payable to, uint256 amount ) internal { if (amount > 0) { if (isETH(token)) { to.transfer(amount); } else { token.safeTransfer(to, amount); } } } function universalApproveMax( IERC20 token, address to, uint256 amount ) internal { uint256 allowance = token.allowance(address(this), to); if (allowance < amount) { if (allowance > 0) { token.safeApprove(to, 0); } token.safeApprove(to, uint256(-1)); } } function universalBalanceOf(IERC20 token, address who) internal view returns (uint256) { if (isETH(token)) { return who.balance; } else { return token.balanceOf(who); } } function tokenBalanceOf(IERC20 token, address who) internal view returns (uint256) { return token.balanceOf(who); } function isETH(IERC20 token) internal pure returns (bool) { return token == ETH_ADDRESS; } } // File: contracts/SmartRoute/intf/IDODOAdapter.sol interface IDODOAdapter { function sellBase(address to, address pool, bytes memory data) external; function sellQuote(address to, address pool, bytes memory data) external; } // File: contracts/SmartRoute/proxies/DODORouteProxy.sol /** * @title DODORouteProxy * @author DODO Breeder * * @notice Entrance of Split trading in DODO platform */ contract DODORouteProxy { using SafeMath for uint256; using UniversalERC20 for IERC20; // ============ Storage ============ address constant _ETH_ADDRESS_ = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; address public immutable _WETH_; address public immutable _DODO_APPROVE_PROXY_; struct PoolInfo { uint256 direction; uint256 poolEdition; uint256 weight; address pool; address adapter; bytes moreInfo; } // ============ Events ============ event OrderHistory( address fromToken, address toToken, address sender, uint256 fromAmount, uint256 returnAmount ); // ============ Modifiers ============ modifier judgeExpired(uint256 deadLine) { require(deadLine >= block.timestamp, "DODORouteProxy: EXPIRED"); _; } fallback() external payable {} receive() external payable {} constructor ( address payable weth, address dodoApproveProxy ) public { _WETH_ = weth; _DODO_APPROVE_PROXY_ = dodoApproveProxy; } function mixSwap( address fromToken, address toToken, uint256 fromTokenAmount, uint256 minReturnAmount, address[] memory mixAdapters, address[] memory mixPairs, address[] memory assetTo, uint256 directions, bytes[] memory moreInfos, uint256 deadLine ) external payable judgeExpired(deadLine) returns (uint256 returnAmount) { require(mixPairs.length > 0, "DODORouteProxy: PAIRS_EMPTY"); require(mixPairs.length == mixAdapters.length, "DODORouteProxy: PAIR_ADAPTER_NOT_MATCH"); require(mixPairs.length == assetTo.length - 1, "DODORouteProxy: PAIR_ASSETTO_NOT_MATCH"); require(minReturnAmount > 0, "DODORouteProxy: RETURN_AMOUNT_ZERO"); address _fromToken = fromToken; address _toToken = toToken; uint256 _fromTokenAmount = fromTokenAmount; uint256 toTokenOriginBalance = IERC20(_toToken).universalBalanceOf(msg.sender); _deposit(msg.sender, assetTo[0], _fromToken, _fromTokenAmount, _fromToken == _ETH_ADDRESS_); for (uint256 i = 0; i < mixPairs.length; i++) { if (directions & 1 == 0) { IDODOAdapter(mixAdapters[i]).sellBase(assetTo[i + 1],mixPairs[i], moreInfos[i]); } else { IDODOAdapter(mixAdapters[i]).sellQuote(assetTo[i + 1],mixPairs[i], moreInfos[i]); } directions = directions >> 1; } if(_toToken == _ETH_ADDRESS_) { returnAmount = IWETH(_WETH_).balanceOf(address(this)); IWETH(_WETH_).withdraw(returnAmount); msg.sender.transfer(returnAmount); }else { returnAmount = IERC20(_toToken).tokenBalanceOf(msg.sender).sub(toTokenOriginBalance); } require(returnAmount >= minReturnAmount, "DODORouteProxy: Return amount is not enough"); emit OrderHistory( _fromToken, _toToken, msg.sender, _fromTokenAmount, returnAmount ); } function dodoMutliSwap( uint256 fromTokenAmount, uint256 minReturnAmount, uint256[] memory totalWeight, uint256[] memory splitNumber, address[] memory midToken, address[] memory assetFrom, bytes[] memory sequence, uint256 deadLine ) external payable judgeExpired(deadLine) returns (uint256 returnAmount) { require(assetFrom.length == splitNumber.length, 'DODORouteProxy: PAIR_ASSETTO_NOT_MATCH'); require(minReturnAmount > 0, "DODORouteProxy: RETURN_AMOUNT_ZERO"); uint256 _fromTokenAmount = fromTokenAmount; address fromToken = midToken[0]; address toToken = midToken[midToken.length - 1]; uint256 toTokenOriginBalance = IERC20(toToken).universalBalanceOf(msg.sender); _deposit(msg.sender, assetFrom[0], fromToken, _fromTokenAmount, fromToken == _ETH_ADDRESS_); _multiSwap(totalWeight, midToken, splitNumber, sequence, assetFrom); if(toToken == _ETH_ADDRESS_) { returnAmount = IWETH(_WETH_).balanceOf(address(this)); IWETH(_WETH_).withdraw(returnAmount); msg.sender.transfer(returnAmount); }else { returnAmount = IERC20(toToken).tokenBalanceOf(msg.sender).sub(toTokenOriginBalance); } require(returnAmount >= minReturnAmount, "DODORouteProxy: Return amount is not enough"); emit OrderHistory( fromToken, toToken, msg.sender, _fromTokenAmount, returnAmount ); } //====================== internal ======================= function _multiSwap( uint256[] memory totalWeight, address[] memory midToken, uint256[] memory splitNumber, bytes[] memory swapSequence, address[] memory assetFrom ) internal { for(uint256 i = 1; i < splitNumber.length; i++) { // define midtoken address, ETH -> WETH address uint256 curTotalAmount = IERC20(midToken[i]).tokenBalanceOf(assetFrom[i-1]); uint256 curTotalWeight = totalWeight[i-1]; for(uint256 j = splitNumber[i-1]; j < splitNumber[i]; j++) { PoolInfo memory curPoolInfo; { (address pool, address adapter, uint256 mixPara, bytes memory moreInfo) = abi.decode(swapSequence[j], (address, address, uint256, bytes)); curPoolInfo.direction = mixPara >> 17; curPoolInfo.weight = (0xffff & mixPara) >> 9; curPoolInfo.poolEdition = (0xff & mixPara); curPoolInfo.pool = pool; curPoolInfo.adapter = adapter; curPoolInfo.moreInfo = moreInfo; } if(assetFrom[i-1] == address(this)) { uint256 curAmount = curTotalAmount.mul(curPoolInfo.weight).div(curTotalWeight); if(curPoolInfo.poolEdition == 1) { //For using transferFrom pool (like dodoV1, Curve) IERC20(midToken[i]).transfer(curPoolInfo.adapter, curAmount); } else { //For using transfer pool (like dodoV2) IERC20(midToken[i]).transfer(curPoolInfo.pool, curAmount); } } if(curPoolInfo.direction == 0) { IDODOAdapter(curPoolInfo.adapter).sellBase(assetFrom[i], curPoolInfo.pool, curPoolInfo.moreInfo); } else { IDODOAdapter(curPoolInfo.adapter).sellQuote(assetFrom[i], curPoolInfo.pool, curPoolInfo.moreInfo); } } } } function _deposit( address from, address to, address token, uint256 amount, bool isETH ) internal { if (isETH) { if (amount > 0) { require(msg.value == amount, "ETH_VALUE_WRONG"); IWETH(_WETH_).deposit{value: amount}(); if (to != address(this)) SafeERC20.safeTransfer(IERC20(_WETH_), to, amount); } } else { IDODOApproveProxy(_DODO_APPROVE_PROXY_).claimTokens(token, from, to, amount); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address payable","name":"weth","type":"address"},{"internalType":"address","name":"dodoApproveProxy","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"fromToken","type":"address"},{"indexed":false,"internalType":"address","name":"toToken","type":"address"},{"indexed":false,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"fromAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"returnAmount","type":"uint256"}],"name":"OrderHistory","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"_DODO_APPROVE_PROXY_","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_WETH_","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"fromTokenAmount","type":"uint256"},{"internalType":"uint256","name":"minReturnAmount","type":"uint256"},{"internalType":"uint256[]","name":"totalWeight","type":"uint256[]"},{"internalType":"uint256[]","name":"splitNumber","type":"uint256[]"},{"internalType":"address[]","name":"midToken","type":"address[]"},{"internalType":"address[]","name":"assetFrom","type":"address[]"},{"internalType":"bytes[]","name":"sequence","type":"bytes[]"},{"internalType":"uint256","name":"deadLine","type":"uint256"}],"name":"dodoMutliSwap","outputs":[{"internalType":"uint256","name":"returnAmount","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"fromToken","type":"address"},{"internalType":"address","name":"toToken","type":"address"},{"internalType":"uint256","name":"fromTokenAmount","type":"uint256"},{"internalType":"uint256","name":"minReturnAmount","type":"uint256"},{"internalType":"address[]","name":"mixAdapters","type":"address[]"},{"internalType":"address[]","name":"mixPairs","type":"address[]"},{"internalType":"address[]","name":"assetTo","type":"address[]"},{"internalType":"uint256","name":"directions","type":"uint256"},{"internalType":"bytes[]","name":"moreInfos","type":"bytes[]"},{"internalType":"uint256","name":"deadLine","type":"uint256"}],"name":"mixSwap","outputs":[{"internalType":"uint256","name":"returnAmount","type":"uint256"}],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60c06040523480156200001157600080fd5b5060405162001ab938038062001ab9833981016040819052620000349162000053565b6001600160601b0319606092831b8116608052911b1660a052620000aa565b6000806040838503121562000066578182fd5b8251620000738162000091565b6020840151909250620000868162000091565b809150509250929050565b6001600160a01b0381168114620000a757600080fd5b50565b60805160601c60a05160601c6119c3620000f6600039806108b55280610a7452508060c152806103c3528061046252806106ea528061078952806109aa5280610a3252506119c36000f3fe6080604052600436106100435760003560e01c80630d4eec8f1461004c5780637617b389146100775780638179178814610097578063eb99be12146100aa5761004a565b3661004a57005b005b34801561005857600080fd5b506100616100bf565b60405161006e9190611560565b60405180910390f35b61008a61008536600461132f565b6100e3565b60405161006e91906118d5565b61008a6100a536600461145b565b61059a565b3480156100b657600080fd5b506100616108b3565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000814281101561010f5760405162461bcd60e51b815260040161010690611638565b60405180910390fd5b60008751116101305760405162461bcd60e51b81526004016101069061166f565b87518751146101515760405162461bcd60e51b8152600401610106906116a6565b60018651038751146101755760405162461bcd60e51b8152600401610106906117f9565b600089116101955760405162461bcd60e51b815260040161010690611794565b8b8b8b60006101b36001600160a01b0384163363ffffffff6108d716565b90506101fe338b6000815181106101c657fe5b6020026020010151868573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316896001600160a01b03161461097d565b60005b8b518110156103865760018a166102c8578c818151811061021e57fe5b60200260200101516001600160a01b03166330e6ae318c836001018151811061024357fe5b60200260200101518e848151811061025757fe5b60200260200101518c858151811061026b57fe5b60200260200101516040518463ffffffff1660e01b8152600401610291939291906115d2565b600060405180830381600087803b1580156102ab57600080fd5b505af11580156102bf573d6000803e3d6000fd5b5050505061037a565b8c81815181106102d457fe5b60200260200101516001600160a01b0316636f7929f28c83600101815181106102f957fe5b60200260200101518e848151811061030d57fe5b60200260200101518c858151811061032157fe5b60200260200101516040518463ffffffff1660e01b8152600401610347939291906115d2565b600060405180830381600087803b15801561036157600080fd5b505af1158015610375573d6000803e3d6000fd5b505050505b6001998a1c9901610201565b506001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156104fc576040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a08231906103f8903090600401611560565b60206040518083038186803b15801561041057600080fd5b505afa158015610424573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104489190611443565b604051632e1a7d4d60e01b81529096506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632e1a7d4d906104979089906004016118d5565b600060405180830381600087803b1580156104b157600080fd5b505af11580156104c5573d6000803e3d6000fd5b505060405133925088156108fc02915088906000818181858888f193505050501580156104f6573d6000803e3d6000fd5b50610528565b610525816105196001600160a01b0386163363ffffffff610ae916565b9063ffffffff610b1816565b95505b8c8610156105485760405162461bcd60e51b8152600401610106906116ec565b7f92ceb067a9883c85aba061e46b9edf505a0d6e81927c4b966ebed543a5221787848433858a60405161057f959493929190611574565b60405180910390a150505050509a9950505050505050505050565b600081428110156105bd5760405162461bcd60e51b815260040161010690611638565b86518551146105de5760405162461bcd60e51b8152600401610106906117f9565b600089116105fe5760405162461bcd60e51b815260040161010690611794565b60008a905060008760008151811061061257fe5b6020026020010151905060008860018a51038151811061062e57fe5b60200260200101519050600061065633836001600160a01b03166108d790919063ffffffff16565b90506106a1338a60008151811061066957fe5b6020026020010151858773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316886001600160a01b03161461097d565b6106ae8c8b8d8b8d610b40565b6001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415610823576040516370a0823160e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a082319061071f903090600401611560565b60206040518083038186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076f9190611443565b604051632e1a7d4d60e01b81529096506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690632e1a7d4d906107be9089906004016118d5565b600060405180830381600087803b1580156107d857600080fd5b505af11580156107ec573d6000803e3d6000fd5b505060405133925088156108fc02915088906000818181858888f1935050505015801561081d573d6000803e3d6000fd5b50610843565b610840816105196001600160a01b0385163363ffffffff610ae916565b95505b8c8610156108635760405162461bcd60e51b8152600401610106906116ec565b7f92ceb067a9883c85aba061e46b9edf505a0d6e81927c4b966ebed543a5221787838333878a60405161089a959493929190611574565b60405180910390a1505050505098975050505050505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006108e283610f20565b156108f857506001600160a01b03811631610977565b6040516370a0823160e01b81526001600160a01b038416906370a0823190610924908590600401611560565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109749190611443565b90505b92915050565b8015610a5d578115610a58578134146109a85760405162461bcd60e51b81526004016101069061183f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b158015610a0357600080fd5b505af1158015610a17573d6000803e3d6000fd5b505050506001600160a01b03851630149050610a5857610a587f00000000000000000000000000000000000000000000000000000000000000008584610f45565b610ae2565b60405163052f523360e11b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690630a5ea46690610aaf9086908990899088906004016115a8565b600060405180830381600087803b158015610ac957600080fd5b505af1158015610add573d6000803e3d6000fd5b505050505b5050505050565b6040516370a0823160e01b81526000906001600160a01b038416906370a0823190610924908590600401611560565b600082821115610b3a5760405162461bcd60e51b8152600401610106906117d6565b50900390565b60015b8351811015610f18576000610b93836001840381518110610b6057fe5b6020026020010151878481518110610b7457fe5b60200260200101516001600160a01b0316610ae990919063ffffffff16565b90506000876001840381518110610ba657fe5b602002602001015190506000866001850381518110610bc157fe5b602002602001015190505b868481518110610bd857fe5b6020026020010151811015610f0d57610bef6110c9565b600080600060608a8681518110610c0257fe5b6020026020010151806020019051810190610c1d9190611288565b601182901c8952607f600983901c1660408a015260ff90911660208901526001600160a01b0392831660608901529116608087015260a0860152505087513092508891506000198801908110610c6f57fe5b60200260200101516001600160a01b03161415610df6576000610caf84610ca3846040015188610fa090919063ffffffff16565b9063ffffffff610fda16565b9050816020015160011415610d5b57898681518110610cca57fe5b60200260200101516001600160a01b031663a9059cbb8360800151836040518363ffffffff1660e01b8152600401610d0392919061161f565b602060405180830381600087803b158015610d1d57600080fd5b505af1158015610d31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d559190611423565b50610df4565b898681518110610d6757fe5b60200260200101516001600160a01b031663a9059cbb8360600151836040518363ffffffff1660e01b8152600401610da092919061161f565b602060405180830381600087803b158015610dba57600080fd5b505af1158015610dce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df29190611423565b505b505b8051610e825780608001516001600160a01b03166330e6ae31878781518110610e1b57fe5b602002602001015183606001518460a001516040518463ffffffff1660e01b8152600401610e4b939291906115d2565b600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b50505050610f04565b80608001516001600160a01b0316636f7929f2878781518110610ea157fe5b602002602001015183606001518460a001516040518463ffffffff1660e01b8152600401610ed1939291906115d2565b600060405180830381600087803b158015610eeb57600080fd5b505af1158015610eff573d6000803e3d6000fd5b505050505b50600101610bcc565b505050600101610b43565b505050505050565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b610f9b8363a9059cbb60e01b8484604051602401610f6492919061161f565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915261100c565b505050565b600082610faf57506000610977565b82820282848281610fbc57fe5b04146109745760405162461bcd60e51b8152600401610106906118b2565b6000808211610ffb5760405162461bcd60e51b81526004016101069061176c565b81838161100457fe5b049392505050565b60006060836001600160a01b0316836040516110289190611544565b6000604051808303816000865af19150503d8060008114611065576040519150601f19603f3d011682016040523d82523d6000602084013e61106a565b606091505b50915091508161108c5760405162461bcd60e51b815260040161010690611737565b8051156110c357808060200190518101906110a79190611423565b6110c35760405162461bcd60e51b815260040161010690611868565b50505050565b6040518060c0016040528060008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b03168152602001606081525090565b803561097781611975565b600082601f83011261112c578081fd5b813561113f61113a82611905565b6118de565b81815291506020808301908481018184028601820187101561116057600080fd5b60005b8481101561118857813561117681611975565b84529282019290820190600101611163565b505050505092915050565b600082601f8301126111a3578081fd5b81356111b161113a82611905565b818152915060208083019084810160005b84811015611188578135870188603f8201126111dd57600080fd5b838101356111ed61113a82611925565b81815260408b8184860101111561120357600080fd5b828185018884013750600091810186019190915285525092820192908201906001016111c2565b600082601f83011261123a578081fd5b813561124861113a82611905565b81815291506020808301908481018184028601820187101561126957600080fd5b60005b848110156111885781358452928201929082019060010161126c565b6000806000806080858703121561129d578384fd5b84516112a881611975565b60208601519094506112b981611975565b60408601516060870151919450925067ffffffffffffffff8111156112dc578182fd5b80860187601f8201126112ed578283fd5b805191506112fd61113a83611925565b828152886020848401011115611311578384fd5b611322836020830160208501611949565b9598949750929550505050565b6000806000806000806000806000806101408b8d03121561134e578586fd5b6113588c8c611111565b99506113678c60208d01611111565b985060408b0135975060608b0135965060808b013567ffffffffffffffff80821115611391578788fd5b61139d8e838f0161111c565b975060a08d01359150808211156113b2578687fd5b6113be8e838f0161111c565b965060c08d01359150808211156113d3578586fd5b6113df8e838f0161111c565b955060e08d013594506101008d01359150808211156113fc578384fd5b506114098d828e01611193565b9250506101208b013590509295989b9194979a5092959850565b600060208284031215611434578081fd5b81518015158114610974578182fd5b600060208284031215611454578081fd5b5051919050565b600080600080600080600080610100898b031215611477578384fd5b8835975060208901359650604089013567ffffffffffffffff8082111561149c578586fd5b6114a88c838d0161122a565b975060608b01359150808211156114bd578586fd5b6114c98c838d0161122a565b965060808b01359150808211156114de578586fd5b6114ea8c838d0161111c565b955060a08b01359150808211156114ff578485fd5b61150b8c838d0161111c565b945060c08b0135915080821115611520578384fd5b5061152d8b828c01611193565b92505060e089013590509295985092959890939650565b60008251611556818460208701611949565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252608081019190915260a00190565b6001600160a01b039485168152928416602084015292166040820152606081019190915260800190565b600060018060a01b038086168352808516602084015250606060408301528251806060840152611609816080850160208701611949565b601f01601f191691909101608001949350505050565b6001600160a01b03929092168252602082015260400190565b60208082526017908201527f444f444f526f75746550726f78793a2045585049524544000000000000000000604082015260600190565b6020808252601b908201527f444f444f526f75746550726f78793a2050414952535f454d5054590000000000604082015260600190565b60208082526026908201527f444f444f526f75746550726f78793a20504149525f414441505445525f4e4f546040820152650be9a82a886960d31b606082015260800190565b6020808252602b908201527f444f444f526f75746550726f78793a2052657475726e20616d6f756e7420697360408201526a040dcdee840cadcdeeaced60ab1b606082015260800190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b6020808252600e908201526d2224ab24a224a723afa2a92927a960911b604082015260600190565b60208082526022908201527f444f444f526f75746550726f78793a2052455455524e5f414d4f554e545f5a45604082015261524f60f01b606082015260800190565b60208082526009908201526829aaa12fa2a92927a960b91b604082015260600190565b60208082526026908201527f444f444f526f75746550726f78793a20504149525f4153534554544f5f4e4f546040820152650be9a82a886960d31b606082015260800190565b6020808252600f908201526e4554485f56414c55455f57524f4e4760881b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526009908201526826aaa62fa2a92927a960b91b604082015260600190565b90815260200190565b60405181810167ffffffffffffffff811182821017156118fd57600080fd5b604052919050565b600067ffffffffffffffff82111561191b578081fd5b5060209081020190565b600067ffffffffffffffff82111561193b578081fd5b50601f01601f191660200190565b60005b8381101561196457818101518382015260200161194c565b838111156110c35750506000910152565b6001600160a01b038116811461198a57600080fd5b5056fea2646970667358221220e366ef97630f42f2e519a38a6d8b19b0cba96281e3c4d791595de2fdec19a3e164736f6c63430006090033000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c700000000000000000000000096a75d73b3de29c009863fa6329d96b2181d3dc4
Deployed Bytecode
0x6080604052600436106100435760003560e01c80630d4eec8f1461004c5780637617b389146100775780638179178814610097578063eb99be12146100aa5761004a565b3661004a57005b005b34801561005857600080fd5b506100616100bf565b60405161006e9190611560565b60405180910390f35b61008a61008536600461132f565b6100e3565b60405161006e91906118d5565b61008a6100a536600461145b565b61059a565b3480156100b657600080fd5b506100616108b3565b7f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c781565b6000814281101561010f5760405162461bcd60e51b815260040161010690611638565b60405180910390fd5b60008751116101305760405162461bcd60e51b81526004016101069061166f565b87518751146101515760405162461bcd60e51b8152600401610106906116a6565b60018651038751146101755760405162461bcd60e51b8152600401610106906117f9565b600089116101955760405162461bcd60e51b815260040161010690611794565b8b8b8b60006101b36001600160a01b0384163363ffffffff6108d716565b90506101fe338b6000815181106101c657fe5b6020026020010151868573eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316896001600160a01b03161461097d565b60005b8b518110156103865760018a166102c8578c818151811061021e57fe5b60200260200101516001600160a01b03166330e6ae318c836001018151811061024357fe5b60200260200101518e848151811061025757fe5b60200260200101518c858151811061026b57fe5b60200260200101516040518463ffffffff1660e01b8152600401610291939291906115d2565b600060405180830381600087803b1580156102ab57600080fd5b505af11580156102bf573d6000803e3d6000fd5b5050505061037a565b8c81815181106102d457fe5b60200260200101516001600160a01b0316636f7929f28c83600101815181106102f957fe5b60200260200101518e848151811061030d57fe5b60200260200101518c858151811061032157fe5b60200260200101516040518463ffffffff1660e01b8152600401610347939291906115d2565b600060405180830381600087803b15801561036157600080fd5b505af1158015610375573d6000803e3d6000fd5b505050505b6001998a1c9901610201565b506001600160a01b03831673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14156104fc576040516370a0823160e01b81526001600160a01b037f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c716906370a08231906103f8903090600401611560565b60206040518083038186803b15801561041057600080fd5b505afa158015610424573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104489190611443565b604051632e1a7d4d60e01b81529096506001600160a01b037f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c71690632e1a7d4d906104979089906004016118d5565b600060405180830381600087803b1580156104b157600080fd5b505af11580156104c5573d6000803e3d6000fd5b505060405133925088156108fc02915088906000818181858888f193505050501580156104f6573d6000803e3d6000fd5b50610528565b610525816105196001600160a01b0386163363ffffffff610ae916565b9063ffffffff610b1816565b95505b8c8610156105485760405162461bcd60e51b8152600401610106906116ec565b7f92ceb067a9883c85aba061e46b9edf505a0d6e81927c4b966ebed543a5221787848433858a60405161057f959493929190611574565b60405180910390a150505050509a9950505050505050505050565b600081428110156105bd5760405162461bcd60e51b815260040161010690611638565b86518551146105de5760405162461bcd60e51b8152600401610106906117f9565b600089116105fe5760405162461bcd60e51b815260040161010690611794565b60008a905060008760008151811061061257fe5b6020026020010151905060008860018a51038151811061062e57fe5b60200260200101519050600061065633836001600160a01b03166108d790919063ffffffff16565b90506106a1338a60008151811061066957fe5b6020026020010151858773eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b0316886001600160a01b03161461097d565b6106ae8c8b8d8b8d610b40565b6001600160a01b03821673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee1415610823576040516370a0823160e01b81526001600160a01b037f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c716906370a082319061071f903090600401611560565b60206040518083038186803b15801561073757600080fd5b505afa15801561074b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061076f9190611443565b604051632e1a7d4d60e01b81529096506001600160a01b037f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c71690632e1a7d4d906107be9089906004016118d5565b600060405180830381600087803b1580156107d857600080fd5b505af11580156107ec573d6000803e3d6000fd5b505060405133925088156108fc02915088906000818181858888f1935050505015801561081d573d6000803e3d6000fd5b50610843565b610840816105196001600160a01b0385163363ffffffff610ae916565b95505b8c8610156108635760405162461bcd60e51b8152600401610106906116ec565b7f92ceb067a9883c85aba061e46b9edf505a0d6e81927c4b966ebed543a5221787838333878a60405161089a959493929190611574565b60405180910390a1505050505098975050505050505050565b7f00000000000000000000000096a75d73b3de29c009863fa6329d96b2181d3dc481565b60006108e283610f20565b156108f857506001600160a01b03811631610977565b6040516370a0823160e01b81526001600160a01b038416906370a0823190610924908590600401611560565b60206040518083038186803b15801561093c57600080fd5b505afa158015610950573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109749190611443565b90505b92915050565b8015610a5d578115610a58578134146109a85760405162461bcd60e51b81526004016101069061183f565b7f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c76001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b158015610a0357600080fd5b505af1158015610a17573d6000803e3d6000fd5b505050506001600160a01b03851630149050610a5857610a587f000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c78584610f45565b610ae2565b60405163052f523360e11b81526001600160a01b037f00000000000000000000000096a75d73b3de29c009863fa6329d96b2181d3dc41690630a5ea46690610aaf9086908990899088906004016115a8565b600060405180830381600087803b158015610ac957600080fd5b505af1158015610add573d6000803e3d6000fd5b505050505b5050505050565b6040516370a0823160e01b81526000906001600160a01b038416906370a0823190610924908590600401611560565b600082821115610b3a5760405162461bcd60e51b8152600401610106906117d6565b50900390565b60015b8351811015610f18576000610b93836001840381518110610b6057fe5b6020026020010151878481518110610b7457fe5b60200260200101516001600160a01b0316610ae990919063ffffffff16565b90506000876001840381518110610ba657fe5b602002602001015190506000866001850381518110610bc157fe5b602002602001015190505b868481518110610bd857fe5b6020026020010151811015610f0d57610bef6110c9565b600080600060608a8681518110610c0257fe5b6020026020010151806020019051810190610c1d9190611288565b601182901c8952607f600983901c1660408a015260ff90911660208901526001600160a01b0392831660608901529116608087015260a0860152505087513092508891506000198801908110610c6f57fe5b60200260200101516001600160a01b03161415610df6576000610caf84610ca3846040015188610fa090919063ffffffff16565b9063ffffffff610fda16565b9050816020015160011415610d5b57898681518110610cca57fe5b60200260200101516001600160a01b031663a9059cbb8360800151836040518363ffffffff1660e01b8152600401610d0392919061161f565b602060405180830381600087803b158015610d1d57600080fd5b505af1158015610d31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d559190611423565b50610df4565b898681518110610d6757fe5b60200260200101516001600160a01b031663a9059cbb8360600151836040518363ffffffff1660e01b8152600401610da092919061161f565b602060405180830381600087803b158015610dba57600080fd5b505af1158015610dce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610df29190611423565b505b505b8051610e825780608001516001600160a01b03166330e6ae31878781518110610e1b57fe5b602002602001015183606001518460a001516040518463ffffffff1660e01b8152600401610e4b939291906115d2565b600060405180830381600087803b158015610e6557600080fd5b505af1158015610e79573d6000803e3d6000fd5b50505050610f04565b80608001516001600160a01b0316636f7929f2878781518110610ea157fe5b602002602001015183606001518460a001516040518463ffffffff1660e01b8152600401610ed1939291906115d2565b600060405180830381600087803b158015610eeb57600080fd5b505af1158015610eff573d6000803e3d6000fd5b505050505b50600101610bcc565b505050600101610b43565b505050505050565b6001600160a01b03811673eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee14919050565b610f9b8363a9059cbb60e01b8484604051602401610f6492919061161f565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915261100c565b505050565b600082610faf57506000610977565b82820282848281610fbc57fe5b04146109745760405162461bcd60e51b8152600401610106906118b2565b6000808211610ffb5760405162461bcd60e51b81526004016101069061176c565b81838161100457fe5b049392505050565b60006060836001600160a01b0316836040516110289190611544565b6000604051808303816000865af19150503d8060008114611065576040519150601f19603f3d011682016040523d82523d6000602084013e61106a565b606091505b50915091508161108c5760405162461bcd60e51b815260040161010690611737565b8051156110c357808060200190518101906110a79190611423565b6110c35760405162461bcd60e51b815260040161010690611868565b50505050565b6040518060c0016040528060008152602001600081526020016000815260200160006001600160a01b0316815260200160006001600160a01b03168152602001606081525090565b803561097781611975565b600082601f83011261112c578081fd5b813561113f61113a82611905565b6118de565b81815291506020808301908481018184028601820187101561116057600080fd5b60005b8481101561118857813561117681611975565b84529282019290820190600101611163565b505050505092915050565b600082601f8301126111a3578081fd5b81356111b161113a82611905565b818152915060208083019084810160005b84811015611188578135870188603f8201126111dd57600080fd5b838101356111ed61113a82611925565b81815260408b8184860101111561120357600080fd5b828185018884013750600091810186019190915285525092820192908201906001016111c2565b600082601f83011261123a578081fd5b813561124861113a82611905565b81815291506020808301908481018184028601820187101561126957600080fd5b60005b848110156111885781358452928201929082019060010161126c565b6000806000806080858703121561129d578384fd5b84516112a881611975565b60208601519094506112b981611975565b60408601516060870151919450925067ffffffffffffffff8111156112dc578182fd5b80860187601f8201126112ed578283fd5b805191506112fd61113a83611925565b828152886020848401011115611311578384fd5b611322836020830160208501611949565b9598949750929550505050565b6000806000806000806000806000806101408b8d03121561134e578586fd5b6113588c8c611111565b99506113678c60208d01611111565b985060408b0135975060608b0135965060808b013567ffffffffffffffff80821115611391578788fd5b61139d8e838f0161111c565b975060a08d01359150808211156113b2578687fd5b6113be8e838f0161111c565b965060c08d01359150808211156113d3578586fd5b6113df8e838f0161111c565b955060e08d013594506101008d01359150808211156113fc578384fd5b506114098d828e01611193565b9250506101208b013590509295989b9194979a5092959850565b600060208284031215611434578081fd5b81518015158114610974578182fd5b600060208284031215611454578081fd5b5051919050565b600080600080600080600080610100898b031215611477578384fd5b8835975060208901359650604089013567ffffffffffffffff8082111561149c578586fd5b6114a88c838d0161122a565b975060608b01359150808211156114bd578586fd5b6114c98c838d0161122a565b965060808b01359150808211156114de578586fd5b6114ea8c838d0161111c565b955060a08b01359150808211156114ff578485fd5b61150b8c838d0161111c565b945060c08b0135915080821115611520578384fd5b5061152d8b828c01611193565b92505060e089013590509295985092959890939650565b60008251611556818460208701611949565b9190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252608081019190915260a00190565b6001600160a01b039485168152928416602084015292166040820152606081019190915260800190565b600060018060a01b038086168352808516602084015250606060408301528251806060840152611609816080850160208701611949565b601f01601f191691909101608001949350505050565b6001600160a01b03929092168252602082015260400190565b60208082526017908201527f444f444f526f75746550726f78793a2045585049524544000000000000000000604082015260600190565b6020808252601b908201527f444f444f526f75746550726f78793a2050414952535f454d5054590000000000604082015260600190565b60208082526026908201527f444f444f526f75746550726f78793a20504149525f414441505445525f4e4f546040820152650be9a82a886960d31b606082015260800190565b6020808252602b908201527f444f444f526f75746550726f78793a2052657475726e20616d6f756e7420697360408201526a040dcdee840cadcdeeaced60ab1b606082015260800190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b6020808252600e908201526d2224ab24a224a723afa2a92927a960911b604082015260600190565b60208082526022908201527f444f444f526f75746550726f78793a2052455455524e5f414d4f554e545f5a45604082015261524f60f01b606082015260800190565b60208082526009908201526829aaa12fa2a92927a960b91b604082015260600190565b60208082526026908201527f444f444f526f75746550726f78793a20504149525f4153534554544f5f4e4f546040820152650be9a82a886960d31b606082015260800190565b6020808252600f908201526e4554485f56414c55455f57524f4e4760881b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b60208082526009908201526826aaa62fa2a92927a960b91b604082015260600190565b90815260200190565b60405181810167ffffffffffffffff811182821017156118fd57600080fd5b604052919050565b600067ffffffffffffffff82111561191b578081fd5b5060209081020190565b600067ffffffffffffffff82111561193b578081fd5b50601f01601f191660200190565b60005b8381101561196457818101518382015260200161194c565b838111156110c35750506000910152565b6001600160a01b038116811461198a57600080fd5b5056fea2646970667358221220e366ef97630f42f2e519a38a6d8b19b0cba96281e3c4d791595de2fdec19a3e164736f6c63430006090033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c700000000000000000000000096a75d73b3de29c009863fa6329d96b2181d3dc4
-----Decoded View---------------
Arg [0] : weth (address): 0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7
Arg [1] : dodoApproveProxy (address): 0x96a75d73b3de29c009863fA6329D96b2181D3Dc4
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000b31f66aa3c1e785363f0875a1b74e27b85fd66c7
Arg [1] : 00000000000000000000000096a75d73b3de29c009863fa6329d96b2181d3dc4
Deployed Bytecode Sourcemap
13741:7760:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13971:31;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;14915:2111;;;;;;;;;:::i;:::-;;;;;;;;17034:1628;;;;;;;;;:::i;14009:45::-;;;;;;;;;;;;;:::i;13971:31::-;;;:::o;14915:2111::-;15311:20;15292:8;14586:15;14574:8;:27;;14566:63;;;;-1:-1:-1;;;14566:63:0;;;;;;;;;;;;;;;;;15370:1:::1;15352:8;:15;:19;15344:59;;;;-1:-1:-1::0;;;15344:59:0::1;;;;;;;;;15441:11;:18;15422:8;:15;:37;15414:88;;;;-1:-1:-1::0;;;15414:88:0::1;;;;;;;;;15557:1;15540:7;:14;:18;15521:8;:15;:37;15513:88;;;;-1:-1:-1::0;;;15513:88:0::1;;;;;;;;;15638:1;15620:15;:19;15612:66;;;;-1:-1:-1::0;;;15612:66:0::1;;;;;;;;;15712:9:::0;15751:7;15796:15;15691:18:::1;15863:47;-1:-1:-1::0;;;;;15863:35:0;::::1;15899:10;15863:47;:35;:47;:::i;:::-;15832:78;;15931:91;15940:10;15952:7;15960:1;15952:10;;;;;;;;;;;;;;15964;15976:16;13922:42;-1:-1:-1::0;;;;;15994:27:0::1;:10;-1:-1:-1::0;;;;;15994:27:0::1;;15931:8;:91::i;:::-;16040:9;16035:375;16059:8;:15;16055:1;:19;16035:375;;;16113:1;16100:14:::0;::::1;16096:260;;16153:11;16165:1;16153:14;;;;;;;;;;;;;;-1:-1:-1::0;;;;;16140:37:0::1;;16178:7;16186:1;16190;16186:5;16178:14;;;;;;;;;;;;;;16193:8;16202:1;16193:11;;;;;;;;;;;;;;16206:9;16216:1;16206:12;;;;;;;;;;;;;;16140:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16096:260;;;16273:11;16285:1;16273:14;;;;;;;;;;;;;;-1:-1:-1::0;;;;;16260:38:0::1;;16299:7;16307:1;16311;16307:5;16299:14;;;;;;;;;;;;;;16314:8;16323:1;16314:11;;;;;;;;;;;;;;16327:9;16337:1;16327:12;;;;;;;;;;;;;;16260:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16096:260;16397:1;16383:15:::0;;::::1;::::0;16076:3:::1;16035:375;;;-1:-1:-1::0;;;;;;16425:25:0;::::1;13922:42;16425:25;16422:325;;;16482:38;::::0;-1:-1:-1;;;16482:38:0;;-1:-1:-1;;;;;16488:6:0::1;16482:23;::::0;::::1;::::0;:38:::1;::::0;16514:4:::1;::::0;16482:38:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16535:36;::::0;-1:-1:-1;;;16535:36:0;;16467:53;;-1:-1:-1;;;;;;16541:6:0::1;16535:22;::::0;::::1;::::0;:36:::1;::::0;16467:53;;16535:36:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;16586:33:0::1;::::0;:10:::1;::::0;-1:-1:-1;16586:33:0;::::1;;;::::0;-1:-1:-1;16606:12:0;;16586:33:::1;::::0;;;16606:12;16586:10;:33;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;16422:325;;;16666:69;16714:20:::0;16666:43:::1;-1:-1:-1::0;;;;;16666:31:0;::::1;16698:10;16666:43;:31;:43;:::i;:::-;:47:::0;:69:::1;:47;:69;:::i;:::-;16651:84;;16422:325;16783:15;16767:12;:31;;16759:87;;;;-1:-1:-1::0;;;16759:87:0::1;;;;;;;;;16864:154;16891:10;16916:8;16939:10;16964:16;16995:12;16864:154;;;;;;;;;;;;;;;;;;;14640:1;;;;14915:2111:::0;;;;;;;;;;;;;:::o;17034:1628::-;17393:20;17374:8;14586:15;14574:8;:27;;14566:63;;;;-1:-1:-1;;;14566:63:0;;;;;;;;;17454:11:::1;:18;17434:9;:16;:38;17426:89;;;;-1:-1:-1::0;;;17426:89:0::1;;;;;;;;;17560:1;17542:15;:19;17534:66;;;;-1:-1:-1::0;;;17534:66:0::1;;;;;;;;;17621:24;17648:15;17621:42;;17674:17;17694:8;17703:1;17694:11;;;;;;;;;;;;;;17674:31;;17716:15;17734:8;17761:1;17743:8;:15;:19;17734:29;;;;;;;;;;;;;;17716:47;;17776:28;17807:46;17842:10;17814:7;-1:-1:-1::0;;;;;17807:34:0::1;;;:46;;;;:::i;:::-;17776:77;;17866:91;17875:10;17887:9;17897:1;17887:12;;;;;;;;;;;;;;17901:9;17912:16;13922:42;-1:-1:-1::0;;;;;17930:26:0::1;:9;-1:-1:-1::0;;;;;17930:26:0::1;;17866:8;:91::i;:::-;17970:67;17981:11;17994:8;18004:11;18017:8;18027:9;17970:10;:67::i;:::-;-1:-1:-1::0;;;;;18057:24:0;::::1;13922:42;18057:24;18054:323;;;18113:38;::::0;-1:-1:-1;;;18113:38:0;;-1:-1:-1;;;;;18119:6:0::1;18113:23;::::0;::::1;::::0;:38:::1;::::0;18145:4:::1;::::0;18113:38:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18166:36;::::0;-1:-1:-1;;;18166:36:0;;18098:53;;-1:-1:-1;;;;;;18172:6:0::1;18166:22;::::0;::::1;::::0;:36:::1;::::0;18098:53;;18166:36:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;18217:33:0::1;::::0;:10:::1;::::0;-1:-1:-1;18217:33:0;::::1;;;::::0;-1:-1:-1;18237:12:0;;18217:33:::1;::::0;;;18237:12;18217:10;:33;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;18054:323;;;18297:68;18344:20:::0;18297:42:::1;-1:-1:-1::0;;;;;18297:30:0;::::1;18328:10;18297:42;:30;:42;:::i;:68::-;18282:83;;18054:323;18413:15;18397:12;:31;;18389:87;;;;-1:-1:-1::0;;;18389:87:0::1;;;;;;;;;18498:152;18525:9;18549:7;18571:10;18596:16;18627:12;18498:152;;;;;;;;;;;;;;;;;;;14640:1;;;;17034:1628:::0;;;;;;;;;;;:::o;14009:45::-;;;:::o;12822:228::-;12900:7;12924:12;12930:5;12924;:12::i;:::-;12920:123;;;-1:-1:-1;;;;;;12960:11:0;;;12953:18;;12920:123;13011:20;;-1:-1:-1;;;13011:20:0;;-1:-1:-1;;;;;13011:15:0;;;;;:20;;13027:3;;13011:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13004:27;;12920:123;12822:228;;;;:::o;20937:561::-;21100:5;21096:395;;;21126:10;;21122:249;;21178:6;21165:9;:19;21157:47;;;;-1:-1:-1;;;21157:47:0;;;;;;;;;21229:6;-1:-1:-1;;;;;21223:21:0;;21252:6;21223:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;21284:19:0;;21298:4;21284:19;;-1:-1:-1;21280:75:0;;21305:50;21335:6;21344:2;21348:6;21305:22;:50::i;:::-;21096:395;;;21403:76;;-1:-1:-1;;;21403:76:0;;-1:-1:-1;;;;;21421:20:0;21403:51;;;;:76;;21455:5;;21462:4;;21468:2;;21472:6;;21403:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21096:395;20937:561;;;;;:::o;13058:129::-;13159:20;;-1:-1:-1;;;13159:20:0;;13132:7;;-1:-1:-1;;;;;13159:15:0;;;;;:20;;13175:3;;13159:20;;;;8134:137;8192:7;8225:1;8220;:6;;8212:28;;;;-1:-1:-1;;;8212:28:0;;;;;;;;;-1:-1:-1;8258:5:0;;;8134:137::o;18741:2188::-;18994:1;18978:1944;19001:11;:18;18997:1;:22;18978:1944;;;19103:22;19128:50;19163:9;19175:1;19173;:3;19163:14;;;;;;;;;;;;;;19135:8;19144:1;19135:11;;;;;;;;;;;;;;-1:-1:-1;;;;;19128:34:0;;;:50;;;;:::i;:::-;19103:75;;19193:22;19218:11;19232:1;19230;:3;19218:16;;;;;;;;;;;;;;19193:41;;19267:9;19279:11;19293:1;19291;:3;19279:16;;;;;;;;;;;;;;19267:28;;19263:1648;19301:11;19313:1;19301:14;;;;;;;;;;;;;;19297:1;:18;19263:1648;;;19341:27;;:::i;:::-;19411:12;19425:15;19442;19459:21;19495:12;19508:1;19495:15;;;;;;;;;;;;;;19484:63;;;;;;;;;;;;;;19623:2;19612:13;;;19588:37;;19669:23;19691:1;19669:23;;;;19648:18;;;:44;19742:4;:14;;;19715:23;;;:42;-1:-1:-1;;;;;19780:23:0;;;:16;;;:23;19826:29;;:19;;;:29;19878:20;;;:31;-1:-1:-1;;19952:14:0;;19978:4;;-1:-1:-1;19952:9:0;;-1:-1:-1;;;19962:3:0;;;19952:14;;;;;;;;;;;;-1:-1:-1;;;;;19952:31:0;;19949:595;;;20008:17;20028:58;20071:14;20028:38;20047:11;:18;;;20028:14;:18;;:38;;;;:::i;:::-;:42;:58;:42;:58;:::i;:::-;20008:78;;20126:11;:23;;;20153:1;20126:28;20123:402;;;20269:8;20278:1;20269:11;;;;;;;;;;;;;;-1:-1:-1;;;;;20262:28:0;;20291:11;:19;;;20312:9;20262:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20123:402;;;20451:8;20460:1;20451:11;;;;;;;;;;;;;;-1:-1:-1;;;;;20444:28:0;;20473:11;:16;;;20491:9;20444:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20123:402;19949:595;;20583:21;;20580:316;;20647:11;:19;;;-1:-1:-1;;;;;20634:42:0;;20677:9;20687:1;20677:12;;;;;;;;;;;;;;20691:11;:16;;;20709:11;:20;;;20634:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20580:316;;;20792:11;:19;;;-1:-1:-1;;;;;20779:43:0;;20823:9;20833:1;20823:12;;;;;;;;;;;;;;20837:11;:16;;;20855:11;:20;;;20779:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20580:316;-1:-1:-1;19317:3:0;;19263:1648;;;-1:-1:-1;;;19021:3:0;;18978:1944;;;;18741:2188;;;;;:::o;13195:104::-;-1:-1:-1;;;;;13271:20:0;;12057:42;13271:20;13195:104;;;:::o;9228:211::-;9345:86;9365:5;9395:23;;;9420:2;9424:5;9372:58;;;;;;;;;;;;;;-1:-1:-1;;9372:58:0;;;;;;;;;;;;;;-1:-1:-1;;;;;9372:58:0;-1:-1:-1;;;;;;9372:58:0;;;;;;;;;;9345:19;:86::i;:::-;9228:211;;;:::o;7455:226::-;7513:7;7537:6;7533:47;;-1:-1:-1;7567:1:0;7560:8;;7533:47;7604:5;;;7608:1;7604;:5;:1;7628:5;;;;;:10;7620:32;;;;-1:-1:-1;;;7620:32:0;;;;;;;;7689:141;7747:7;7779:1;7775;:5;7767:32;;;;-1:-1:-1;;;7767:32:0;;;;;;;;;7821:1;7817;:5;;;;;;;7689:141;-1:-1:-1;;;7689:141:0:o;10801:1046::-;11461:12;11475:23;11510:5;-1:-1:-1;;;;;11502:19:0;11522:4;11502:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11460:67;;;;11546:7;11538:52;;;;-1:-1:-1;;;11538:52:0;;;;;;;;;11607:17;;:21;11603:237;;11762:10;11751:30;;;;;;;;;;;;;;11743:85;;;;-1:-1:-1;;;11743:85:0;;;;;;;;;10801:1046;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5:130::-;72:20;;97:33;72:20;97:33;;317:707;;434:3;427:4;419:6;415:17;411:27;401:2;;-1:-1;;442:12;401:2;489:6;476:20;511:80;526:64;583:6;526:64;;;511:80;;;619:21;;;502:89;-1:-1;663:4;676:14;;;;651:17;;;765;;;756:27;;;;753:36;-1:-1;750:2;;;802:1;;792:12;750:2;827:1;812:206;837:6;834:1;831:13;812:206;;;85:6;72:20;97:33;124:5;97:33;;;905:50;;969:14;;;;997;;;;859:1;852:9;812:206;;;816:14;;;;;394:630;;;;;1048:705;;1174:3;1167:4;1159:6;1155:17;1151:27;1141:2;;-1:-1;;1182:12;1141:2;1229:6;1216:20;1251:89;1266:73;1332:6;1266:73;;1251:89;1368:21;;;1242:98;-1:-1;1412:4;1425:14;;;;1400:17;;;1520:1;1505:242;1530:6;1527:1;1524:13;1505:242;;;1613:3;1600:17;1404:6;1588:30;2731:3;2712:17;1588:30;2712:17;2708:27;2698:2;;1520:1;;2739:12;2698:2;1412:4;1588:30;;2773:20;2808:64;2823:48;2864:6;2823:48;;2808:64;2892:6;2885:5;2878:21;2916:17;2996:3;2916:17;2987:6;1588:30;2978:16;;2975:25;2972:2;;;1520:1;;3003:12;2972:2;25541:6;2916:17;1588:30;2916:17;1412:4;2954:5;2950:16;25518:30;-1:-1;1520:1;25579:16;;;;;25572:27;;;;1625:59;;-1:-1;1698:14;;;;1726;;;;1552:1;1545:9;1505:242;;1779:707;;1896:3;1889:4;1881:6;1877:17;1873:27;1863:2;;-1:-1;;1904:12;1863:2;1951:6;1938:20;1973:80;1988:64;2045:6;1988:64;;1973:80;2081:21;;;1964:89;-1:-1;2125:4;2138:14;;;;2113:17;;;2227;;;2218:27;;;;2215:36;-1:-1;2212:2;;;2264:1;;2254:12;2212:2;2289:1;2274:206;2299:6;2296:1;2293:13;2274:206;;;3596:20;;2367:50;;2431:14;;;;2459;;;;2321:1;2314:9;2274:206;;3807:801;;;;;3998:3;3986:9;3977:7;3973:23;3969:33;3966:2;;;-1:-1;;4005:12;3966:2;234:6;228:13;246:41;281:5;246:41;;;4176:2;4234:22;;228:13;4057:82;;-1:-1;246:41;228:13;246:41;;;4303:2;4353:22;;3744:13;4443:2;4428:18;;4422:25;4184:82;;-1:-1;3744:13;-1:-1;4467:18;4456:30;;4453:2;;;-1:-1;;4489:12;4453:2;4575:6;4564:9;4560:22;3191:3;3184:4;3176:6;3172:17;3168:27;3158:2;;-1:-1;;3199:12;3158:2;3239:6;3233:13;3219:27;;3261:64;3276:48;3317:6;3276:48;;3261:64;3345:6;3338:5;3331:21;3449:3;4176:2;3440:6;3373;3431:16;;3428:25;3425:2;;;-1:-1;;3456:12;3425:2;3476:39;3508:6;4176:2;3407:5;3403:16;4176:2;3373:6;3369:17;3476:39;;;3960:648;;;;-1:-1;3960:648;;-1:-1;;;;3960:648;4615:1935;;;;;;;;;;;4981:3;4969:9;4960:7;4956:23;4952:33;4949:2;;;-1:-1;;4988:12;4949:2;5050:53;5095:7;5071:22;5050:53;;;5040:63;;5158:53;5203:7;5140:2;5183:9;5179:22;5158:53;;;5148:63;;5248:2;5291:9;5287:22;3596:20;5256:63;;5356:2;5399:9;5395:22;3596:20;5364:63;;5492:3;5481:9;5477:19;5464:33;5517:18;;5509:6;5506:30;5503:2;;;-1:-1;;5539:12;5503:2;5569:78;5639:7;5630:6;5619:9;5615:22;5569:78;;;5559:88;;5712:3;5701:9;5697:19;5684:33;5670:47;;5517:18;5729:6;5726:30;5723:2;;;-1:-1;;5759:12;5723:2;5789:78;5859:7;5850:6;5839:9;5835:22;5789:78;;;5779:88;;5932:3;5921:9;5917:19;5904:33;5890:47;;5517:18;5949:6;5946:30;5943:2;;;-1:-1;;5979:12;5943:2;6009:78;6079:7;6070:6;6059:9;6055:22;6009:78;;;5999:88;;6124:3;6168:9;6164:22;3596:20;6133:63;;6261:3;6250:9;6246:19;6233:33;6219:47;;5517:18;6278:6;6275:30;6272:2;;;-1:-1;;6308:12;6272:2;;6338:87;6417:7;6408:6;6397:9;6393:22;6338:87;;;6328:97;;;6462:3;6506:9;6502:22;3596:20;6471:63;;4943:1607;;;;;;;;;;;;;;6557:257;;6669:2;6657:9;6648:7;6644:23;6640:32;6637:2;;;-1:-1;;6675:12;6637:2;2575:6;2569:13;26340:5;24847:13;24840:21;26318:5;26315:32;26305:2;;-1:-1;;26351:12;6821:263;;6936:2;6924:9;6915:7;6911:23;6907:32;6904:2;;;-1:-1;;6942:12;6904:2;-1:-1;3744:13;;6898:186;-1:-1;6898:186;7091:1819;;;;;;;;;7448:3;7436:9;7427:7;7423:23;7419:33;7416:2;;;-1:-1;;7455:12;7416:2;7538:22;3596:20;7507:63;;7607:2;7650:9;7646:22;3596:20;7615:63;;7743:2;7732:9;7728:18;7715:32;7767:18;;7759:6;7756:30;7753:2;;;-1:-1;;7789:12;7753:2;7819:78;7889:7;7880:6;7869:9;7865:22;7819:78;;;7809:88;;7962:2;7951:9;7947:18;7934:32;7920:46;;7767:18;7978:6;7975:30;7972:2;;;-1:-1;;8008:12;7972:2;8038:78;8108:7;8099:6;8088:9;8084:22;8038:78;;;8028:88;;8181:3;8170:9;8166:19;8153:33;8139:47;;7767:18;8198:6;8195:30;8192:2;;;-1:-1;;8228:12;8192:2;8258:78;8328:7;8319:6;8308:9;8304:22;8258:78;;;8248:88;;8401:3;8390:9;8386:19;8373:33;8359:47;;7767:18;8418:6;8415:30;8412:2;;;-1:-1;;8448:12;8412:2;8478:78;8548:7;8539:6;8528:9;8524:22;8478:78;;;8468:88;;8621:3;8610:9;8606:19;8593:33;8579:47;;7767:18;8638:6;8635:30;8632:2;;;-1:-1;;8668:12;8632:2;;8698:87;8777:7;8768:6;8757:9;8753:22;8698:87;;;8688:97;;;8822:3;8866:9;8862:22;3596:20;8831:63;;7410:1500;;;;;;;;;;;;14234:271;;9696:5;24040:12;9807:52;9852:6;9847:3;9840:4;9833:5;9829:16;9807:52;;;9871:16;;;;;14368:137;-1:-1;;14368:137;14512:222;-1:-1;;;;;24935:54;;;;9137:37;;14639:2;14624:18;;14610:124;14986:684;-1:-1;;;;;24935:54;;;9137:37;;24935:54;;;15398:2;15383:18;;9137:37;24935:54;;;;15489:2;15474:18;;8996:58;15572:2;15557:18;;14185:37;;;;15655:3;15640:19;;14185:37;;;;15233:3;15218:19;;15204:466;15677:556;-1:-1;;;;;24935:54;;;9137:37;;24935:54;;;16053:2;16038:18;;9137:37;24935:54;;16136:2;16121:18;;9137:37;16219:2;16204:18;;14185:37;;;;15888:3;15873:19;;15859:374;16240:528;;4467:18;;24946:42;;;;24939:5;24935:54;9144:3;9137:37;24946:42;24939:5;24935:54;16605:2;16594:9;16590:18;9137:37;;16441:2;16642;16631:9;16627:18;16620:48;9328:5;24040:12;24196:6;16441:2;16430:9;16426:18;24184:19;9421:52;9466:6;24224:14;16430:9;24224:14;16605:2;9447:5;9443:16;9421:52;;;25974:7;25958:14;-1:-1;;25954:28;9485:39;;;;24224:14;9485:39;;16412:356;-1:-1;;;;16412:356;16775:333;-1:-1;;;;;24935:54;;;;9137:37;;17094:2;17079:18;;14185:37;16930:2;16915:18;;16901:207;17115:416;17315:2;17329:47;;;10124:2;17300:18;;;24184:19;10160:25;24224:14;;;10140:46;10205:12;;;17286:245;17538:416;17738:2;17752:47;;;10456:2;17723:18;;;24184:19;10492:29;24224:14;;;10472:50;10541:12;;;17709:245;17961:416;18161:2;18175:47;;;10792:2;18146:18;;;24184:19;10828:34;24224:14;;;10808:55;-1:-1;;;10883:12;;;10876:30;10925:12;;;18132:245;18384:416;18584:2;18598:47;;;11176:2;18569:18;;;24184:19;11212:34;24224:14;;;11192:55;-1:-1;;;11267:12;;;11260:35;11314:12;;;18555:245;18807:416;19007:2;19021:47;;;18992:18;;;24184:19;11601:34;24224:14;;;11581:55;11655:12;;;18978:245;19230:416;19430:2;19444:47;;;11906:2;19415:18;;;24184:19;-1:-1;;;24224:14;;;11922:37;11978:12;;;19401:245;19653:416;19853:2;19867:47;;;12229:2;19838:18;;;24184:19;12265:34;24224:14;;;12245:55;-1:-1;;;12320:12;;;12313:26;12358:12;;;19824:245;20076:416;20276:2;20290:47;;;12609:1;20261:18;;;24184:19;-1:-1;;;24224:14;;;12624:32;12675:12;;;20247:245;20499:416;20699:2;20713:47;;;12926:2;20684:18;;;24184:19;12962:34;24224:14;;;12942:55;-1:-1;;;13017:12;;;13010:30;13059:12;;;20670:245;20922:416;21122:2;21136:47;;;13310:2;21107:18;;;24184:19;-1:-1;;;24224:14;;;13326:38;13383:12;;;21093:245;21345:416;21545:2;21559:47;;;13634:2;21530:18;;;24184:19;13670:34;24224:14;;;13650:55;-1:-1;;;13725:12;;;13718:34;13771:12;;;21516:245;21768:416;21968:2;21982:47;;;14022:1;21953:18;;;24184:19;-1:-1;;;24224:14;;;14037:32;14088:12;;;21939:245;22191:222;14185:37;;;22318:2;22303:18;;22289:124;22420:256;22482:2;22476:9;22508:17;;;22583:18;22568:34;;22604:22;;;22565:62;22562:2;;;22640:1;;22630:12;22562:2;22482;22649:22;22460:216;;-1:-1;22460:216;22683:304;;22842:18;22834:6;22831:30;22828:2;;;-1:-1;;22864:12;22828:2;-1:-1;22909:4;22897:17;;;22962:15;;22765:222;23625:321;;23768:18;23760:6;23757:30;23754:2;;;-1:-1;;23790:12;23754:2;-1:-1;25974:7;23844:17;-1:-1;;23840:33;23931:4;23921:15;;23691:255;25614:268;25679:1;25686:101;25700:6;25697:1;25694:13;25686:101;;;25767:11;;;25761:18;25748:11;;;25741:39;25722:2;25715:10;25686:101;;;25802:6;25799:1;25796:13;25793:2;;;-1:-1;;25679:1;25849:16;;25842:27;25663:219;25995:117;-1:-1;;;;;24935:54;;26054:35;;26044:2;;26103:1;;26093:12;26044:2;26038:74;
Swarm Source
ipfs://e366ef97630f42f2e519a38a6d8b19b0cba96281e3c4d791595de2fdec19a3e1
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
AVAX | 100.00% | $22.77 | 3.73 | $84.93 |
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.