ETH Price: $1,571.26 (-0.93%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer72220302019-02-15 4:01:162257 days ago1550203276IN
0x8B54659D...0A5D35605
0 ETH0.00011415
Transfer72220272019-02-15 4:00:302257 days ago1550203230IN
0x8B54659D...0A5D35605
0 ETH0.00011415
Transfer72220252019-02-15 4:00:242257 days ago1550203224IN
0x8B54659D...0A5D35605
0 ETH0.00011415
Transfer72219342019-02-15 3:32:172257 days ago1550201537IN
0x8B54659D...0A5D35605
0 ETH0.000116385.1
Transfer72218752019-02-15 3:12:202257 days ago1550200340IN
0x8B54659D...0A5D35605
0 ETH0.00011415
Transfer72217962019-02-15 2:40:172257 days ago1550198417IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217922019-02-15 2:38:392257 days ago1550198319IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217892019-02-15 2:37:572257 days ago1550198277IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217842019-02-15 2:35:562257 days ago1550198156IN
0x8B54659D...0A5D35605
0 ETH0.00026415
Transfer72217772019-02-15 2:33:112257 days ago1550197991IN
0x8B54659D...0A5D35605
0 ETH0.00022736
Transfer72217752019-02-15 2:32:002257 days ago1550197920IN
0x8B54659D...0A5D35605
0 ETH0.00022736
Transfer72217732019-02-15 2:31:252257 days ago1550197885IN
0x8B54659D...0A5D35605
0 ETH0.00022736
Transfer72217692019-02-15 2:31:022257 days ago1550197862IN
0x8B54659D...0A5D35605
0 ETH0.00022736
Transfer72217652019-02-15 2:29:552257 days ago1550197795IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217452019-02-15 2:18:432257 days ago1550197123IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217432019-02-15 2:17:562257 days ago1550197076IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217392019-02-15 2:17:202257 days ago1550197040IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217372019-02-15 2:16:392257 days ago1550196999IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217332019-02-15 2:16:022257 days ago1550196962IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217312019-02-15 2:15:242257 days ago1550196924IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217282019-02-15 2:14:212257 days ago1550196861IN
0x8B54659D...0A5D35605
0 ETH0.000189425
Transfer72217252019-02-15 2:13:222257 days ago1550196802IN
0x8B54659D...0A5D35605
0 ETH0.000189745
Transfer72217232019-02-15 2:12:512257 days ago1550196771IN
0x8B54659D...0A5D35605
0 ETH0.000188785
Transfer72217202019-02-15 2:11:292257 days ago1550196689IN
0x8B54659D...0A5D35605
0 ETH0.000151284
Transfer72217132019-02-15 2:08:222257 days ago1550196502IN
0x8B54659D...0A5D35605
0 ETH0.000151534
View all transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HAI

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-12-14
*/

pragma solidity ^0.4.11;


library SafeMath {
    
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a / b;
    return c;
  }

  function sub(uint256 a, uint256 b) internal pure returns (uint256) {
    assert(b <= a);
    return a - b;
  }

  function add(uint256 a, uint256 b) internal pure returns (uint256) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

contract HAI {
    
    using SafeMath for uint256;
    
    string public name = "HAI";      //  token name
    
    string public symbol = "HAI";           //  token symbol
    
    uint256 public decimals = 8;            //  token digit

    mapping (address => uint256) public balanceOf;
    
    mapping (address => mapping (address => uint256)) public allowance;
    
    mapping (address => uint256) public frozenBalances;
    mapping (address => uint256) public lockedBalances;
    
    mapping (address => uint256) public initTimes;
    
    mapping (address => uint) public initTypes;
    
    uint256 public totalSupply = 0;

    uint256 constant valueFounder = 1000000000000000000;
    
    address owner = 0x0;
    
    address operator = 0x0;
    bool inited = false;

    modifier isOwner {
        assert(owner == msg.sender);
        _;
    }
    
    modifier isOperator {
        assert(operator == msg.sender);
        _;
    }

    modifier validAddress {
        assert(0x0 != msg.sender);
        _;
    }
    
    event Transfer(address indexed _from, address indexed _to, uint256 _value);
    
    event Approval(address indexed _owner, address indexed _spender, uint256 _value);
    
    event Burn(address indexed from, uint256 value);
    event Frozen(address indexed from, uint256 value);
    event UnFrozen(address indexed from, uint256 value);


    constructor() public {
        owner = msg.sender;
        operator = msg.sender;
        totalSupply = valueFounder;
        balanceOf[msg.sender] = valueFounder;
        emit Transfer(0x0, msg.sender, valueFounder);
    }
    
    function _transfer(address _from, address _to, uint256 _value) private {
        require(_to != 0x0);
        require(canTransferBalance(_from) >= _value);
        balanceOf[_from] = balanceOf[_from].sub(_value);
        balanceOf[_to] = balanceOf[_to].add(_value);
        emit Transfer(_from, _to, _value);
    }
    
    function transfer(address _to, uint256 _value) validAddress public returns (bool success) {
        _transfer(msg.sender, _to, _value);
        return true;
    }

    function transferFrom(address _from, address _to, uint256 _value) validAddress public returns (bool success) {
        require(_value <= allowance[_from][msg.sender]);
        allowance[_from][msg.sender] = allowance[_from][msg.sender].sub(_value);
        _transfer(_from, _to, _value);
        return true;
    }

    function approve(address _spender, uint256 _value) validAddress public returns (bool success) {
        require(canTransferBalance(msg.sender) >= _value);
        allowance[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    
    function burn(uint256 _value) validAddress public  returns (bool success) {
        require(canTransferBalance(msg.sender) >= _value);   // Check if the sender has enough
        balanceOf[msg.sender] = balanceOf[msg.sender].sub(_value);            // Subtract from the sender
        totalSupply = totalSupply.sub(_value);                      // Updates totalSupply
        emit Burn(msg.sender, _value);
        emit Transfer(msg.sender, 0x0, _value);
        return true;
    }

    function initTransferArr(address[] _arr_addr, uint256[] _arr_value,uint[] _arr_initType) validAddress isOperator public returns (bool success) {
        require(_arr_addr.length == _arr_value.length && _arr_value.length == _arr_initType.length);
        require(_arr_addr.length > 0 && _arr_addr.length < 100);
        require(!inited);
        for (uint i = 0; i < _arr_addr.length ; ++i) {
            initTransfer(_arr_addr[i],_arr_value[i],_arr_initType[i]);
        }
        inited = true;
        return true;
    }

    function initTransfer(address _to, uint256 _value, uint _initType) validAddress isOperator public returns (bool success) {
        require(_initType == 0x1 || _initType == 0x2 || _initType == 0x3);
        require(initTypes[_to]==0x0);
        lockedBalances[_to] = _value;
        initTimes[_to] = now;
        initTypes[_to] = _initType;
        _transfer(msg.sender, _to, _value);
        return true;
    }
    
    function canTransferBalance(address addr) public view returns (uint256){
        if(initTypes[addr]==0x0){
            return balanceOf[addr].sub(frozenBalances[addr]);
        }else{
            uint256 s = now.sub(initTimes[addr]);
            if(initTypes[addr]==0x1){
                if(s >= 11825 days){
                    return balanceOf[addr].sub(frozenBalances[addr]);    
                }else if(s >= 1825 days){
                    return balanceOf[addr].sub(lockedBalances[addr]).add(lockedBalances[addr].div(10000).mul((s.sub(1825 days).div(1 days) + 1))).sub(frozenBalances[addr]);
                }else{
                    return balanceOf[addr].sub(lockedBalances[addr]).sub(frozenBalances[addr]);
                }
            }else if(initTypes[addr]==0x2){
                if(s >= 11460 days){
                    return balanceOf[addr].sub(frozenBalances[addr]);    
                }else if(s >= 1460 days){
                    return balanceOf[addr].sub(lockedBalances[addr]).add(lockedBalances[addr].div(10000).mul((s.sub(1460 days).div(1 days) + 1))).sub(frozenBalances[addr]);
                }else{
                    return balanceOf[addr].sub(lockedBalances[addr]).sub(frozenBalances[addr]);
                }
            }else if(initTypes[addr]==0x3){
                if(s >= 11095 days){
                    return balanceOf[addr].sub(frozenBalances[addr]);    
                }else if(s >= 1095 days){
                    return balanceOf[addr].sub(lockedBalances[addr]).add(lockedBalances[addr].div(10000).mul((s.sub(1095 days).div(1 days) + 1))).sub(frozenBalances[addr]);
                }else{
                    return balanceOf[addr].sub(lockedBalances[addr]).sub(frozenBalances[addr]);
                }
            }else{
                return 0;
            }
      
        }
    }

    function frozen(address from,  uint256 value) validAddress isOperator public {
        require(from != 0x0);
        require(canTransferBalance(from) >= value);
        frozenBalances[from] = frozenBalances[from].add(value);
        emit Frozen(from, value);
    }

    function unFrozen(address from,  uint256 value) validAddress isOperator public {
        require(from != 0x0);
        require(frozenBalances[from] >= value);
        frozenBalances[from] = frozenBalances[from].sub(value);
        emit UnFrozen(from, value);
    }

    function setOperator(address addr) validAddress isOwner public {
        operator = addr;
    }
    
}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"lockedBalances","outputs":[{"name":"","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":true,"inputs":[{"name":"","type":"address"}],"name":"frozenBalances","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":true,"inputs":[{"name":"","type":"address"}],"name":"initTimes","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":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"frozen","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_arr_addr","type":"address[]"},{"name":"_arr_value","type":"uint256[]"},{"name":"_arr_initType","type":"uint256[]"}],"name":"initTransferArr","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"burn","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_initType","type":"uint256"}],"name":"initTransfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"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":"from","type":"address"},{"name":"value","type":"uint256"}],"name":"unFrozen","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"addr","type":"address"}],"name":"setOperator","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"canTransferBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"initTypes","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Frozen","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"UnFrozen","type":"event"}]

60c0604052600360808190527f484149000000000000000000000000000000000000000000000000000000000060a09081526200004091600091906200013c565b506040805180820190915260038082527f4841490000000000000000000000000000000000000000000000000000000000602090920191825262000087916001916200013c565b5060086002556000600955600a8054600160a060020a0319169055600b8054600160a860020a0319169055348015620000bf57600080fd5b50600a805433600160a060020a03199182168117909255600b805490911682179055670de0b6b3a76400006009819055600082815260036020908152604080832084905580519384525191927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a3620001e1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017f57805160ff1916838001178555620001af565b82800160010185558215620001af579182015b82811115620001af57825182559160200191906001019062000192565b50620001bd929150620001c1565b5090565b620001de91905b80821115620001bd5760008155600101620001c8565b90565b61110380620001f16000396000f3006080604052600436106101115763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630483a7f6811461011657806306fdde0314610149578063095ea7b3146101d35780630ad9e7bf1461020b57806318160ddd1461022c57806318165f941461024157806323b872dd14610262578063313ce5671461028c57806336173764146102a15780633b561709146102c757806342966c681461038e57806365ea62ff146103a657806370a08231146103cd57806395d89b41146103ee578063a9059cbb14610403578063ae426d9214610427578063b3ab15fb1461044b578063bcc1480a1461046c578063dd0104951461048d578063dd62ed3e146104ae575b600080fd5b34801561012257600080fd5b50610137600160a060020a03600435166104d5565b60408051918252519081900360200190f35b34801561015557600080fd5b5061015e6104e7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610198578181015183820152602001610180565b50505050905090810190601f1680156101c55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101df57600080fd5b506101f7600160a060020a0360043516602435610575565b604080519115158252519081900360200190f35b34801561021757600080fd5b50610137600160a060020a03600435166105fc565b34801561023857600080fd5b5061013761060e565b34801561024d57600080fd5b50610137600160a060020a0360043516610614565b34801561026e57600080fd5b506101f7600160a060020a0360043581169060243516604435610626565b34801561029857600080fd5b506101376106ce565b3480156102ad57600080fd5b506102c5600160a060020a03600435166024356106d4565b005b3480156102d357600080fd5b50604080516020600480358082013583810280860185019096528085526101f795369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061079a9650505050505050565b34801561039a57600080fd5b506101f76004356108c3565b3480156103b257600080fd5b506101f7600160a060020a036004351660243560443561099f565b3480156103d957600080fd5b50610137600160a060020a0360043516610a43565b3480156103fa57600080fd5b5061015e610a55565b34801561040f57600080fd5b506101f7600160a060020a0360043516602435610aaf565b34801561043357600080fd5b506102c5600160a060020a0360043516602435610ace565b34801561045757600080fd5b506102c5600160a060020a0360043516610ba4565b34801561047857600080fd5b50610137600160a060020a0360043516610bf0565b34801561049957600080fd5b50610137600160a060020a0360043516610f56565b3480156104ba57600080fd5b50610137600160a060020a0360043581169060243516610f68565b60066020526000908152604090205481565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561056d5780601f106105425761010080835404028352916020019161056d565b820191906000526020600020905b81548152906001019060200180831161055057829003601f168201915b505050505081565b600033151561058057fe5b8161058a33610bf0565b101561059557600080fd5b336000818152600460209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60056020526000908152604090205481565b60095481565b60076020526000908152604090205481565b600033151561063157fe5b600160a060020a038416600090815260046020908152604080832033845290915290205482111561066157600080fd5b600160a060020a0384166000908152600460209081526040808320338452909152902054610695908363ffffffff610f8516565b600160a060020a03851660009081526004602090815260408083203384529091529020556106c4848484610f97565b5060019392505050565b60025481565b3315156106dd57fe5b600b54600160a060020a031633146106f157fe5b600160a060020a038216151561070657600080fd5b8061071083610bf0565b101561071b57600080fd5b600160a060020a038216600090815260056020526040902054610744908263ffffffff61107b16565b600160a060020a038316600081815260056020908152604091829020939093558051848152905191927f68e0d8c112165d0949ce87205b719ed7d98c7401866c34a159f7c67c6f5620e792918290030190a25050565b6000803315156107a657fe5b600b54600160a060020a031633146107ba57fe5b835185511480156107cc575082518451145b15156107d757600080fd5b600085511180156107e9575060648551105b15156107f457600080fd5b600b5474010000000000000000000000000000000000000000900460ff161561081c57600080fd5b5060005b845181101561088257610879858281518110151561083a57fe5b90602001906020020151858381518110151561085257fe5b90602001906020020151858481518110151561086a57fe5b9060200190602002015161099f565b50600101610820565b600b805474ff000000000000000000000000000000000000000019167401000000000000000000000000000000000000000017905560019150509392505050565b60003315156108ce57fe5b816108d833610bf0565b10156108e357600080fd5b33600090815260036020526040902054610903908363ffffffff610f8516565b33600090815260036020526040902055600954610926908363ffffffff610f8516565b60095560408051838152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a260408051838152905160009133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001919050565b60003315156109aa57fe5b600b54600160a060020a031633146109be57fe5b81600114806109cd5750816002145b806109d85750816003145b15156109e357600080fd5b600160a060020a03841660009081526008602052604090205415610a0657600080fd5b600160a060020a038416600090815260066020908152604080832086905560078252808320429055600890915290208290556106c4338585610f97565b60036020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561056d5780601f106105425761010080835404028352916020019161056d565b6000331515610aba57fe5b610ac5338484610f97565b50600192915050565b331515610ad757fe5b600b54600160a060020a03163314610aeb57fe5b600160a060020a0382161515610b0057600080fd5b600160a060020a038216600090815260056020526040902054811115610b2557600080fd5b600160a060020a038216600090815260056020526040902054610b4e908263ffffffff610f8516565b600160a060020a038316600081815260056020908152604091829020939093558051848152905191927f9c2019e084d5cada06e6835b7d78372e124b1a46ea73c0ecdc91f3432e5dd22392918290030190a25050565b331515610bad57fe5b600a54600160a060020a03163314610bc157fe5b600b805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03811660009081526008602052604081205481901515610c4c57600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b9150610f50565b600160a060020a038316600090815260076020526040902054610c7690429063ffffffff610f8516565b600160a060020a03841660009081526008602052604090205490915060011415610df957633ce599808110610cd957600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b63096601808110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d2287630966018063ffffffff610f8516565b9063ffffffff61109516565b600160a060020a03881660009081526006602052604090205460019190910190610d609061271063ffffffff61109516565b9063ffffffff6110ac16565b600160a060020a038716600090815260066020908152604080832054600390925290912054610da09163ffffffff610f8516565b9063ffffffff61107b16565b9063ffffffff610f8516565b600160a060020a03831660009081526005602090815260408083205460068352818420546003909352922054610c459291610dac919063ffffffff610f8516565b600160a060020a03831660009081526008602052604090205460021415610ea257633b0466008110610e5957600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b630784ce008110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d2287630784ce0063ffffffff610f8516565b600160a060020a03831660009081526008602052604090205460031415610f4b5763392332808110610f0257600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b6305a39a808110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d22876305a39a8063ffffffff610f8516565b600091505b50919050565b60086020526000908152604090205481565b600460209081526000928352604080842090915290825290205481565b600082821115610f9157fe5b50900390565b600160a060020a0382161515610fac57600080fd5b80610fb684610bf0565b1015610fc157600080fd5b600160a060020a038316600090815260036020526040902054610fea908263ffffffff610f8516565b600160a060020a03808516600090815260036020526040808220939093559084168152205461101f908263ffffffff61107b16565b600160a060020a0380841660008181526003602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282018381101561108a57fe5b8091505b5092915050565b60008082848115156110a357fe5b04949350505050565b6000808315156110bf576000915061108e565b508282028284828115156110cf57fe5b041461108a57fe00a165627a7a72305820d9ae73c5a95119e04b453ab1d8e6f2abe54937369b9c92d17f78d336b8875fb20029

Deployed Bytecode

0x6080604052600436106101115763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416630483a7f6811461011657806306fdde0314610149578063095ea7b3146101d35780630ad9e7bf1461020b57806318160ddd1461022c57806318165f941461024157806323b872dd14610262578063313ce5671461028c57806336173764146102a15780633b561709146102c757806342966c681461038e57806365ea62ff146103a657806370a08231146103cd57806395d89b41146103ee578063a9059cbb14610403578063ae426d9214610427578063b3ab15fb1461044b578063bcc1480a1461046c578063dd0104951461048d578063dd62ed3e146104ae575b600080fd5b34801561012257600080fd5b50610137600160a060020a03600435166104d5565b60408051918252519081900360200190f35b34801561015557600080fd5b5061015e6104e7565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610198578181015183820152602001610180565b50505050905090810190601f1680156101c55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101df57600080fd5b506101f7600160a060020a0360043516602435610575565b604080519115158252519081900360200190f35b34801561021757600080fd5b50610137600160a060020a03600435166105fc565b34801561023857600080fd5b5061013761060e565b34801561024d57600080fd5b50610137600160a060020a0360043516610614565b34801561026e57600080fd5b506101f7600160a060020a0360043581169060243516604435610626565b34801561029857600080fd5b506101376106ce565b3480156102ad57600080fd5b506102c5600160a060020a03600435166024356106d4565b005b3480156102d357600080fd5b50604080516020600480358082013583810280860185019096528085526101f795369593946024949385019291829185019084908082843750506040805187358901803560208181028481018201909552818452989b9a998901989297509082019550935083925085019084908082843750506040805187358901803560208181028481018201909552818452989b9a99890198929750908201955093508392508501908490808284375094975061079a9650505050505050565b34801561039a57600080fd5b506101f76004356108c3565b3480156103b257600080fd5b506101f7600160a060020a036004351660243560443561099f565b3480156103d957600080fd5b50610137600160a060020a0360043516610a43565b3480156103fa57600080fd5b5061015e610a55565b34801561040f57600080fd5b506101f7600160a060020a0360043516602435610aaf565b34801561043357600080fd5b506102c5600160a060020a0360043516602435610ace565b34801561045757600080fd5b506102c5600160a060020a0360043516610ba4565b34801561047857600080fd5b50610137600160a060020a0360043516610bf0565b34801561049957600080fd5b50610137600160a060020a0360043516610f56565b3480156104ba57600080fd5b50610137600160a060020a0360043581169060243516610f68565b60066020526000908152604090205481565b6000805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561056d5780601f106105425761010080835404028352916020019161056d565b820191906000526020600020905b81548152906001019060200180831161055057829003601f168201915b505050505081565b600033151561058057fe5b8161058a33610bf0565b101561059557600080fd5b336000818152600460209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60056020526000908152604090205481565b60095481565b60076020526000908152604090205481565b600033151561063157fe5b600160a060020a038416600090815260046020908152604080832033845290915290205482111561066157600080fd5b600160a060020a0384166000908152600460209081526040808320338452909152902054610695908363ffffffff610f8516565b600160a060020a03851660009081526004602090815260408083203384529091529020556106c4848484610f97565b5060019392505050565b60025481565b3315156106dd57fe5b600b54600160a060020a031633146106f157fe5b600160a060020a038216151561070657600080fd5b8061071083610bf0565b101561071b57600080fd5b600160a060020a038216600090815260056020526040902054610744908263ffffffff61107b16565b600160a060020a038316600081815260056020908152604091829020939093558051848152905191927f68e0d8c112165d0949ce87205b719ed7d98c7401866c34a159f7c67c6f5620e792918290030190a25050565b6000803315156107a657fe5b600b54600160a060020a031633146107ba57fe5b835185511480156107cc575082518451145b15156107d757600080fd5b600085511180156107e9575060648551105b15156107f457600080fd5b600b5474010000000000000000000000000000000000000000900460ff161561081c57600080fd5b5060005b845181101561088257610879858281518110151561083a57fe5b90602001906020020151858381518110151561085257fe5b90602001906020020151858481518110151561086a57fe5b9060200190602002015161099f565b50600101610820565b600b805474ff000000000000000000000000000000000000000019167401000000000000000000000000000000000000000017905560019150509392505050565b60003315156108ce57fe5b816108d833610bf0565b10156108e357600080fd5b33600090815260036020526040902054610903908363ffffffff610f8516565b33600090815260036020526040902055600954610926908363ffffffff610f8516565b60095560408051838152905133917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a260408051838152905160009133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001919050565b60003315156109aa57fe5b600b54600160a060020a031633146109be57fe5b81600114806109cd5750816002145b806109d85750816003145b15156109e357600080fd5b600160a060020a03841660009081526008602052604090205415610a0657600080fd5b600160a060020a038416600090815260066020908152604080832086905560078252808320429055600890915290208290556106c4338585610f97565b60036020526000908152604090205481565b60018054604080516020600284861615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561056d5780601f106105425761010080835404028352916020019161056d565b6000331515610aba57fe5b610ac5338484610f97565b50600192915050565b331515610ad757fe5b600b54600160a060020a03163314610aeb57fe5b600160a060020a0382161515610b0057600080fd5b600160a060020a038216600090815260056020526040902054811115610b2557600080fd5b600160a060020a038216600090815260056020526040902054610b4e908263ffffffff610f8516565b600160a060020a038316600081815260056020908152604091829020939093558051848152905191927f9c2019e084d5cada06e6835b7d78372e124b1a46ea73c0ecdc91f3432e5dd22392918290030190a25050565b331515610bad57fe5b600a54600160a060020a03163314610bc157fe5b600b805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03811660009081526008602052604081205481901515610c4c57600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b9150610f50565b600160a060020a038316600090815260076020526040902054610c7690429063ffffffff610f8516565b600160a060020a03841660009081526008602052604090205490915060011415610df957633ce599808110610cd957600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b63096601808110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d2287630966018063ffffffff610f8516565b9063ffffffff61109516565b600160a060020a03881660009081526006602052604090205460019190910190610d609061271063ffffffff61109516565b9063ffffffff6110ac16565b600160a060020a038716600090815260066020908152604080832054600390925290912054610da09163ffffffff610f8516565b9063ffffffff61107b16565b9063ffffffff610f8516565b600160a060020a03831660009081526005602090815260408083205460068352818420546003909352922054610c459291610dac919063ffffffff610f8516565b600160a060020a03831660009081526008602052604090205460021415610ea257633b0466008110610e5957600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b630784ce008110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d2287630784ce0063ffffffff610f8516565b600160a060020a03831660009081526008602052604090205460031415610f4b5763392332808110610f0257600160a060020a038316600090815260056020908152604080832054600390925290912054610c459163ffffffff610f8516565b6305a39a808110610db857600160a060020a038316600090815260056020526040902054610c4590610dac610d6c610d2e62015180610d22876305a39a8063ffffffff610f8516565b600091505b50919050565b60086020526000908152604090205481565b600460209081526000928352604080842090915290825290205481565b600082821115610f9157fe5b50900390565b600160a060020a0382161515610fac57600080fd5b80610fb684610bf0565b1015610fc157600080fd5b600160a060020a038316600090815260036020526040902054610fea908263ffffffff610f8516565b600160a060020a03808516600090815260036020526040808220939093559084168152205461101f908263ffffffff61107b16565b600160a060020a0380841660008181526003602090815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b60008282018381101561108a57fe5b8091505b5092915050565b60008082848115156110a357fe5b04949350505050565b6000808315156110bf576000915061108e565b508282028284828115156110cf57fe5b041461108a57fe00a165627a7a72305820d9ae73c5a95119e04b453ab1d8e6f2abe54937369b9c92d17f78d336b8875fb20029

Swarm Source

bzzr://d9ae73c5a95119e04b453ab1d8e6f2abe54937369b9c92d17f78d336b8875fb2

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.