Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 488 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Redeem | 19790724 | 305 days ago | IN | 0 ETH | 0.00215516 | ||||
Mint | 19782640 | 306 days ago | IN | 0.42069006 ETH | 0.00219562 | ||||
Mint | 19731094 | 313 days ago | IN | 0.03020767 ETH | 0.00267311 | ||||
Mint | 19730905 | 313 days ago | IN | 0.02107762 ETH | 0.00180564 | ||||
Mint | 19727037 | 314 days ago | IN | 0.13396606 ETH | 0.00320977 | ||||
Mint | 19727026 | 314 days ago | IN | 0.08293808 ETH | 0.0026398 | ||||
Mint | 19726330 | 314 days ago | IN | 0.01760719 ETH | 0.00354671 | ||||
Mint | 19726143 | 314 days ago | IN | 0.16521845 ETH | 0.00462584 | ||||
Mint | 19725506 | 314 days ago | IN | 0.22145545 ETH | 0.00629595 | ||||
Mint | 19725434 | 314 days ago | IN | 0.07357359 ETH | 0.00657179 | ||||
Mint | 19725262 | 314 days ago | IN | 0.00742513 ETH | 0.00171916 | ||||
Mint | 19725226 | 314 days ago | IN | 0.04414902 ETH | 0.00541325 | ||||
Mint | 19725140 | 314 days ago | IN | 0.01471455 ETH | 0.00829854 | ||||
Mint | 19725120 | 314 days ago | IN | 0.01471441 ETH | 0.00235123 | ||||
Mint | 19713352 | 316 days ago | IN | 0.32552801 ETH | 0.00234212 | ||||
Mint | 19713285 | 316 days ago | IN | 0.06504525 ETH | 0.00261857 | ||||
Mint | 19712403 | 316 days ago | IN | 0.00815562 ETH | 0.00284862 | ||||
Mint | 19710213 | 316 days ago | IN | 0.06672859 ETH | 0.0027818 | ||||
Mint | 19710204 | 316 days ago | IN | 0.51856524 ETH | 0.00206641 | ||||
Mint | 19710192 | 316 days ago | IN | 0.52398173 ETH | 0.00045258 | ||||
Mint | 19702609 | 317 days ago | IN | 0.01358638 ETH | 0.00211017 | ||||
Mint | 19699134 | 318 days ago | IN | 0.00141383 ETH | 0.00167675 | ||||
Mint | 19699119 | 318 days ago | IN | 0.00141383 ETH | 0.00041941 | ||||
Mint | 19699096 | 318 days ago | IN | 0.00141383 ETH | 0.0007323 | ||||
Redeem | 19656057 | 324 days ago | IN | 0 ETH | 0.00286391 |
Advanced mode: Intended for advanced users or developers and will display all Internal Transactions including zero value transfers. Name tag integration is not available in advanced view.
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
||||
---|---|---|---|---|---|---|---|
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19790724 | 305 days ago | 0 ETH | |||||
19782640 | 306 days ago | 0.00042026 ETH | |||||
19782640 | 306 days ago | 0 ETH | |||||
19782640 | 306 days ago | 0 ETH | |||||
19782640 | 306 days ago | 0.00042026 ETH | |||||
19782640 | 306 days ago | 0.42069006 ETH | |||||
19782640 | 306 days ago | 0 ETH | |||||
19782640 | 306 days ago | 0 ETH | |||||
19782640 | 306 days ago | 0 ETH | |||||
19731094 | 313 days ago | 0.00003017 ETH | |||||
19731094 | 313 days ago | 0 ETH | |||||
19731094 | 313 days ago | 0 ETH | |||||
19731094 | 313 days ago | 0.00003017 ETH | |||||
19731094 | 313 days ago | 0.03020767 ETH | |||||
19731094 | 313 days ago | 0 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Eth_broker
Compiler Version
v0.5.0+commit.1d4f565a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-08-12 */ // File: contracts/I_Curve.sol pragma solidity 0.5.0; /** * @title Interface Curve * @notice This contract acts as an interface to the curve contract. For * documentation please see the curve smart contract. */ interface I_Curve { // ------------------------------------------------------------------------- // View functions // ------------------------------------------------------------------------- /** * @notice This function is only callable after the curve contract has been * initialized. * @param _amount The amount of tokens a user wants to buy * @return uint256 The cost to buy the _amount of tokens in the collateral * currency (see collateral token). */ function buyPrice(uint256 _amount) external view returns (uint256 collateralRequired); /** * @notice This function is only callable after the curve contract has been * initialized. * @param _amount The amount of tokens a user wants to sell * @return collateralReward The reward for selling the _amount of tokens in the * collateral currency (see collateral token). */ function sellReward(uint256 _amount) external view returns (uint256 collateralReward); /** * @return If the curve is both active and initialised. */ function isCurveActive() external view returns (bool); /** * @return The address of the collateral token (DAI) */ function collateralToken() external view returns (address); /** * @return The address of the bonded token (BZZ). */ function bondedToken() external view returns (address); /** * @return The required collateral amount (DAI) to initialise the curve. */ function requiredCollateral(uint256 _initialSupply) external view returns (uint256); // ------------------------------------------------------------------------- // State modifying functions // ------------------------------------------------------------------------- /** * @notice This function initializes the curve contract, and ensure the * curve has the required permissions on the token contract needed * to function. */ function init() external; /** * @param _amount The amount of tokens (BZZ) the user wants to buy. * @param _maxCollateralSpend The max amount of collateral (DAI) the user is * willing to spend in order to buy the _amount of tokens. * @return The status of the mint. Note that should the total cost of the * purchase exceed the _maxCollateralSpend the transaction will revert. */ function mint(uint256 _amount, uint256 _maxCollateralSpend) external returns (bool success); /** * @param _amount The amount of tokens (BZZ) the user wants to buy. * @param _maxCollateralSpend The max amount of collateral (DAI) the user is * willing to spend in order to buy the _amount of tokens. * @param _to The address to send the tokens to. * @return The status of the mint. Note that should the total cost of the * purchase exceed the _maxCollateralSpend the transaction will revert. */ function mintTo( uint256 _amount, uint256 _maxCollateralSpend, address _to ) external returns (bool success); /** * @param _amount The amount of tokens (BZZ) the user wants to sell. * @param _minCollateralReward The min amount of collateral (DAI) the user is * willing to receive for their tokens. * @return The status of the burn. Note that should the total reward of the * burn be below the _minCollateralReward the transaction will revert. */ function redeem(uint256 _amount, uint256 _minCollateralReward) external returns (bool success); /** * @notice Shuts down the curve, disabling buying, selling and both price * functions. Can only be called by the owner. Will renounce the * minter role on the bonded token. */ function shutDown() external; } // File: contracts/I_router_02.sol pragma solidity 0.5.0; /** * Please note that this interface was created as IUniswapV2Router02 uses * Solidity >= 0.6.2, and the BZZ infastructure uses 0.5.0. */ interface I_router_02 { // Views & Pure function WETH() external pure returns (address); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); // State modifying function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapExactTokensForETH( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); } // File: @openzeppelin/contracts/token/ERC20/IERC20.sol pragma solidity ^0.5.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. Does not include * the optional functions; to access them see {ERC20Detailed}. */ interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @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); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } // File: contracts/Eth_broker.sol pragma solidity 0.5.0; contract Eth_broker { // The instance of the curve I_Curve internal curve_; // The instance of the Uniswap router I_router_02 internal router_; // The instance of the DAI token IERC20 internal dai_; // The address for the underlying token address IERC20 internal bzz_; // Mutex guard for state modifying functions uint256 private status_; // States for the guard uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; // ------------------------------------------------------------------------- // Events // ------------------------------------------------------------------------- // Emitted when tokens are minted event mintTokensWithEth( address indexed buyer, // The address of the buyer uint256 amount, // The amount of bonded tokens to mint uint256 priceForTokensDai, // The price in DAI for the token amount uint256 EthTradedForDai, // The ETH amount sold for DAI uint256 maxSpendDai // The max amount of DAI to spend ); // Emitted when tokens are minted event mintTokensToWithEth( address indexed buyer, // The address of the buyer address indexed receiver, // The address of the receiver of the tokens uint256 amount, // The amount of bonded tokens to mint uint256 priceForTokensDai, // The price in DAI for the token amount uint256 EthTradedForDai, // The ETH amount sold for DAI uint256 maxSpendDai // The max amount of DAI to spend ); // Emitted when tokens are burnt event burnTokensWithEth( address indexed seller, // The address of the seller uint256 amount, // The amount of bonded tokens to burn uint256 rewardReceivedDai, // The amount of DAI received for selling uint256 ethReceivedForDai, // How much ETH the DAI was traded for uint256 minRewardDai // The min amount of DAI to sell for ); // ------------------------------------------------------------------------- // Modifiers // ------------------------------------------------------------------------- /** * @notice Checks if the curve is active (may be redundant). */ modifier isCurveActive() { require(curve_.isCurveActive(), "Curve inactive"); _; } /** * @notice Protects against re-entrancy attacks */ modifier mutex() { require(status_ != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to non Reentrant after this point will fail status_ = _ENTERED; // Function executes _; // Status set to not entered status_ = _NOT_ENTERED; } // ------------------------------------------------------------------------- // Constructor // ------------------------------------------------------------------------- constructor( address _bzzCurve, address _collateralToken, address _router02 ) public { require( _bzzCurve != address(0) && _collateralToken != address(0) && _router02 != address(0), "Addresses of contracts cannot be 0x address" ); curve_ = I_Curve(_bzzCurve); dai_ = IERC20(_collateralToken); router_ = I_router_02(_router02); // Setting the address of the underlying token (BZZ) bzz_ = IERC20(curve_.bondedToken()); } // ------------------------------------------------------------------------- // View functions // ------------------------------------------------------------------------- /** * @notice This function is only callable after the curve contract has been * initialized. * @param _amount The amount of tokens a user wants to buy * @return uint256 The cost to buy the _amount of tokens in ETH */ function buyPrice(uint256 _amount) public view isCurveActive() returns (uint256) { // Getting the current DAI cost for token amount uint256 daiCost = curve_.buyPrice(_amount); // Returning the required ETH to buy DAI amount return router_.getAmountsIn( daiCost, getPath(true) )[0]; } /** * @notice This function is only callable after the curve contract has been * initialized. * @param _amount The amount of tokens a user wants to sell * @return uint256 The reward for selling the _amount of tokens in ETH */ function sellReward(uint256 _amount) public view isCurveActive() returns (uint256) { // Getting the current DAI reward for token amount uint256 daiReward = curve_.sellReward(_amount); // Returning the ETH reward for token sale return router_.getAmountsIn( daiReward, getPath(true) )[0]; } /** * @param _daiAmount The amount of dai to be traded for ETH * @return uint256 The amount of ETH that can be traded for given the * dai amount */ function sellRewardDai(uint256 _daiAmount) public view isCurveActive() returns (uint256) { // Returning the ETH reward for the dai amount return router_.getAmountsIn( _daiAmount, getPath(true) )[0]; } /** * @param _buy If the path is for a buy or sell transaction * @return address[] The path for the transaction */ function getPath(bool _buy) public view returns(address[] memory) { address[] memory buyPath = new address[](2); if(_buy) { buyPath[0] = router_.WETH(); buyPath[1] = address(dai_); } else { buyPath[0] = address(dai_); buyPath[1] = router_.WETH(); } return buyPath; } /** * @return Gets the current time */ function getTime() public view returns(uint256) { return now; } // ------------------------------------------------------------------------- // State modifying functions // ------------------------------------------------------------------------- /** * @param _tokenAmount The amount of BZZ tokens the user would like to * buy from the curve. * @param _maxDaiSpendAmount The max amount of collateral (DAI) the user * is willing to spend to buy the amount of tokens. * @param _deadline Unix timestamp after which the transaction will * revert. - Taken from Uniswap documentation: * https://uniswap.org/docs/v2/smart-contracts/router02/#swapethforexacttokens * @return bool If the transaction completed successfully. * @notice Before this function is called the caller does not need to * approve the spending of anything. Please assure that the amount * of ETH sent with this transaction is sufficient by first calling * `buyPrice` with the same token amount. Add your % slippage to * the max dai spend amount (you can get the expected amount by * calling `buyPrice` on the curve contract). */ function mint( uint256 _tokenAmount, uint256 _maxDaiSpendAmount, uint _deadline ) external payable isCurveActive() mutex() returns (bool) { (uint256 daiNeeded, uint256 ethReceived) = _commonMint( _tokenAmount, _maxDaiSpendAmount, _deadline, msg.sender ); // Emitting event with all important info emit mintTokensWithEth( msg.sender, _tokenAmount, daiNeeded, ethReceived, _maxDaiSpendAmount ); // Returning that the mint executed successfully return true; } /** * @param _tokenAmount The amount of BZZ tokens the user would like to * buy from the curve. * @param _maxDaiSpendAmount The max amount of collateral (DAI) the user * is willing to spend to buy the amount of tokens. * @param _deadline Unix timestamp after which the transaction will * revert. - Taken from Uniswap documentation: * https://uniswap.org/docs/v2/smart-contracts/router02/#swapethforexacttokens * @return bool If the transaction completed successfully. * @notice Before this function is called the caller does not need to * approve the spending of anything. Please assure that the amount * of ETH sent with this transaction is sufficient by first calling * `buyPrice` with the same token amount. Add your % slippage to * the max dai spend amount (you can get the expected amount by * calling `buyPrice` on the curve contract). */ function mintTo( uint256 _tokenAmount, uint256 _maxDaiSpendAmount, uint _deadline, address _to ) external payable isCurveActive() mutex() returns (bool) { (uint256 daiNeeded, uint256 ethReceived) = _commonMint( _tokenAmount, _maxDaiSpendAmount, _deadline, _to ); // Emitting event with all important info emit mintTokensToWithEth( msg.sender, _to, _tokenAmount, daiNeeded, ethReceived, _maxDaiSpendAmount ); // Returning that the mint executed successfully return true; } /** * @notice The user needs to have approved this contract as a spender of * of the desired `_tokenAmount` to sell before calling this * transaction. Failure to do so will result in the call reverting. * This function is payable to receive ETH from internal calls. * Please do not send ETH to this function. * @param _tokenAmount The amount of BZZ tokens the user would like to * sell. * @param _minDaiSellValue The min value of collateral (DAI) the user * is willing to sell their tokens for. * @param _deadline Unix timestamp after which the transaction will * revert. - Taken from Uniswap documentation: * https://uniswap.org/docs/v2/smart-contracts/router02/#swapexacttokensforeth * @return bool If the transaction completed successfully. */ function redeem( uint256 _tokenAmount, uint256 _minDaiSellValue, uint _deadline ) external payable isCurveActive() mutex() returns (bool) { // Gets the current reward for selling the amount of tokens uint256 daiReward = curve_.sellReward(_tokenAmount); // The check that the dai reward amount is not more than the min sell // amount happens in the curve. // Transferring _amount of tokens into this contract require( bzz_.transferFrom( msg.sender, address(this), _tokenAmount ), "Transferring BZZ failed" ); // Approving the curve as a spender require( bzz_.approve( address(curve_), _tokenAmount ), "BZZ approve failed" ); // Selling tokens for DAI require( curve_.redeem( _tokenAmount, daiReward ), "Curve burn failed" ); // Getting expected ETH for DAI uint256 ethMin = sellRewardDai(_minDaiSellValue); // Approving the router as a spender require( dai_.approve( address(router_), daiReward ), "DAI approve failed" ); // Selling DAI received for ETH router_.swapExactTokensForETH( daiReward, ethMin, getPath(false), msg.sender, _deadline ); // Emitting event with all important info emit burnTokensWithEth( msg.sender, _tokenAmount, daiReward, ethMin, _minDaiSellValue ); // Returning that the burn executed successfully return true; } function() external payable { require( msg.sender == address(router_), "ETH not accepted outside router" ); } // ------------------------------------------------------------------------- // Internal functions // ------------------------------------------------------------------------- /** * @param _tokenAmount The amount of BZZ tokens the user would like to * buy from the curve. * @param _maxDaiSpendAmount The max amount of collateral (DAI) the user * is willing to spend to buy the amount of tokens. * @param _deadline Unix timestamp after which the transaction will * revert. - Taken from Uniswap documentation: * https://uniswap.org/docs/v2/smart-contracts/router02/#swapethforexacttokens * @return uint256 The dai needed to buy the tokens. * @return uint256 The Ether received from the user for the trade. * @notice Before this function is called the caller does not need to * approve the spending of anything. Please assure that the amount * of ETH sent with this transaction is sufficient by first calling * `buyPrice` with the same token amount. Add your % slippage to * the max dai spend amount (you can get the expected amount by * calling `buyPrice` on the curve contract). */ function _commonMint( uint256 _tokenAmount, uint256 _maxDaiSpendAmount, uint _deadline, address _to ) internal returns( uint256 daiNeeded, uint256 ethReceived ) { // Getting the exact needed amount of DAI for desired token amount daiNeeded = curve_.buyPrice(_tokenAmount); // Checking that this amount is not more than the max spend amount require( _maxDaiSpendAmount >= daiNeeded, "DAI required for trade above max" ); // Swapping sent ETH for exact amount of DAI needed router_.swapETHForExactTokens.value(msg.value)( daiNeeded, getPath(true), address(this), _deadline ); // Getting the amount of ETH received ethReceived = address(this).balance; // Approving the curve as a spender require( dai_.approve(address(curve_), daiNeeded), "DAI approve failed" ); // Buying tokens (BZZ) against the curve require( curve_.mintTo(_tokenAmount, daiNeeded, _to), "BZZ mintTo failed" ); // Refunding user excess ETH msg.sender.transfer(ethReceived); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_tokenAmount","type":"uint256"},{"name":"_maxDaiSpendAmount","type":"uint256"},{"name":"_deadline","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_buy","type":"bool"}],"name":"getPath","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_daiAmount","type":"uint256"}],"name":"sellRewardDai","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAmount","type":"uint256"},{"name":"_minDaiSellValue","type":"uint256"},{"name":"_deadline","type":"uint256"}],"name":"redeem","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAmount","type":"uint256"},{"name":"_maxDaiSpendAmount","type":"uint256"},{"name":"_deadline","type":"uint256"},{"name":"_to","type":"address"}],"name":"mintTo","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"name":"_amount","type":"uint256"}],"name":"buyPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_amount","type":"uint256"}],"name":"sellReward","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_bzzCurve","type":"address"},{"name":"_collateralToken","type":"address"},{"name":"_router02","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"buyer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"priceForTokensDai","type":"uint256"},{"indexed":false,"name":"EthTradedForDai","type":"uint256"},{"indexed":false,"name":"maxSpendDai","type":"uint256"}],"name":"mintTokensWithEth","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"buyer","type":"address"},{"indexed":true,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"priceForTokensDai","type":"uint256"},{"indexed":false,"name":"EthTradedForDai","type":"uint256"},{"indexed":false,"name":"maxSpendDai","type":"uint256"}],"name":"mintTokensToWithEth","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"seller","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"rewardReceivedDai","type":"uint256"},{"indexed":false,"name":"ethReceivedForDai","type":"uint256"},{"indexed":false,"name":"minRewardDai","type":"uint256"}],"name":"burnTokensWithEth","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b5060405160608062001bae8339810180604052606081101561003157600080fd5b5080516020820151604090920151909190600160a060020a038316158015906100625750600160a060020a03821615155b80156100765750600160a060020a03811615155b151561010957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f416464726573736573206f6620636f6e7472616374732063616e6e6f7420626560448201527f2030782061646472657373000000000000000000000000000000000000000000606482015290519081900360840190fd5b60008054600160a060020a03808616600160a060020a031992831617928390556002805486831690841617905560018054858316931692909217909155604080517fe36a4ec70000000000000000000000000000000000000000000000000000000081529051929091169163e36a4ec791600480820192602092909190829003018186803b15801561019a57600080fd5b505afa1580156101ae573d6000803e3d6000fd5b505050506040513d60208110156101c457600080fd5b505160038054600160a060020a03909216600160a060020a03199092169190911790555050506119b480620001fa6000396000f3fe6080604052600436106100745763ffffffff60e060020a60003504166302acc94b81146100d85780631cb0cbbc1461011557806322937f8414610191578063557ed1ba146101cd578063b8192205146101e2578063be228dcc1461020b578063c4dbf62214610243578063c9f1dba81461026d575b600154600160a060020a031633146100d6576040805160e560020a62461bcd02815260206004820152601f60248201527f455448206e6f74206163636570746564206f75747369646520726f7574657200604482015290519081900360640190fd5b005b610101600480360360608110156100ee57600080fd5b5080359060208101359060400135610297565b604080519115158252519081900360200190f35b34801561012157600080fd5b506101416004803603602081101561013857600080fd5b5035151561043b565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561017d578181015183820152602001610165565b505050509050019250505060405180910390f35b34801561019d57600080fd5b506101bb600480360360208110156101b457600080fd5b503561061a565b60408051918252519081900360200190f35b3480156101d957600080fd5b506101bb610832565b610101600480360360608110156101f857600080fd5b5080359060208101359060400135610836565b6101016004803603608081101561022157600080fd5b5080359060208101359060408101359060600135600160a060020a0316610f8c565b34801561024f57600080fd5b506101bb6004803603602081101561026657600080fd5b503561113d565b34801561027957600080fd5b506101bb6004803603602081101561029057600080fd5b50356113ed565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b1580156102e957600080fd5b505afa1580156102fd573d6000803e3d6000fd5b505050506040513d602081101561031357600080fd5b5051151561036b576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b600454600214156103c6576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026004556000806103da86868633611527565b604080518981526020810184905280820183905260608101899052905192945090925033917f4327eea945b1ba6ff37d2123b5d61dc45738400e84b80b918df27bf18c8c3b0b9181900360800190a260019250505060016004559392505050565b604080516002808252606080830184529283929190602083019080388339019050509050821561053757600160009054906101000a9004600160a060020a0316600160a060020a031663ad5c46486040518163ffffffff1660e060020a02815260040160206040518083038186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50518151829060009081106104f157fe5b600160a060020a039283166020918202909201015260025482519116908290600190811061051b57fe5b600160a060020a03909216602092830290910190910152610614565b6002548151600160a060020a03909116908290600090811061055557fe5b600160a060020a039283166020918202909201810191909152600154604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c4648926004808301939192829003018186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d60208110156105eb57600080fd5b50518151829060019081106105fc57fe5b600160a060020a039092166020928302909101909101525b92915050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561066c57600080fd5b505afa158015610680573d6000803e3d6000fd5b505050506040513d602081101561069657600080fd5b505115156106ee576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031690631f00ca7490849061070d9061043b565b6040805160e060020a63ffffffff86160281526004810184815260248201928352835160448301528351909291606401906020858101910280838360005b8381101561076357818101518382015260200161074b565b50505050905001935050505060006040518083038186803b15801561078757600080fd5b505afa15801561079b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156107c457600080fd5b8101908080516401000000008111156107dc57600080fd5b820160208101848111156107ef57600080fd5b815185602082028301116401000000008211171561080c57600080fd5b50508051909350600092508210905061082157fe5b906020019060200201519050919050565b4290565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561088857600080fd5b505afa15801561089c573d6000803e3d6000fd5b505050506040513d60208110156108b257600080fd5b5051151561090a576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60045460021415610965576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600490815560008054604080517fc9f1dba8000000000000000000000000000000000000000000000000000000008152938401889052519192600160a060020a039091169163c9f1dba891602480820192602092909190829003018186803b1580156109d257600080fd5b505afa1580156109e6573d6000803e3d6000fd5b505050506040513d60208110156109fc57600080fd5b5051600354604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018990529051929350600160a060020a03909116916323b872dd916064808201926020929091908290030181600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050506040513d6020811015610a9e57600080fd5b50511515610af6576040805160e560020a62461bcd02815260206004820152601760248201527f5472616e7366657272696e6720425a5a206661696c6564000000000000000000604482015290519081900360640190fd5b60035460008054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018a90529051919093169263095ea7b39260448083019360209390929083900390910190829087803b158015610b6c57600080fd5b505af1158015610b80573d6000803e3d6000fd5b505050506040513d6020811015610b9657600080fd5b50511515610bee576040805160e560020a62461bcd02815260206004820152601260248201527f425a5a20617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b60008054604080517f7cbc237300000000000000000000000000000000000000000000000000000000815260048101899052602481018590529051600160a060020a0390921692637cbc2373926044808401936020939083900390910190829087803b158015610c5d57600080fd5b505af1158015610c71573d6000803e3d6000fd5b505050506040513d6020811015610c8757600080fd5b50511515610cdf576040805160e560020a62461bcd02815260206004820152601160248201527f4375727665206275726e206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b6000610cea8561061a565b600254600154604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015260248101879052905193945091169163095ea7b3916044808201926020929091908290030181600087803b158015610d5e57600080fd5b505af1158015610d72573d6000803e3d6000fd5b505050506040513d6020811015610d8857600080fd5b50511515610de0576040805160e560020a62461bcd02815260206004820152601260248201527f44414920617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b600154600160a060020a03166318cbafe58383610dfd600061043b565b33896040518663ffffffff1660e060020a028152600401808681526020018581526020018060200184600160a060020a0316600160a060020a03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610e7b578181015183820152602001610e63565b505050509050019650505050505050600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610ee157600080fd5b810190808051640100000000811115610ef957600080fd5b82016020810184811115610f0c57600080fd5b8151856020820283011164010000000082111715610f2957600080fd5b5050604080518b815260208101889052808201879052606081018b905290513395507fe1da4be543e2eabcb36806b05a91cee4d2eefa7ad5e71dc73333c5c8d42b64c894509081900360800192509050a260019250505060016004559392505050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b158015610fde57600080fd5b505afa158015610ff2573d6000803e3d6000fd5b505050506040513d602081101561100857600080fd5b50511515611060576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b600454600214156110bb576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026004556000806110cf87878787611527565b604080518a815260208101849052808201839052606081018a90529051929450909250600160a060020a0386169133917f941fec67f36fd219de33f2cbbde64befe6b267982e50ee0f76e9b1b8446c4ca6919081900360800190a36001925050506001600455949350505050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561118f57600080fd5b505afa1580156111a3573d6000803e3d6000fd5b505050506040513d60208110156111b957600080fd5b50511515611211576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60008054604080517fc4dbf622000000000000000000000000000000000000000000000000000000008152600481018690529051600160a060020a039092169163c4dbf62291602480820192602092909190829003018186803b15801561127757600080fd5b505afa15801561128b573d6000803e3d6000fd5b505050506040513d60208110156112a157600080fd5b505160018054919250600160a060020a0390911690631f00ca749083906112c79061043b565b6040805160e060020a63ffffffff86160281526004810184815260248201928352835160448301528351909291606401906020858101910280838360005b8381101561131d578181015183820152602001611305565b50505050905001935050505060006040518083038186803b15801561134157600080fd5b505afa158015611355573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561137e57600080fd5b81019080805164010000000081111561139657600080fd5b820160208101848111156113a957600080fd5b81518560208202830111640100000000821117156113c657600080fd5b5050805190935060009250821090506113db57fe5b90602001906020020151915050919050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561143f57600080fd5b505afa158015611453573d6000803e3d6000fd5b505050506040513d602081101561146957600080fd5b505115156114c1576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60008054604080517fc9f1dba8000000000000000000000000000000000000000000000000000000008152600481018690529051600160a060020a039092169163c9f1dba891602480820192602092909190829003018186803b15801561127757600080fd5b60008054604080517fc4dbf6220000000000000000000000000000000000000000000000000000000081526004810188905290518392600160a060020a03169163c4dbf622916024808301926020929190829003018186803b15801561158c57600080fd5b505afa1580156115a0573d6000803e3d6000fd5b505050506040513d60208110156115b657600080fd5b5051915081851015611612576040805160e560020a62461bcd02815260206004820181905260248201527f44414920726571756972656420666f722074726164652061626f7665206d6178604482015290519081900360640190fd5b60018054600160a060020a03169063fb3bdb4190349085906116339061043b565b30896040518663ffffffff1660e060020a028152600401808581526020018060200184600160a060020a0316600160a060020a03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156116ab578181015183820152602001611693565b50505050905001955050505050506000604051808303818588803b1580156116d257600080fd5b505af11580156116e6573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f19168201604052602081101561171057600080fd5b81019080805164010000000081111561172857600080fd5b8201602081018481111561173b57600080fd5b815185602082028301116401000000008211171561175857600080fd5b505060025460008054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018b905290513031995093909116965063095ea7b395506044808201955060209450908390030190829087803b1580156117d457600080fd5b505af11580156117e8573d6000803e3d6000fd5b505050506040513d60208110156117fe57600080fd5b50511515611856576040805160e560020a62461bcd02815260206004820152601260248201527f44414920617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b60008054604080517f6190e3a8000000000000000000000000000000000000000000000000000000008152600481018a905260248101869052600160a060020a03878116604483015291519190921692636190e3a892606480820193602093909283900390910190829087803b1580156118cf57600080fd5b505af11580156118e3573d6000803e3d6000fd5b505050506040513d60208110156118f957600080fd5b50511515611951576040805160e560020a62461bcd02815260206004820152601160248201527f425a5a206d696e74546f206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b604051339082156108fc029083906000818181858888f1935050505015801561197e573d6000803e3d6000fd5b509450949250505056fea165627a7a7230582000f08187231dd23bf6fe55ecb35bf58c32121f608f821b1bef65dcbc6466c5b600290000000000000000000000004f32ab778e85c4ad0cead54f8f82f5ee74d469040000000000000000000000006b175474e89094c44da98b954eedeac495271d0f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode
0x6080604052600436106100745763ffffffff60e060020a60003504166302acc94b81146100d85780631cb0cbbc1461011557806322937f8414610191578063557ed1ba146101cd578063b8192205146101e2578063be228dcc1461020b578063c4dbf62214610243578063c9f1dba81461026d575b600154600160a060020a031633146100d6576040805160e560020a62461bcd02815260206004820152601f60248201527f455448206e6f74206163636570746564206f75747369646520726f7574657200604482015290519081900360640190fd5b005b610101600480360360608110156100ee57600080fd5b5080359060208101359060400135610297565b604080519115158252519081900360200190f35b34801561012157600080fd5b506101416004803603602081101561013857600080fd5b5035151561043b565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561017d578181015183820152602001610165565b505050509050019250505060405180910390f35b34801561019d57600080fd5b506101bb600480360360208110156101b457600080fd5b503561061a565b60408051918252519081900360200190f35b3480156101d957600080fd5b506101bb610832565b610101600480360360608110156101f857600080fd5b5080359060208101359060400135610836565b6101016004803603608081101561022157600080fd5b5080359060208101359060408101359060600135600160a060020a0316610f8c565b34801561024f57600080fd5b506101bb6004803603602081101561026657600080fd5b503561113d565b34801561027957600080fd5b506101bb6004803603602081101561029057600080fd5b50356113ed565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b1580156102e957600080fd5b505afa1580156102fd573d6000803e3d6000fd5b505050506040513d602081101561031357600080fd5b5051151561036b576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b600454600214156103c6576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026004556000806103da86868633611527565b604080518981526020810184905280820183905260608101899052905192945090925033917f4327eea945b1ba6ff37d2123b5d61dc45738400e84b80b918df27bf18c8c3b0b9181900360800190a260019250505060016004559392505050565b604080516002808252606080830184529283929190602083019080388339019050509050821561053757600160009054906101000a9004600160a060020a0316600160a060020a031663ad5c46486040518163ffffffff1660e060020a02815260040160206040518083038186803b1580156104b657600080fd5b505afa1580156104ca573d6000803e3d6000fd5b505050506040513d60208110156104e057600080fd5b50518151829060009081106104f157fe5b600160a060020a039283166020918202909201015260025482519116908290600190811061051b57fe5b600160a060020a03909216602092830290910190910152610614565b6002548151600160a060020a03909116908290600090811061055557fe5b600160a060020a039283166020918202909201810191909152600154604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c4648926004808301939192829003018186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d60208110156105eb57600080fd5b50518151829060019081106105fc57fe5b600160a060020a039092166020928302909101909101525b92915050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561066c57600080fd5b505afa158015610680573d6000803e3d6000fd5b505050506040513d602081101561069657600080fd5b505115156106ee576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60018054600160a060020a031690631f00ca7490849061070d9061043b565b6040805160e060020a63ffffffff86160281526004810184815260248201928352835160448301528351909291606401906020858101910280838360005b8381101561076357818101518382015260200161074b565b50505050905001935050505060006040518083038186803b15801561078757600080fd5b505afa15801561079b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156107c457600080fd5b8101908080516401000000008111156107dc57600080fd5b820160208101848111156107ef57600080fd5b815185602082028301116401000000008211171561080c57600080fd5b50508051909350600092508210905061082157fe5b906020019060200201519050919050565b4290565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561088857600080fd5b505afa15801561089c573d6000803e3d6000fd5b505050506040513d60208110156108b257600080fd5b5051151561090a576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60045460021415610965576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b6002600490815560008054604080517fc9f1dba8000000000000000000000000000000000000000000000000000000008152938401889052519192600160a060020a039091169163c9f1dba891602480820192602092909190829003018186803b1580156109d257600080fd5b505afa1580156109e6573d6000803e3d6000fd5b505050506040513d60208110156109fc57600080fd5b5051600354604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018990529051929350600160a060020a03909116916323b872dd916064808201926020929091908290030181600087803b158015610a7457600080fd5b505af1158015610a88573d6000803e3d6000fd5b505050506040513d6020811015610a9e57600080fd5b50511515610af6576040805160e560020a62461bcd02815260206004820152601760248201527f5472616e7366657272696e6720425a5a206661696c6564000000000000000000604482015290519081900360640190fd5b60035460008054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018a90529051919093169263095ea7b39260448083019360209390929083900390910190829087803b158015610b6c57600080fd5b505af1158015610b80573d6000803e3d6000fd5b505050506040513d6020811015610b9657600080fd5b50511515610bee576040805160e560020a62461bcd02815260206004820152601260248201527f425a5a20617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b60008054604080517f7cbc237300000000000000000000000000000000000000000000000000000000815260048101899052602481018590529051600160a060020a0390921692637cbc2373926044808401936020939083900390910190829087803b158015610c5d57600080fd5b505af1158015610c71573d6000803e3d6000fd5b505050506040513d6020811015610c8757600080fd5b50511515610cdf576040805160e560020a62461bcd02815260206004820152601160248201527f4375727665206275726e206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b6000610cea8561061a565b600254600154604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a03928316600482015260248101879052905193945091169163095ea7b3916044808201926020929091908290030181600087803b158015610d5e57600080fd5b505af1158015610d72573d6000803e3d6000fd5b505050506040513d6020811015610d8857600080fd5b50511515610de0576040805160e560020a62461bcd02815260206004820152601260248201527f44414920617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b600154600160a060020a03166318cbafe58383610dfd600061043b565b33896040518663ffffffff1660e060020a028152600401808681526020018581526020018060200184600160a060020a0316600160a060020a03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015610e7b578181015183820152602001610e63565b505050509050019650505050505050600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015610ee157600080fd5b810190808051640100000000811115610ef957600080fd5b82016020810184811115610f0c57600080fd5b8151856020820283011164010000000082111715610f2957600080fd5b5050604080518b815260208101889052808201879052606081018b905290513395507fe1da4be543e2eabcb36806b05a91cee4d2eefa7ad5e71dc73333c5c8d42b64c894509081900360800192509050a260019250505060016004559392505050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b158015610fde57600080fd5b505afa158015610ff2573d6000803e3d6000fd5b505050506040513d602081101561100857600080fd5b50511515611060576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b600454600214156110bb576040805160e560020a62461bcd02815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026004556000806110cf87878787611527565b604080518a815260208101849052808201839052606081018a90529051929450909250600160a060020a0386169133917f941fec67f36fd219de33f2cbbde64befe6b267982e50ee0f76e9b1b8446c4ca6919081900360800190a36001925050506001600455949350505050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561118f57600080fd5b505afa1580156111a3573d6000803e3d6000fd5b505050506040513d60208110156111b957600080fd5b50511515611211576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60008054604080517fc4dbf622000000000000000000000000000000000000000000000000000000008152600481018690529051600160a060020a039092169163c4dbf62291602480820192602092909190829003018186803b15801561127757600080fd5b505afa15801561128b573d6000803e3d6000fd5b505050506040513d60208110156112a157600080fd5b505160018054919250600160a060020a0390911690631f00ca749083906112c79061043b565b6040805160e060020a63ffffffff86160281526004810184815260248201928352835160448301528351909291606401906020858101910280838360005b8381101561131d578181015183820152602001611305565b50505050905001935050505060006040518083038186803b15801561134157600080fd5b505afa158015611355573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561137e57600080fd5b81019080805164010000000081111561139657600080fd5b820160208101848111156113a957600080fd5b81518560208202830111640100000000821117156113c657600080fd5b5050805190935060009250821090506113db57fe5b90602001906020020151915050919050565b60008060009054906101000a9004600160a060020a0316600160a060020a03166305a27c9d6040518163ffffffff1660e060020a02815260040160206040518083038186803b15801561143f57600080fd5b505afa158015611453573d6000803e3d6000fd5b505050506040513d602081101561146957600080fd5b505115156114c1576040805160e560020a62461bcd02815260206004820152600e60248201527f437572766520696e616374697665000000000000000000000000000000000000604482015290519081900360640190fd5b60008054604080517fc9f1dba8000000000000000000000000000000000000000000000000000000008152600481018690529051600160a060020a039092169163c9f1dba891602480820192602092909190829003018186803b15801561127757600080fd5b60008054604080517fc4dbf6220000000000000000000000000000000000000000000000000000000081526004810188905290518392600160a060020a03169163c4dbf622916024808301926020929190829003018186803b15801561158c57600080fd5b505afa1580156115a0573d6000803e3d6000fd5b505050506040513d60208110156115b657600080fd5b5051915081851015611612576040805160e560020a62461bcd02815260206004820181905260248201527f44414920726571756972656420666f722074726164652061626f7665206d6178604482015290519081900360640190fd5b60018054600160a060020a03169063fb3bdb4190349085906116339061043b565b30896040518663ffffffff1660e060020a028152600401808581526020018060200184600160a060020a0316600160a060020a03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156116ab578181015183820152602001611693565b50505050905001955050505050506000604051808303818588803b1580156116d257600080fd5b505af11580156116e6573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f19168201604052602081101561171057600080fd5b81019080805164010000000081111561172857600080fd5b8201602081018481111561173b57600080fd5b815185602082028301116401000000008211171561175857600080fd5b505060025460008054604080517f095ea7b3000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018b905290513031995093909116965063095ea7b395506044808201955060209450908390030190829087803b1580156117d457600080fd5b505af11580156117e8573d6000803e3d6000fd5b505050506040513d60208110156117fe57600080fd5b50511515611856576040805160e560020a62461bcd02815260206004820152601260248201527f44414920617070726f7665206661696c65640000000000000000000000000000604482015290519081900360640190fd5b60008054604080517f6190e3a8000000000000000000000000000000000000000000000000000000008152600481018a905260248101869052600160a060020a03878116604483015291519190921692636190e3a892606480820193602093909283900390910190829087803b1580156118cf57600080fd5b505af11580156118e3573d6000803e3d6000fd5b505050506040513d60208110156118f957600080fd5b50511515611951576040805160e560020a62461bcd02815260206004820152601160248201527f425a5a206d696e74546f206661696c6564000000000000000000000000000000604482015290519081900360640190fd5b604051339082156108fc029083906000818181858888f1935050505015801561197e573d6000803e3d6000fd5b509450949250505056fea165627a7a7230582000f08187231dd23bf6fe55ecb35bf58c32121f608f821b1bef65dcbc6466c5b60029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004f32ab778e85c4ad0cead54f8f82f5ee74d469040000000000000000000000006b175474e89094c44da98b954eedeac495271d0f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
-----Decoded View---------------
Arg [0] : _bzzCurve (address): 0x4F32Ab778e85C4aD0CEad54f8f82F5Ee74d46904
Arg [1] : _collateralToken (address): 0x6B175474E89094C44Da98b954EedeAC495271d0F
Arg [2] : _router02 (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000004f32ab778e85c4ad0cead54f8f82f5ee74d46904
Arg [1] : 0000000000000000000000006b175474e89094c44da98b954eedeac495271d0f
Arg [2] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode Sourcemap
8356:15901:0:-;;;;;;;;;-1:-1:-1;;;8356:15901:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21533:7;;-1:-1:-1;;;;;21533:7:0;21511:10;:30;21489:111;;;;;-1:-1:-1;;;;;21489:111:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8356:15901;15969:729;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15969:729:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14203:378;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14203:378:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14203:378:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;14203:378:0;;;;;;;;;;;;;;;;;13749:300;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13749:300:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13749:300:0;;;;;;;;;;;;;;;;;;;14651:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14651:77:0;;;;19432:2010;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19432:2010:0;;;;;;;;;;;;;17739:766;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;17739:766:0;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17739:766:0;;;12462:401;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12462:401:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12462:401:0;;;13141:406;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13141:406:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13141:406:0;;;15969:729;16180:4;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10950:7;;8864:1;10950:19;;10942:63;;;;;-1:-1:-1;;;;;10942:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8864:1;11082:7;:18;16203:17;;16245:131;16271:12;16298:18;16331:9;16355:10;16245:11;:131::i;:::-;16443:167;;;;;;;;;;;;;;;;;;;;;;;;;;16202:174;;-1:-1:-1;16202:174:0;;-1:-1:-1;16475:10:0;;16443:167;;;;;;;;;16686:4;16679:11;;;;8820:1;11191:7;:22;15969:729;;-1:-1:-1;;;15969:729:0:o;14203:378::-;14307:16;;;14321:1;14307:16;;;14251;14307;;;;;14251;;;14307;14321:1;14307:16;;;;;105:10:-1;14307:16:0;88:34:-1;136:17;;-1:-1;14307:16:0;14280:43;;14337:4;14334:205;;;14371:7;;;;;;;;;-1:-1:-1;;;;;14371:7:0;-1:-1:-1;;;;;14371:12:0;;:14;;;;;-1:-1:-1;;;14371:14:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14371:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14371:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14371:14:0;14358:10;;:7;;14366:1;;14358:10;;;;;;-1:-1:-1;;;;;14358:27:0;;;:10;;;;;;;;:27;14421:4;;14400:10;;14421:4;;;14400:7;;14421:4;;14400:10;;;;;;-1:-1:-1;;;;;14400:26:0;;;:10;;;;;;;;;;:26;14334:205;;;14480:4;;14459:10;;-1:-1:-1;;;;;14480:4:0;;;;14459:7;;14480:4;;14459:10;;;;;;-1:-1:-1;;;;;14459:26:0;;;:10;;;;;;;;;:26;;;;14513:7;;:14;;;;;;;;:7;;;;;:12;;:14;;;;;14459:10;;14513:14;;;;;:7;:14;;;5:2:-1;;;;30:1;27;20:12;5:2;14513:14:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14513:14:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14513:14:0;14500:10;;:7;;14508:1;;14500:10;;;;;;-1:-1:-1;;;;;14500:27:0;;;:10;;;;;;;;;;:27;14334:205;14566:7;14203:378;-1:-1:-1;;14203:378:0:o;13749:300::-;13865:7;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13953:7;;;-1:-1:-1;;;;;13953:7:0;;:20;;13988:10;;14014:13;;:7;:13::i;:::-;13953:85;;;-1:-1:-1;;;13953:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;13953:85:0;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13953:85:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13953:85:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;13953:85:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;13953:85:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;13953:88:0;;:85;;-1:-1:-1;14039:1:0;;-1:-1:-1;13953:88:0;;;-1:-1:-1;13953:88:0;;;;;;;;;;;;13946:95;;13749:300;;;:::o;14651:77::-;14717:3;14651:77;:::o;19432:2010::-;19642:4;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10950:7;;8864:1;10950:19;;10942:63;;;;;-1:-1:-1;;;;;10942:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8864:1;11082:7;:18;;;19733:17;19753:6;;:31;;;;;;;;;;;;;19733:17;;-1:-1:-1;;;;;19753:6:0;;;;:17;;:31;;;;;;;;;;;;;;;:6;:31;;;5:2:-1;;;;30:1;27;20:12;5:2;19753:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19753:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19753:31:0;20002:4;;:124;;;;;;20038:10;20002:124;;;;20075:4;20002:124;;;;;;;;;;;;19753:31;;-1:-1:-1;;;;;;20002:4:0;;;;:17;;:124;;;;;19753:31;;20002:124;;;;;;;;:4;;:124;;;5:2:-1;;;;30:1;27;20:12;5:2;20002:124:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20002:124:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;20002:124:0;19980:197;;;;;;;-1:-1:-1;;;;;19980:197:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;20255:4;;;20294:6;;20255:92;;;;;;-1:-1:-1;;;;;20294:6:0;;;20255:92;;;;;;;;;;;;:4;;;;;:12;;:92;;;;;;;;;;;;;;;;;;;:4;:92;;;5:2:-1;;;;30:1;27;20:12;5:2;20255:92:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20255:92:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;20255:92:0;20233:160;;;;;;;-1:-1:-1;;;;;20233:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;20461:6;;;:87;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20461:6:0;;;;:13;;:87;;;;;;;;;;;;;;;;;:6;:87;;;5:2:-1;;;;30:1;27;20:12;5:2;20461:87:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20461:87:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;20461:87:0;20439:154;;;;;;;-1:-1:-1;;;;;20439:154:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;20645:14;20662:31;20676:16;20662:13;:31::i;:::-;20772:4;;;20811:7;20772:90;;;;;;-1:-1:-1;;;;;20811:7:0;;;20772:90;;;;;;;;;;;;20645:48;;-1:-1:-1;20772:4:0;;;:12;;:90;;;;;;;;;;;;;;;:4;;:90;;;5:2:-1;;;;30:1;27;20:12;5:2;20772:90:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20772:90:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;20772:90:0;20750:158;;;;;;;-1:-1:-1;;;;;20750:158:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;20960:7;;-1:-1:-1;;;;;20960:7:0;:29;21004:9;21029:6;21051:14;20960:7;21051;:14::i;:::-;21081:10;21107:9;20960:167;;;;;-1:-1:-1;;;20960:167:0;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;20960:167:0;-1:-1:-1;;;;;20960:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;20960:167:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20960:167:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;20960:167:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;20960:167:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;20960:167:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;21194:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;21226:10;;-1:-1:-1;21194:160:0;;-1:-1:-1;21194:160:0;;;;;;;-1:-1:-1;21194:160:0;-1:-1:-1;21194:160:0;21430:4;21423:11;;;;8820:1;11191:7;:22;19432:2010;;-1:-1:-1;;;19432:2010:0:o;17739:766::-;17974:4;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10950:7;;8864:1;10950:19;;10942:63;;;;;-1:-1:-1;;;;;10942:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8864:1;11082:7;:18;17997:17;;18039:124;18065:12;18092:18;18125:9;18149:3;18039:11;:124::i;:::-;18230:187;;;;;;;;;;;;;;;;;;;;;;;;;;17996:167;;-1:-1:-1;17996:167:0;;-1:-1:-1;;;;;;18230:187:0;;;18264:10;;18230:187;;;;;;;;;;18493:4;18486:11;;;;8820:1;11191:7;:22;17739:766;;-1:-1:-1;;;;17739:766:0:o;12462:401::-;12570:7;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12653:15;12671:6;;:24;;;;;;;;;;;;;;-1:-1:-1;;;;;12671:6:0;;;;:15;;:24;;;;;;;;;;;;;;;:6;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;12671:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12671:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12671:24:0;12770:7;;;12671:24;;-1:-1:-1;;;;;;12770:7:0;;;;:20;;12671:24;;12828:13;;:7;:13::i;:::-;12770:82;;;-1:-1:-1;;;12770:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;12770:82:0;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12770:82:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12770:82:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;12770:82:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;12770:82:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;12770:85:0;;:82;;-1:-1:-1;12853:1:0;;-1:-1:-1;12770:85:0;;;-1:-1:-1;12770:85:0;;;;;;;;;;;;12763:92;;;12462:401;;;:::o;13141:406::-;13251:7;10772:6;;;;;;;;;-1:-1:-1;;;;;10772:6:0;-1:-1:-1;;;;;10772:20:0;;:22;;;;;-1:-1:-1;;;10772:22:0;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:22:0;10764:49;;;;;;;-1:-1:-1;;;;;10764:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13336:17;13356:6;;:26;;;;;;;;;;;;;;-1:-1:-1;;;;;13356:6:0;;;;:17;;:26;;;;;;;;;;;;;;;:6;:26;;;5:2:-1;;;;30:1;27;20:12;22911:1343:0;23105:17;23272:6;;:29;;;;;;;;;;;;;;23105:17;;-1:-1:-1;;;;;23272:6:0;;:15;;:29;;;;;;;;;;;;;;:6;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;23272:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23272:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;23272:29:0;;-1:-1:-1;23410:31:0;;;;23388:113;;;;;-1:-1:-1;;;;;23388:113:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23573:7;;;-1:-1:-1;;;;;23573:7:0;;:29;;23609:9;;23634;;23659:13;;:7;:13::i;:::-;23696:4;23717:9;23573:164;;;;;-1:-1:-1;;;23573:164:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;23573:164:0;-1:-1:-1;;;;;23573:164:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;23573:164:0;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23573:164:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23573:164:0;;;;;;;39:16:-1;36:1;17:17;2:54;101:4;23573:164:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:2;5:11;;2:2;;;29:1;26;19:12;2:2;23573:164:0;;;;;;19:11:-1;14:3;11:20;8:2;;;44:1;41;34:12;8:2;62:21;;123:4;114:14;;138:31;;;135:2;;;182:1;179;172:12;135:2;219:3;213:10;331:9;325:2;311:12;307:21;289:16;285:44;282:59;261:11;247:12;244:29;233:116;230:2;;;362:1;359;352:12;230:2;-1:-1;;23908:4:0;;;23929:6;;23908:40;;;;;;-1:-1:-1;;;;;23929:6:0;;;23908:40;;;;;;;;;;;;23817:4;23809:21;;-1:-1:-1;23908:4:0;;;;;-1:-1:-1;23908:12:0;;-1:-1:-1;23908:40:0;;;;;-1:-1:-1;23908:40:0;;-1:-1:-1;23908:40:0;;;;;;;;:4;:40;;;5:2:-1;;;;30:1;27;20:12;5:2;23908:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23908:40:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;23908:40:0;23886:108;;;;;;;-1:-1:-1;;;;;23886:108:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;24077:6;;;:43;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;24077:43:0;;;;;;;;;:6;;;;;:13;;:43;;;;;;;;;;;;;;;;;;:6;:43;;;5:2:-1;;;;30:1;27;20:12;5:2;24077:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24077:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;24077:43:0;24055:110;;;;;;;-1:-1:-1;;;;;24055:110:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;24214:32;;:10;;:32;;;;;24234:11;;24214:32;;;;24234:11;24214:10;:32;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24214:32:0;22911:1343;;;;;;;:::o
Swarm Source
bzzr://00f08187231dd23bf6fe55ecb35bf58c32121f608f821b1bef65dcbc6466c5b6
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ 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.