ETH Price: $3,543.57 (-0.99%)
Gas: 52 Gwei

Contract

0x6B9f031D718dDed0d681c20cB754F97b3BB81b78
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Geeq (GEEQ) (@$0.2198)
Transaction Hash
Method
Block
From
To
Value
Approve195402652024-03-29 14:30:5944 mins ago1711722659IN
Geeq: GEEQ Token
0 ETH0.0015286833.13640227
Approve195392962024-03-29 11:14:234 hrs ago1711710863IN
Geeq: GEEQ Token
0 ETH0.0009117219.79392268
Transfer195392902024-03-29 11:13:114 hrs ago1711710791IN
Geeq: GEEQ Token
0 ETH0.0006674520.76720898
Transfer195389492024-03-29 10:04:475 hrs ago1711706687IN
Geeq: GEEQ Token
0 ETH0.0011837121.90442741
Approve195385752024-03-29 8:49:236 hrs ago1711702163IN
Geeq: GEEQ Token
0 ETH0.0010249322.22279422
Transfer From195383642024-03-29 8:05:597 hrs ago1711699559IN
Geeq: GEEQ Token
0 ETH0.0009764325.87197018
Transfer195379382024-03-29 6:40:478 hrs ago1711694447IN
Geeq: GEEQ Token
0 ETH0.0008766923.74074354
Transfer195379002024-03-29 6:32:598 hrs ago1711693979IN
Geeq: GEEQ Token
0 ETH0.0012141724.65820953
Approve195377622024-03-29 6:05:119 hrs ago1711692311IN
Geeq: GEEQ Token
0 ETH0.0009093719.71207896
Transfer195362692024-03-29 1:04:1114 hrs ago1711674251IN
Geeq: GEEQ Token
0 ETH0.0014109328.65431825
Transfer From195362582024-03-29 1:01:5914 hrs ago1711674119IN
Geeq: GEEQ Token
0 ETH0.0010198227.01316282
Transfer195362092024-03-29 0:52:1114 hrs ago1711673531IN
Geeq: GEEQ Token
0 ETH0.0012084232.71314231
Transfer195359792024-03-29 0:05:3515 hrs ago1711670735IN
Geeq: GEEQ Token
0 ETH0.0010371532.25781016
Transfer195359772024-03-29 0:05:1115 hrs ago1711670711IN
Geeq: GEEQ Token
0 ETH0.0011513531.18859095
Transfer195359732024-03-29 0:04:2315 hrs ago1711670663IN
Geeq: GEEQ Token
0 ETH0.000971926.31890838
Transfer195357282024-03-28 23:14:5916 hrs ago1711667699IN
Geeq: GEEQ Token
0 ETH0.0014145138.30458173
Transfer195357262024-03-28 23:14:3516 hrs ago1711667675IN
Geeq: GEEQ Token
0 ETH0.0013876537.57743595
Transfer195356892024-03-28 23:07:1116 hrs ago1711667231IN
Geeq: GEEQ Token
0 ETH0.0012412733.61347553
Transfer195356872024-03-28 23:06:4716 hrs ago1711667207IN
Geeq: GEEQ Token
0 ETH0.0016487830.51052621
Transfer195356542024-03-28 23:00:1116 hrs ago1711666811IN
Geeq: GEEQ Token
0 ETH0.0016420430.39250477
Approve195354482024-03-28 22:18:5916 hrs ago1711664339IN
Geeq: GEEQ Token
0 ETH0.0010226435.26731272
Approve195354482024-03-28 22:18:5916 hrs ago1711664339IN
Geeq: GEEQ Token
0 ETH0.0009247435.28348244
Approve195354482024-03-28 22:18:5916 hrs ago1711664339IN
Geeq: GEEQ Token
0 ETH0.0016261435.26731272
Transfer195351862024-03-28 21:26:1117 hrs ago1711661171IN
Geeq: GEEQ Token
0 ETH0.0013903737.6508586
Transfer195351772024-03-28 21:24:2317 hrs ago1711661063IN
Geeq: GEEQ Token
0 ETH0.0023966144.36855577
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GEEQToken

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2020-08-03
*/

pragma solidity ^0.4.26;
library SafeMath {
    function add(uint a, uint b) internal pure returns (uint c) {
        c = a + b;
        require(c >= a);
	return (c);
    }
    function sub(uint a, uint b) internal pure returns (uint c) {
        require(b <= a);
        c = a - b;
	return (c);
    }
    function mul(uint a, uint b) internal pure returns (uint c) {
        c = a * b;
        require(a == 0 || c / a == b);
	return (c);
    }
    function div(uint a, uint b) internal pure returns (uint c) {
        require(b > 0);
        c = a / b;
	return (c);
    }
}
contract ERC20Interface {
    function totalSupply() public constant returns (uint);
    function balanceOf(address tokenOwner) public constant returns (uint balance);
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);   
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

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

contract ApproveAndCallFallBack {
    function receiveApproval(address from, uint256 tokens, address token, bytes data) public;
}

contract Owned {
    address public owner;
    address public newOwner;
    event OwnershipTransferred(address indexed _from, address indexed _to);

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }
    function transferOwnership(address _newOwner) public onlyOwner {
        newOwner = _newOwner;
    }
    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);      //sets temporary but public variable to zero after migration complete
    }
}

contract GEEQToken is ERC20Interface, Owned {
    using SafeMath for uint;
    string public symbol;
    string public  name;
    uint8 public decimals;
    uint256 _totalSupply;
    uint256 _totalMinted;
    uint256 _maxMintable;
    bool public pauseOn;
    bool public migrationOn;
    
    mapping(address => uint) public balances;
    mapping(address => mapping(address => uint)) allowed;   //Hate But Keep ERC20 compliance

    event PauseEvent(string pauseevent);
    event ErrorEvent(address indexed addr, string errorstr);
    event BurnEvent(address indexed addr, uint256 tokens);

    constructor() public {
        symbol = "GEEQ";
        name = "Geeq";
        decimals = 18;
        _totalMinted = 0;       //Total that has been minted. Burned tokens can not be replaced
        _totalSupply = 0;       //Total in circulation, which is minted - burned
        _maxMintable = 100000000 * 10**uint(decimals);  //Capped at 100 mil tokens
        owner = msg.sender;
    }
    
    mapping(address => bytes32) public geeqaddress;
    event MigrateEvent(address indexed addr, bytes32 geeqaddress, uint256 balance);
    function migrateGEEQ(bytes32 registeraddress) public {
        if (migrationOn){
            geeqaddress[msg.sender] = registeraddress;  //store the GEEQ wallet address in the Ethereum blockchain
            emit MigrateEvent(msg.sender, registeraddress, balances[msg.sender]);    //Ideally log the tokens for easy indexing
            burn(balances[msg.sender]);
        } else {
            emit ErrorEvent (msg.sender, "Attempted to migrate before GEEQ Migration has begun.");
        }
    }
    
    //In case someone accidentally or airdrop sends a token, the owner can retreive it.
    function transferAnyERC20Token(address tokenAddress, uint tokens) public onlyOwner returns (bool success) {
        return ERC20Interface(tokenAddress).transfer(owner, tokens);
    }    
    
    
    function pauseEnable() onlyOwner public {
        pauseOn= true;
    }
    function pauseDisable() onlyOwner public {
        pauseOn= false;
    }
    function migrationEnable() onlyOwner public {
        migrationOn= true;
    }
    function migrationDisable() onlyOwner public {
        migrationOn= false;
    }

    
    function totalSupply() public constant returns (uint) {
        return _totalSupply;
    }
    function totalMinted() public constant returns (uint) {
        return _totalMinted;
    }
    function burn(uint256 tokens) internal {      //works even if contract is paused
        if(balances[msg.sender]>= tokens) {
            _totalSupply=_totalSupply.sub(balances[msg.sender]);
            balances[msg.sender] = balances[msg.sender].sub(tokens);
            balances[address(0)] = balances[address(0)].add(tokens);
            emit BurnEvent(msg.sender, tokens);
        } else {
            revert();       //necessary explicit - sender attempted to burn more tokens than owned.
        }            
    }

    //Mint function, can not create more than totalSupply
    function mint(address receiver, uint256 token_amt) onlyOwner public {            
        if( _totalMinted.add(token_amt) > _maxMintable) { 
            revert();       //Can not mint more than _maxMintable
        }
        balances[receiver] = balances[receiver].add(token_amt);
        _totalMinted =_totalMinted.add(token_amt);
        _totalSupply =_totalSupply.add(token_amt);
        emit Transfer(address(0), receiver, token_amt);      //This way the correct number of tokens will appear on Etherscan. That is the entire purpose of this event.
    } 


    //Below is the ERC20 logic, with Pause disabling transfer.
    function balanceOf(address tokenOwner) public constant returns (uint balance) {
        return balances[tokenOwner];
    }


    function transfer(address to, uint tokens) public returns (bool success) {
        if(pauseOn){
            emit ErrorEvent(msg.sender, "Contract is paused. Please migrate to the native chain with migrateGEEQ.");
            revert();           //unnecessarily explicit
        } else {
            balances[msg.sender] = balances[msg.sender].sub(tokens);
            balances[to] = balances[to].add(tokens);
            emit Transfer(msg.sender, to, tokens);
            return true;           //unnecessarily explicit
        }
    }
    function approve(address spender, uint tokens) public returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        return true;
    } 
    function transferFrom(address from, address to, uint tokens) public returns (bool success) {
        if(pauseOn){
            emit ErrorEvent(msg.sender, "Contract is paused. Please migrate to the native chain with migrateGEEQ.");
            revert();           //unnecessarily explicit
        } else {
            balances[from] = balances[from].sub(tokens);
            allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
            balances[to] = balances[to].add(tokens);
            emit Transfer(from, to, tokens);
            return true;           //unnecessarily explicit
        }
    }
    
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }  
    function approveAndCall(address spender, uint tokens, bytes data) public returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        ApproveAndCallFallBack(spender).receiveApproval(msg.sender, tokens, this, data);
        return true;           //unnecessarily explicit
    }  
    function() public { }
    

}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"migrationOn","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":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"balances","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"pauseEnable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"receiver","type":"address"},{"name":"token_amt","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"pauseOn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","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":"","type":"address"}],"name":"geeqaddress","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","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":true,"inputs":[],"name":"totalMinted","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"registeraddress","type":"bytes32"}],"name":"migrateGEEQ","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"migrationDisable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"},{"name":"data","type":"bytes"}],"name":"approveAndCall","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"migrationEnable","outputs":[],"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":"pauseDisable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"pauseevent","type":"string"}],"name":"PauseEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"errorstr","type":"string"}],"name":"ErrorEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"BurnEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"addr","type":"address"},{"indexed":false,"name":"geeqaddress","type":"bytes32"},{"indexed":false,"name":"balance","type":"uint256"}],"name":"MigrateEvent","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":"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"}]

60806040523480156200001157600080fd5b506040805190810160405280600481526020017f4745455100000000000000000000000000000000000000000000000000000000815250600290805190602001906200005f92919062000142565b506040805190810160405280600481526020017f476565710000000000000000000000000000000000000000000000000000000081525060039080519060200190620000ad92919062000142565b506012600460006101000a81548160ff021916908360ff16021790555060006006819055506000600581905550600460009054906101000a900460ff1660ff16600a0a6305f5e10002600781905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001f1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200018557805160ff1916838001178555620001b6565b82800160010185558215620001b6579182015b82811115620001b557825182559160200191906001019062000198565b5b509050620001c59190620001c9565b5090565b620001ee91905b80821115620001ea576000816000905550600101620001d0565b5090565b90565b61210880620002016000396000f300608060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610163578063095ea7b3146101f357806313f6a2e51461025857806318160ddd1461028757806323b872dd146102b257806327e235e314610337578063291d3dba1461038e578063313ce567146103a557806340c10f19146103d6578063686dc57c1461042357806370a08231146104525780637940009c146104a957806379ba5097146105085780638da5cb5b1461051f57806395d89b4114610576578063a2309ff814610606578063a837d5d014610631578063a9059cbb14610662578063bcf3f702146106c7578063cae9ca51146106de578063d4ee1d9014610789578063d7385f1f146107e0578063dc39d06d146107f7578063dd62ed3e1461085c578063ec7a3395146108d3578063f2fde38b146108ea575b34801561016057600080fd5b50005b34801561016f57600080fd5b5061017861092d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b857808201518184015260208101905061019d565b50505050905090810190601f1680156101e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101ff57600080fd5b5061023e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109cb565b604051808215151515815260200191505060405180910390f35b34801561026457600080fd5b5061026d610abd565b604051808215151515815260200191505060405180910390f35b34801561029357600080fd5b5061029c610ad0565b6040518082815260200191505060405180910390f35b3480156102be57600080fd5b5061031d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ada565b604051808215151515815260200191505060405180910390f35b34801561034357600080fd5b50610378600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e6a565b6040518082815260200191505060405180910390f35b34801561039a57600080fd5b506103a3610e82565b005b3480156103b157600080fd5b506103ba610efa565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103e257600080fd5b50610421600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f0d565b005b34801561042f57600080fd5b506104386110c0565b604051808215151515815260200191505060405180910390f35b34801561045e57600080fd5b50610493600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110d3565b6040518082815260200191505060405180910390f35b3480156104b557600080fd5b506104ea600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111c565b60405180826000191660001916815260200191505060405180910390f35b34801561051457600080fd5b5061051d611134565b005b34801561052b57600080fd5b506105346112d3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058257600080fd5b5061058b6112f8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105cb5780820151818401526020810190506105b0565b50505050905090810190601f1680156105f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561061257600080fd5b5061061b611396565b6040518082815260200191505060405180910390f35b34801561063d57600080fd5b5061066060048036038101908080356000191690602001909291905050506113a0565b005b34801561066e57600080fd5b506106ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611590565b604051808215151515815260200191505060405180910390f35b3480156106d357600080fd5b506106dc611810565b005b3480156106ea57600080fd5b5061076f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611888565b604051808215151515815260200191505060405180910390f35b34801561079557600080fd5b5061079e611ad7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ec57600080fd5b506107f5611afd565b005b34801561080357600080fd5b50610842600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b75565b604051808215151515815260200191505060405180910390f35b34801561086857600080fd5b506108bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cd9565b6040518082815260200191505060405180910390f35b3480156108df57600080fd5b506108e8611d60565b005b3480156108f657600080fd5b5061092b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611dd8565b005b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109c35780601f10610998576101008083540402835291602001916109c3565b820191906000526020600020905b8154815290600101906020018083116109a657829003601f168201915b505050505081565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600860019054906101000a900460ff1681565b6000600554905090565b6000600860009054906101000a900460ff1615610bc1573373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260488152602001807f436f6e7472616374206973207061757365642e20506c65617365206d6967726181526020017f746520746f20746865206e617469766520636861696e2077697468206d69677281526020017f617465474545512e00000000000000000000000000000000000000000000000081525060600191505060405180910390a2600080fd5b610c1382600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ce582600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610db782600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60096020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610edd57600080fd5b6001600860006101000a81548160ff021916908315150217905550565b600460009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f6857600080fd5b600754610f8082600654611e9690919063ffffffff16565b1115610f8b57600080fd5b610fdd81600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061103581600654611e9690919063ffffffff16565b60068190555061105081600554611e9690919063ffffffff16565b6005819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600860009054906101000a900460ff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600b6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561119057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561138e5780601f106113635761010080835404028352916020019161138e565b820191906000526020600020905b81548152906001019060200180831161137157829003601f168201915b505050505081565b6000600654905090565b600860019054906101000a900460ff16156114e75780600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081600019169055503373ffffffffffffffffffffffffffffffffffffffff167feccfd26844c11ab1d6da3b64d7f8b0742f4a9b270b63693036f64aba31f46d2e82600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518083600019166000191681526020018281526020019250505060405180910390a26114e2600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eb5565b61158d565b3373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260358152602001807f417474656d7074656420746f206d696772617465206265666f7265204745455181526020017f204d6967726174696f6e2068617320626567756e2e000000000000000000000081525060400191505060405180910390a25b50565b6000600860009054906101000a900460ff1615611677573373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260488152602001807f436f6e7472616374206973207061757365642e20506c65617365206d6967726181526020017f746520746f20746865206e617469766520636861696e2077697468206d69677281526020017f617465474545512e00000000000000000000000000000000000000000000000081525060600191505060405180910390a2600080fd5b6116c982600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061175e82600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561186b57600080fd5b6000600860016101000a81548160ff021916908315150217905550565b600082600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a65578082015181840152602081019050611a4a565b50505050905090810190601f168015611a925780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015611ab457600080fd5b505af1158015611ac8573d6000803e3d6000fd5b50505050600190509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b5857600080fd5b6001600860016101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bd257600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611c9657600080fd5b505af1158015611caa573d6000803e3d6000fd5b505050506040513d6020811015611cc057600080fd5b8101908080519060200190929190505050905092915050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611dbb57600080fd5b6000600860006101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e3357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000828211151515611e8857600080fd5b818303905080905092915050565b60008183019050828110151515611eac57600080fd5b80905092915050565b80600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015156120d457611f51600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600554611e7790919063ffffffff16565b600581905550611fa981600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061203e81600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167f512586160ebd4dc6945ba9ec5d21a1f723f26f3c7aa36cdffb6818d4e7b88030826040518082815260200191505060405180910390a26120d9565b600080fd5b505600a165627a7a72305820abda4e6211adfdf5467dace36674af0d3b4fd526cae554d6855964988b20e56b0029

Deployed Bytecode

0x608060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610163578063095ea7b3146101f357806313f6a2e51461025857806318160ddd1461028757806323b872dd146102b257806327e235e314610337578063291d3dba1461038e578063313ce567146103a557806340c10f19146103d6578063686dc57c1461042357806370a08231146104525780637940009c146104a957806379ba5097146105085780638da5cb5b1461051f57806395d89b4114610576578063a2309ff814610606578063a837d5d014610631578063a9059cbb14610662578063bcf3f702146106c7578063cae9ca51146106de578063d4ee1d9014610789578063d7385f1f146107e0578063dc39d06d146107f7578063dd62ed3e1461085c578063ec7a3395146108d3578063f2fde38b146108ea575b34801561016057600080fd5b50005b34801561016f57600080fd5b5061017861092d565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b857808201518184015260208101905061019d565b50505050905090810190601f1680156101e55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101ff57600080fd5b5061023e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109cb565b604051808215151515815260200191505060405180910390f35b34801561026457600080fd5b5061026d610abd565b604051808215151515815260200191505060405180910390f35b34801561029357600080fd5b5061029c610ad0565b6040518082815260200191505060405180910390f35b3480156102be57600080fd5b5061031d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ada565b604051808215151515815260200191505060405180910390f35b34801561034357600080fd5b50610378600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e6a565b6040518082815260200191505060405180910390f35b34801561039a57600080fd5b506103a3610e82565b005b3480156103b157600080fd5b506103ba610efa565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103e257600080fd5b50610421600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f0d565b005b34801561042f57600080fd5b506104386110c0565b604051808215151515815260200191505060405180910390f35b34801561045e57600080fd5b50610493600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110d3565b6040518082815260200191505060405180910390f35b3480156104b557600080fd5b506104ea600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061111c565b60405180826000191660001916815260200191505060405180910390f35b34801561051457600080fd5b5061051d611134565b005b34801561052b57600080fd5b506105346112d3565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561058257600080fd5b5061058b6112f8565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105cb5780820151818401526020810190506105b0565b50505050905090810190601f1680156105f85780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561061257600080fd5b5061061b611396565b6040518082815260200191505060405180910390f35b34801561063d57600080fd5b5061066060048036038101908080356000191690602001909291905050506113a0565b005b34801561066e57600080fd5b506106ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611590565b604051808215151515815260200191505060405180910390f35b3480156106d357600080fd5b506106dc611810565b005b3480156106ea57600080fd5b5061076f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611888565b604051808215151515815260200191505060405180910390f35b34801561079557600080fd5b5061079e611ad7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ec57600080fd5b506107f5611afd565b005b34801561080357600080fd5b50610842600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b75565b604051808215151515815260200191505060405180910390f35b34801561086857600080fd5b506108bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cd9565b6040518082815260200191505060405180910390f35b3480156108df57600080fd5b506108e8611d60565b005b3480156108f657600080fd5b5061092b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611dd8565b005b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109c35780601f10610998576101008083540402835291602001916109c3565b820191906000526020600020905b8154815290600101906020018083116109a657829003601f168201915b505050505081565b600081600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600860019054906101000a900460ff1681565b6000600554905090565b6000600860009054906101000a900460ff1615610bc1573373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260488152602001807f436f6e7472616374206973207061757365642e20506c65617365206d6967726181526020017f746520746f20746865206e617469766520636861696e2077697468206d69677281526020017f617465474545512e00000000000000000000000000000000000000000000000081525060600191505060405180910390a2600080fd5b610c1382600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ce582600a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610db782600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b60096020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610edd57600080fd5b6001600860006101000a81548160ff021916908315150217905550565b600460009054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f6857600080fd5b600754610f8082600654611e9690919063ffffffff16565b1115610f8b57600080fd5b610fdd81600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061103581600654611e9690919063ffffffff16565b60068190555061105081600554611e9690919063ffffffff16565b6005819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600860009054906101000a900460ff1681565b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600b6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561119057600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561138e5780601f106113635761010080835404028352916020019161138e565b820191906000526020600020905b81548152906001019060200180831161137157829003601f168201915b505050505081565b6000600654905090565b600860019054906101000a900460ff16156114e75780600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081600019169055503373ffffffffffffffffffffffffffffffffffffffff167feccfd26844c11ab1d6da3b64d7f8b0742f4a9b270b63693036f64aba31f46d2e82600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518083600019166000191681526020018281526020019250505060405180910390a26114e2600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611eb5565b61158d565b3373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260358152602001807f417474656d7074656420746f206d696772617465206265666f7265204745455181526020017f204d6967726174696f6e2068617320626567756e2e000000000000000000000081525060400191505060405180910390a25b50565b6000600860009054906101000a900460ff1615611677573373ffffffffffffffffffffffffffffffffffffffff167f73035c8337025033e7e7f0ccffcf34d2601c76e813ecc2acb47b2c344dcc7c476040518080602001828103825260488152602001807f436f6e7472616374206973207061757365642e20506c65617365206d6967726181526020017f746520746f20746865206e617469766520636861696e2077697468206d69677281526020017f617465474545512e00000000000000000000000000000000000000000000000081525060600191505060405180910390a2600080fd5b6116c982600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061175e82600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561186b57600080fd5b6000600860016101000a81548160ff021916908315150217905550565b600082600a60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a65578082015181840152602081019050611a4a565b50505050905090810190601f168015611a925780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015611ab457600080fd5b505af1158015611ac8573d6000803e3d6000fd5b50505050600190509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611b5857600080fd5b6001600860016101000a81548160ff021916908315150217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611bd257600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611c9657600080fd5b505af1158015611caa573d6000803e3d6000fd5b505050506040513d6020811015611cc057600080fd5b8101908080519060200190929190505050905092915050565b6000600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611dbb57600080fd5b6000600860006101000a81548160ff021916908315150217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611e3357600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000828211151515611e8857600080fd5b818303905080905092915050565b60008183019050828110151515611eac57600080fd5b80905092915050565b80600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015156120d457611f51600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600554611e7790919063ffffffff16565b600581905550611fa981600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e7790919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061203e81600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9690919063ffffffff16565b600960008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff167f512586160ebd4dc6945ba9ec5d21a1f723f26f3c7aa36cdffb6818d4e7b88030826040518082815260200191505060405180910390a26120d9565b600080fd5b505600a165627a7a72305820abda4e6211adfdf5467dace36674af0d3b4fd526cae554d6855964988b20e56b0029

Deployed Bytecode Sourcemap

2074:5829:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2074:5829:0;;2182:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2182:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2182:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6500:208;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6500:208:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2343:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2343:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4383:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4383:92:0;;;;;;;;;;;;;;;;;;;;;;;6715:625;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6715:625:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2379:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2379:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4043:72;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4043:72:0;;;;;;2208:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2208:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5175:565;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5175:565:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2317:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2317:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5815:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5815:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3095:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3095:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1796:271;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1796:271:0;;;;;;1468:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1468:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2155;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2155:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2155:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4481:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4481:92:0;;;;;;;;;;;;;;;;;;;;;;;3233:503;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3233:503:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5949:545;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5949:545:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4287:82;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4287:82:0;;;;;;7511:352;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7511:352:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1495:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1495:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4201:80;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4201:80:0;;;;;;3837:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3837:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7352:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7352:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4121:74;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4121:74:0;;;;;;1688:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1688:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2182:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6500:208::-;6563:12;6619:6;6588:7;:19;6596:10;6588:19;;;;;;;;;;;;;;;:28;6608:7;6588:28;;;;;;;;;;;;;;;:37;;;;6662:7;6641:37;;6650:10;6641:37;;;6671:6;6641:37;;;;;;;;;;;;;;;;;;6696:4;6689:11;;6500:208;;;;:::o;2343:23::-;;;;;;;;;;;;;:::o;4383:92::-;4431:4;4455:12;;4448:19;;4383:92;:::o;6715:625::-;6792:12;6820:7;;;;;;;;;;;6817:516;;;6859:10;6848:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6961:8;;;6817:516;7054:26;7073:6;7054:8;:14;7063:4;7054:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;7037:8;:14;7046:4;7037:14;;;;;;;;;;;;;;;:43;;;;7123:37;7153:6;7123:7;:13;7131:4;7123:13;;;;;;;;;;;;;;;:25;7137:10;7123:25;;;;;;;;;;;;;;;;:29;;:37;;;;:::i;:::-;7095:7;:13;7103:4;7095:13;;;;;;;;;;;;;;;:25;7109:10;7095:25;;;;;;;;;;;;;;;:65;;;;7190:24;7207:6;7190:8;:12;7199:2;7190:12;;;;;;;;;;;;;;;;:16;;:24;;;;:::i;:::-;7175:8;:12;7184:2;7175:12;;;;;;;;;;;;;;;:39;;;;7249:2;7234:26;;7243:4;7234:26;;;7253:6;7234:26;;;;;;;;;;;;;;;;;;7282:4;7275:11;;6715:625;;;;;:::o;2379:40::-;;;;;;;;;;;;;;;;;:::o;4043:72::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;4103:4;4094:7;;:13;;;;;;;;;;;;;;;;;;4043:72::o;2208:21::-;;;;;;;;;;;;;:::o;5175:565::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;5300:12;;5270:27;5287:9;5270:12;;:16;;:27;;;;:::i;:::-;:42;5266:128;;;5330:8;;;5266:128;5425:33;5448:9;5425:8;:18;5434:8;5425:18;;;;;;;;;;;;;;;;:22;;:33;;;;:::i;:::-;5404:8;:18;5413:8;5404:18;;;;;;;;;;;;;;;:54;;;;5483:27;5500:9;5483:12;;:16;;:27;;;;:::i;:::-;5469:12;:41;;;;5535:27;5552:9;5535:12;;:16;;:27;;;;:::i;:::-;5521:12;:41;;;;5599:8;5578:41;;5595:1;5578:41;;;5609:9;5578:41;;;;;;;;;;;;;;;;;;5175:565;;:::o;2317:19::-;;;;;;;;;;;;;:::o;5815:124::-;5879:12;5911:8;:20;5920:10;5911:20;;;;;;;;;;;;;;;;5904:27;;5815:124;;;:::o;3095:46::-;;;;;;;;;;;;;;;;;:::o;1796:271::-;1863:8;;;;;;;;;;;1849:22;;:10;:22;;;1841:31;;;;;;;;1916:8;;;;;;;;;;;1888:37;;1909:5;;;;;;;;;;;1888:37;;;;;;;;;;;;1944:8;;;;;;;;;;;1936:5;;:16;;;;;;;;;;;;;;;;;;1982:1;1963:8;;:21;;;;;;;;;;;;;;;;;;1796:271::o;1468:20::-;;;;;;;;;;;;;:::o;2155:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4481:92::-;4529:4;4553:12;;4546:19;;4481:92;:::o;3233:503::-;3301:11;;;;;;;;;;;3297:432;;;3354:15;3328:11;:23;3340:10;3328:23;;;;;;;;;;;;;;;:41;;;;;;;3462:10;3449:63;;;3474:15;3491:8;:20;3500:10;3491:20;;;;;;;;;;;;;;;;3449:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3573:26;3578:8;:20;3587:10;3578:20;;;;;;;;;;;;;;;;3573:4;:26::i;:::-;3297:432;;;3649:10;3637:80;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3297:432;3233:503;:::o;5949:545::-;6008:12;6036:7;;;;;;;;;;;6033:454;;;6075:10;6064:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6177:8;;;6033:454;6276:32;6301:6;6276:8;:20;6285:10;6276:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6253:8;:20;6262:10;6253:20;;;;;;;;;;;;;;;:55;;;;6338:24;6355:6;6338:8;:12;6347:2;6338:12;;;;;;;;;;;;;;;;:16;;:24;;;;:::i;:::-;6323:8;:12;6332:2;6323:12;;;;;;;;;;;;;;;:39;;;;6403:2;6382:32;;6391:10;6382:32;;;6407:6;6382:32;;;;;;;;;;;;;;;;;;6436:4;6429:11;;5949:545;;;;:::o;4287:82::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;4356:5;4343:11;;:18;;;;;;;;;;;;;;;;;;4287:82::o;7511:352::-;7593:12;7649:6;7618:7;:19;7626:10;7618:19;;;;;;;;;;;;;;;:28;7638:7;7618:28;;;;;;;;;;;;;;;:37;;;;7692:7;7671:37;;7680:10;7671:37;;;7701:6;7671:37;;;;;;;;;;;;;;;;;;7742:7;7719:47;;;7767:10;7779:6;7787:4;7793;7719:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7719:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7719:79:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7719:79:0;;;;7816:4;7809:11;;7511:352;;;;;:::o;1495:23::-;;;;;;;;;;;;;:::o;4201:80::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;4269:4;4256:11;;:17;;;;;;;;;;;;;;;;;;4201:80::o;3837:184::-;3929:12;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;3976:12;3961:37;;;3999:5;;;;;;;;;;;4006:6;3961:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3961:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3961:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3961:52:0;;;;;;;;;;;;;;;;3954:59;;3837:184;;;;:::o;7352:151::-;7433:14;7467:7;:19;7475:10;7467:19;;;;;;;;;;;;;;;:28;7487:7;7467:28;;;;;;;;;;;;;;;;7460:35;;7352:151;;;;:::o;4121:74::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;4182:5;4173:7;;:14;;;;;;;;;;;;;;;;;;4121:74::o;1688:102::-;1656:5;;;;;;;;;;;1642:19;;:10;:19;;;1634:28;;;;;;;;1773:9;1762:8;;:20;;;;;;;;;;;;;;;;;;1688:102;:::o;184:128::-;236:6;268:1;263;:6;;255:15;;;;;;;;289:1;285;:5;281:9;;302:1;294:10;;184:128;;;;:::o;50:::-;102:6;129:1;125;:5;121:9;;154:1;149;:6;;141:15;;;;;;;;168:1;160:10;;50:128;;;;:::o;4579:529::-;4695:6;4672:8;:20;4681:10;4672:20;;;;;;;;;;;;;;;;:29;;4669:420;;;4731:38;4748:8;:20;4757:10;4748:20;;;;;;;;;;;;;;;;4731:12;;:16;;:38;;;;:::i;:::-;4718:12;:51;;;;4807:32;4832:6;4807:8;:20;4816:10;4807:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;4784:8;:20;4793:10;4784:20;;;;;;;;;;;;;;;:55;;;;4877:32;4902:6;4877:8;:20;4894:1;4877:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;4854:8;:20;4871:1;4854:20;;;;;;;;;;;;;;;:55;;;;4939:10;4929:29;;;4951:6;4929:29;;;;;;;;;;;;;;;;;;4669:420;;;4991:8;;;4669:420;4579:529;:::o

Swarm Source

bzzr://abda4e6211adfdf5467dace36674af0d3b4fd526cae554d6855964988b20e56b

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

Geeq is a multi-blockchain platform secured by our Proof of Honesty protocol (PoH), safe enough for your most valuable data, cheap enough for IoT, and flexible enough for any use.

Validator Index Block Amount
View All Withdrawals

Txn Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.