ETH Price: $2,983.32 (+3.30%)
Gas: 14 Gwei

Token

GramGold Coin (GGC)
 

Overview

Max Total Supply

14,100 GGC

Holders

118

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

GramGold Coin is pegged to 1 gram of investment grade gold, it provides your investment with stability, flexibility, and a peace of mind.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
GGCToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-09-28
*/

pragma solidity ^0.4.24;

contract ERC20Interface {
    function totalSupply() public view returns (uint256);
    function balanceOf(address tokenOwner) public view returns (uint256 balance);
    function allowance(address tokenOwner, address spender) public view returns (uint256 remaining);
    function transfer(address to, uint256 tokens) public returns (bool success);
    function approve(address spender, uint256 tokens) public returns (bool success);
    function transferFrom(address from, address to, uint256 tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint256 tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens);
}

// ----------------------------------------------------------------------------
// Safe maths
// ----------------------------------------------------------------------------
library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        require(c >= a);
        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b <= a);
        c = a - b;
        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        require(c / a == b);
        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256 c) {
        require(b != 0);
        c = a / b;
        return c;
    }
}

contract GGCToken is ERC20Interface{
    using SafeMath for uint256;
    using SafeMath for uint8;

    // ------------------------------------------------------------------------
    // Events
    // ------------------------------------------------------------------------
    //typeNo WL 1, ACL 2, BL 3, FeeL 4, TransConL 5, GGCPool 6, GGEPool 7
    event ListLog(address addr, uint8 indexed typeNo, bool active);
    event Trans(address indexed fromAddr, address indexed toAddr, uint256 transAmount, uint256 ggcAmount, uint256 ggeAmount, uint64 time);
    event OwnershipTransferred(address indexed _from, address indexed _to);
    event Deposit(address indexed sender, uint value);

    string public symbol;
    string public  name;
    uint8 public decimals;
    uint8 public ggcFee; 
    uint8 public ggeFee; 
    uint8 public maxFee;
    uint256 public _totalSupply;

    bool public feeLocked; 
    bool public transContractLocked;

    address public owner;
    address public ggcPoolAddr;
    address public ggePoolAddr;     
    address private ownerContract = address(0x0);
    
    mapping(address => uint256) balances;
    mapping(address => mapping(address => uint256)) allowed;
    mapping(address => bool) public whiteList;
    mapping(address => bool) public allowContractList;
    mapping(address => bool) public blackList;
    
    constructor() public {
        symbol = "GGC";
        name = "GramGold Coin";
        owner = msg.sender;
        decimals = 8;
        ggcFee = 2;
        ggeFee = 1; 
        maxFee = 3;
        _totalSupply = 600 * 10**uint256(decimals);
        balances[owner] = _totalSupply;
        ggcPoolAddr = address(0x0);
        ggePoolAddr = address(0x0);
        feeLocked = false;
        transContractLocked = true;
        whiteList[owner] = true; 
        emit ListLog(owner, 1, true);
        emit Transfer(address(0x0), owner, _totalSupply);
    }
    
    /**
    * @dev Allow current contract owner transfer ownership to other address
    */
    function AssignGGCOwner(address _ownerContract) 
    public 
    onlyOwner 
    notNull(_ownerContract) 
    {
        uint256 remainTokens = balances[owner];
        ownerContract = _ownerContract;
        balances[owner] = 0;
        balances[ownerContract] = balances[ownerContract].add(remainTokens);
        whiteList[ownerContract] = true; 
        emit ListLog(ownerContract, 1, true);
        emit Transfer(owner, ownerContract, remainTokens);
        emit OwnershipTransferred(owner, ownerContract);
        owner = ownerContract;
    }

    /**
    * @dev Check if the address is a wallet or a contract
    */
    function isContract(address _addr) 
    private 
    view 
    returns (bool) 
    {
        if(allowContractList[_addr] || !transContractLocked){
            return false;
        }

        uint256 codeLength = 0;

        assembly {
            codeLength := extcodesize(_addr)
        }
        
        return (codeLength > 0);
    }

    /**
    * @dev transfer _value from msg.sender to receiver
    * Both sender and receiver pays a transaction fees
    * The transaction fees will be transferred into GGCPool and GGEPool
    */
    function transfer(address _to, uint256 _value) 
    public 
    notNull(_to) 
    returns (bool success) 
    {
        uint256 ggcFeeFrom;
        uint256 ggeFeeFrom;
        uint256 ggcFeeTo;
        uint256 ggeFeeTo;

        if (feeLocked) {
            ggcFeeFrom = 0;
            ggeFeeFrom = 0;
            ggcFeeTo = 0;
            ggeFeeTo = 0;
        }else{
            (ggcFeeFrom, ggeFeeFrom) = feesCal(msg.sender, _value);
            (ggcFeeTo, ggeFeeTo) = feesCal(_to, _value);
        }

        require(balances[msg.sender] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));
        success = _transfer(msg.sender, _to, _value.sub(ggcFeeTo).sub(ggeFeeTo));
        require(success);
        success = _transfer(msg.sender, ggcPoolAddr, ggcFeeFrom.add(ggcFeeTo));
        require(success);
        success = _transfer(msg.sender, ggePoolAddr, ggeFeeFrom.add(ggeFeeTo));
        require(success);

        balances[msg.sender] = balances[msg.sender].sub(_value.add(ggcFeeFrom).add(ggeFeeFrom));
        balances[_to] = balances[_to].add(_value.sub(ggcFeeTo).sub(ggeFeeTo));
        balances[ggcPoolAddr] = balances[ggcPoolAddr].add(ggcFeeFrom).add(ggcFeeTo);
        balances[ggePoolAddr] = balances[ggePoolAddr].add(ggeFeeFrom).add(ggeFeeTo); 

        emit Trans(msg.sender, _to, _value, ggcFeeFrom.add(ggcFeeTo), ggeFeeFrom.add(ggeFeeTo), uint64(now));
        return true;
    }

    /**
    * @dev transfer _value from contract owner to receiver
    * Both contract owner and receiver pay transaction fees 
    * The transaction fees will be transferred into GGCPool and GGEPool
    */
    function transferFrom(address _from, address _to, uint256 _value) 
    public 
    notNull(_to) 
    returns (bool success) 
    {
        uint256 ggcFeeFrom;
        uint256 ggeFeeFrom;
        uint256 ggcFeeTo;
        uint256 ggeFeeTo;

        if (feeLocked) {
            ggcFeeFrom = 0;
            ggeFeeFrom = 0;
            ggcFeeTo = 0;
            ggeFeeTo = 0;
        }else{
            (ggcFeeFrom, ggeFeeFrom) = feesCal(_from, _value);
            (ggcFeeTo, ggeFeeTo) = feesCal(_to, _value);
        }

        require(balances[_from] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));
        require(allowed[_from][msg.sender] >= _value.add(ggcFeeFrom).add(ggeFeeFrom));

        success = _transfer(_from, _to, _value.sub(ggcFeeTo).sub(ggeFeeTo));
        require(success);
        success = _transfer(_from, ggcPoolAddr, ggcFeeFrom.add(ggcFeeTo));
        require(success);
        success = _transfer(_from, ggePoolAddr, ggeFeeFrom.add(ggeFeeTo));
        require(success);

        balances[_from] = balances[_from].sub(_value.add(ggcFeeFrom).add(ggeFeeFrom));
        balances[_to] = balances[_to].add(_value.sub(ggcFeeTo).sub(ggeFeeTo));
        balances[ggcPoolAddr] = balances[ggcPoolAddr].add(ggcFeeFrom).add(ggcFeeTo);
        balances[ggePoolAddr] = balances[ggePoolAddr].add(ggeFeeFrom).add(ggeFeeTo); 

        emit Trans(_from, _to, _value, ggcFeeFrom.add(ggcFeeTo), ggeFeeFrom.add(ggeFeeTo), uint64(now));
        return true;
    }

    /**
    * @dev calculate transaction fee base on address and value.
    * Check whiteList
    */
    function feesCal(address _addr, uint256 _value)
    public
    view
    notNull(_addr) 
    returns (uint256 _ggcFee, uint256 _ggeFee)
    {
        if(whiteList[_addr]){
            return (0, 0);
        }else{
            _ggcFee = _value.mul(ggcFee).div(1000).div(2);
            _ggeFee = _value.mul(ggeFee).div(1000).div(2);
            return (_ggcFee, _ggeFee);
        }
    }

    /**
    * @dev both transfer and transferfrom are dispatched here
    * Check blackList
    */
    function _transfer(address _from, address _to, uint256 _value) 
    internal 
    notNull(_from) 
    notNull(_to) 
    returns (bool) 
    {
        require(!blackList[_from]);
        require(!blackList[_to]);       
        require(!isContract(_to));
        
        emit Transfer(_from, _to, _value);
        
        return true;
    }

    /**
    * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
    * @param _spender The address which will spend the funds.
    * @param _value The amount of tokens to be spent.
    */
    function approve(address _spender, uint256 _value) 
    public 
    returns (bool success) 
    {
        if ((_value != 0) && (allowed[msg.sender][_spender] != 0)) {
            return false;
        }

        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    /**
    * @dev Function to check the amount of tokens that an owner allowed to a spender.
    * @param _tokenOwner address The address which owns the funds.
    * @param _spender address The address which will spend the funds.
    * @return A uint256 specifying the amount of tokens still available for the spender.
    */
    function allowance(address _tokenOwner, address _spender) 
    public 
    view 
    returns (uint256 remaining) 
    {
        return allowed[_tokenOwner][_spender];
    }
    
    function() 
    payable
    {
        if (msg.value > 0)
            emit Deposit(msg.sender, msg.value);
    }

    /**
    * @dev Reject all ERC223 compatible tokens
    * @param from_ address The address that is transferring the tokens
    * @param value_ uint256 the amount of the specified token
    * @param data_ Bytes The data passed from the caller.
    */
    function tokenFallback(address from_, uint256 value_, bytes data_) 
    external 
    {
        from_;
        value_;
        data_;
        revert();
    }
    
    // ------------------------------------------------------------------------
    // Modifiers
    // ------------------------------------------------------------------------
    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

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

    // ------------------------------------------------------------------------
    // onlyOwner API
    // ------------------------------------------------------------------------
    function setGGCAddress(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner 
    {
        if(ggcPoolAddr == address(0x0)){
            ggcPoolAddr = _addr;    
        }else{
            ggcPoolAddr = owner;
        }
        
        emit ListLog(ggcPoolAddr, 6, false);
    }

    function setGGEAddress(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner 
    {
        if(ggePoolAddr == address(0x0)){
            ggePoolAddr = _addr;    
        }else{
            ggePoolAddr = owner;
        }
                        
        emit ListLog(ggePoolAddr, 7, false);
    }

    function setGGCFee(uint8 _val) 
    public 
    onlyOwner 
    {
        require(ggeFee.add(_val) <= maxFee);
        ggcFee = _val;
    }

    function setGGEFee(uint8 _val) 
    public 
    onlyOwner 
    {
        require(ggcFee.add(_val) <= maxFee);
        ggeFee = _val;
    }
    
    function addBlacklist(address _addr) public notNull(_addr) onlyOwner {
        blackList[_addr] = true; 
        emit ListLog(_addr, 3, true);
    }
    
    function delBlackList(address _addr) public notNull(_addr) onlyOwner {
        delete blackList[_addr];                
        emit ListLog(_addr, 3, false);
    }

    function setFeeLocked(bool _lock) 
    public 
    onlyOwner 
    {
        feeLocked = _lock;    
        emit ListLog(address(0x0), 4, _lock); 
    }

    function setTransContractLocked(bool _lock) 
    public 
    onlyOwner 
    {
        transContractLocked = _lock;                  
        emit ListLog(address(0x0), 5, _lock); 
    }

    function transferAnyERC20Token(address _tokenAddress, uint256 _tokens) 
    public 
    onlyOwner 
    returns (bool success) 
    {
        return ERC20Interface(_tokenAddress).transfer(owner, _tokens);
    }

    function reclaimEther(address _addr) 
    external 
    onlyOwner 
    {
        assert(_addr.send(this.balance));
    }
  
    function mintToken(address _targetAddr, uint256 _mintedAmount) 
    public 
    onlyOwner 
    {
        balances[_targetAddr] = balances[_targetAddr].add(_mintedAmount);
        _totalSupply = _totalSupply.add(_mintedAmount);
        
        emit Transfer(address(0x0), _targetAddr, _mintedAmount);
    }
 
    function burnToken(uint256 _burnedAmount) 
    public 
    onlyOwner 
    {
        require(balances[owner] >= _burnedAmount);
        
        balances[owner] = balances[owner].sub(_burnedAmount);
        _totalSupply = _totalSupply.sub(_burnedAmount);
        
        emit Transfer(owner, address(0x0), _burnedAmount);
    }

    function addWhiteList(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner 
    {
        whiteList[_addr] = true; 
        emit ListLog(_addr, 1, true);
    }
  
    function delWhiteList(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner
    {
        delete whiteList[_addr];
        emit ListLog(_addr, 1, false);
    }

    function addAllowContractList(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner 
    {
        allowContractList[_addr] = true; 
        emit ListLog(_addr, 2, true);
    }
  
    function delAllowContractList(address _addr) 
    public 
    notNull(_addr) 
    onlyOwner 
    {
        delete allowContractList[_addr];
        emit ListLog(_addr, 2, false);
    }

    function increaseApproval(address _spender, uint256 _addedValue) 
    public 
    notNull(_spender) 
    onlyOwner returns (bool) 
    {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
   }

    function decreaseApproval(address _spender, uint256 _subtractedValue) 
    public 
    notNull(_spender) 
    onlyOwner returns (bool) 
    {
        uint256 oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) { 
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    function changeName(string _name, string _symbol) 
    public
    onlyOwner
    {
        name = _name;
        symbol = _symbol;
    }
    // ------------------------------------------------------------------------
    // Public view API
    // ------------------------------------------------------------------------
    function balanceOf(address _tokenOwner) 
    public 
    view 
    returns (uint256 balance) 
    {
        return balances[_tokenOwner];
    }
    
    function totalSupply() 
    public 
    view 
    returns (uint256) 
    {
        return _totalSupply.sub(balances[address(0x0)]);
    }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"maxFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_val","type":"uint8"}],"name":"setGGCFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"ggePoolAddr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ggcPoolAddr","outputs":[{"name":"","type":"address"}],"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":"ggcFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delBlackList","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"","type":"address"}],"name":"allowContractList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"whiteList","outputs":[{"name":"","type":"bool"}],"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":"_val","type":"uint8"}],"name":"setGGEFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"blackList","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addAllowContractList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"bool"}],"name":"setTransContractLocked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"delWhiteList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setGGEAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_targetAddr","type":"address"},{"name":"_mintedAmount","type":"uint256"}],"name":"mintToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_burnedAmount","type":"uint256"}],"name":"burnToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"setGGCAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"}],"name":"changeName","outputs":[],"payable":false,"stateMutability":"nonpayable","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":"_ownerContract","type":"address"}],"name":"AssignGGCOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"reclaimEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addBlacklist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_addr","type":"address"},{"name":"_value","type":"uint256"}],"name":"feesCal","outputs":[{"name":"_ggcFee","type":"uint256"},{"name":"_ggeFee","type":"uint256"}],"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":true,"inputs":[],"name":"transContractLocked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from_","type":"address"},{"name":"value_","type":"uint256"},{"name":"data_","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"},{"name":"_tokens","type":"uint256"}],"name":"transferAnyERC20Token","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_tokenOwner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_addr","type":"address"}],"name":"addWhiteList","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_lock","type":"bool"}],"name":"setFeeLocked","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ggeFee","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addr","type":"address"},{"indexed":true,"name":"typeNo","type":"uint8"},{"indexed":false,"name":"active","type":"bool"}],"name":"ListLog","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"fromAddr","type":"address"},{"indexed":true,"name":"toAddr","type":"address"},{"indexed":false,"name":"transAmount","type":"uint256"},{"indexed":false,"name":"ggcAmount","type":"uint256"},{"indexed":false,"name":"ggeAmount","type":"uint256"},{"indexed":false,"name":"time","type":"uint64"}],"name":"Trans","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"sender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

608060405260078054600160a060020a03191690553480156200002157600080fd5b506040805180820190915260038082527f4747430000000000000000000000000000000000000000000000000000000000602090920191825262000068916000916200020d565b5060408051808201909152600d8082527f4772616d476f6c6420436f696e000000000000000000000000000000000000006020909201918252620000af916001916200020d565b50600480546201000060b060020a03191633620100009081029190911780835560028054600860ff19918216811761ff0019166102001762ff00001916851763ff00000019166303000000179283905560ff909216600a90810a610258026003819055600160a060020a039486900485166000908152602094855260408082209290925560058054600160a060020a0319908116909155600680549091169055875461010061ffff19909116178089558790048616815291845290819020805490921660019081179092559454855194900490921683528201819052825190927fb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610928290030190a26004546003546040805191825251600160a060020a036201000090930492909216916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef919081900360200190a3620002b2565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200025057805160ff191683800117855562000280565b8280016001018555821562000280579182015b828111156200028057825182559160200191906001019062000263565b506200028e92915062000292565b5090565b620002af91905b808211156200028e576000815560010162000299565b90565b61219f80620002c26000396000f30060806040526004361061020e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301f59d168114610250578063059407281461027b57806306fdde031461029657806307b3996214610320578063095ea7b3146103415780630a792802146103795780630fbff868146103aa57806318160ddd146103bf5780631db3314a146103e6578063217987ad146103fb57806323b872dd1461041c5780632945aa3c14610446578063313ce56714610467578063372c12b11461047c5780633eaaf86b1461049d57806347c1b5cf146104b25780634838d165146104cd57806352ffff99146104ee578063532399d91461050f578063605e5ee114610529578063661884631461054a57806369bc513a1461056e57806370a082311461058f57806377e40491146105b057806379c65068146105c55780637b47ec1a146105e957806380f3f0941461060157806386575e40146106225780638da5cb5b146106b957806395d89b41146106ce578063986e7ed3146106e35780639a6a30a4146107045780639cfe42da14610725578063a109b8bd14610746578063a9059cbb14610783578063c0c6b4f1146107a7578063c0ee0b8a146107bc578063d73dd623146107ed578063dc39d06d14610811578063dd62ed3e14610835578063e7cd4a041461085c578063eb3b0ab31461087d578063f109921f14610897575b600034111561024e5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561025c57600080fd5b506102656108ac565b6040805160ff9092168252519081900360200190f35b34801561028757600080fd5b5061024e60ff600435166108bc565b3480156102a257600080fd5b506102ab61092a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e55781810151838201526020016102cd565b50505050905090810190601f1680156103125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032c57600080fd5b5061024e600160a060020a03600435166109b7565b34801561034d57600080fd5b50610365600160a060020a0360043516602435610a39565b604080519115158252519081900360200190f35b34801561038557600080fd5b5061038e610ae1565b60408051600160a060020a039092168252519081900360200190f35b3480156103b657600080fd5b5061038e610af0565b3480156103cb57600080fd5b506103d4610aff565b60408051918252519081900360200190f35b3480156103f257600080fd5b50610265610b43565b34801561040757600080fd5b5061024e600160a060020a0360043516610b51565b34801561042857600080fd5b50610365600160a060020a0360043581169060243516604435610bd3565b34801561045257600080fd5b50610365600160a060020a0360043516610f01565b34801561047357600080fd5b50610265610f16565b34801561048857600080fd5b50610365600160a060020a0360043516610f1f565b3480156104a957600080fd5b506103d4610f34565b3480156104be57600080fd5b5061024e60ff60043516610f3a565b3480156104d957600080fd5b50610365600160a060020a0360043516610fa9565b3480156104fa57600080fd5b5061024e600160a060020a0360043516610fbe565b34801561051b57600080fd5b5061024e6004351515611044565b34801561053557600080fd5b5061024e600160a060020a03600435166110a9565b34801561055657600080fd5b50610365600160a060020a036004351660243561112b565b34801561057a57600080fd5b5061024e600160a060020a0360043516611254565b34801561059b57600080fd5b506103d4600160a060020a0360043516611338565b3480156105bc57600080fd5b50610365611353565b3480156105d157600080fd5b5061024e600160a060020a036004351660243561135c565b3480156105f557600080fd5b5061024e600435611404565b34801561060d57600080fd5b5061024e600160a060020a03600435166114e5565b34801561062e57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261024e94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506115c99650505050505050565b3480156106c557600080fd5b5061038e611612565b3480156106da57600080fd5b506102ab611627565b3480156106ef57600080fd5b5061024e600160a060020a0360043516611682565b34801561071057600080fd5b5061024e600160a060020a0360043516611840565b34801561073157600080fd5b5061024e600160a060020a036004351661188d565b34801561075257600080fd5b5061076a600160a060020a0360043516602435611913565b6040805192835260208301919091528051918290030190f35b34801561078f57600080fd5b50610365600160a060020a03600435166024356119b7565b3480156107b357600080fd5b50610365611c41565b3480156107c857600080fd5b5061024e60048035600160a060020a0316906024803591604435918201910135611c4f565b3480156107f957600080fd5b50610365600160a060020a0360043516602435611c54565b34801561081d57600080fd5b50610365600160a060020a0360043516602435611d23565b34801561084157600080fd5b506103d4600160a060020a0360043581169060243516611dec565b34801561086857600080fd5b5061024e600160a060020a0360043516611e17565b34801561088957600080fd5b5061024e6004351515611e9e565b3480156108a357600080fd5b50610265611ef8565b6002546301000000900460ff1681565b600454620100009004600160a060020a031633146108d957600080fd5b60025460ff630100000082048116916109039162010000909104811690841663ffffffff611f0716565b111561090e57600080fd5b6002805460ff9092166101000261ff0019909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b505050505081565b80600160a060020a03811615156109cd57600080fd5b600454620100009004600160a060020a031633146109ea57600080fd5b600160a060020a0382166000818152600b60209081526040808320805460ff19169055805193845290830191909152805160029260008051602061215483398151915292908290030190a25050565b60008115801590610a6c5750336000908152600960209081526040808320600160a060020a038716845290915290205415155b15610a7957506000610adb565b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b600654600160a060020a031681565b600554600160a060020a031681565b600080805260086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c754600354610b3d9163ffffffff611f1716565b90505b90565b600254610100900460ff1681565b80600160a060020a0381161515610b6757600080fd5b600454620100009004600160a060020a03163314610b8457600080fd5b600160a060020a0382166000818152600c60209081526040808320805460ff19169055805193845290830191909152805160039260008051602061215483398151915292908290030190a25050565b60008080808086600160a060020a0381161515610bef57600080fd5b60045460ff1615610c0f5760009450600093506000925060009150610c2e565b610c198988611913565b9095509350610c288888611913565b90935091505b610c4e84610c42898863ffffffff611f0716565b9063ffffffff611f0716565b600160a060020a038a166000908152600860205260409020541015610c7257600080fd5b610c8684610c42898863ffffffff611f0716565b600160a060020a038a1660009081526009602090815260408083203384529091529020541015610cb557600080fd5b610cdf8989610cda85610cce8c8963ffffffff611f1716565b9063ffffffff611f1716565b611f2c565b9550851515610ced57600080fd5b600554610d0f908a90600160a060020a0316610cda888763ffffffff611f0716565b9550851515610d1d57600080fd5b600654610d3f908a90600160a060020a0316610cda878663ffffffff611f0716565b9550851515610d4d57600080fd5b610d89610d6485610c428a8963ffffffff611f0716565b600160a060020a038b166000908152600860205260409020549063ffffffff611f1716565b600160a060020a038a16600090815260086020526040902055610dde610db983610cce8a8763ffffffff611f1716565b600160a060020a038a166000908152600860205260409020549063ffffffff611f0716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054610e1c908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054610e5d908390610c42908763ffffffff611f0716565b600654600160a060020a03908116600090815260086020526040902091909155888116908a167f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89610eb5898863ffffffff611f0716565b610ec5898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a350600198975050505050505050565b600b6020526000908152604090205460ff1681565b60025460ff1681565b600a6020526000908152604090205460ff1681565b60035481565b600454620100009004600160a060020a03163314610f5757600080fd5b60025460ff63010000008204811691610f8091610100909104811690841663ffffffff611f0716565b1115610f8b57600080fd5b6002805460ff909216620100000262ff000019909216919091179055565b600c6020526000908152604090205460ff1681565b80600160a060020a0381161515610fd457600080fd5b600454620100009004600160a060020a03163314610ff157600080fd5b600160a060020a0382166000818152600b6020908152604091829020805460ff19166001908117909155825193845290830152805160029260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a0316331461106157600080fd5b6004805461ff0019166101008315159081029190911790915560408051600081526020810192909252805160059260008051602061215483398151915292908290030190a250565b80600160a060020a03811615156110bf57600080fd5b600454620100009004600160a060020a031633146110dc57600080fd5b600160a060020a0382166000818152600a60209081526040808320805460ff19169055805193845290830191909152805160019260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561114457600080fd5b600454620100009004600160a060020a0316331461116157600080fd5b336000908152600960209081526040808320600160a060020a03891684529091529020549150818411156111b857336000908152600960209081526040808320600160a060020a03891684529091528120556111ed565b6111c8828563ffffffff611f1716565b336000908152600960209081526040808320600160a060020a038a1684529091529020555b336000818152600960209081526040808320600160a060020a038a168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3506001949350505050565b80600160a060020a038116151561126a57600080fd5b600454620100009004600160a060020a0316331461128757600080fd5b600654600160a060020a031615156112c6576006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790556112fd565b6004546006805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60065460408051600160a060020a03909216825260006020830152805160079260008051602061215483398151915292908290030190a25050565b600160a060020a031660009081526008602052604090205490565b60045460ff1681565b600454620100009004600160a060020a0316331461137957600080fd5b600160a060020a0382166000908152600860205260409020546113a2908263ffffffff611f0716565b600160a060020a0383166000908152600860205260409020556003546113ce908263ffffffff611f0716565b600355604080518281529051600160a060020a038416916000916000805160206121348339815191529181900360200190a35050565b600454620100009004600160a060020a0316331461142157600080fd5b600454620100009004600160a060020a031660009081526008602052604090205481111561144e57600080fd5b600454620100009004600160a060020a03166000908152600860205260409020546114799082611f17565b600454620100009004600160a060020a03166000908152600860205260409020556003546114a79082611f17565b600355600454604080518381529051600092620100009004600160a060020a031691600080516020612134833981519152919081900360200190a350565b80600160a060020a03811615156114fb57600080fd5b600454620100009004600160a060020a0316331461151857600080fd5b600554600160a060020a03161515611557576005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03841617905561158e565b6004546005805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60055460408051600160a060020a03909216825260006020830152805160069260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a031633146115e657600080fd5b81516115f990600190602085019061209b565b50805161160d90600090602084019061209b565b505050565b600454620100009004600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b600454600090620100009004600160a060020a031633146116a257600080fd5b81600160a060020a03811615156116b857600080fd5b600454620100009004600160a060020a0390811660009081526008602052604080822080546007805473ffffffffffffffffffffffffffffffffffffffff191689871617815591849055905490931682529020549092506117199083611f07565b60078054600160a060020a03908116600090815260086020908152604080832095909555835483168252600a815290849020805460ff19166001908117909155925484519216825281018290528251919260008051602061215483398151915292918290030190a2600754600454604080518581529051600160a060020a039384169362010000909304909216916000805160206121348339815191529181900360200190a3600754600454604051600160a060020a039283169262010000909204909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350506007546004805475ffffffffffffffffffffffffffffffffffffffff00001916600160a060020a03909216620100000291909117905550565b600454620100009004600160a060020a0316331461185d57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f19350505050151561188a57fe5b50565b80600160a060020a03811615156118a357600080fd5b600454620100009004600160a060020a031633146118c057600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff19166001908117909155825193845290830152805160039260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561192c57600080fd5b600160a060020a0385166000908152600a602052604090205460ff161561195957600092508291506119af565b60028054611987919061197b906103e89082908990610100900460ff16611ffe565b9063ffffffff61202a16565b600280549194506119ac9161197b906103e8908290899062010000900460ff16611ffe565b91505b509250929050565b60008080808086600160a060020a03811615156119d357600080fd5b60045460ff16156119f35760009450600093506000925060009150611a12565b6119fd3388611913565b9095509350611a0c8888611913565b90935091505b611a2684610c42898863ffffffff611f0716565b336000908152600860205260409020541015611a4157600080fd5b611a5a3389610cda85610cce8c8963ffffffff611f1716565b9550851515611a6857600080fd5b600554611a8a903390600160a060020a0316610cda888763ffffffff611f0716565b9550851515611a9857600080fd5b600654611aba903390600160a060020a0316610cda878663ffffffff611f0716565b9550851515611ac857600080fd5b611afb611adf85610c428a8963ffffffff611f0716565b336000908152600860205260409020549063ffffffff611f1716565b33600090815260086020526040902055611b22610db983610cce8a8763ffffffff611f1716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054611b60908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054611ba1908390610c42908763ffffffff611f0716565b600654600160a060020a039081166000908152600860205260409020919091558816337f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89611bf6898863ffffffff611f0716565b611c06898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a3506001979650505050505050565b600454610100900460ff1681565b600080fd5b600082600160a060020a0381161515611c6c57600080fd5b600454620100009004600160a060020a03163314611c8957600080fd5b336000908152600960209081526040808320600160a060020a0388168452909152902054611cbd908463ffffffff611f0716565b336000818152600960209081526040808320600160a060020a038a168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a35060019392505050565b600454600090620100009004600160a060020a03163314611d4357600080fd5b60048054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a036201000090930483169381019390935260248301859052519085169163a9059cbb9160448083019260209291908290030181600087803b158015611db957600080fd5b505af1158015611dcd573d6000803e3d6000fd5b505050506040513d6020811015611de357600080fd5b50519392505050565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b80600160a060020a0381161515611e2d57600080fd5b600454620100009004600160a060020a03163314611e4a57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff1916600190811790915582519384529083018190528151909260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a03163314611ebb57600080fd5b6004805460ff191682151590811782556040805160008152602081019290925280516000805160206121548339815191529281900390910190a250565b60025462010000900460ff1681565b81810182811015610adb57600080fd5b600082821115611f2657600080fd5b50900390565b600083600160a060020a0381161515611f4457600080fd5b83600160a060020a0381161515611f5a57600080fd5b600160a060020a0386166000908152600c602052604090205460ff1615611f8057600080fd5b600160a060020a0385166000908152600c602052604090205460ff1615611fa657600080fd5b611faf8561204b565b15611fb957600080fd5b84600160a060020a031686600160a060020a0316600080516020612134833981519152866040518082815260200191505060405180910390a350600195945050505050565b600082151561200f57506000610adb565b5081810281838281151561201f57fe5b0414610adb57600080fd5b600081151561203857600080fd5b818381151561204357fe5b049392505050565b600160a060020a0381166000908152600b6020526040812054819060ff168061207c5750600454610100900460ff16155b1561208a5760009150612095565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106120dc57805160ff1916838001178555612109565b82800160010185558215612109579182015b828111156121095782518255916020019190600101906120ee565b50612115929150612119565b5090565b610b4091905b80821115612115576000815560010161211f5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a72305820043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc0029

Deployed Bytecode

0x60806040526004361061020e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166301f59d168114610250578063059407281461027b57806306fdde031461029657806307b3996214610320578063095ea7b3146103415780630a792802146103795780630fbff868146103aa57806318160ddd146103bf5780631db3314a146103e6578063217987ad146103fb57806323b872dd1461041c5780632945aa3c14610446578063313ce56714610467578063372c12b11461047c5780633eaaf86b1461049d57806347c1b5cf146104b25780634838d165146104cd57806352ffff99146104ee578063532399d91461050f578063605e5ee114610529578063661884631461054a57806369bc513a1461056e57806370a082311461058f57806377e40491146105b057806379c65068146105c55780637b47ec1a146105e957806380f3f0941461060157806386575e40146106225780638da5cb5b146106b957806395d89b41146106ce578063986e7ed3146106e35780639a6a30a4146107045780639cfe42da14610725578063a109b8bd14610746578063a9059cbb14610783578063c0c6b4f1146107a7578063c0ee0b8a146107bc578063d73dd623146107ed578063dc39d06d14610811578063dd62ed3e14610835578063e7cd4a041461085c578063eb3b0ab31461087d578063f109921f14610897575b600034111561024e5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b34801561025c57600080fd5b506102656108ac565b6040805160ff9092168252519081900360200190f35b34801561028757600080fd5b5061024e60ff600435166108bc565b3480156102a257600080fd5b506102ab61092a565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102e55781810151838201526020016102cd565b50505050905090810190601f1680156103125780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561032c57600080fd5b5061024e600160a060020a03600435166109b7565b34801561034d57600080fd5b50610365600160a060020a0360043516602435610a39565b604080519115158252519081900360200190f35b34801561038557600080fd5b5061038e610ae1565b60408051600160a060020a039092168252519081900360200190f35b3480156103b657600080fd5b5061038e610af0565b3480156103cb57600080fd5b506103d4610aff565b60408051918252519081900360200190f35b3480156103f257600080fd5b50610265610b43565b34801561040757600080fd5b5061024e600160a060020a0360043516610b51565b34801561042857600080fd5b50610365600160a060020a0360043581169060243516604435610bd3565b34801561045257600080fd5b50610365600160a060020a0360043516610f01565b34801561047357600080fd5b50610265610f16565b34801561048857600080fd5b50610365600160a060020a0360043516610f1f565b3480156104a957600080fd5b506103d4610f34565b3480156104be57600080fd5b5061024e60ff60043516610f3a565b3480156104d957600080fd5b50610365600160a060020a0360043516610fa9565b3480156104fa57600080fd5b5061024e600160a060020a0360043516610fbe565b34801561051b57600080fd5b5061024e6004351515611044565b34801561053557600080fd5b5061024e600160a060020a03600435166110a9565b34801561055657600080fd5b50610365600160a060020a036004351660243561112b565b34801561057a57600080fd5b5061024e600160a060020a0360043516611254565b34801561059b57600080fd5b506103d4600160a060020a0360043516611338565b3480156105bc57600080fd5b50610365611353565b3480156105d157600080fd5b5061024e600160a060020a036004351660243561135c565b3480156105f557600080fd5b5061024e600435611404565b34801561060d57600080fd5b5061024e600160a060020a03600435166114e5565b34801561062e57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261024e94369492936024939284019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506115c99650505050505050565b3480156106c557600080fd5b5061038e611612565b3480156106da57600080fd5b506102ab611627565b3480156106ef57600080fd5b5061024e600160a060020a0360043516611682565b34801561071057600080fd5b5061024e600160a060020a0360043516611840565b34801561073157600080fd5b5061024e600160a060020a036004351661188d565b34801561075257600080fd5b5061076a600160a060020a0360043516602435611913565b6040805192835260208301919091528051918290030190f35b34801561078f57600080fd5b50610365600160a060020a03600435166024356119b7565b3480156107b357600080fd5b50610365611c41565b3480156107c857600080fd5b5061024e60048035600160a060020a0316906024803591604435918201910135611c4f565b3480156107f957600080fd5b50610365600160a060020a0360043516602435611c54565b34801561081d57600080fd5b50610365600160a060020a0360043516602435611d23565b34801561084157600080fd5b506103d4600160a060020a0360043581169060243516611dec565b34801561086857600080fd5b5061024e600160a060020a0360043516611e17565b34801561088957600080fd5b5061024e6004351515611e9e565b3480156108a357600080fd5b50610265611ef8565b6002546301000000900460ff1681565b600454620100009004600160a060020a031633146108d957600080fd5b60025460ff630100000082048116916109039162010000909104811690841663ffffffff611f0716565b111561090e57600080fd5b6002805460ff9092166101000261ff0019909216919091179055565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b505050505081565b80600160a060020a03811615156109cd57600080fd5b600454620100009004600160a060020a031633146109ea57600080fd5b600160a060020a0382166000818152600b60209081526040808320805460ff19169055805193845290830191909152805160029260008051602061215483398151915292908290030190a25050565b60008115801590610a6c5750336000908152600960209081526040808320600160a060020a038716845290915290205415155b15610a7957506000610adb565b336000818152600960209081526040808320600160a060020a03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b600654600160a060020a031681565b600554600160a060020a031681565b600080805260086020527f5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c754600354610b3d9163ffffffff611f1716565b90505b90565b600254610100900460ff1681565b80600160a060020a0381161515610b6757600080fd5b600454620100009004600160a060020a03163314610b8457600080fd5b600160a060020a0382166000818152600c60209081526040808320805460ff19169055805193845290830191909152805160039260008051602061215483398151915292908290030190a25050565b60008080808086600160a060020a0381161515610bef57600080fd5b60045460ff1615610c0f5760009450600093506000925060009150610c2e565b610c198988611913565b9095509350610c288888611913565b90935091505b610c4e84610c42898863ffffffff611f0716565b9063ffffffff611f0716565b600160a060020a038a166000908152600860205260409020541015610c7257600080fd5b610c8684610c42898863ffffffff611f0716565b600160a060020a038a1660009081526009602090815260408083203384529091529020541015610cb557600080fd5b610cdf8989610cda85610cce8c8963ffffffff611f1716565b9063ffffffff611f1716565b611f2c565b9550851515610ced57600080fd5b600554610d0f908a90600160a060020a0316610cda888763ffffffff611f0716565b9550851515610d1d57600080fd5b600654610d3f908a90600160a060020a0316610cda878663ffffffff611f0716565b9550851515610d4d57600080fd5b610d89610d6485610c428a8963ffffffff611f0716565b600160a060020a038b166000908152600860205260409020549063ffffffff611f1716565b600160a060020a038a16600090815260086020526040902055610dde610db983610cce8a8763ffffffff611f1716565b600160a060020a038a166000908152600860205260409020549063ffffffff611f0716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054610e1c908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054610e5d908390610c42908763ffffffff611f0716565b600654600160a060020a03908116600090815260086020526040902091909155888116908a167f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89610eb5898863ffffffff611f0716565b610ec5898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a350600198975050505050505050565b600b6020526000908152604090205460ff1681565b60025460ff1681565b600a6020526000908152604090205460ff1681565b60035481565b600454620100009004600160a060020a03163314610f5757600080fd5b60025460ff63010000008204811691610f8091610100909104811690841663ffffffff611f0716565b1115610f8b57600080fd5b6002805460ff909216620100000262ff000019909216919091179055565b600c6020526000908152604090205460ff1681565b80600160a060020a0381161515610fd457600080fd5b600454620100009004600160a060020a03163314610ff157600080fd5b600160a060020a0382166000818152600b6020908152604091829020805460ff19166001908117909155825193845290830152805160029260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a0316331461106157600080fd5b6004805461ff0019166101008315159081029190911790915560408051600081526020810192909252805160059260008051602061215483398151915292908290030190a250565b80600160a060020a03811615156110bf57600080fd5b600454620100009004600160a060020a031633146110dc57600080fd5b600160a060020a0382166000818152600a60209081526040808320805460ff19169055805193845290830191909152805160019260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561114457600080fd5b600454620100009004600160a060020a0316331461116157600080fd5b336000908152600960209081526040808320600160a060020a03891684529091529020549150818411156111b857336000908152600960209081526040808320600160a060020a03891684529091528120556111ed565b6111c8828563ffffffff611f1716565b336000908152600960209081526040808320600160a060020a038a1684529091529020555b336000818152600960209081526040808320600160a060020a038a168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a3506001949350505050565b80600160a060020a038116151561126a57600080fd5b600454620100009004600160a060020a0316331461128757600080fd5b600654600160a060020a031615156112c6576006805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0384161790556112fd565b6004546006805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60065460408051600160a060020a03909216825260006020830152805160079260008051602061215483398151915292908290030190a25050565b600160a060020a031660009081526008602052604090205490565b60045460ff1681565b600454620100009004600160a060020a0316331461137957600080fd5b600160a060020a0382166000908152600860205260409020546113a2908263ffffffff611f0716565b600160a060020a0383166000908152600860205260409020556003546113ce908263ffffffff611f0716565b600355604080518281529051600160a060020a038416916000916000805160206121348339815191529181900360200190a35050565b600454620100009004600160a060020a0316331461142157600080fd5b600454620100009004600160a060020a031660009081526008602052604090205481111561144e57600080fd5b600454620100009004600160a060020a03166000908152600860205260409020546114799082611f17565b600454620100009004600160a060020a03166000908152600860205260409020556003546114a79082611f17565b600355600454604080518381529051600092620100009004600160a060020a031691600080516020612134833981519152919081900360200190a350565b80600160a060020a03811615156114fb57600080fd5b600454620100009004600160a060020a0316331461151857600080fd5b600554600160a060020a03161515611557576005805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03841617905561158e565b6004546005805462010000909204600160a060020a031673ffffffffffffffffffffffffffffffffffffffff199092169190911790555b60055460408051600160a060020a03909216825260006020830152805160069260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a031633146115e657600080fd5b81516115f990600190602085019061209b565b50805161160d90600090602084019061209b565b505050565b600454620100009004600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156109af5780601f10610984576101008083540402835291602001916109af565b600454600090620100009004600160a060020a031633146116a257600080fd5b81600160a060020a03811615156116b857600080fd5b600454620100009004600160a060020a0390811660009081526008602052604080822080546007805473ffffffffffffffffffffffffffffffffffffffff191689871617815591849055905490931682529020549092506117199083611f07565b60078054600160a060020a03908116600090815260086020908152604080832095909555835483168252600a815290849020805460ff19166001908117909155925484519216825281018290528251919260008051602061215483398151915292918290030190a2600754600454604080518581529051600160a060020a039384169362010000909304909216916000805160206121348339815191529181900360200190a3600754600454604051600160a060020a039283169262010000909204909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350506007546004805475ffffffffffffffffffffffffffffffffffffffff00001916600160a060020a03909216620100000291909117905550565b600454620100009004600160a060020a0316331461185d57600080fd5b604051600160a060020a03821690303180156108fc02916000818181858888f19350505050151561188a57fe5b50565b80600160a060020a03811615156118a357600080fd5b600454620100009004600160a060020a031633146118c057600080fd5b600160a060020a0382166000818152600c6020908152604091829020805460ff19166001908117909155825193845290830152805160039260008051602061215483398151915292908290030190a25050565b60008083600160a060020a038116151561192c57600080fd5b600160a060020a0385166000908152600a602052604090205460ff161561195957600092508291506119af565b60028054611987919061197b906103e89082908990610100900460ff16611ffe565b9063ffffffff61202a16565b600280549194506119ac9161197b906103e8908290899062010000900460ff16611ffe565b91505b509250929050565b60008080808086600160a060020a03811615156119d357600080fd5b60045460ff16156119f35760009450600093506000925060009150611a12565b6119fd3388611913565b9095509350611a0c8888611913565b90935091505b611a2684610c42898863ffffffff611f0716565b336000908152600860205260409020541015611a4157600080fd5b611a5a3389610cda85610cce8c8963ffffffff611f1716565b9550851515611a6857600080fd5b600554611a8a903390600160a060020a0316610cda888763ffffffff611f0716565b9550851515611a9857600080fd5b600654611aba903390600160a060020a0316610cda878663ffffffff611f0716565b9550851515611ac857600080fd5b611afb611adf85610c428a8963ffffffff611f0716565b336000908152600860205260409020549063ffffffff611f1716565b33600090815260086020526040902055611b22610db983610cce8a8763ffffffff611f1716565b600160a060020a03808a166000908152600860205260408082209390935560055490911681522054611b60908490610c42908863ffffffff611f0716565b600554600160a060020a039081166000908152600860205260408082209390935560065490911681522054611ba1908390610c42908763ffffffff611f0716565b600654600160a060020a039081166000908152600860205260409020919091558816337f0785b81b28d386d4d47d85f2ed87364bec6a0dceb86e2f93dd6a50f3545ca3af89611bf6898863ffffffff611f0716565b611c06898863ffffffff611f0716565b6040805193845260208401929092528282015267ffffffffffffffff42166060830152519081900360800190a3506001979650505050505050565b600454610100900460ff1681565b600080fd5b600082600160a060020a0381161515611c6c57600080fd5b600454620100009004600160a060020a03163314611c8957600080fd5b336000908152600960209081526040808320600160a060020a0388168452909152902054611cbd908463ffffffff611f0716565b336000818152600960209081526040808320600160a060020a038a168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a35060019392505050565b600454600090620100009004600160a060020a03163314611d4357600080fd5b60048054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a036201000090930483169381019390935260248301859052519085169163a9059cbb9160448083019260209291908290030181600087803b158015611db957600080fd5b505af1158015611dcd573d6000803e3d6000fd5b505050506040513d6020811015611de357600080fd5b50519392505050565b600160a060020a03918216600090815260096020908152604080832093909416825291909152205490565b80600160a060020a0381161515611e2d57600080fd5b600454620100009004600160a060020a03163314611e4a57600080fd5b600160a060020a0382166000818152600a6020908152604091829020805460ff1916600190811790915582519384529083018190528151909260008051602061215483398151915292908290030190a25050565b600454620100009004600160a060020a03163314611ebb57600080fd5b6004805460ff191682151590811782556040805160008152602081019290925280516000805160206121548339815191529281900390910190a250565b60025462010000900460ff1681565b81810182811015610adb57600080fd5b600082821115611f2657600080fd5b50900390565b600083600160a060020a0381161515611f4457600080fd5b83600160a060020a0381161515611f5a57600080fd5b600160a060020a0386166000908152600c602052604090205460ff1615611f8057600080fd5b600160a060020a0385166000908152600c602052604090205460ff1615611fa657600080fd5b611faf8561204b565b15611fb957600080fd5b84600160a060020a031686600160a060020a0316600080516020612134833981519152866040518082815260200191505060405180910390a350600195945050505050565b600082151561200f57506000610adb565b5081810281838281151561201f57fe5b0414610adb57600080fd5b600081151561203857600080fd5b818381151561204357fe5b049392505050565b600160a060020a0381166000908152600b6020526040812054819060ff168061207c5750600454610100900460ff16155b1561208a5760009150612095565b50506000813b908111905b50919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106120dc57805160ff1916838001178555612109565b82800160010185558215612109579182015b828111156121095782518255916020019190600101906120ee565b50612115929150612119565b5090565b610b4091905b80821115612115576000815560010161211f5600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efb2b9f39141753d381be198627de12fcb914f91e962c8b67f8e88e032b6fff610a165627a7a72305820043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc0029

Swarm Source

bzzr://043ece17aedfb6ed493545d4d3039e8949a45d3d1c8da726aad986dbceb657bc
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.