ETH Price: $3,654.37 (+0.90%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer201308502024-06-20 5:27:23200 days ago1718861243IN
Gopher: GOP Token
0 ETH0.000217466.73220385
Transfer201306652024-06-20 4:50:11200 days ago1718859011IN
Gopher: GOP Token
0 ETH0.0009758518
Transfer177768902023-07-26 11:15:11530 days ago1690370111IN
Gopher: GOP Token
0 ETH0.0011048629.76944426
Transfer175963032023-07-01 2:40:23555 days ago1688179223IN
Gopher: GOP Token
0 ETH0.0007374622.82181747
Transfer175961302023-07-01 2:05:11555 days ago1688177111IN
Gopher: GOP Token
0 ETH0.0008601415.86230287
Transfer175661932023-06-26 21:14:23559 days ago1687814063IN
Gopher: GOP Token
0 ETH0.000498415.42945825
Transfer175660082023-06-26 20:36:47559 days ago1687811807IN
Gopher: GOP Token
0 ETH0.0006635112.23872939
Transfer170843512023-04-20 1:01:47627 days ago1681952507IN
Gopher: GOP Token
0 ETH0.002005962.0983898
Transfer170841462023-04-20 0:20:11627 days ago1681950011IN
Gopher: GOP Token
0 ETH0.0030916957.02758466
Transfer170287952023-04-12 1:53:23635 days ago1681264403IN
Gopher: GOP Token
0 ETH0.0008201725.39089258
Transfer170286142023-04-12 1:16:23635 days ago1681262183IN
Gopher: GOP Token
0 ETH0.0012829723.66501062
Transfer169645202023-04-02 23:00:11644 days ago1680476411IN
Gopher: GOP Token
0 ETH0.000972626.20582578
Transfer167079492023-02-25 21:25:59680 days ago1677360359IN
Gopher: GOP Token
0 ETH0.0006917821.40041569
Transfer166806952023-02-22 1:20:59684 days ago1677028859IN
Gopher: GOP Token
0 ETH0.0012909123.81147776
Transfer166479252023-02-17 10:45:11689 days ago1676630711IN
Gopher: GOP Token
0 ETH0.0007497823.20321291
Transfer166189432023-02-13 9:28:59693 days ago1676280539IN
Gopher: GOP Token
0 ETH0.0011975837.04699928
Transfer166057502023-02-11 13:15:11695 days ago1676121311IN
Gopher: GOP Token
0 ETH0.0008396322.62326777
Transfer165914782023-02-09 13:25:11697 days ago1675949111IN
Gopher: GOP Token
0 ETH0.0011857631.94919862
Transfer165305472023-02-01 1:00:11705 days ago1675213211IN
Gopher: GOP Token
0 ETH0.0009362125.23367136
Transfer165301992023-01-31 23:50:23705 days ago1675209023IN
Gopher: GOP Token
0 ETH0.0012075532.5469868
Transfer165295552023-01-31 21:40:11705 days ago1675201211IN
Gopher: GOP Token
0 ETH0.001400837.74323509
Transfer165110302023-01-29 7:36:59708 days ago1674977819IN
Gopher: GOP Token
0 ETH0.0007031114.23601045
Transfer164385592023-01-19 4:46:59718 days ago1674103619IN
Gopher: GOP Token
0 ETH0.0005983416.12704589
Transfer164384792023-01-19 4:30:59718 days ago1674102659IN
Gopher: GOP Token
0 ETH0.0005341716.53067279
Transfer164372802023-01-19 0:30:11718 days ago1674088211IN
Gopher: GOP Token
0 ETH0.0015831929.20925274
View all transactions

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

Contract Source Code Verified (Exact Match)

Contract Name:
GOPHERTOKEN

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2021-12-12
*/

pragma solidity ^0.4.24;

// ----------------------------------------------------------------------------
// 'Goopy Token' token contract
//
// Deployed to : TBD
// Symbol      : GOP
// Name        : GOPERTOKEN
// Total supply: 30000000
// Decimals    : 18
//
// THANKS.
//
// (c) by DANIEL K / DEC 2021 COPYRIGHT.
// ----------------------------------------------------------------------------

contract Lockable {
    uint public creationTime;
    bool public lock;
    address public owner;

    mapping( address => bool ) public lockaddress;

    event Locked(address lockaddress,bool status);
    event Unlocked(address unlockedaddress, bool status);

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

    // This modifier check whether the contract should be in a locked
    // or unlocked state, then acts and updates accordingly if
    // necessary
    modifier checkLock {
        if (lockaddress[msg.sender]) {
           revert();
        }
        //require(!lockaddress[msg.sender]);
        //assert(!lockaddress[msg.sender]);
        _;
    }

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

   

    // Lock Address
    function lockAddress(address target)
    external
    isOwner
    {
        require(owner != target);
        lockaddress[target] = true;
        emit Locked(target, true);
    }

    // UnLock Address
    function unlockAddress(address target)
    external
    isOwner
    {
        lockaddress[target] = false;
        emit Unlocked(target, false);
    }
}

// ----------------------------------------------------------------------------
// Safe maths
// ----------------------------------------------------------------------------

contract SafeMath {
    function safeAdd(uint a, uint b) public pure returns (uint c) {
        c = a + b;
        require(c >= a);
    }
    function safeSub(uint a, uint b) public pure returns (uint c) {
        require(b <= a);
        c = a - b;
    }
    function safeMul(uint a, uint b) public pure returns (uint c) {
        c = a * b;
        require(a == 0 || c / a == b);
    }
    function safeDiv(uint a, uint b) public pure returns (uint c) {
        require(b > 0);
        c = a / b;
    }
}


// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
// ----------------------------------------------------------------------------
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 function to receive approval and execute function in one call
//
// Borrowed from MiniMeToken
// ----------------------------------------------------------------------------
contract ApproveAndCallFallBack {
    function receiveApproval(address from, uint256 tokens, address token, bytes data) public;
}


// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Owned {
    address public owner;
    address public newOwner;

    event OwnershipTransferred(address indexed _from, address indexed _to);

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

    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);
    }
}


// ----------------------------------------------------------------------------
// ERC20 Token, with the addition of symbol, name and decimals and assisted
// token transfers
// ----------------------------------------------------------------------------
contract GOPHERTOKEN is ERC20Interface, Owned, SafeMath, Lockable {
    //string public constant name = "GOPHERTOKEN";
    //string public constant symbol = "GOP";
    string public constant name = "Gopher Token";
    string public constant symbol = "GOP";
    uint8 public constant decimals = 18; 
    uint public constant INITIAL_SUPPLY = 30000000000000000000000000;
    uint public _totalSupply;
    
    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    event TokenBurned(address burnAddress, uint amountOfTokens);

    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor() public {
        _totalSupply = INITIAL_SUPPLY;
        balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }


    // ------------------------------------------------------------------------
    // Total supply
    // ------------------------------------------------------------------------
    function totalSupply() public constant returns (uint) {
        return _totalSupply  - balances[address(0)];
    }


    // ------------------------------------------------------------------------
    // Get the token balance for account tokenOwner
    // ------------------------------------------------------------------------
    function balanceOf(address tokenOwner) public constant returns (uint balance) {
        return balances[tokenOwner];
    }


    // ------------------------------------------------------------------------
    // Transfer the balance from token owner's account to to account
    // - Owner's account must have sufficient balance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transfer(address to, uint tokens) public 
    checkLock
    returns (bool success) {
        require( balances[msg.sender] >= tokens );

        balances[msg.sender] = safeSub(balances[msg.sender], tokens);
        balances[to] = safeAdd(balances[to], tokens);
        emit Transfer(msg.sender, to, tokens);
        return true;
    }


    // ------------------------------------------------------------------------
    // Token owner can approve for spender to transferFrom(...) tokens
    // from the token owner's account
    //
    // https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20-token-standard.md
    // recommends that there are no checks for the approval double-spend attack
    // as this should be implemented in user interfaces 
    // ------------------------------------------------------------------------
    function approve(address spender, uint tokens) public 
    checkLock
    returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        return true;
    }


    // ------------------------------------------------------------------------
    // Transfer tokens from the from account to the to account
    // 
    // The calling account must already have sufficient tokens approve(...)-d
    // for spending from the from account and
    // - From account must have sufficient balance to transfer
    // - Spender must have sufficient allowance to transfer
    // - 0 value transfers are allowed
    // ------------------------------------------------------------------------
    function transferFrom(address from, address to, uint tokens) public 
    checkLock
    returns (bool success) {
        require( balances[from] >= tokens );
        require( allowed[from][msg.sender] >= tokens );

        balances[from] = safeSub(balances[from], tokens);
        allowed[from][msg.sender] = safeSub(allowed[from][msg.sender], tokens);
        balances[to] = safeAdd(balances[to], tokens);
        emit Transfer(from, to, tokens);
        return true;
    }


    // ------------------------------------------------------------------------
    // Returns the amount of tokens approved by the owner that can be
    // transferred to the spender's account
    // ------------------------------------------------------------------------
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }


    // ------------------------------------------------------------------------
    // Token owner can approve for spender to transferFrom(...) tokens
    // from the token owner's account. The spender contract function
    // receiveApproval(...) is then executed
    // ------------------------------------------------------------------------
    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;
    }


    // ------------------------------------------------------------------------
    // Don't accept ETH
    // ------------------------------------------------------------------------
    function () public payable {
        revert();
    }


    // ------------------------------------------------------------------------
    // Owner can transfer out any accidentally sent ERC20 tokens
    // ------------------------------------------------------------------------
    function transferAnyERC20Token(address tokenAddress, uint tokens) public onlyOwner returns (bool success) {
        return ERC20Interface(tokenAddress).transfer(owner, tokens);
    }

    // burnToken burn tokensAmount for sender balance
    function burnTokens(uint tokensAmount)
    external
    isOwner
    {
        require( balances[msg.sender] >= tokensAmount );

        balances[msg.sender] = safeSub(balances[msg.sender], tokensAmount);
        _totalSupply = safeSub(_totalSupply, tokensAmount);
        emit TokenBurned(msg.sender, tokensAmount);

    }
}

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":"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":"INITIAL_SUPPLY","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"}],"name":"lockAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"tokensAmount","type":"uint256"}],"name":"burnTokens","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":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":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeSub","outputs":[{"name":"c","type":"uint256"}],"payable":false,"stateMutability":"pure","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":true,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeDiv","outputs":[{"name":"c","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"target","type":"address"}],"name":"unlockAddress","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":"","type":"address"}],"name":"lockaddress","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeMul","outputs":[{"name":"c","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"creationTime","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":true,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeAdd","outputs":[{"name":"c","type":"uint256"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"lock","outputs":[{"name":"","type":"bool"}],"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":"burnAddress","type":"address"},{"indexed":false,"name":"amountOfTokens","type":"uint256"}],"name":"TokenBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"lockaddress","type":"address"},{"indexed":false,"name":"status","type":"bool"}],"name":"Locked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"unlockedaddress","type":"address"},{"indexed":false,"name":"status","type":"bool"}],"name":"Unlocked","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"}]

608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504260028190555033600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506a18d0bf423c03d8de000000600581905550600554600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040518082815260200191505060405180910390a3611e6e806101686000396000f30060806040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610164578063095ea7b3146101f457806318160ddd1461025957806323b872dd146102845780632ff2e9dc14610309578063313ce5671461033457806334a90d02146103655780633eaaf86b146103a85780636d1b229d146103d357806370a082311461040057806379ba5097146104575780638da5cb5b1461046e57806395d89b41146104c5578063a293d1e814610555578063a9059cbb146105a0578063b5931f7c14610605578063b7eb5e0a14610650578063cae9ca5114610693578063cb7bba391461073e578063d05c78da14610799578063d4ee1d90146107e4578063d8270dce1461083b578063dc39d06d14610866578063dd62ed3e146108cb578063e6cb901314610942578063f2fde38b1461098d578063f83d08ba146109d0575b600080fd5b34801561017057600080fd5b506101796109ff565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b957808201518184015260208101905061019e565b50505050905090810190601f1680156101e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020057600080fd5b5061023f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a38565b604051808215151515815260200191505060405180910390f35b34801561026557600080fd5b5061026e610b81565b6040518082815260200191505060405180910390f35b34801561029057600080fd5b506102ef600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcc565b604051808215151515815260200191505060405180910390f35b34801561031557600080fd5b5061031e610f8c565b6040518082815260200191505060405180910390f35b34801561034057600080fd5b50610349610f9b565b604051808260ff1660ff16815260200191505060405180910390f35b34801561037157600080fd5b506103a6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fa0565b005b3480156103b457600080fd5b506103bd611124565b6040518082815260200191505060405180910390f35b3480156103df57600080fd5b506103fe6004803603810190808035906020019092919050505061112a565b005b34801561040c57600080fd5b50610441600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112e0565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b5061046c611329565b005b34801561047a57600080fd5b506104836114c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d157600080fd5b506104da6114ee565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561051a5780820151818401526020810190506104ff565b50505050905090810190601f1680156105475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561056157600080fd5b5061058a6004803603810190808035906020019092919080359060200190929190505050611527565b6040518082815260200191505060405180910390f35b3480156105ac57600080fd5b506105eb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611543565b604051808215151515815260200191505060405180910390f35b34801561061157600080fd5b5061063a6004803603810190808035906020019092919080359060200190929190505050611771565b6040518082815260200191505060405180910390f35b34801561065c57600080fd5b50610691600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611795565b005b34801561069f57600080fd5b50610724600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506118bc565b604051808215151515815260200191505060405180910390f35b34801561074a57600080fd5b5061077f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b0b565b604051808215151515815260200191505060405180910390f35b3480156107a557600080fd5b506107ce6004803603810190808035906020019092919080359060200190929190505050611b2b565b6040518082815260200191505060405180910390f35b3480156107f057600080fd5b506107f9611b5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561084757600080fd5b50610850611b82565b6040518082815260200191505060405180910390f35b34801561087257600080fd5b506108b1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b88565b604051808215151515815260200191505060405180910390f35b3480156108d757600080fd5b5061092c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ced565b6040518082815260200191505060405180910390f35b34801561094e57600080fd5b506109776004803603810190808035906020019092919080359060200190929190505050611d74565b6040518082815260200191505060405180910390f35b34801561099957600080fd5b506109ce600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d90565b005b3480156109dc57600080fd5b506109e5611e2f565b604051808215151515815260200191505060405180910390f35b6040805190810160405280600c81526020017f476f7068657220546f6b656e000000000000000000000000000000000000000081525081565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610a9157600080fd5b81600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600660008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460055403905090565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c2557600080fd5b81600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610c7357600080fd5b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610cfe57600080fd5b610d47600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e10600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ed9600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611d74565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6a18d0bf423c03d8de00000081565b601281565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610ffc57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561105957600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fcaf46096bdd957e9271a7e46a00ff61870b80644805049e7ea814162a2b606bc816001604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a150565b60055481565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561118657600080fd5b80600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156111d457600080fd5b61121d600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611527565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061126c60055482611527565b6005819055507f1af5163f80e79b5e554f61e1d052084d3a3fe1166e42a265798c4e2ddce8ffa23382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561138557600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f474f50000000000000000000000000000000000000000000000000000000000081525081565b600082821115151561153857600080fd5b818303905092915050565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561159c57600080fd5b81600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156115ea57600080fd5b611633600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116bf600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611d74565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000808211151561178157600080fd5b818381151561178c57fe5b04905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156117f157600080fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f5c42a6eb70f030b267ab6ddbc362cfe8dbe7cc3b42c590692fa695c58aeaca2b816000604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a150565b600082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a99578082015181840152602081019050611a7e565b50505050905090810190601f168015611ac65780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015611ae857600080fd5b505af1158015611afc573d6000803e3d6000fd5b50505050600190509392505050565b60046020528060005260406000206000915054906101000a900460ff1681565b600081830290506000831480611b4b5750818382811515611b4857fe5b04145b1515611b5657600080fd5b92915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611be557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611caa57600080fd5b505af1158015611cbe573d6000803e3d6000fd5b505050506040513d6020811015611cd457600080fd5b8101908080519060200190929190505050905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008183019050828110151515611d8a57600080fd5b92915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611deb57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900460ff16815600a165627a7a72305820bec23ad0405ad1b21d82350c7335a2201af0572ac7cb40ec421f647a1de54b9c0029

Deployed Bytecode

0x60806040526004361061015f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610164578063095ea7b3146101f457806318160ddd1461025957806323b872dd146102845780632ff2e9dc14610309578063313ce5671461033457806334a90d02146103655780633eaaf86b146103a85780636d1b229d146103d357806370a082311461040057806379ba5097146104575780638da5cb5b1461046e57806395d89b41146104c5578063a293d1e814610555578063a9059cbb146105a0578063b5931f7c14610605578063b7eb5e0a14610650578063cae9ca5114610693578063cb7bba391461073e578063d05c78da14610799578063d4ee1d90146107e4578063d8270dce1461083b578063dc39d06d14610866578063dd62ed3e146108cb578063e6cb901314610942578063f2fde38b1461098d578063f83d08ba146109d0575b600080fd5b34801561017057600080fd5b506101796109ff565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101b957808201518184015260208101905061019e565b50505050905090810190601f1680156101e65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561020057600080fd5b5061023f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a38565b604051808215151515815260200191505060405180910390f35b34801561026557600080fd5b5061026e610b81565b6040518082815260200191505060405180910390f35b34801561029057600080fd5b506102ef600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610bcc565b604051808215151515815260200191505060405180910390f35b34801561031557600080fd5b5061031e610f8c565b6040518082815260200191505060405180910390f35b34801561034057600080fd5b50610349610f9b565b604051808260ff1660ff16815260200191505060405180910390f35b34801561037157600080fd5b506103a6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fa0565b005b3480156103b457600080fd5b506103bd611124565b6040518082815260200191505060405180910390f35b3480156103df57600080fd5b506103fe6004803603810190808035906020019092919050505061112a565b005b34801561040c57600080fd5b50610441600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112e0565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b5061046c611329565b005b34801561047a57600080fd5b506104836114c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104d157600080fd5b506104da6114ee565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561051a5780820151818401526020810190506104ff565b50505050905090810190601f1680156105475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561056157600080fd5b5061058a6004803603810190808035906020019092919080359060200190929190505050611527565b6040518082815260200191505060405180910390f35b3480156105ac57600080fd5b506105eb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611543565b604051808215151515815260200191505060405180910390f35b34801561061157600080fd5b5061063a6004803603810190808035906020019092919080359060200190929190505050611771565b6040518082815260200191505060405180910390f35b34801561065c57600080fd5b50610691600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611795565b005b34801561069f57600080fd5b50610724600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506118bc565b604051808215151515815260200191505060405180910390f35b34801561074a57600080fd5b5061077f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b0b565b604051808215151515815260200191505060405180910390f35b3480156107a557600080fd5b506107ce6004803603810190808035906020019092919080359060200190929190505050611b2b565b6040518082815260200191505060405180910390f35b3480156107f057600080fd5b506107f9611b5c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561084757600080fd5b50610850611b82565b6040518082815260200191505060405180910390f35b34801561087257600080fd5b506108b1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b88565b604051808215151515815260200191505060405180910390f35b3480156108d757600080fd5b5061092c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ced565b6040518082815260200191505060405180910390f35b34801561094e57600080fd5b506109776004803603810190808035906020019092919080359060200190929190505050611d74565b6040518082815260200191505060405180910390f35b34801561099957600080fd5b506109ce600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d90565b005b3480156109dc57600080fd5b506109e5611e2f565b604051808215151515815260200191505060405180910390f35b6040805190810160405280600c81526020017f476f7068657220546f6b656e000000000000000000000000000000000000000081525081565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610a9157600080fd5b81600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600660008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460055403905090565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610c2557600080fd5b81600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610c7357600080fd5b81600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610cfe57600080fd5b610d47600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e10600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ed9600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611d74565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6a18d0bf423c03d8de00000081565b601281565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610ffc57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561105957600080fd5b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fcaf46096bdd957e9271a7e46a00ff61870b80644805049e7ea814162a2b606bc816001604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a150565b60055481565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151561118657600080fd5b80600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156111d457600080fd5b61121d600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482611527565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061126c60055482611527565b6005819055507f1af5163f80e79b5e554f61e1d052084d3a3fe1166e42a265798c4e2ddce8ffa23382604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a150565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561138557600080fd5b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040805190810160405280600381526020017f474f50000000000000000000000000000000000000000000000000000000000081525081565b600082821115151561153857600080fd5b818303905092915050565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561159c57600080fd5b81600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156115ea57600080fd5b611633600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611527565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506116bf600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483611d74565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000808211151561178157600080fd5b818381151561178c57fe5b04905092915050565b3373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156117f157600080fd5b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507f5c42a6eb70f030b267ab6ddbc362cfe8dbe7cc3b42c590692fa695c58aeaca2b816000604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001821515151581526020019250505060405180910390a150565b600082600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040518082815260200191505060405180910390a38373ffffffffffffffffffffffffffffffffffffffff16638f4ffcb1338530866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b83811015611a99578082015181840152602081019050611a7e565b50505050905090810190601f168015611ac65780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b158015611ae857600080fd5b505af1158015611afc573d6000803e3d6000fd5b50505050600190509392505050565b60046020528060005260406000206000915054906101000a900460ff1681565b600081830290506000831480611b4b5750818382811515611b4857fe5b04145b1515611b5657600080fd5b92915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60025481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611be557600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611caa57600080fd5b505af1158015611cbe573d6000803e3d6000fd5b505050506040513d6020811015611cd457600080fd5b8101908080519060200190929190505050905092915050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008183019050828110151515611d8a57600080fd5b92915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611deb57600080fd5b80600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900460ff16815600a165627a7a72305820bec23ad0405ad1b21d82350c7335a2201af0572ac7cb40ec421f647a1de54b9c0029

Deployed Bytecode Sourcemap

4805:6253:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10222:8;;;4976:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4976:44: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;4976:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7622:229;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7622:229:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5943:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5943:116:0;;;;;;;;;;;;;;;;;;;;;;;8387:484;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8387:484:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5114:64;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5114:64:0;;;;;;;;;;;;;;;;;;;;;;;5071:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5071:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;1262:185;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1262:185:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;5185:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5185:24:0;;;;;;;;;;;;;;;;;;;;;;;10723:332;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10723:332:0;;;;;;;;;;;;;;;;;;;;;;;;;;6284:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6284:124:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4341:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4341:196:0;;;;;;491:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;491:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5027:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5027:37: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;5027:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1967:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1967:116:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6757:352;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6757:352:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2225:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2225:115:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1478:156;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1478:156:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9670:317;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9670:317:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;520:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;520:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2089:130;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2089:130:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3970:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3970:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;437:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;437:24:0;;;;;;;;;;;;;;;;;;;;;;;10476:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10476:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9159:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9159:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1845:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1845:116:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4233:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4233:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;468:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;468:16:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4976:44;;;;;;;;;;;;;;;;;;;;:::o;7622:229::-;7706:12;973:11;:23;985:10;973:23;;;;;;;;;;;;;;;;;;;;;;;;;969:63;;;1012:8;;;969:63;7762:6;7731:7;:19;7739:10;7731:19;;;;;;;;;;;;;;;:28;7751:7;7731:28;;;;;;;;;;;;;;;:37;;;;7805:7;7784:37;;7793:10;7784:37;;;7814:6;7784:37;;;;;;;;;;;;;;;;;;7839:4;7832:11;;7622:229;;;;:::o;5943:116::-;5991:4;6031:8;:20;6048:1;6031:20;;;;;;;;;;;;;;;;6015:12;;:36;6008:43;;5943:116;:::o;8387:484::-;8485:12;973:11;:23;985:10;973:23;;;;;;;;;;;;;;;;;;;;;;;;;969:63;;;1012:8;;;969:63;8537:6;8519:8;:14;8528:4;8519:14;;;;;;;;;;;;;;;;:24;;8510:35;;;;;;;;8594:6;8565:7;:13;8573:4;8565:13;;;;;;;;;;;;;;;:25;8579:10;8565:25;;;;;;;;;;;;;;;;:35;;8556:46;;;;;;;;8632:31;8640:8;:14;8649:4;8640:14;;;;;;;;;;;;;;;;8656:6;8632:7;:31::i;:::-;8615:8;:14;8624:4;8615:14;;;;;;;;;;;;;;;:48;;;;8702:42;8710:7;:13;8718:4;8710:13;;;;;;;;;;;;;;;:25;8724:10;8710:25;;;;;;;;;;;;;;;;8737:6;8702:7;:42::i;:::-;8674:7;:13;8682:4;8674:13;;;;;;;;;;;;;;;:25;8688:10;8674:25;;;;;;;;;;;;;;;:70;;;;8770:29;8778:8;:12;8787:2;8778:12;;;;;;;;;;;;;;;;8792:6;8770:7;:29::i;:::-;8755:8;:12;8764:2;8755:12;;;;;;;;;;;;;;;:44;;;;8830:2;8815:26;;8824:4;8815:26;;;8834:6;8815:26;;;;;;;;;;;;;;;;;;8859:4;8852:11;;8387:484;;;;;:::o;5114:64::-;5152:26;5114:64;:::o;5071:35::-;5104:2;5071:35;:::o;1262:185::-;1195:10;1186:19;;:5;;;;;;;;;;;:19;;;1178:28;;;;;;;;1359:6;1350:15;;:5;;;;;;;;;;;:15;;;;1342:24;;;;;;;;1399:4;1377:11;:19;1389:6;1377:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;1419:20;1426:6;1434:4;1419:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1262:185;:::o;5185:24::-;;;;:::o;10723:332::-;1195:10;1186:19;;:5;;;;;;;;;;;:19;;;1178:28;;;;;;;;10838:12;10814:8;:20;10823:10;10814:20;;;;;;;;;;;;;;;;:36;;10805:47;;;;;;;;10888:43;10896:8;:20;10905:10;10896:20;;;;;;;;;;;;;;;;10918:12;10888:7;:43::i;:::-;10865:8;:20;10874:10;10865:20;;;;;;;;;;;;;;;:66;;;;10957:35;10965:12;;10979;10957:7;:35::i;:::-;10942:12;:50;;;;11008:37;11020:10;11032:12;11008:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;10723:332;:::o;6284:124::-;6348:12;6380:8;:20;6389:10;6380:20;;;;;;;;;;;;;;;;6373:27;;6284:124;;;:::o;4341:196::-;4408:8;;;;;;;;;;;4394:22;;:10;:22;;;4386:31;;;;;;;;4461:8;;;;;;;;;;;4433:37;;4454:5;;;;;;;;;;;4433:37;;;;;;;;;;;;4489:8;;;;;;;;;;;4481:5;;:16;;;;;;;;;;;;;;;;;;4527:1;4508:8;;:21;;;;;;;;;;;;;;;;;;4341:196::o;491:20::-;;;;;;;;;;;;;:::o;5027:37::-;;;;;;;;;;;;;;;;;;;;:::o;1967:116::-;2021:6;2053:1;2048;:6;;2040:15;;;;;;;;2074:1;2070;:5;2066:9;;1967:116;;;;:::o;6757:352::-;6837:12;973:11;:23;985:10;973:23;;;;;;;;;;;;;;;;;;;;;;;;;969:63;;;1012:8;;;969:63;6895:6;6871:8;:20;6880:10;6871:20;;;;;;;;;;;;;;;;:30;;6862:41;;;;;;;;6939:37;6947:8;:20;6956:10;6947:20;;;;;;;;;;;;;;;;6969:6;6939:7;:37::i;:::-;6916:8;:20;6925:10;6916:20;;;;;;;;;;;;;;;:60;;;;7002:29;7010:8;:12;7019:2;7010:12;;;;;;;;;;;;;;;;7024:6;7002:7;:29::i;:::-;6987:8;:12;6996:2;6987:12;;;;;;;;;;;;;;;:44;;;;7068:2;7047:32;;7056:10;7047:32;;;7072:6;7047:32;;;;;;;;;;;;;;;;;;7097:4;7090:11;;6757:352;;;;:::o;2225:115::-;2279:6;2310:1;2306;:5;2298:14;;;;;;;;2331:1;2327;:5;;;;;;;;2323:9;;2225:115;;;;:::o;1478:156::-;1195:10;1186:19;;:5;;;;;;;;;;;:19;;;1178:28;;;;;;;;1582:5;1560:11;:19;1572:6;1560:19;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;1603:23;1612:6;1620:5;1603:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1478:156;:::o;9670:317::-;9752:12;9808:6;9777:7;:19;9785:10;9777:19;;;;;;;;;;;;;;;:28;9797:7;9777:28;;;;;;;;;;;;;;;:37;;;;9851:7;9830:37;;9839:10;9830:37;;;9860:6;9830:37;;;;;;;;;;;;;;;;;;9901:7;9878:47;;;9926:10;9938:6;9946:4;9952;9878: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;9878:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9878:79:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9878:79:0;;;;9975:4;9968:11;;9670:317;;;;;:::o;520:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;2089:130::-;2143:6;2170:1;2166;:5;2162:9;;2195:1;2190;:6;:20;;;;2209:1;2204;2200;:5;;;;;;;;:10;2190:20;2182:29;;;;;;;;2089:130;;;;:::o;3970:23::-;;;;;;;;;;;;;:::o;437:24::-;;;;:::o;10476:184::-;10568:12;4199:5;;;;;;;;;;;4185:19;;:10;:19;;;4177:28;;;;;;;;10615:12;10600:37;;;10638:5;;;;;;;;;;;10645:6;10600:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10600:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10600:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10600:52:0;;;;;;;;;;;;;;;;10593:59;;10476:184;;;;:::o;9159:151::-;9240:14;9274:7;:19;9282:10;9274:19;;;;;;;;;;;;;;;:28;9294:7;9274:28;;;;;;;;;;;;;;;;9267:35;;9159:151;;;;:::o;1845:116::-;1899:6;1926:1;1922;:5;1918:9;;1951:1;1946;:6;;1938:15;;;;;;;;1845:116;;;;:::o;4233:102::-;4199:5;;;;;;;;;;;4185:19;;:10;:19;;;4177:28;;;;;;;;4318:9;4307:8;;:20;;;;;;;;;;;;;;;;;;4233:102;:::o;468:16::-;;;;;;;;;;;;;:::o

Swarm Source

bzzr://bec23ad0405ad1b21d82350c7335a2201af0572ac7cb40ec421f647a1de54b9c

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

The Gopher distributed data storage platform is a blockchain protocol in order to make it free from the limitations of the data storage systems and ultimately applicable to the real business world.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

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