ETH Price: $3,190.20 (-2.88%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer90432392019-12-03 10:43:441864 days ago1575369824IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432202019-12-03 10:39:531864 days ago1575369593IN
0x99641ef8...7490667Dc
0 ETH0.000022661
Transfer90432182019-12-03 10:39:481864 days ago1575369588IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432122019-12-03 10:38:061864 days ago1575369486IN
0x99641ef8...7490667Dc
0 ETH0.0000832.2
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432042019-12-03 10:34:531864 days ago1575369293IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432022019-12-03 10:34:421864 days ago1575369282IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90432022019-12-03 10:34:421864 days ago1575369282IN
0x99641ef8...7490667Dc
0 ETH0.00002261
Transfer90424272019-12-03 7:21:381864 days ago1575357698IN
0x99641ef8...7490667Dc
0 ETH0.000188015
Transfer90388122019-12-02 15:40:471865 days ago1575301247IN
0x99641ef8...7490667Dc
0 ETH0.000207525.5
Transfer90388052019-12-02 15:38:271865 days ago1575301107IN
0x99641ef8...7490667Dc
0 ETH0.000146916.5
Transfer90386372019-12-02 14:54:211865 days ago1575298461IN
0x99641ef8...7490667Dc
0 ETH0.000146916.5
Transfer90386252019-12-02 14:51:541865 days ago1575298314IN
0x99641ef8...7490667Dc
0 ETH0.000146916.5
Transfer90385822019-12-02 14:40:241865 days ago1575297624IN
0x99641ef8...7490667Dc
0 ETH0.000146916.5
Transfer90385562019-12-02 14:34:051865 days ago1575297245IN
0x99641ef8...7490667Dc
0 ETH0.00014656.5
Transfer90381902019-12-02 13:01:491865 days ago1575291709IN
0x99641ef8...7490667Dc
0 ETH0.000147336.5
Transfer90345642019-12-01 21:41:481865 days ago1575236508IN
0x99641ef8...7490667Dc
0 ETH0.00004151.1
Transfer90345462019-12-01 21:36:231865 days ago1575236183IN
0x99641ef8...7490667Dc
0 ETH0.000029461.3
Transfer90327572019-12-01 13:58:391866 days ago1575208719IN
0x99641ef8...7490667Dc
0 ETH0.000029461.3
Transfer90318342019-12-01 9:54:101866 days ago1575194050IN
0x99641ef8...7490667Dc
0 ETH0.000058932.6
Transfer90316282019-12-01 9:06:281866 days ago1575191188IN
0x99641ef8...7490667Dc
0 ETH0.000124513.3
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Token

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-08-27
*/

pragma solidity ^0.4.24;

/*
*
* ____   ____      .__                  _________ .__           .__
* \   \ /   /____  |  |  __ __   ____   \_   ___ \|  |__ _____  |__| ____
*  \   Y   /\__  \ |  | |  |  \_/ __ \  /    \  \/|  |  \\__  \ |  |/    \
*   \     /  / __ \|  |_|  |  /\  ___/  \     \___|   Y  \/ __ \|  |   |  \
*    \___/  (____  /____/____/  \___  >  \______  /___|  (____  /__|___|  /
*                \/                 \/          \/     \/     \/        \/
*
*/

// Contract must have an owner
contract Owned {
    address public owner;

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner() {
        require(msg.sender == owner);
        _;
    }

    function setOwner(address _owner) onlyOwner public {
        owner = _owner;
    }
}

// SafeMath methods
contract SafeMath {
    function add(uint256 _a, uint256 _b) internal pure returns (uint256) {
        uint256 c = _a + _b;
        assert(c >= _a);
        return c;
    }

    function sub(uint256 _a, uint256 _b) internal pure returns (uint256) {
        assert(_a >= _b);
        return _a - _b;
    }

    function mul(uint256 _a, uint256 _b) internal pure returns (uint256) {
        uint256 c = _a * _b;
        assert(_a == 0 || c / _a == _b);
        return c;
    }
}

// for safety methods
interface ERC20Token {
  function transfer(address _to, uint256 _value) external returns (bool);
  function balanceOf(address _addr) external view returns (uint256);
  function decimals() external view returns (uint8);
}

// the main ERC20-compliant contract
contract Token is SafeMath, Owned {
    uint256 private constant DAY_IN_SECONDS = 86400;
    string public constant standard = "0.861057";
    string public name = "";
    string public symbol = "";
    uint8 public decimals = 0;
    uint256 public totalSupply = 0;
    mapping (address => uint256) public balanceP;
    mapping (address => mapping (address => uint256)) public allowance;

    mapping (address => uint256[]) public lockTime;
    mapping (address => uint256[]) public lockValue;
    mapping (address => uint256) public lockNum;
    mapping (address => bool) public locker;
    uint256 public later = 0;
    uint256 public earlier = 0;

    // standard ERC20 events
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);

    // timelock-related events
    event TransferLocked(address indexed _from, address indexed _to, uint256 _time, uint256 _value);
    event TokenUnlocked(address indexed _address, uint256 _value);

    // safety method-related events
    event WrongTokenEmptied(address indexed _token, address indexed _addr, uint256 _amount);
    event WrongEtherEmptied(address indexed _addr, uint256 _amount);

    // constructor for the ERC20 Token
    constructor(string _name, string _symbol, uint8 _decimals, uint256 _totalSupply) public {
        require(bytes(_name).length > 0 && bytes(_symbol).length > 0);

        name = _name;
        symbol = _symbol;
        decimals = _decimals;
        totalSupply = _totalSupply;

        balanceP[msg.sender] = _totalSupply;

    }

    modifier validAddress(address _address) {
        require(_address != 0x0);
        _;
    }

    // owner may add or remove a locker address for the contract
    function addLocker(address _address) public validAddress(_address) onlyOwner {
        locker[_address] = true;
    }

    function removeLocker(address _address) public validAddress(_address) onlyOwner {
        locker[_address] = false;
    }

    // fast-forward the timelocks for all accounts
    function setUnlockEarlier(uint256 _earlier) public onlyOwner {
        earlier = add(earlier, _earlier);
    }

    // delay the timelocks for all accounts
    function setUnlockLater(uint256 _later) public onlyOwner {
        later = add(later, _later);
    }

    // show unlocked balance of an account
    function balanceUnlocked(address _address) public view returns (uint256 _balance) {
        _balance = balanceP[_address];
        uint256 i = 0;
        while (i < lockNum[_address]) {
            if (add(now, earlier) >= add(lockTime[_address][i], later)) _balance = add(_balance, lockValue[_address][i]);
            i++;
        }
        return _balance;
    }

    // show timelocked balance of an account
    function balanceLocked(address _address) public view returns (uint256 _balance) {
        _balance = 0;
        uint256 i = 0;
        while (i < lockNum[_address]) {
            if (add(now, earlier) < add(lockTime[_address][i], later)) _balance = add(_balance, lockValue[_address][i]);
            i++;
        }
        return  _balance;
    }

    // standard ERC20 balanceOf with timelock added
    function balanceOf(address _address) public view returns (uint256 _balance) {
        _balance = balanceP[_address];
        uint256 i = 0;
        while (i < lockNum[_address]) {
            _balance = add(_balance, lockValue[_address][i]);
            i++;
        }
        return _balance;
    }

    // show timelocks in an account
    function showTime(address _address) public view validAddress(_address) returns (uint256[] _time) {
        uint i = 0;
        uint256[] memory tempLockTime = new uint256[](lockNum[_address]);
        while (i < lockNum[_address]) {
            tempLockTime[i] = sub(add(lockTime[_address][i], later), earlier);
            i++;
        }
        return tempLockTime;
    }

    // show values locked in an account's timelocks
    function showValue(address _address) public view validAddress(_address) returns (uint256[] _value) {
        return lockValue[_address];
    }

    // Calculate and process the timelock states of an account
    function calcUnlock(address _address) private {
        uint256 i = 0;
        uint256 j = 0;
        uint256[] memory currentLockTime;
        uint256[] memory currentLockValue;
        uint256[] memory newLockTime = new uint256[](lockNum[_address]);
        uint256[] memory newLockValue = new uint256[](lockNum[_address]);
        currentLockTime = lockTime[_address];
        currentLockValue = lockValue[_address];
        while (i < lockNum[_address]) {
            if (add(now, earlier) >= add(currentLockTime[i], later)) {
                balanceP[_address] = add(balanceP[_address], currentLockValue[i]);
                emit TokenUnlocked(_address, currentLockValue[i]);
            } else {
                newLockTime[j] = currentLockTime[i];
                newLockValue[j] = currentLockValue[i];
                j++;
            }
            i++;
        }
        uint256[] memory trimLockTime = new uint256[](j);
        uint256[] memory trimLockValue = new uint256[](j);
        i = 0;
        while (i < j) {
            trimLockTime[i] = newLockTime[i];
            trimLockValue[i] = newLockValue[i];
            i++;
        }
        lockTime[_address] = trimLockTime;
        lockValue[_address] = trimLockValue;
        lockNum[_address] = j;
    }

    // standard ERC20 transfer
    function transfer(address _to, uint256 _value) public validAddress(_to) returns (bool success) {
        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        require(balanceP[msg.sender] >= _value && _value >= 0);
        balanceP[msg.sender] = sub(balanceP[msg.sender], _value);
        balanceP[_to] = add(balanceP[_to], _value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }

    // transfer Token with timelocks
    function transferLocked(address _to, uint256[] _time, uint256[] _value) public validAddress(_to) returns (bool success) {
        require(_value.length == _time.length);

        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        uint256 i = 0;
        uint256 totalValue = 0;
        while (i < _value.length) {
            totalValue = add(totalValue, _value[i]);
            i++;
        }
        require(balanceP[msg.sender] >= totalValue && totalValue >= 0);
        i = 0;
        while (i < _time.length) {
            balanceP[msg.sender] = sub(balanceP[msg.sender], _value[i]);
            lockTime[_to].length = lockNum[_to]+1;
            lockValue[_to].length = lockNum[_to]+1;
            lockTime[_to][lockNum[_to]] = add(now, _time[i]);
            lockValue[_to][lockNum[_to]] = _value[i];

            // emit custom TransferLocked event
            emit TransferLocked(msg.sender, _to, lockTime[_to][lockNum[_to]], lockValue[_to][lockNum[_to]]);

            // emit standard Transfer event for wallets
            emit Transfer(msg.sender, _to, lockValue[_to][lockNum[_to]]);
            lockNum[_to]++;
            i++;
        }
        return true;
    }

    // lockers set by owners may transfer Token with timelocks
    function transferLockedFrom(address _from, address _to, uint256[] _time, uint256[] _value) public
	    validAddress(_from) validAddress(_to) returns (bool success) {
        require(locker[msg.sender]);
        require(_value.length == _time.length);

        if (lockNum[_from] > 0) calcUnlock(_from);
        uint256 i = 0;
        uint256 totalValue = 0;
        while (i < _value.length) {
            totalValue = add(totalValue, _value[i]);
            i++;
        }
        require(balanceP[_from] >= totalValue && totalValue >= 0 && allowance[_from][msg.sender] >= totalValue);
        i = 0;
        while (i < _time.length) {
            balanceP[_from] = sub(balanceP[_from], _value[i]);
            allowance[_from][msg.sender] = sub(allowance[_from][msg.sender], _value[i]);
            lockTime[_to].length = lockNum[_to]+1;
            lockValue[_to].length = lockNum[_to]+1;
            lockTime[_to][lockNum[_to]] = add(now, _time[i]);
            lockValue[_to][lockNum[_to]] = _value[i];

            // emit custom TransferLocked event
            emit TransferLocked(_from, _to, lockTime[_to][lockNum[_to]], lockValue[_to][lockNum[_to]]);

            // emit standard Transfer event for wallets
            emit Transfer(_from, _to, lockValue[_to][lockNum[_to]]);
            lockNum[_to]++;
            i++;
        }
        return true;
    }

    // standard ERC20 transferFrom
    function transferFrom(address _from, address _to, uint256 _value) public validAddress(_from) validAddress(_to) returns (bool success) {
        if (lockNum[_from] > 0) calcUnlock(_from);
        require(balanceP[_from] >= _value && _value >= 0 && allowance[_from][msg.sender] >= _value);
        allowance[_from][msg.sender] = sub(allowance[_from][msg.sender], _value);
        balanceP[_from] = sub(balanceP[_from], _value);
        balanceP[_to] = add(balanceP[_to], _value);
        emit Transfer(_from, _to, _value);
        return true;
    }

    // should only be called when first setting an allowance
    function approve(address _spender, uint256 _value) public validAddress(_spender) returns (bool success) {
        if (lockNum[msg.sender] > 0) calcUnlock(msg.sender);
        allowance[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    // increase or decrease allowance
    function increaseApproval(address _spender, uint _value) public returns (bool) {
      allowance[msg.sender][_spender] = add(allowance[msg.sender][_spender], _value);
      emit Approval(msg.sender, _spender, allowance[msg.sender][_spender]);
      return true;
    }

    function decreaseApproval(address _spender, uint _value) public returns (bool) {
      if(_value >= allowance[msg.sender][_spender]) {
        allowance[msg.sender][_spender] = 0;
      } else {
        allowance[msg.sender][_spender] = sub(allowance[msg.sender][_spender], _value);
      }
      emit Approval(msg.sender, _spender, allowance[msg.sender][_spender]);
      return true;
    }

    // safety methods
    function () public payable {
        revert();
    }

    function emptyWrongToken(address _addr) onlyOwner public {
      ERC20Token wrongToken = ERC20Token(_addr);
      uint256 amount = wrongToken.balanceOf(address(this));
      require(amount > 0);
      require(wrongToken.transfer(msg.sender, amount));

      emit WrongTokenEmptied(_addr, msg.sender, amount);
    }

    // shouldn't happen, just in case
    function emptyWrongEther() onlyOwner public {
      uint256 amount = address(this).balance;
      require(amount > 0);
      msg.sender.transfer(amount);

      emit WrongEtherEmptied(msg.sender, amount);
    }

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceUnlocked","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_time","type":"uint256[]"},{"name":"_value","type":"uint256[]"}],"name":"transferLockedFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showValue","outputs":[{"name":"_value","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"lockNum","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceP","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"lockValue","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"lockTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"addLocker","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"standard","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceLocked","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"earlier","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"balanceOf","outputs":[{"name":"_balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"address"}],"name":"showTime","outputs":[{"name":"_time","type":"uint256[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_time","type":"uint256[]"},{"name":"_value","type":"uint256[]"}],"name":"transferLocked","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"later","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_later","type":"uint256"}],"name":"setUnlockLater","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"removeLocker","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"locker","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"emptyWrongToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"emptyWrongEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_earlier","type":"uint256"}],"name":"setUnlockEarlier","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"},{"name":"_totalSupply","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_owner","type":"address"},{"indexed":true,"name":"_spender","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"},{"indexed":false,"name":"_time","type":"uint256"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"TransferLocked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_address","type":"address"},{"indexed":false,"name":"_value","type":"uint256"}],"name":"TokenUnlocked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_token","type":"address"},{"indexed":true,"name":"_addr","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"WrongTokenEmptied","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_addr","type":"address"},{"indexed":false,"name":"_amount","type":"uint256"}],"name":"WrongEtherEmptied","type":"event"}]

60a06040819052600060808190526200001b9160019162000127565b506040805160208101918290526000908190526200003c9160029162000127565b506003805460ff1916905560006004819055600b819055600c553480156200006357600080fd5b5060405162002324380380620023248339810160409081528151602083015191830151606084015160008054600160a060020a0319163317815592850180519095949094019391929091118015620000bc575060008351115b1515620000c857600080fd5b8351620000dd90600190602087019062000127565b508251620000f390600290602086019062000127565b506003805460ff191660ff939093169290921790915560048190553360009081526005602052604090205550620001cc9050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200016a57805160ff19168380011785556200019a565b828001600101855582156200019a579182015b828111156200019a5782518255916020019190600101906200017d565b50620001a8929150620001ac565b5090565b620001c991905b80821115620001a85760008155600101620001b3565b90565b61214880620001dc6000396000f3006080604052600436106101a05763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630451f52081146101a557806306fdde03146101d8578063095ea7b3146102625780630fce887b1461029a57806310e24db51461033e57806313af4035146103af57806316b81889146103d2578063170f8a51146103f357806318160ddd1461041457806323b872dd14610429578063313ce5671461045357806332308cce1461047e57806334af370f146104a257806345cc5890146104c65780635a3b7e42146104e75780635fc3a312146104fc578063661884631461051d57806366fbc1541461054157806370a0823114610556578063885cb436146105775780638da5cb5b1461059857806395d89b41146105c9578063a9059cbb146105de578063b91aedab14610602578063c7cc4ee91461069e578063ca0cd7c0146106b3578063ce62cd4a146106cb578063d71c9c12146106ec578063d72901811461070d578063d73dd6231461072e578063d80b205614610752578063dd62ed3e14610767578063df51d46b1461078e575b600080fd5b3480156101b157600080fd5b506101c6600160a060020a03600435166107a6565b60408051918252519081900360200190f35b3480156101e457600080fd5b506101ed610879565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561022757818101518382015260200161020f565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026e57600080fd5b50610286600160a060020a0360043516602435610906565b604080519115158252519081900360200190f35b3480156102a657600080fd5b506040805160206004604435818101358381028086018501909652808552610286958335600160a060020a039081169660248035909216963696956064959294930192829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506109a59650505050505050565b34801561034a57600080fd5b5061035f600160a060020a0360043516610dc8565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561039b578181015183820152602001610383565b505050509050019250505060405180910390f35b3480156103bb57600080fd5b506103d0600160a060020a0360043516610e4b565b005b3480156103de57600080fd5b506101c6600160a060020a0360043516610e91565b3480156103ff57600080fd5b506101c6600160a060020a0360043516610ea3565b34801561042057600080fd5b506101c6610eb5565b34801561043557600080fd5b50610286600160a060020a0360043581169060243516604435610ebb565b34801561045f57600080fd5b5061046861105d565b6040805160ff9092168252519081900360200190f35b34801561048a57600080fd5b506101c6600160a060020a0360043516602435611066565b3480156104ae57600080fd5b506101c6600160a060020a0360043516602435611096565b3480156104d257600080fd5b506103d0600160a060020a03600435166110b1565b3480156104f357600080fd5b506101ed611103565b34801561050857600080fd5b506101c6600160a060020a036004351661113a565b34801561052957600080fd5b50610286600160a060020a03600435166024356111ce565b34801561054d57600080fd5b506101c66112d9565b34801561056257600080fd5b506101c6600160a060020a03600435166112df565b34801561058357600080fd5b5061035f600160a060020a036004351661134e565b3480156105a457600080fd5b506105ad61143f565b60408051600160a060020a039092168252519081900360200190f35b3480156105d557600080fd5b506101ed61144e565b3480156105ea57600080fd5b50610286600160a060020a03600435166024356114a6565b34801561060e57600080fd5b50604080516020600460248035828101358481028087018601909752808652610286968435600160a060020a031696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061159b9650505050505050565b3480156106aa57600080fd5b506101c66118cc565b3480156106bf57600080fd5b506103d06004356118d2565b3480156106d757600080fd5b506103d0600160a060020a03600435166118fb565b3480156106f857600080fd5b50610286600160a060020a036004351661194a565b34801561071957600080fd5b506103d0600160a060020a036004351661195f565b34801561073a57600080fd5b50610286600160a060020a0360043516602435611afc565b34801561075e57600080fd5b506103d0611b2a565b34801561077357600080fd5b506101c6600160a060020a0360043581169060243516611bb9565b34801561079a57600080fd5b506103d0600435611bd6565b600160a060020a038116600090815260056020526040812054905b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a0383166000908152600760205260409020805461081d91908390811061080a57fe5b9060005260206000200154600b54611bff565b61082942600c54611bff565b1061086b57600160a060020a038316600090815260086020526040902080546108689184918490811061085857fe5b9060005260206000200154611bff565b91505b6001016107c1565b50919050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108fe5780601f106108d3576101008083540402835291602001916108fe565b820191906000526020600020905b8154815290600101906020018083116108e157829003601f168201915b505050505081565b600082600160a060020a038116151561091e57600080fd5b33600090815260096020526040812054111561093d5761093d33611c15565b336000818152600660209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000808086600160a060020a03811615156109bf57600080fd5b86600160a060020a03811615156109d557600080fd5b336000908152600a602052604090205460ff1615156109f357600080fd5b8651865114610a0157600080fd5b600160a060020a0389166000908152600960205260408120541115610a2957610a2989611c15565b60009350600092505b8551841015610a6957610a5c838786815181101515610a4d57fe5b90602001906020020151611bff565b6001909401939250610a32565b600160a060020a0389166000908152600560205260409020548311801590610a92575060008310155b8015610ac15750600160a060020a03891660009081526006602090815260408083203384529091529020548311155b1515610acc57600080fd5b600093505b8651841015610db957600160a060020a0389166000908152600560205260409020548651610b159190889087908110610b0657fe5b90602001906020020151612059565b600160a060020a038a1660009081526005602090815260408083209390935560068152828220338352905220548651610b559190889087908110610b0657fe5b600160a060020a03808b166000908152600660209081526040808320338452825280832094909455918b1681526009825282812054600790925291909120600190910190610ba3908261206b565b50600160a060020a0388166000908152600960209081526040808320546008909252909120600190910190610bd8908261206b565b50610beb428886815181101515610a4d57fe5b600160a060020a038916600090815260076020908152604080832060099092529091205481548110610c1957fe5b6000918252602090912001558551869085908110610c3357fe5b6020908102909101810151600160a060020a038a166000908152600883526040808220600990945290205482549192918110610c6b57fe5b6000918252602080832090910192909255600160a060020a03808b1680835260078452604080842060099095529092205483549293918d16927f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e9291908110610cd057fe5b6000918252602080832090910154600160a060020a038e16835260088252604080842060099093529092205481548110610d0657fe5b6000918252602091829020015460408051938452918301528051918290030190a3600160a060020a038089166000818152600860209081526040808320600990925290912054815492938d16926000805160206120fd8339815191529291908110610d6d57fe5b90600052602060002001546040518082815260200191505060405180910390a3600160a060020a0388166000908152600960205260409020805460019081019091559390930192610ad1565b50600198975050505050505050565b606081600160a060020a0381161515610de057600080fd5b600160a060020a03831660009081526008602090815260409182902080548351818402810184019094528084529091830182828015610e3e57602002820191906000526020600020905b815481526020019060010190808311610e2a575b5050505050915050919050565b600054600160a060020a03163314610e6257600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60096020526000908152604090205481565b60056020526000908152604090205481565b60045481565b600083600160a060020a0381161515610ed357600080fd5b83600160a060020a0381161515610ee957600080fd5b600160a060020a0386166000908152600960205260408120541115610f1157610f1186611c15565b600160a060020a0386166000908152600560205260409020548411801590610f3a575060008410155b8015610f695750600160a060020a03861660009081526006602090815260408083203384529091529020548411155b1515610f7457600080fd5b600160a060020a0386166000908152600660209081526040808320338452909152902054610fa29085612059565b600160a060020a038716600081815260066020908152604080832033845282528083209490945591815260059091522054610fdd9085612059565b600160a060020a03808816600090815260056020526040808220939093559087168152205461100c9085611bff565b600160a060020a0380871660008181526005602090815260409182902094909455805188815290519193928a16926000805160206120fd83398151915292918290030190a350600195945050505050565b60035460ff1681565b60086020528160005260406000208181548110151561108157fe5b90600052602060002001600091509150505481565b60076020528160005260406000208181548110151561108157fe5b80600160a060020a03811615156110c757600080fd5b600054600160a060020a031633146110de57600080fd5b50600160a060020a03166000908152600a60205260409020805460ff19166001179055565b60408051808201909152600881527f302e383631303537000000000000000000000000000000000000000000000000602082015281565b6000805b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a0383166000908152600760205260409020805461118791908390811061080a57fe5b61119342600c54611bff565b10156111c657600160a060020a038316600090815260086020526040902080546111c39184918490811061085857fe5b91505b60010161113e565b336000908152600660209081526040808320600160a060020a0386168452909152812054821061122157336000908152600660209081526040808320600160a060020a0387168452909152812055611274565b336000908152600660209081526040808320600160a060020a038716845290915290205461124f9083612059565b336000908152600660209081526040808320600160a060020a03881684529091529020555b336000818152600660209081526040808320600160a060020a0388168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600c5481565b600160a060020a038116600090815260056020526040812054905b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a038316600090815260086020526040902080546113449184918490811061085857fe5b91506001016112fa565b606060008183600160a060020a038116151561136957600080fd5b600092506009600086600160a060020a0316600160a060020a03168152602001908152602001600020546040519080825280602002602001820160405280156113bc578160200160208202803883390190505b5091505b600160a060020a03851660009081526009602052604090205483101561143757600160a060020a038516600090815260076020526040902080546114149161140c918690811061080a57fe5b600c54612059565b828481518110151561142257fe5b602090810290910101526001909201916113c0565b509392505050565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156108fe5780601f106108d3576101008083540402835291602001916108fe565b600082600160a060020a03811615156114be57600080fd5b3360009081526009602052604081205411156114dd576114dd33611c15565b3360009081526005602052604090205483118015906114fd575060008310155b151561150857600080fd5b336000908152600560205260409020546115229084612059565b3360009081526005602052604080822092909255600160a060020a0386168152205461154e9084611bff565b600160a060020a0385166000818152600560209081526040918290209390935580518681529051919233926000805160206120fd8339815191529281900390910190a35060019392505050565b6000808085600160a060020a03811615156115b557600080fd5b85518551146115c357600080fd5b3360009081526009602052604081205411156115e2576115e233611c15565b60009250600091505b845183101561161357611606828685815181101515610a4d57fe5b60019093019291506115eb565b336000908152600560205260409020548211801590611633575060008210155b151561163e57600080fd5b600092505b85518310156118bf5733600090815260056020526040902054855161166f9190879086908110610b0657fe5b33600090815260056020908152604080832093909355600160a060020a038a168252600981528282205460079091529190206001909101906116b1908261206b565b50600160a060020a03871660009081526009602090815260408083205460089092529091206001909101906116e6908261206b565b506116f9428785815181101515610a4d57fe5b600160a060020a03881660009081526007602090815260408083206009909252909120548154811061172757fe5b600091825260209091200155845185908490811061174157fe5b6020908102909101810151600160a060020a038916600090815260088352604080822060099094529020548254919291811061177957fe5b6000918252602080832090910192909255600160a060020a0389168082526007835260408083206009909452909120548254919233927f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e929081106117da57fe5b6000918252602080832090910154600160a060020a038d1683526008825260408084206009909352909220548154811061181057fe5b6000918252602091829020015460408051938452918301528051918290030190a3600160a060020a0387166000818152600860209081526040808320600990925290912054815433926000805160206120fd833981519152929091811061187357fe5b90600052602060002001546040518082815260200191505060405180910390a3600160a060020a0387166000908152600960205260409020805460019081019091559290920191611643565b5060019695505050505050565b600b5481565b600054600160a060020a031633146118e957600080fd5b6118f5600b5482611bff565b600b5550565b80600160a060020a038116151561191157600080fd5b600054600160a060020a0316331461192857600080fd5b50600160a060020a03166000908152600a60205260409020805460ff19169055565b600a6020526000908152604090205460ff1681565b600080548190600160a060020a0316331461197957600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b1580156119dd57600080fd5b505af11580156119f1573d6000803e3d6000fd5b505050506040513d6020811015611a0757600080fd5b5051905060008111611a1857600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051600160a060020a0384169163a9059cbb9160448083019260209291908290030181600087803b158015611a8057600080fd5b505af1158015611a94573d6000803e3d6000fd5b505050506040513d6020811015611aaa57600080fd5b50511515611ab757600080fd5b6040805182815290513391600160a060020a038616917f5d8daa04d680e083e2ab17a35494ba9f290f554edf76a78f0103a8a599b5c4249181900360200190a3505050565b336000908152600660209081526040808320600160a060020a038616845290915281205461124f9083611bff565b60008054600160a060020a03163314611b4257600080fd5b50303160008111611b5257600080fd5b604051339082156108fc029083906000818181858888f19350505050158015611b7f573d6000803e3d6000fd5b5060408051828152905133917faea7a96dc17068a25e51e08f8ed45b86bd34b10af65af8e757af57b7e7b9e55d919081900360200190a250565b600660209081526000928352604080842090915290825290205481565b600054600160a060020a03163314611bed57600080fd5b611bf9600c5482611bff565b600c5550565b600082820183811015611c0e57fe5b9392505050565b6000806060806060806060806000975060009650600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611c78578160200160208202803883390190505b509350600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611cca578160200160208202803883390190505b50600160a060020a038a166000908152600760209081526040918290208054835181840281018401909452808452939650919290830182828015611d2d57602002820191906000526020600020905b815481526020019060010190808311611d19575b50505050509550600860008a600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015611da357602002820191906000526020600020905b815481526020019060010190808311611d8f575b505050505094505b600160a060020a038916600090815260096020526040902054881015611f0d57611dee8689815181101515611ddc57fe5b90602001906020020151600b54611bff565b611dfa42600c54611bff565b10611e9b57600160a060020a0389166000908152600560205260409020548551611e2b919087908b908110610a4d57fe5b600160a060020a038a1660008181526005602052604090209190915585517f613edbda9d1e6bda8af8e869a973f88cccf93854a11f351589038de07e1ab4e39087908b908110611e7757fe5b906020019060200201516040518082815260200191505060405180910390a2611f02565b8588815181101515611ea957fe5b906020019060200201518488815181101515611ec157fe5b602090810290910101528451859089908110611ed957fe5b906020019060200201518388815181101515611ef157fe5b602090810290910101526001909601955b600190970196611dab565b86604051908082528060200260200182016040528015611f37578160200160208202803883390190505b50915086604051908082528060200260200182016040528015611f64578160200160208202803883390190505b509050600097505b86881015611fdf578388815181101515611f8257fe5b906020019060200201518289815181101515611f9a57fe5b602090810290910101528251839089908110611fb257fe5b906020019060200201518189815181101515611fca57fe5b60209081029091010152600190970196611f6c565b600160a060020a0389166000908152600760209081526040909120835161200892850190612094565b50600160a060020a0389166000908152600860209081526040909120825161203292840190612094565b505050600160a060020a039096166000908152600960205260409020939093555050505050565b60008183101561206557fe5b50900390565b81548183558181111561208f5760008381526020902061208f9181019083016120df565b505050565b8280548282559060005260206000209081019282156120cf579160200282015b828111156120cf5782518255916020019190600101906120b4565b506120db9291506120df565b5090565b6120f991905b808211156120db57600081556001016120e5565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820893fe52c4cd3e93fbc5973c1595e8e0d0b91085ecb36938ee0d630f5b94579090029000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000204fce5e3e25026110000000000000000000000000000000000000000000000000000000000000000000000b56616c756520436861696e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035661540000000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x6080604052600436106101a05763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630451f52081146101a557806306fdde03146101d8578063095ea7b3146102625780630fce887b1461029a57806310e24db51461033e57806313af4035146103af57806316b81889146103d2578063170f8a51146103f357806318160ddd1461041457806323b872dd14610429578063313ce5671461045357806332308cce1461047e57806334af370f146104a257806345cc5890146104c65780635a3b7e42146104e75780635fc3a312146104fc578063661884631461051d57806366fbc1541461054157806370a0823114610556578063885cb436146105775780638da5cb5b1461059857806395d89b41146105c9578063a9059cbb146105de578063b91aedab14610602578063c7cc4ee91461069e578063ca0cd7c0146106b3578063ce62cd4a146106cb578063d71c9c12146106ec578063d72901811461070d578063d73dd6231461072e578063d80b205614610752578063dd62ed3e14610767578063df51d46b1461078e575b600080fd5b3480156101b157600080fd5b506101c6600160a060020a03600435166107a6565b60408051918252519081900360200190f35b3480156101e457600080fd5b506101ed610879565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561022757818101518382015260200161020f565b50505050905090810190601f1680156102545780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561026e57600080fd5b50610286600160a060020a0360043516602435610906565b604080519115158252519081900360200190f35b3480156102a657600080fd5b506040805160206004604435818101358381028086018501909652808552610286958335600160a060020a039081169660248035909216963696956064959294930192829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a9989019892975090820195509350839250850190849080828437509497506109a59650505050505050565b34801561034a57600080fd5b5061035f600160a060020a0360043516610dc8565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561039b578181015183820152602001610383565b505050509050019250505060405180910390f35b3480156103bb57600080fd5b506103d0600160a060020a0360043516610e4b565b005b3480156103de57600080fd5b506101c6600160a060020a0360043516610e91565b3480156103ff57600080fd5b506101c6600160a060020a0360043516610ea3565b34801561042057600080fd5b506101c6610eb5565b34801561043557600080fd5b50610286600160a060020a0360043581169060243516604435610ebb565b34801561045f57600080fd5b5061046861105d565b6040805160ff9092168252519081900360200190f35b34801561048a57600080fd5b506101c6600160a060020a0360043516602435611066565b3480156104ae57600080fd5b506101c6600160a060020a0360043516602435611096565b3480156104d257600080fd5b506103d0600160a060020a03600435166110b1565b3480156104f357600080fd5b506101ed611103565b34801561050857600080fd5b506101c6600160a060020a036004351661113a565b34801561052957600080fd5b50610286600160a060020a03600435166024356111ce565b34801561054d57600080fd5b506101c66112d9565b34801561056257600080fd5b506101c6600160a060020a03600435166112df565b34801561058357600080fd5b5061035f600160a060020a036004351661134e565b3480156105a457600080fd5b506105ad61143f565b60408051600160a060020a039092168252519081900360200190f35b3480156105d557600080fd5b506101ed61144e565b3480156105ea57600080fd5b50610286600160a060020a03600435166024356114a6565b34801561060e57600080fd5b50604080516020600460248035828101358481028087018601909752808652610286968435600160a060020a031696369660449591949091019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061159b9650505050505050565b3480156106aa57600080fd5b506101c66118cc565b3480156106bf57600080fd5b506103d06004356118d2565b3480156106d757600080fd5b506103d0600160a060020a03600435166118fb565b3480156106f857600080fd5b50610286600160a060020a036004351661194a565b34801561071957600080fd5b506103d0600160a060020a036004351661195f565b34801561073a57600080fd5b50610286600160a060020a0360043516602435611afc565b34801561075e57600080fd5b506103d0611b2a565b34801561077357600080fd5b506101c6600160a060020a0360043581169060243516611bb9565b34801561079a57600080fd5b506103d0600435611bd6565b600160a060020a038116600090815260056020526040812054905b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a0383166000908152600760205260409020805461081d91908390811061080a57fe5b9060005260206000200154600b54611bff565b61082942600c54611bff565b1061086b57600160a060020a038316600090815260086020526040902080546108689184918490811061085857fe5b9060005260206000200154611bff565b91505b6001016107c1565b50919050565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108fe5780601f106108d3576101008083540402835291602001916108fe565b820191906000526020600020905b8154815290600101906020018083116108e157829003601f168201915b505050505081565b600082600160a060020a038116151561091e57600080fd5b33600090815260096020526040812054111561093d5761093d33611c15565b336000818152600660209081526040808320600160a060020a03891680855290835292819020879055805187815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b6000808086600160a060020a03811615156109bf57600080fd5b86600160a060020a03811615156109d557600080fd5b336000908152600a602052604090205460ff1615156109f357600080fd5b8651865114610a0157600080fd5b600160a060020a0389166000908152600960205260408120541115610a2957610a2989611c15565b60009350600092505b8551841015610a6957610a5c838786815181101515610a4d57fe5b90602001906020020151611bff565b6001909401939250610a32565b600160a060020a0389166000908152600560205260409020548311801590610a92575060008310155b8015610ac15750600160a060020a03891660009081526006602090815260408083203384529091529020548311155b1515610acc57600080fd5b600093505b8651841015610db957600160a060020a0389166000908152600560205260409020548651610b159190889087908110610b0657fe5b90602001906020020151612059565b600160a060020a038a1660009081526005602090815260408083209390935560068152828220338352905220548651610b559190889087908110610b0657fe5b600160a060020a03808b166000908152600660209081526040808320338452825280832094909455918b1681526009825282812054600790925291909120600190910190610ba3908261206b565b50600160a060020a0388166000908152600960209081526040808320546008909252909120600190910190610bd8908261206b565b50610beb428886815181101515610a4d57fe5b600160a060020a038916600090815260076020908152604080832060099092529091205481548110610c1957fe5b6000918252602090912001558551869085908110610c3357fe5b6020908102909101810151600160a060020a038a166000908152600883526040808220600990945290205482549192918110610c6b57fe5b6000918252602080832090910192909255600160a060020a03808b1680835260078452604080842060099095529092205483549293918d16927f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e9291908110610cd057fe5b6000918252602080832090910154600160a060020a038e16835260088252604080842060099093529092205481548110610d0657fe5b6000918252602091829020015460408051938452918301528051918290030190a3600160a060020a038089166000818152600860209081526040808320600990925290912054815492938d16926000805160206120fd8339815191529291908110610d6d57fe5b90600052602060002001546040518082815260200191505060405180910390a3600160a060020a0388166000908152600960205260409020805460019081019091559390930192610ad1565b50600198975050505050505050565b606081600160a060020a0381161515610de057600080fd5b600160a060020a03831660009081526008602090815260409182902080548351818402810184019094528084529091830182828015610e3e57602002820191906000526020600020905b815481526020019060010190808311610e2a575b5050505050915050919050565b600054600160a060020a03163314610e6257600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60096020526000908152604090205481565b60056020526000908152604090205481565b60045481565b600083600160a060020a0381161515610ed357600080fd5b83600160a060020a0381161515610ee957600080fd5b600160a060020a0386166000908152600960205260408120541115610f1157610f1186611c15565b600160a060020a0386166000908152600560205260409020548411801590610f3a575060008410155b8015610f695750600160a060020a03861660009081526006602090815260408083203384529091529020548411155b1515610f7457600080fd5b600160a060020a0386166000908152600660209081526040808320338452909152902054610fa29085612059565b600160a060020a038716600081815260066020908152604080832033845282528083209490945591815260059091522054610fdd9085612059565b600160a060020a03808816600090815260056020526040808220939093559087168152205461100c9085611bff565b600160a060020a0380871660008181526005602090815260409182902094909455805188815290519193928a16926000805160206120fd83398151915292918290030190a350600195945050505050565b60035460ff1681565b60086020528160005260406000208181548110151561108157fe5b90600052602060002001600091509150505481565b60076020528160005260406000208181548110151561108157fe5b80600160a060020a03811615156110c757600080fd5b600054600160a060020a031633146110de57600080fd5b50600160a060020a03166000908152600a60205260409020805460ff19166001179055565b60408051808201909152600881527f302e383631303537000000000000000000000000000000000000000000000000602082015281565b6000805b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a0383166000908152600760205260409020805461118791908390811061080a57fe5b61119342600c54611bff565b10156111c657600160a060020a038316600090815260086020526040902080546111c39184918490811061085857fe5b91505b60010161113e565b336000908152600660209081526040808320600160a060020a0386168452909152812054821061122157336000908152600660209081526040808320600160a060020a0387168452909152812055611274565b336000908152600660209081526040808320600160a060020a038716845290915290205461124f9083612059565b336000908152600660209081526040808320600160a060020a03881684529091529020555b336000818152600660209081526040808320600160a060020a0388168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b600c5481565b600160a060020a038116600090815260056020526040812054905b600160a060020a03831660009081526009602052604090205481101561087357600160a060020a038316600090815260086020526040902080546113449184918490811061085857fe5b91506001016112fa565b606060008183600160a060020a038116151561136957600080fd5b600092506009600086600160a060020a0316600160a060020a03168152602001908152602001600020546040519080825280602002602001820160405280156113bc578160200160208202803883390190505b5091505b600160a060020a03851660009081526009602052604090205483101561143757600160a060020a038516600090815260076020526040902080546114149161140c918690811061080a57fe5b600c54612059565b828481518110151561142257fe5b602090810290910101526001909201916113c0565b509392505050565b600054600160a060020a031681565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156108fe5780601f106108d3576101008083540402835291602001916108fe565b600082600160a060020a03811615156114be57600080fd5b3360009081526009602052604081205411156114dd576114dd33611c15565b3360009081526005602052604090205483118015906114fd575060008310155b151561150857600080fd5b336000908152600560205260409020546115229084612059565b3360009081526005602052604080822092909255600160a060020a0386168152205461154e9084611bff565b600160a060020a0385166000818152600560209081526040918290209390935580518681529051919233926000805160206120fd8339815191529281900390910190a35060019392505050565b6000808085600160a060020a03811615156115b557600080fd5b85518551146115c357600080fd5b3360009081526009602052604081205411156115e2576115e233611c15565b60009250600091505b845183101561161357611606828685815181101515610a4d57fe5b60019093019291506115eb565b336000908152600560205260409020548211801590611633575060008210155b151561163e57600080fd5b600092505b85518310156118bf5733600090815260056020526040902054855161166f9190879086908110610b0657fe5b33600090815260056020908152604080832093909355600160a060020a038a168252600981528282205460079091529190206001909101906116b1908261206b565b50600160a060020a03871660009081526009602090815260408083205460089092529091206001909101906116e6908261206b565b506116f9428785815181101515610a4d57fe5b600160a060020a03881660009081526007602090815260408083206009909252909120548154811061172757fe5b600091825260209091200155845185908490811061174157fe5b6020908102909101810151600160a060020a038916600090815260088352604080822060099094529020548254919291811061177957fe5b6000918252602080832090910192909255600160a060020a0389168082526007835260408083206009909452909120548254919233927f34c966766e471b87b7ce8d0d0358378cf20008a30bbb36246a3413c8a286834e929081106117da57fe5b6000918252602080832090910154600160a060020a038d1683526008825260408084206009909352909220548154811061181057fe5b6000918252602091829020015460408051938452918301528051918290030190a3600160a060020a0387166000818152600860209081526040808320600990925290912054815433926000805160206120fd833981519152929091811061187357fe5b90600052602060002001546040518082815260200191505060405180910390a3600160a060020a0387166000908152600960205260409020805460019081019091559290920191611643565b5060019695505050505050565b600b5481565b600054600160a060020a031633146118e957600080fd5b6118f5600b5482611bff565b600b5550565b80600160a060020a038116151561191157600080fd5b600054600160a060020a0316331461192857600080fd5b50600160a060020a03166000908152600a60205260409020805460ff19169055565b600a6020526000908152604090205460ff1681565b600080548190600160a060020a0316331461197957600080fd5b604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051849350600160a060020a038416916370a082319160248083019260209291908290030181600087803b1580156119dd57600080fd5b505af11580156119f1573d6000803e3d6000fd5b505050506040513d6020811015611a0757600080fd5b5051905060008111611a1857600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018390529051600160a060020a0384169163a9059cbb9160448083019260209291908290030181600087803b158015611a8057600080fd5b505af1158015611a94573d6000803e3d6000fd5b505050506040513d6020811015611aaa57600080fd5b50511515611ab757600080fd5b6040805182815290513391600160a060020a038616917f5d8daa04d680e083e2ab17a35494ba9f290f554edf76a78f0103a8a599b5c4249181900360200190a3505050565b336000908152600660209081526040808320600160a060020a038616845290915281205461124f9083611bff565b60008054600160a060020a03163314611b4257600080fd5b50303160008111611b5257600080fd5b604051339082156108fc029083906000818181858888f19350505050158015611b7f573d6000803e3d6000fd5b5060408051828152905133917faea7a96dc17068a25e51e08f8ed45b86bd34b10af65af8e757af57b7e7b9e55d919081900360200190a250565b600660209081526000928352604080842090915290825290205481565b600054600160a060020a03163314611bed57600080fd5b611bf9600c5482611bff565b600c5550565b600082820183811015611c0e57fe5b9392505050565b6000806060806060806060806000975060009650600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611c78578160200160208202803883390190505b509350600960008a600160a060020a0316600160a060020a0316815260200190815260200160002054604051908082528060200260200182016040528015611cca578160200160208202803883390190505b50600160a060020a038a166000908152600760209081526040918290208054835181840281018401909452808452939650919290830182828015611d2d57602002820191906000526020600020905b815481526020019060010190808311611d19575b50505050509550600860008a600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015611da357602002820191906000526020600020905b815481526020019060010190808311611d8f575b505050505094505b600160a060020a038916600090815260096020526040902054881015611f0d57611dee8689815181101515611ddc57fe5b90602001906020020151600b54611bff565b611dfa42600c54611bff565b10611e9b57600160a060020a0389166000908152600560205260409020548551611e2b919087908b908110610a4d57fe5b600160a060020a038a1660008181526005602052604090209190915585517f613edbda9d1e6bda8af8e869a973f88cccf93854a11f351589038de07e1ab4e39087908b908110611e7757fe5b906020019060200201516040518082815260200191505060405180910390a2611f02565b8588815181101515611ea957fe5b906020019060200201518488815181101515611ec157fe5b602090810290910101528451859089908110611ed957fe5b906020019060200201518388815181101515611ef157fe5b602090810290910101526001909601955b600190970196611dab565b86604051908082528060200260200182016040528015611f37578160200160208202803883390190505b50915086604051908082528060200260200182016040528015611f64578160200160208202803883390190505b509050600097505b86881015611fdf578388815181101515611f8257fe5b906020019060200201518289815181101515611f9a57fe5b602090810290910101528251839089908110611fb257fe5b906020019060200201518189815181101515611fca57fe5b60209081029091010152600190970196611f6c565b600160a060020a0389166000908152600760209081526040909120835161200892850190612094565b50600160a060020a0389166000908152600860209081526040909120825161203292840190612094565b505050600160a060020a039096166000908152600960205260409020939093555050505050565b60008183101561206557fe5b50900390565b81548183558181111561208f5760008381526020902061208f9181019083016120df565b505050565b8280548282559060005260206000209081019282156120cf579160200282015b828111156120cf5782518255916020019190600101906120b4565b506120db9291506120df565b5090565b6120f991905b808211156120db57600081556001016120e5565b905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820893fe52c4cd3e93fbc5973c1595e8e0d0b91085ecb36938ee0d630f5b94579090029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000204fce5e3e25026110000000000000000000000000000000000000000000000000000000000000000000000b56616c756520436861696e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035661540000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): Value Chain
Arg [1] : _symbol (string): VaT
Arg [2] : _decimals (uint8): 18
Arg [3] : _totalSupply (uint256): 10000000000000000000000000000

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [3] : 0000000000000000000000000000000000000000204fce5e3e25026110000000
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000b
Arg [5] : 56616c756520436861696e000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 5661540000000000000000000000000000000000000000000000000000000000


Swarm Source

bzzr://893fe52c4cd3e93fbc5973c1595e8e0d0b91085ecb36938ee0d630f5b9457909

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.