ETH Price: $2,791.75 (+4.00%)

Token

HAI (HAI)
 

Overview

Max Total Supply

9,999,783,341 HAI

Holders

1,819

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
1,031,179.2 HAI

Value
$0.00
0x2C4d852100417e9b9D1d70022246d4D06074ea64
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

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

[{"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
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.