Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0xb45077905620f8c4cc3f0c50936b5372792dec55a87e1a97e167838222f1ce23 | Deposit Eth | (pending) | 8 hrs ago | IN | 0.029 ETH | (Pending) | |||
Sell Eth To | 15936068 | 694 days ago | IN | 4.43799999 ETH | 0.01486261 | ||||
Buy Eth With | 15934437 | 694 days ago | IN | 0 ETH | 0.02274325 | ||||
Buy Eth With | 15933529 | 694 days ago | IN | 0 ETH | 0.03333783 | ||||
Buy Eth With | 15933528 | 694 days ago | IN | 0 ETH | 0.02687752 | ||||
Buy Eth With | 15932701 | 694 days ago | IN | 0 ETH | 0.00982352 | ||||
Buy Eth With | 15931928 | 694 days ago | IN | 0 ETH | 0.0252863 | ||||
Buy Eth With | 15931742 | 694 days ago | IN | 0 ETH | 0.01608875 | ||||
Sell Eth To | 15883999 | 701 days ago | IN | 3.799 ETH | 0.01601952 | ||||
Buy Eth With | 15883993 | 701 days ago | IN | 0 ETH | 0.01364302 | ||||
Sell Eth To | 15883985 | 701 days ago | IN | 2.569 ETH | 0.0092137 | ||||
Sell Eth To | 15868496 | 703 days ago | IN | 2.554 ETH | 0.00810328 | ||||
Buy Eth With | 15835142 | 708 days ago | IN | 0 ETH | 0.0074846 | ||||
Buy Eth With | 15826517 | 709 days ago | IN | 0 ETH | 0.01368738 | ||||
Buy Eth With | 15739216 | 721 days ago | IN | 0 ETH | 0.01458137 | ||||
Sell Eth To | 15739211 | 721 days ago | IN | 4.974 ETH | 0.00728036 | ||||
Sell Eth To | 15739208 | 721 days ago | IN | 9.034 ETH | 0.01451336 | ||||
Sell Eth To | 15738611 | 721 days ago | IN | 4.054 ETH | 0.00666014 | ||||
Sell Eth To | 15738570 | 721 days ago | IN | 3.997 ETH | 0.00549298 | ||||
Buy Eth With | 15685587 | 729 days ago | IN | 0 ETH | 0.00727761 | ||||
Buy Eth With | 15646171 | 734 days ago | IN | 0 ETH | 0.01152778 | ||||
Sell Eth To | 15646163 | 734 days ago | IN | 3.782 ETH | 0.00736216 | ||||
Buy Eth With | 15584320 | 743 days ago | IN | 0 ETH | 0.01204299 | ||||
Sell Eth To | 15584316 | 743 days ago | IN | 4.66 ETH | 0.0092945 | ||||
Sell Eth To | 15583458 | 743 days ago | IN | 6.801 ETH | 0.01105026 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
15936068 | 694 days ago | 4.43799999 ETH | ||||
15933529 | 694 days ago | 5.103 ETH | ||||
15933529 | 694 days ago | 5.103 ETH | ||||
15931742 | 694 days ago | 4.097 ETH | ||||
15931742 | 694 days ago | 4.097 ETH | ||||
15883999 | 701 days ago | 3.799 ETH | ||||
15883993 | 701 days ago | 5.038 ETH | ||||
15883993 | 701 days ago | 5.038 ETH | ||||
15883985 | 701 days ago | 2.569 ETH | ||||
15868496 | 703 days ago | 2.554 ETH | ||||
15739216 | 721 days ago | 5.807 ETH | ||||
15739216 | 721 days ago | 5.807 ETH | ||||
15739211 | 721 days ago | 4.974 ETH | ||||
15739208 | 721 days ago | 9.034 ETH | ||||
15738611 | 721 days ago | 4.054 ETH | ||||
15738570 | 721 days ago | 3.997 ETH | ||||
15685587 | 729 days ago | 2.908 ETH | ||||
15685587 | 729 days ago | 2.908 ETH | ||||
15646171 | 734 days ago | 4.51999999 ETH | ||||
15646171 | 734 days ago | 4.51999999 ETH | ||||
15646163 | 734 days ago | 3.782 ETH | ||||
15584320 | 743 days ago | 4.664 ETH | ||||
15584320 | 743 days ago | 4.664 ETH | ||||
15584316 | 743 days ago | 4.66 ETH | ||||
15583458 | 743 days ago | 6.801 ETH |
Loading...
Loading
Contract Name:
DODOEthProxy
Compiler Version
v0.6.9+commit.3e3065ac
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-08-10 */ // File: contracts/lib/ReentrancyGuard.sol /* Copyright 2020 DODO ZOO. SPDX-License-Identifier: Apache-2.0 */ pragma solidity 0.6.9; pragma experimental ABIEncoderV2; /** * @title ReentrancyGuard * @author DODO Breeder * * @notice Protect functions from Reentrancy Attack */ contract ReentrancyGuard { // https://solidity.readthedocs.io/en/latest/control-structures.html?highlight=zero-state#scoping-and-declarations // zero-state of _ENTERED_ is false bool private _ENTERED_; modifier preventReentrant() { require(!_ENTERED_, "REENTRANT"); _ENTERED_ = true; _; _ENTERED_ = false; } } // File: contracts/intf/IERC20.sol // This is a file copied from https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/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); /** * @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/lib/SafeMath.sol /* Copyright 2020 DODO ZOO. */ /** * @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 /* Copyright 2020 DODO ZOO. This is a simplified version of OpenZepplin's SafeERC20 library */ /** * @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) ); } /** * @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/intf/IDODO.sol /* Copyright 2020 DODO ZOO. */ interface IDODO { function init( address owner, address supervisor, address maintainer, address baseToken, address quoteToken, address oracle, uint256 lpFeeRate, uint256 mtFeeRate, uint256 k, uint256 gasPriceLimit ) external; function transferOwnership(address newOwner) external; function claimOwnership() external; function sellBaseToken( uint256 amount, uint256 minReceiveQuote, bytes calldata data ) external returns (uint256); function buyBaseToken( uint256 amount, uint256 maxPayQuote, bytes calldata data ) external returns (uint256); function querySellBaseToken(uint256 amount) external view returns (uint256 receiveQuote); function queryBuyBaseToken(uint256 amount) external view returns (uint256 payQuote); function depositBaseTo(address to, uint256 amount) external returns (uint256); function withdrawBase(uint256 amount) external returns (uint256); function withdrawAllBase() external returns (uint256); function depositQuoteTo(address to, uint256 amount) external returns (uint256); function withdrawQuote(uint256 amount) external returns (uint256); function withdrawAllQuote() external returns (uint256); function _BASE_CAPITAL_TOKEN_() external returns (address); function _QUOTE_CAPITAL_TOKEN_() external returns (address); function _BASE_TOKEN_() external returns (address); function _QUOTE_TOKEN_() external returns (address); } // File: contracts/intf/IWETH.sol /* Copyright 2020 DODO ZOO. */ 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/DODOEthProxy.sol /* Copyright 2020 DODO ZOO. */ interface IDODOZoo { function getDODO(address baseToken, address quoteToken) external view returns (address); } /** * @title DODO Eth Proxy * @author DODO Breeder * * @notice Handle ETH-WETH converting for users. Use it only when WETH is base token */ contract DODOEthProxy is ReentrancyGuard { using SafeERC20 for IERC20; address public _DODO_ZOO_; address payable public _WETH_; // ============ Events ============ event ProxySellEth( address indexed seller, address indexed quoteToken, uint256 payEth, uint256 receiveQuote ); event ProxyBuyEth( address indexed buyer, address indexed quoteToken, uint256 receiveEth, uint256 payQuote ); event ProxyDepositEth(address indexed lp, address indexed DODO, uint256 ethAmount); event ProxyWithdrawEth(address indexed lp, address indexed DODO, uint256 ethAmount); // ============ Functions ============ constructor(address dodoZoo, address payable weth) public { _DODO_ZOO_ = dodoZoo; _WETH_ = weth; } fallback() external payable { require(msg.sender == _WETH_, "WE_SAVED_YOUR_ETH_:)"); } receive() external payable { require(msg.sender == _WETH_, "WE_SAVED_YOUR_ETH_:)"); } function sellEthTo( address quoteTokenAddress, uint256 ethAmount, uint256 minReceiveTokenAmount ) external payable preventReentrant returns (uint256 receiveTokenAmount) { require(msg.value == ethAmount, "ETH_AMOUNT_NOT_MATCH"); address DODO = IDODOZoo(_DODO_ZOO_).getDODO(_WETH_, quoteTokenAddress); require(DODO != address(0), "DODO_NOT_EXIST"); IWETH(_WETH_).deposit{value: ethAmount}(); IWETH(_WETH_).approve(DODO, ethAmount); receiveTokenAmount = IDODO(DODO).sellBaseToken(ethAmount, minReceiveTokenAmount, ""); _transferOut(quoteTokenAddress, msg.sender, receiveTokenAmount); emit ProxySellEth(msg.sender, quoteTokenAddress, ethAmount, receiveTokenAmount); return receiveTokenAmount; } function buyEthWith( address quoteTokenAddress, uint256 ethAmount, uint256 maxPayTokenAmount ) external preventReentrant returns (uint256 payTokenAmount) { address DODO = IDODOZoo(_DODO_ZOO_).getDODO(_WETH_, quoteTokenAddress); require(DODO != address(0), "DODO_NOT_EXIST"); payTokenAmount = IDODO(DODO).queryBuyBaseToken(ethAmount); _transferIn(quoteTokenAddress, msg.sender, payTokenAmount); IERC20(quoteTokenAddress).approve(DODO, payTokenAmount); IDODO(DODO).buyBaseToken(ethAmount, maxPayTokenAmount, ""); IWETH(_WETH_).withdraw(ethAmount); msg.sender.transfer(ethAmount); emit ProxyBuyEth(msg.sender, quoteTokenAddress, ethAmount, payTokenAmount); return payTokenAmount; } function depositEth(uint256 ethAmount, address quoteTokenAddress) external payable preventReentrant { require(msg.value == ethAmount, "ETH_AMOUNT_NOT_MATCH"); address DODO = IDODOZoo(_DODO_ZOO_).getDODO(_WETH_, quoteTokenAddress); require(DODO != address(0), "DODO_NOT_EXIST"); IWETH(_WETH_).deposit{value: ethAmount}(); IWETH(_WETH_).approve(DODO, ethAmount); IDODO(DODO).depositBaseTo(msg.sender, ethAmount); emit ProxyDepositEth(msg.sender, DODO, ethAmount); } function withdrawEth(uint256 ethAmount, address quoteTokenAddress) external preventReentrant returns (uint256 withdrawAmount) { address DODO = IDODOZoo(_DODO_ZOO_).getDODO(_WETH_, quoteTokenAddress); require(DODO != address(0), "DODO_NOT_EXIST"); address ethLpToken = IDODO(DODO)._BASE_CAPITAL_TOKEN_(); // transfer all pool shares to proxy uint256 lpBalance = IERC20(ethLpToken).balanceOf(msg.sender); IERC20(ethLpToken).transferFrom(msg.sender, address(this), lpBalance); IDODO(DODO).withdrawBase(ethAmount); // transfer remain shares back to msg.sender lpBalance = IERC20(ethLpToken).balanceOf(address(this)); IERC20(ethLpToken).transfer(msg.sender, lpBalance); // because of withdraw penalty, withdrawAmount may not equal to ethAmount // query weth amount first and than transfer ETH to msg.sender uint256 wethAmount = IERC20(_WETH_).balanceOf(address(this)); IWETH(_WETH_).withdraw(wethAmount); msg.sender.transfer(wethAmount); emit ProxyWithdrawEth(msg.sender, DODO, wethAmount); return wethAmount; } function withdrawAllEth(address quoteTokenAddress) external preventReentrant returns (uint256 withdrawAmount) { address DODO = IDODOZoo(_DODO_ZOO_).getDODO(_WETH_, quoteTokenAddress); require(DODO != address(0), "DODO_NOT_EXIST"); address ethLpToken = IDODO(DODO)._BASE_CAPITAL_TOKEN_(); // transfer all pool shares to proxy uint256 lpBalance = IERC20(ethLpToken).balanceOf(msg.sender); IERC20(ethLpToken).transferFrom(msg.sender, address(this), lpBalance); IDODO(DODO).withdrawAllBase(); // because of withdraw penalty, withdrawAmount may not equal to ethAmount // query weth amount first and than transfer ETH to msg.sender uint256 wethAmount = IERC20(_WETH_).balanceOf(address(this)); IWETH(_WETH_).withdraw(wethAmount); msg.sender.transfer(wethAmount); emit ProxyWithdrawEth(msg.sender, DODO, wethAmount); return wethAmount; } // ============ Helper Functions ============ function _transferIn( address tokenAddress, address from, uint256 amount ) internal { IERC20(tokenAddress).safeTransferFrom(from, address(this), amount); } function _transferOut( address tokenAddress, address to, uint256 amount ) internal { IERC20(tokenAddress).safeTransfer(to, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"dodoZoo","type":"address"},{"internalType":"address payable","name":"weth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":true,"internalType":"address","name":"quoteToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"receiveEth","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"payQuote","type":"uint256"}],"name":"ProxyBuyEth","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"lp","type":"address"},{"indexed":true,"internalType":"address","name":"DODO","type":"address"},{"indexed":false,"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"ProxyDepositEth","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"seller","type":"address"},{"indexed":true,"internalType":"address","name":"quoteToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"payEth","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"receiveQuote","type":"uint256"}],"name":"ProxySellEth","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"lp","type":"address"},{"indexed":true,"internalType":"address","name":"DODO","type":"address"},{"indexed":false,"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"ProxyWithdrawEth","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"_DODO_ZOO_","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_WETH_","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"quoteTokenAddress","type":"address"},{"internalType":"uint256","name":"ethAmount","type":"uint256"},{"internalType":"uint256","name":"maxPayTokenAmount","type":"uint256"}],"name":"buyEthWith","outputs":[{"internalType":"uint256","name":"payTokenAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"ethAmount","type":"uint256"},{"internalType":"address","name":"quoteTokenAddress","type":"address"}],"name":"depositEth","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"quoteTokenAddress","type":"address"},{"internalType":"uint256","name":"ethAmount","type":"uint256"},{"internalType":"uint256","name":"minReceiveTokenAmount","type":"uint256"}],"name":"sellEthTo","outputs":[{"internalType":"uint256","name":"receiveTokenAmount","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"quoteTokenAddress","type":"address"}],"name":"withdrawAllEth","outputs":[{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"ethAmount","type":"uint256"},{"internalType":"address","name":"quoteTokenAddress","type":"address"}],"name":"withdrawEth","outputs":[{"internalType":"uint256","name":"withdrawAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040523480156200001157600080fd5b50604051620019b6380380620019b6833981016040819052620000349162000070565b60008054610100600160a81b0319166101006001600160a01b0394851602179055600180546001600160a01b03191691909216179055620000c7565b6000806040838503121562000083578182fd5b82516200009081620000ae565b6020840151909250620000a381620000ae565b809150509250929050565b6001600160a01b0381168114620000c457600080fd5b50565b6118df80620000d76000396000f3fe6080604052600436106100745760003560e01c80635ba87dc01161004e5780635ba87dc01461012b5780636e89d3ea14610158578063a158657c1461016b578063d46d79bb1461018b576100ae565b80630d4eec8f146100d857806339239f721461010357806346f6b4e114610118576100ae565b366100ae576001546001600160a01b031633146100ac5760405162461bcd60e51b81526004016100a3906117b7565b60405180910390fd5b005b6001546001600160a01b031633146100ac5760405162461bcd60e51b81526004016100a3906117b7565b3480156100e457600080fd5b506100ed6101ab565b6040516100fa91906116cc565b60405180910390f35b34801561010f57600080fd5b506100ed6101ba565b6100ac610126366004611664565b6101ce565b34801561013757600080fd5b5061014b6101463660046115f8565b61049a565b6040516100fa919061185d565b61014b6101663660046115f8565b6107f7565b34801561017757600080fd5b5061014b610186366004611664565b610abb565b34801561019757600080fd5b5061014b6101a63660046115b9565b611009565b6001546001600160a01b031681565b60005461010090046001600160a01b031681565b60005460ff16156101f15760405162461bcd60e51b81526004016100a39061175f565b6000805460ff1916600117905534821461021d5760405162461bcd60e51b81526004016100a3906117e5565b60008054600154604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926102599291169086906004016116e0565b60206040518083038186803b15801561027157600080fd5b505afa158015610285573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a991906115dc565b90506001600160a01b0381166102d15760405162461bcd60e51b81526004016100a390611737565b600160009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0846040518263ffffffff1660e01b81526004016000604051808303818588803b15801561032157600080fd5b505af1158015610335573d6000803e3d6000fd5b505060015460405163095ea7b360e01b81526001600160a01b03909116935063095ea7b3925061036c91508490879060040161171e565b602060405180830381600087803b15801561038657600080fd5b505af115801561039a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103be919061162c565b5060405163aa06ce9b60e01b81526001600160a01b0382169063aa06ce9b906103ed903390879060040161171e565b602060405180830381600087803b15801561040757600080fd5b505af115801561041b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043f919061164c565b50806001600160a01b0316336001600160a01b03167f5291ece150597b5ce80e6d4bc19cec23d7e71e84e3a97e875718df3f7b671d3185604051610483919061185d565b60405180910390a350506000805460ff1916905550565b6000805460ff16156104be5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926105059291169089906004016116e0565b60206040518083038186803b15801561051d57600080fd5b505afa158015610531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055591906115dc565b90506001600160a01b03811661057d5760405162461bcd60e51b81526004016100a390611737565b6040516306302ef960e21b81526001600160a01b038216906318c0bbe4906105a990879060040161185d565b60206040518083038186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f9919061164c565b915061060685338461144b565b60405163095ea7b360e01b81526001600160a01b0386169063095ea7b390610634908490869060040161171e565b602060405180830381600087803b15801561064e57600080fd5b505af1158015610662573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610686919061162c565b5060405163733e738360e11b81526001600160a01b0382169063e67ce706906106b59087908790600401611874565b602060405180830381600087803b1580156106cf57600080fd5b505af11580156106e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610707919061164c565b50600154604051632e1a7d4d60e01b81526001600160a01b0390911690632e1a7d4d9061073890879060040161185d565b600060405180830381600087803b15801561075257600080fd5b505af1158015610766573d6000803e3d6000fd5b505060405133925086156108fc02915086906000818181858888f19350505050158015610797573d6000803e3d6000fd5b50846001600160a01b0316336001600160a01b03167fc10793e450d0cc4ab5809296cbbe082cc527cfee15b594fff08c28feab94451086856040516107dd929190611866565b60405180910390a3506000805460ff191690559392505050565b6000805460ff161561081b5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660011790553483146108475760405162461bcd60e51b81526004016100a3906117e5565b60008054600154604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926108839291169089906004016116e0565b60206040518083038186803b15801561089b57600080fd5b505afa1580156108af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d391906115dc565b90506001600160a01b0381166108fb5760405162461bcd60e51b81526004016100a390611737565b600160009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0856040518263ffffffff1660e01b81526004016000604051808303818588803b15801561094b57600080fd5b505af115801561095f573d6000803e3d6000fd5b505060015460405163095ea7b360e01b81526001600160a01b03909116935063095ea7b3925061099691508490889060040161171e565b602060405180830381600087803b1580156109b057600080fd5b505af11580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e8919061162c565b50604051638dae733360e01b81526001600160a01b03821690638dae733390610a179087908790600401611874565b602060405180830381600087803b158015610a3157600080fd5b505af1158015610a45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a69919061164c565b9150610a7685338461146b565b846001600160a01b0316336001600160a01b03167f34c63d7d6781002b1198cf817783bf9d106eaf1e16c52994f4a75e6437dba5f986856040516107dd929190611866565b6000805460ff1615610adf5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c692610b269291169087906004016116e0565b60206040518083038186803b158015610b3e57600080fd5b505afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7691906115dc565b90506001600160a01b038116610b9e5760405162461bcd60e51b81526004016100a390611737565b6000816001600160a01b031663d689107c6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1391906115dc565b90506000816001600160a01b03166370a08231336040518263ffffffff1660e01b8152600401610c4391906116cc565b60206040518083038186803b158015610c5b57600080fd5b505afa158015610c6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c93919061164c565b6040516323b872dd60e01b81529091506001600160a01b038316906323b872dd90610cc6903390309086906004016116fa565b602060405180830381600087803b158015610ce057600080fd5b505af1158015610cf4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d18919061162c565b5060405163f98bea1560e01b81526001600160a01b0384169063f98bea1590610d4590899060040161185d565b602060405180830381600087803b158015610d5f57600080fd5b505af1158015610d73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d97919061164c565b506040516370a0823160e01b81526001600160a01b038316906370a0823190610dc49030906004016116cc565b60206040518083038186803b158015610ddc57600080fd5b505afa158015610df0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e14919061164c565b60405163a9059cbb60e01b81529091506001600160a01b0383169063a9059cbb90610e45903390859060040161171e565b602060405180830381600087803b158015610e5f57600080fd5b505af1158015610e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e97919061162c565b506001546040516370a0823160e01b81526000916001600160a01b0316906370a0823190610ec99030906004016116cc565b60206040518083038186803b158015610ee157600080fd5b505afa158015610ef5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f19919061164c565b600154604051632e1a7d4d60e01b81529192506001600160a01b031690632e1a7d4d90610f4a90849060040161185d565b600060405180830381600087803b158015610f6457600080fd5b505af1158015610f78573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f19350505050158015610fa9573d6000803e3d6000fd5b50836001600160a01b0316336001600160a01b03167f7d205d2201ccbc0483539873bec8fdf5ba90453d947e361d213e7414003fd81d83604051610fed919061185d565b60405180910390a36000805460ff191690559695505050505050565b6000805460ff161561102d5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926110749291169087906004016116e0565b60206040518083038186803b15801561108c57600080fd5b505afa1580156110a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c491906115dc565b90506001600160a01b0381166110ec5760405162461bcd60e51b81526004016100a390611737565b6000816001600160a01b031663d689107c6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561112957600080fd5b505af115801561113d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116191906115dc565b90506000816001600160a01b03166370a08231336040518263ffffffff1660e01b815260040161119191906116cc565b60206040518083038186803b1580156111a957600080fd5b505afa1580156111bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111e1919061164c565b6040516323b872dd60e01b81529091506001600160a01b038316906323b872dd90611214903390309086906004016116fa565b602060405180830381600087803b15801561122e57600080fd5b505af1158015611242573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611266919061162c565b50826001600160a01b031663d47eaa376040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156112a257600080fd5b505af11580156112b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112da919061164c565b506001546040516370a0823160e01b81526000916001600160a01b0316906370a082319061130c9030906004016116cc565b60206040518083038186803b15801561132457600080fd5b505afa158015611338573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135c919061164c565b600154604051632e1a7d4d60e01b81529192506001600160a01b031690632e1a7d4d9061138d90849060040161185d565b600060405180830381600087803b1580156113a757600080fd5b505af11580156113bb573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156113ec573d6000803e3d6000fd5b50836001600160a01b0316336001600160a01b03167f7d205d2201ccbc0483539873bec8fdf5ba90453d947e361d213e7414003fd81d83604051611430919061185d565b60405180910390a36000805460ff1916905595945050505050565b6114666001600160a01b03841683308463ffffffff61148516565b505050565b6114666001600160a01b038416838363ffffffff6114e316565b6114dd846323b872dd60e01b8585856040516024016114a6939291906116fa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611502565b50505050565b6114668363a9059cbb60e01b84846040516024016114a692919061171e565b60006060836001600160a01b03168360405161151e9190611693565b6000604051808303816000865af19150503d806000811461155b576040519150601f19603f3d011682016040523d82523d6000602084013e611560565b606091505b5091509150816115825760405162461bcd60e51b81526004016100a390611782565b8051156114dd578080602001905181019061159d919061162c565b6114dd5760405162461bcd60e51b81526004016100a390611813565b6000602082840312156115ca578081fd5b81356115d581611891565b9392505050565b6000602082840312156115ed578081fd5b81516115d581611891565b60008060006060848603121561160c578182fd5b833561161781611891565b95602085013595506040909401359392505050565b60006020828403121561163d578081fd5b815180151581146115d5578182fd5b60006020828403121561165d578081fd5b5051919050565b60008060408385031215611676578182fd5b82359150602083013561168881611891565b809150509250929050565b60008251815b818110156116b35760208186018101518583015201611699565b818111156116c15782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600e908201526d1113d113d7d393d517d1561254d560921b604082015260600190565b60208082526009908201526814915153951490539560ba1b604082015260600190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b60208082526014908201527357455f53415645445f594f55525f4554485f3a2960601b604082015260600190565b60208082526014908201527308aa890be829a9eaa9ca8be9c9ea8be9a82a886960631b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b90815260200190565b918252602082015260400190565b918252602082015260606040820181905260009082015260800190565b6001600160a01b03811681146118a657600080fd5b5056fea264697066735822122051edfbfefc3245fa68b8f0c96c1b36278a45a6c215f9bf3eef6ec79d46cd71ac64736f6c634300060900330000000000000000000000003a97247df274a17c59a3bd12735ea3fcdfb49950000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Deployed Bytecode
0x6080604052600436106100745760003560e01c80635ba87dc01161004e5780635ba87dc01461012b5780636e89d3ea14610158578063a158657c1461016b578063d46d79bb1461018b576100ae565b80630d4eec8f146100d857806339239f721461010357806346f6b4e114610118576100ae565b366100ae576001546001600160a01b031633146100ac5760405162461bcd60e51b81526004016100a3906117b7565b60405180910390fd5b005b6001546001600160a01b031633146100ac5760405162461bcd60e51b81526004016100a3906117b7565b3480156100e457600080fd5b506100ed6101ab565b6040516100fa91906116cc565b60405180910390f35b34801561010f57600080fd5b506100ed6101ba565b6100ac610126366004611664565b6101ce565b34801561013757600080fd5b5061014b6101463660046115f8565b61049a565b6040516100fa919061185d565b61014b6101663660046115f8565b6107f7565b34801561017757600080fd5b5061014b610186366004611664565b610abb565b34801561019757600080fd5b5061014b6101a63660046115b9565b611009565b6001546001600160a01b031681565b60005461010090046001600160a01b031681565b60005460ff16156101f15760405162461bcd60e51b81526004016100a39061175f565b6000805460ff1916600117905534821461021d5760405162461bcd60e51b81526004016100a3906117e5565b60008054600154604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926102599291169086906004016116e0565b60206040518083038186803b15801561027157600080fd5b505afa158015610285573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102a991906115dc565b90506001600160a01b0381166102d15760405162461bcd60e51b81526004016100a390611737565b600160009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0846040518263ffffffff1660e01b81526004016000604051808303818588803b15801561032157600080fd5b505af1158015610335573d6000803e3d6000fd5b505060015460405163095ea7b360e01b81526001600160a01b03909116935063095ea7b3925061036c91508490879060040161171e565b602060405180830381600087803b15801561038657600080fd5b505af115801561039a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103be919061162c565b5060405163aa06ce9b60e01b81526001600160a01b0382169063aa06ce9b906103ed903390879060040161171e565b602060405180830381600087803b15801561040757600080fd5b505af115801561041b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043f919061164c565b50806001600160a01b0316336001600160a01b03167f5291ece150597b5ce80e6d4bc19cec23d7e71e84e3a97e875718df3f7b671d3185604051610483919061185d565b60405180910390a350506000805460ff1916905550565b6000805460ff16156104be5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926105059291169089906004016116e0565b60206040518083038186803b15801561051d57600080fd5b505afa158015610531573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055591906115dc565b90506001600160a01b03811661057d5760405162461bcd60e51b81526004016100a390611737565b6040516306302ef960e21b81526001600160a01b038216906318c0bbe4906105a990879060040161185d565b60206040518083038186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105f9919061164c565b915061060685338461144b565b60405163095ea7b360e01b81526001600160a01b0386169063095ea7b390610634908490869060040161171e565b602060405180830381600087803b15801561064e57600080fd5b505af1158015610662573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610686919061162c565b5060405163733e738360e11b81526001600160a01b0382169063e67ce706906106b59087908790600401611874565b602060405180830381600087803b1580156106cf57600080fd5b505af11580156106e3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610707919061164c565b50600154604051632e1a7d4d60e01b81526001600160a01b0390911690632e1a7d4d9061073890879060040161185d565b600060405180830381600087803b15801561075257600080fd5b505af1158015610766573d6000803e3d6000fd5b505060405133925086156108fc02915086906000818181858888f19350505050158015610797573d6000803e3d6000fd5b50846001600160a01b0316336001600160a01b03167fc10793e450d0cc4ab5809296cbbe082cc527cfee15b594fff08c28feab94451086856040516107dd929190611866565b60405180910390a3506000805460ff191690559392505050565b6000805460ff161561081b5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660011790553483146108475760405162461bcd60e51b81526004016100a3906117e5565b60008054600154604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926108839291169089906004016116e0565b60206040518083038186803b15801561089b57600080fd5b505afa1580156108af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d391906115dc565b90506001600160a01b0381166108fb5760405162461bcd60e51b81526004016100a390611737565b600160009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0856040518263ffffffff1660e01b81526004016000604051808303818588803b15801561094b57600080fd5b505af115801561095f573d6000803e3d6000fd5b505060015460405163095ea7b360e01b81526001600160a01b03909116935063095ea7b3925061099691508490889060040161171e565b602060405180830381600087803b1580156109b057600080fd5b505af11580156109c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e8919061162c565b50604051638dae733360e01b81526001600160a01b03821690638dae733390610a179087908790600401611874565b602060405180830381600087803b158015610a3157600080fd5b505af1158015610a45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a69919061164c565b9150610a7685338461146b565b846001600160a01b0316336001600160a01b03167f34c63d7d6781002b1198cf817783bf9d106eaf1e16c52994f4a75e6437dba5f986856040516107dd929190611866565b6000805460ff1615610adf5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c692610b269291169087906004016116e0565b60206040518083038186803b158015610b3e57600080fd5b505afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7691906115dc565b90506001600160a01b038116610b9e5760405162461bcd60e51b81526004016100a390611737565b6000816001600160a01b031663d689107c6040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610bdb57600080fd5b505af1158015610bef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1391906115dc565b90506000816001600160a01b03166370a08231336040518263ffffffff1660e01b8152600401610c4391906116cc565b60206040518083038186803b158015610c5b57600080fd5b505afa158015610c6f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c93919061164c565b6040516323b872dd60e01b81529091506001600160a01b038316906323b872dd90610cc6903390309086906004016116fa565b602060405180830381600087803b158015610ce057600080fd5b505af1158015610cf4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d18919061162c565b5060405163f98bea1560e01b81526001600160a01b0384169063f98bea1590610d4590899060040161185d565b602060405180830381600087803b158015610d5f57600080fd5b505af1158015610d73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d97919061164c565b506040516370a0823160e01b81526001600160a01b038316906370a0823190610dc49030906004016116cc565b60206040518083038186803b158015610ddc57600080fd5b505afa158015610df0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e14919061164c565b60405163a9059cbb60e01b81529091506001600160a01b0383169063a9059cbb90610e45903390859060040161171e565b602060405180830381600087803b158015610e5f57600080fd5b505af1158015610e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e97919061162c565b506001546040516370a0823160e01b81526000916001600160a01b0316906370a0823190610ec99030906004016116cc565b60206040518083038186803b158015610ee157600080fd5b505afa158015610ef5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f19919061164c565b600154604051632e1a7d4d60e01b81529192506001600160a01b031690632e1a7d4d90610f4a90849060040161185d565b600060405180830381600087803b158015610f6457600080fd5b505af1158015610f78573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f19350505050158015610fa9573d6000803e3d6000fd5b50836001600160a01b0316336001600160a01b03167f7d205d2201ccbc0483539873bec8fdf5ba90453d947e361d213e7414003fd81d83604051610fed919061185d565b60405180910390a36000805460ff191690559695505050505050565b6000805460ff161561102d5760405162461bcd60e51b81526004016100a39061175f565b6000805460ff191660019081178083559054604051630939d86360e11b81526001600160a01b03610100909304831692631273b0c6926110749291169087906004016116e0565b60206040518083038186803b15801561108c57600080fd5b505afa1580156110a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c491906115dc565b90506001600160a01b0381166110ec5760405162461bcd60e51b81526004016100a390611737565b6000816001600160a01b031663d689107c6040518163ffffffff1660e01b8152600401602060405180830381600087803b15801561112957600080fd5b505af115801561113d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116191906115dc565b90506000816001600160a01b03166370a08231336040518263ffffffff1660e01b815260040161119191906116cc565b60206040518083038186803b1580156111a957600080fd5b505afa1580156111bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111e1919061164c565b6040516323b872dd60e01b81529091506001600160a01b038316906323b872dd90611214903390309086906004016116fa565b602060405180830381600087803b15801561122e57600080fd5b505af1158015611242573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611266919061162c565b50826001600160a01b031663d47eaa376040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156112a257600080fd5b505af11580156112b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112da919061164c565b506001546040516370a0823160e01b81526000916001600160a01b0316906370a082319061130c9030906004016116cc565b60206040518083038186803b15801561132457600080fd5b505afa158015611338573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135c919061164c565b600154604051632e1a7d4d60e01b81529192506001600160a01b031690632e1a7d4d9061138d90849060040161185d565b600060405180830381600087803b1580156113a757600080fd5b505af11580156113bb573d6000803e3d6000fd5b505060405133925083156108fc02915083906000818181858888f193505050501580156113ec573d6000803e3d6000fd5b50836001600160a01b0316336001600160a01b03167f7d205d2201ccbc0483539873bec8fdf5ba90453d947e361d213e7414003fd81d83604051611430919061185d565b60405180910390a36000805460ff1916905595945050505050565b6114666001600160a01b03841683308463ffffffff61148516565b505050565b6114666001600160a01b038416838363ffffffff6114e316565b6114dd846323b872dd60e01b8585856040516024016114a6939291906116fa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611502565b50505050565b6114668363a9059cbb60e01b84846040516024016114a692919061171e565b60006060836001600160a01b03168360405161151e9190611693565b6000604051808303816000865af19150503d806000811461155b576040519150601f19603f3d011682016040523d82523d6000602084013e611560565b606091505b5091509150816115825760405162461bcd60e51b81526004016100a390611782565b8051156114dd578080602001905181019061159d919061162c565b6114dd5760405162461bcd60e51b81526004016100a390611813565b6000602082840312156115ca578081fd5b81356115d581611891565b9392505050565b6000602082840312156115ed578081fd5b81516115d581611891565b60008060006060848603121561160c578182fd5b833561161781611891565b95602085013595506040909401359392505050565b60006020828403121561163d578081fd5b815180151581146115d5578182fd5b60006020828403121561165d578081fd5b5051919050565b60008060408385031215611676578182fd5b82359150602083013561168881611891565b809150509250929050565b60008251815b818110156116b35760208186018101518583015201611699565b818111156116c15782828501525b509190910192915050565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b03929092168252602082015260400190565b6020808252600e908201526d1113d113d7d393d517d1561254d560921b604082015260600190565b60208082526009908201526814915153951490539560ba1b604082015260600190565b6020808252818101527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564604082015260600190565b60208082526014908201527357455f53415645445f594f55525f4554485f3a2960601b604082015260600190565b60208082526014908201527308aa890be829a9eaa9ca8be9c9ea8be9a82a886960631b604082015260600190565b6020808252602a908201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6040820152691bdd081cdd58d8d9595960b21b606082015260800190565b90815260200190565b918252602082015260400190565b918252602082015260606040820181905260009082015260800190565b6001600160a01b03811681146118a657600080fd5b5056fea264697066735822122051edfbfefc3245fa68b8f0c96c1b36278a45a6c215f9bf3eef6ec79d46cd71ac64736f6c63430006090033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003a97247df274a17c59a3bd12735ea3fcdfb49950000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
-----Decoded View---------------
Arg [0] : dodoZoo (address): 0x3A97247DF274a17C59A3bd12735ea3FcDFb49950
Arg [1] : weth (address): 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000003a97247df274a17c59a3bd12735ea3fcdfb49950
Arg [1] : 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Deployed Bytecode Sourcemap
10083:5946:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11123:6;;-1:-1:-1;;;;;11123:6:0;11109:10;:20;11101:53;;;;-1:-1:-1;;;11101:53:0;;;;;;;;;;;;;;;;;10083:5946;;11016:6;;-1:-1:-1;;;;;11016:6:0;11002:10;:20;10994:53;;;;-1:-1:-1;;;10994:53:0;;;;;;;;10198:29;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;10166:25;;;;;;;;;;;;;:::i;12799:563::-;;;;;;;;;:::i;11986:805::-;;;;;;;;;;-1:-1:-1;11986:805:0;;;;;;;;:::i;:::-;;;;;;;;11170:808;;;;;;;;;:::i;13370:1202::-;;;;;;;;;;-1:-1:-1;13370:1202:0;;;;;;;;:::i;14580:997::-;;;;;;;;;;-1:-1:-1;14580:997:0;;;;;;;;:::i;10198:29::-;;;-1:-1:-1;;;;;10198:29:0;;:::o;10166:25::-;;;;;;-1:-1:-1;;;;;10166:25:0;;:::o;12799:563::-;583:9;;;;582:10;574:32;;;;-1:-1:-1;;;574:32:0;;;;;;;;;617:9;:16;;-1:-1:-1;;617:16:0;629:4;617:16;;;12950:9:::1;:22:::0;::::1;12942:55;;;;-1:-1:-1::0;;;12942:55:0::1;;;;;;;;;13008:12;13032:10:::0;;::::1;13052:6:::0;13023:55:::1;::::0;-1:-1:-1;;;13023:55:0;;-1:-1:-1;;;;;13032:10:0::1;::::0;;::::1;::::0;::::1;::::0;13023:28:::1;::::0;:55:::1;::::0;13052:6;::::1;::::0;13060:17;;13023:55:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13008:70:::0;-1:-1:-1;;;;;;13097:18:0;::::1;13089:45;;;;-1:-1:-1::0;;;13089:45:0::1;;;;;;;;;13151:6;;;;;;;;;-1:-1:-1::0;;;;;13151:6:0::1;-1:-1:-1::0;;;;;13145:21:0::1;;13174:9;13145:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;13203:6:0::1;::::0;13197:38:::1;::::0;-1:-1:-1;;;13197:38:0;;-1:-1:-1;;;;;13203:6:0;;::::1;::::0;-1:-1:-1;13197:21:0::1;::::0;-1:-1:-1;13197:38:0::1;::::0;-1:-1:-1;13219:4:0;;13225:9;;13197:38:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13246:48:0::1;::::0;-1:-1:-1;;;13246:48:0;;-1:-1:-1;;;;;13246:25:0;::::1;::::0;::::1;::::0;:48:::1;::::0;13272:10:::1;::::0;13284:9;;13246:48:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13338:4;-1:-1:-1::0;;;;;13310:44:0::1;13326:10;-1:-1:-1::0;;;;;13310:44:0::1;;13344:9;13310:44;;;;;;;;;;;;;;;-1:-1:-1::0;;668:5:0;656:17;;-1:-1:-1;;656:17:0;;;-1:-1:-1;12799:563:0:o;11986:805::-;12148:22;583:9;;;;582:10;574:32;;;;-1:-1:-1;;;574:32:0;;;;;;;;;617:9;:16;;-1:-1:-1;;617:16:0;629:4;617:16;;;;;;12227:6;;12198:55:::1;::::0;-1:-1:-1;;;12198:55:0;;-1:-1:-1;;;;;617:16:0;12207:10;;::::1;::::0;::::1;::::0;12198:28:::1;::::0;:55:::1;::::0;12227:6;::::1;::::0;12235:17;;12198:55:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12183:70:::0;-1:-1:-1;;;;;;12272:18:0;::::1;12264:45;;;;-1:-1:-1::0;;;12264:45:0::1;;;;;;;;;12337:40;::::0;-1:-1:-1;;;12337:40:0;;-1:-1:-1;;;;;12337:29:0;::::1;::::0;::::1;::::0;:40:::1;::::0;12367:9;;12337:40:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12320:57;;12388:58;12400:17;12419:10;12431:14;12388:11;:58::i;:::-;12457:55;::::0;-1:-1:-1;;;12457:55:0;;-1:-1:-1;;;;;12457:33:0;::::1;::::0;::::1;::::0;:55:::1;::::0;12491:4;;12497:14;;12457:55:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;12523:58:0::1;::::0;-1:-1:-1;;;12523:58:0;;-1:-1:-1;;;;;12523:24:0;::::1;::::0;::::1;::::0;:58:::1;::::0;12548:9;;12559:17;;12523:58:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;12598:6:0::1;::::0;12592:33:::1;::::0;-1:-1:-1;;;12592:33:0;;-1:-1:-1;;;;;12598:6:0;;::::1;::::0;12592:22:::1;::::0;:33:::1;::::0;12615:9;;12592:33:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;12636:30:0::1;::::0;:10:::1;::::0;-1:-1:-1;12636:30:0;::::1;;;::::0;-1:-1:-1;12656:9:0;;12636:30:::1;::::0;;;12656:9;12636:10;:30;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12706:17;-1:-1:-1::0;;;;;12682:69:0::1;12694:10;-1:-1:-1::0;;;;;12682:69:0::1;;12725:9;12736:14;12682:69;;;;;;;;;;;;;;;;-1:-1:-1::0;668:5:0;656:17;;-1:-1:-1;;656:17:0;;;11986:805;;-1:-1:-1;;;11986:805:0:o;11170:808::-;11343:26;583:9;;;;582:10;574:32;;;;-1:-1:-1;;;574:32:0;;;;;;;;;617:9;:16;;-1:-1:-1;;617:16:0;629:4;617:16;;;11390:9:::1;:22:::0;::::1;11382:55;;;;-1:-1:-1::0;;;11382:55:0::1;;;;;;;;;11448:12;11472:10:::0;;::::1;11492:6:::0;11463:55:::1;::::0;-1:-1:-1;;;11463:55:0;;-1:-1:-1;;;;;11472:10:0::1;::::0;;::::1;::::0;::::1;::::0;11463:28:::1;::::0;:55:::1;::::0;11492:6;::::1;::::0;11500:17;;11463:55:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11448:70:::0;-1:-1:-1;;;;;;11537:18:0;::::1;11529:45;;;;-1:-1:-1::0;;;11529:45:0::1;;;;;;;;;11591:6;;;;;;;;;-1:-1:-1::0;;;;;11591:6:0::1;-1:-1:-1::0;;;;;11585:21:0::1;;11614:9;11585:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;11643:6:0::1;::::0;11637:38:::1;::::0;-1:-1:-1;;;11637:38:0;;-1:-1:-1;;;;;11643:6:0;;::::1;::::0;-1:-1:-1;11637:21:0::1;::::0;-1:-1:-1;11637:38:0::1;::::0;-1:-1:-1;11659:4:0;;11665:9;;11637:38:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;11707:63:0::1;::::0;-1:-1:-1;;;11707:63:0;;-1:-1:-1;;;;;11707:25:0;::::1;::::0;::::1;::::0;:63:::1;::::0;11733:9;;11744:21;;11707:63:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11686:84;;11781:63;11794:17;11813:10;11825:18;11781:12;:63::i;:::-;11885:17;-1:-1:-1::0;;;;;11860:74:0::1;11873:10;-1:-1:-1::0;;;;;11860:74:0::1;;11904:9;11915:18;11860:74;;;;;;;;13370:1202:::0;13499:22;583:9;;;;582:10;574:32;;;;-1:-1:-1;;;574:32:0;;;;;;;;;617:9;:16;;-1:-1:-1;;617:16:0;629:4;617:16;;;;;;13583:6;;13554:55:::1;::::0;-1:-1:-1;;;13554:55:0;;-1:-1:-1;;;;;617:16:0;13563:10;;::::1;::::0;::::1;::::0;13554:28:::1;::::0;:55:::1;::::0;13583:6;::::1;::::0;13591:17;;13554:55:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13539:70:::0;-1:-1:-1;;;;;;13628:18:0;::::1;13620:45;;;;-1:-1:-1::0;;;13620:45:0::1;;;;;;;;;13676:18;13703:4;-1:-1:-1::0;;;;;13697:32:0::1;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13676:55;;13790:17;13817:10;-1:-1:-1::0;;;;;13810:28:0::1;;13839:10;13810:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13861:69;::::0;-1:-1:-1;;;13861:69:0;;13790:60;;-1:-1:-1;;;;;;13861:31:0;::::1;::::0;::::1;::::0;:69:::1;::::0;13893:10:::1;::::0;13913:4:::1;::::0;13790:60;;13861:69:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;13941:35:0::1;::::0;-1:-1:-1;;;13941:35:0;;-1:-1:-1;;;;;13941:24:0;::::1;::::0;::::1;::::0;:35:::1;::::0;13966:9;;13941:35:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;14055:43:0::1;::::0;-1:-1:-1;;;14055:43:0;;-1:-1:-1;;;;;14055:28:0;::::1;::::0;::::1;::::0;:43:::1;::::0;14092:4:::1;::::0;14055:43:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14109:50;::::0;-1:-1:-1;;;14109:50:0;;14043:55;;-1:-1:-1;;;;;;14109:27:0;::::1;::::0;::::1;::::0;:50:::1;::::0;14137:10:::1;::::0;14043:55;;14109:50:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;14355:6:0::1;::::0;14348:39:::1;::::0;-1:-1:-1;;;14348:39:0;;14327:18:::1;::::0;-1:-1:-1;;;;;14355:6:0::1;::::0;14348:24:::1;::::0;:39:::1;::::0;14381:4:::1;::::0;14348:39:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14404:6;::::0;14398:34:::1;::::0;-1:-1:-1;;;14398:34:0;;14327:60;;-1:-1:-1;;;;;;14404:6:0::1;::::0;14398:22:::1;::::0;:34:::1;::::0;14327:60;;14398:34:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;14443:31:0::1;::::0;:10:::1;::::0;-1:-1:-1;14443:31:0;::::1;;;::::0;-1:-1:-1;14463:10:0;;14443:31:::1;::::0;;;14463:10;14443;:31;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;14519:4;-1:-1:-1::0;;;;;14490:46:0::1;14507:10;-1:-1:-1::0;;;;;14490:46:0::1;;14525:10;14490:46;;;;;;;;;;;;;;;668:5:::0;656:17;;-1:-1:-1;;656:17:0;;;14554:10;13370:1202;-1:-1:-1;;;;;;13370:1202:0:o;14580:997::-;14693:22;583:9;;;;582:10;574:32;;;;-1:-1:-1;;;574:32:0;;;;;;;;;617:9;:16;;-1:-1:-1;;617:16:0;629:4;617:16;;;;;;14777:6;;14748:55:::1;::::0;-1:-1:-1;;;14748:55:0;;-1:-1:-1;;;;;617:16:0;14757:10;;::::1;::::0;::::1;::::0;14748:28:::1;::::0;:55:::1;::::0;14777:6;::::1;::::0;14785:17;;14748:55:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14733:70:::0;-1:-1:-1;;;;;;14822:18:0;::::1;14814:45;;;;-1:-1:-1::0;;;14814:45:0::1;;;;;;;;;14870:18;14897:4;-1:-1:-1::0;;;;;14891:32:0::1;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14870:55;;14984:17;15011:10;-1:-1:-1::0;;;;;15004:28:0::1;;15033:10;15004:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15055:69;::::0;-1:-1:-1;;;15055:69:0;;14984:60;;-1:-1:-1;;;;;;15055:31:0;::::1;::::0;::::1;::::0;:69:::1;::::0;15087:10:::1;::::0;15107:4:::1;::::0;14984:60;;15055:69:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15141:4;-1:-1:-1::0;;;;;15135:27:0::1;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;15360:6:0::1;::::0;15353:39:::1;::::0;-1:-1:-1;;;15353:39:0;;15332:18:::1;::::0;-1:-1:-1;;;;;15360:6:0::1;::::0;15353:24:::1;::::0;:39:::1;::::0;15386:4:::1;::::0;15353:39:::1;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15409:6;::::0;15403:34:::1;::::0;-1:-1:-1;;;15403:34:0;;15332:60;;-1:-1:-1;;;;;;15409:6:0::1;::::0;15403:22:::1;::::0;:34:::1;::::0;15332:60;;15403:34:::1;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;15448:31:0::1;::::0;:10:::1;::::0;-1:-1:-1;15448:31:0;::::1;;;::::0;-1:-1:-1;15468:10:0;;15448:31:::1;::::0;;;15468:10;15448;:31;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;15524:4;-1:-1:-1::0;;;;;15495:46:0::1;15512:10;-1:-1:-1::0;;;;;15495:46:0::1;;15530:10;15495:46;;;;;;;;;;;;;;;668:5:::0;656:17;;-1:-1:-1;;656:17:0;;;15559:10;14580:997;-1:-1:-1;;;;;14580:997:0:o;15638:201::-;15765:66;-1:-1:-1;;;;;15765:37:0;;15803:4;15817;15824:6;15765:66;:37;:66;:::i;:::-;15638:201;;;:::o;15847:179::-;15973:45;-1:-1:-1;;;;;15973:33:0;;16007:2;16011:6;15973:45;:33;:45;:::i;5571:285::-;5715:133;5749:5;5792:27;;;5821:4;5827:2;5831:5;5769:68;;;;;;;;;;;;;;;-1:-1:-1;;5769:68:0;;;;;;;;;;;;;;-1:-1:-1;;;;;5769:68:0;-1:-1:-1;;;;;;5769:68:0;;;;;;;;;;5715:19;:133::i;:::-;5571:285;;;;:::o;5352:211::-;5469:86;5489:5;5519:23;;;5544:2;5548:5;5496:58;;;;;;;;;;6247:1046;6907:12;6921:23;6956:5;-1:-1:-1;;;;;6948:19:0;6968:4;6948:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6906:67;;;;6992:7;6984:52;;;;-1:-1:-1;;;6984:52:0;;;;;;;;;7053:17;;:21;7049:237;;7208:10;7197:30;;;;;;;;;;;;;;7189:85;;;;-1:-1:-1;;;7189:85:0;;;;;;;;696:241:-1;;800:2;788:9;779:7;775:23;771:32;768:2;;;-1:-1;;806:12;768:2;85:6;72:20;97:33;124:5;97:33;;;858:63;762:175;-1:-1;;;762:175;944:263;;1059:2;1047:9;1038:7;1034:23;1030:32;1027:2;;;-1:-1;;1065:12;1027:2;226:6;220:13;238:33;265:5;238:33;;1214:491;;;;1352:2;1340:9;1331:7;1327:23;1323:32;1320:2;;;-1:-1;;1358:12;1320:2;85:6;72:20;97:33;124:5;97:33;;;1410:63;1510:2;1549:22;;485:20;;-1:-1;1618:2;1657:22;;;485:20;;1314:391;-1:-1;;;1314:391;1712:257;;1824:2;1812:9;1803:7;1799:23;1795:32;1792:2;;;-1:-1;;1830:12;1792:2;364:6;358:13;14548:5;13454:13;13447:21;14526:5;14523:32;14513:2;;-1:-1;;14559:12;1976:263;;2091:2;2079:9;2070:7;2066:23;2062:32;2059:2;;;-1:-1;;2097:12;2059:2;-1:-1;633:13;;2053:186;-1:-1;2053:186;2246:366;;;2367:2;2355:9;2346:7;2342:23;2338:32;2335:2;;;-1:-1;;2373:12;2335:2;498:6;485:20;2425:63;;2525:2;2568:9;2564:22;72:20;97:33;124:5;97:33;;;2533:63;;;;2329:283;;;;;;5811:271;;3192:5;12647:12;-1:-1;14139:101;14153:6;14150:1;14147:13;14139:101;;;3336:4;14220:11;;;;;14214:18;14201:11;;;14194:39;14168:10;14139:101;;;14255:6;14252:1;14249:13;14246:2;;;-1:-1;14311:6;14306:3;14302:16;14295:27;14246:2;-1:-1;3367:16;;;;;5945:137;-1:-1;;5945:137;6089:222;-1:-1;;;;;13542:54;;;;2855:45;;6216:2;6201:18;;6187:124;6824:349;-1:-1;;;;;13542:54;;;2698:58;;13542:54;;7159:2;7144:18;;2855:45;6987:2;6972:18;;6958:215;7180:476;-1:-1;;;;;13542:54;;;2698:58;;13542:54;;;;7559:2;7544:18;;2698:58;7642:2;7627:18;;5762:37;;;;7379:2;7364:18;;7350:306;7663:349;-1:-1;;;;;13542:54;;;;2698:58;;7998:2;7983:18;;5762:37;7826:2;7811:18;;7797:215;8810:416;9010:2;9024:47;;;3620:2;8995:18;;;12791:19;-1:-1;;;12831:14;;;3636:37;3692:12;;;8981:245;9233:416;9433:2;9447:47;;;3943:1;9418:18;;;12791:19;-1:-1;;;12831:14;;;3958:32;4009:12;;;9404:245;9656:416;9856:2;9870:47;;;9841:18;;;12791:19;4296:34;12831:14;;;4276:55;4350:12;;;9827:245;10079:416;10279:2;10293:47;;;4601:2;10264:18;;;12791:19;-1:-1;;;12831:14;;;4617:43;4679:12;;;10250:245;10502:416;10702:2;10716:47;;;5199:2;10687:18;;;12791:19;-1:-1;;;12831:14;;;5215:43;5277:12;;;10673:245;10925:416;11125:2;11139:47;;;5528:2;11110:18;;;12791:19;5564:34;12831:14;;;5544:55;-1:-1;;;5619:12;;;5612:34;5665:12;;;11096:245;11348:222;5762:37;;;11475:2;11460:18;;11446:124;11577:333;5762:37;;;11896:2;11881:18;;5762:37;11732:2;11717:18;;11703:207;11917:636;5762:37;;;12336:2;12321:18;;5762:37;12172:2;12373;12358:18;;12351:48;;;11917:636;12157:18;;;12791:19;12831:14;;;12143:410;14343:117;-1:-1;;;;;13542:54;;14402:35;;14392:2;;14451:1;;14441:12;14392:2;14386:74;
Swarm Source
ipfs://51edfbfefc3245fa68b8f0c96c1b36278a45a6c215f9bf3eef6ec79d46cd71ac
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 27 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.