ETH Price: $1,994.94 (+1.05%)

Contract

0xc4877e64b8a9c2818acBf9a0302D2D074F9c028F
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer116851102021-01-19 10:09:581875 days ago1611050998IN
0xc4877e64...74F9c028F
0 ETH0.0029591781
Transfer116590292021-01-15 10:03:071879 days ago1610704987IN
0xc4877e64...74F9c028F
0 ETH0.0032981164
Transfer116547642021-01-14 18:12:121879 days ago1610647932IN
0xc4877e64...74F9c028F
0 ETH0.0038134474
Transfer116545492021-01-14 17:23:311879 days ago1610645011IN
0xc4877e64...74F9c028F
0 ETH0.003761973
Transfer116475232021-01-13 15:41:091880 days ago1610552469IN
0xc4877e64...74F9c028F
0 ETH0.0021898260
Transfer116474742021-01-13 15:32:191880 days ago1610551939IN
0xc4877e64...74F9c028F
0 ETH0.0018625751
Transfer116449572021-01-13 6:15:251881 days ago1610518525IN
0xc4877e64...74F9c028F
0 ETH0.002317945
Transfer116448402021-01-13 5:51:191881 days ago1610517079IN
0xc4877e64...74F9c028F
0 ETH0.002317945
Transfer116448012021-01-13 5:43:041881 days ago1610516584IN
0xc4877e64...74F9c028F
0 ETH0.0027821354
Transfer116380962021-01-12 4:57:531882 days ago1610427473IN
0xc4877e64...74F9c028F
0 ETH0.0041216880
Burn115572482020-12-30 19:15:581894 days ago1609355758IN
0xc4877e64...74F9c028F
0 ETH0.00408333109.18
Burn115571172020-12-30 18:42:391894 days ago1609353759IN
0xc4877e64...74F9c028F
0 ETH0.0030284281
Mint115569822020-12-30 18:17:361894 days ago1609352256IN
0xc4877e64...74F9c028F
0 ETH0.0049877474

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

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
C2CToken

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at Etherscan.io on 2020-12-30
*/

/**
 *Submitted for verification at Etherscan.io on 2020-12-19
*/

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

pragma solidity ^0.4.26;



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

/**
 * @title Roles
 * @dev Library for managing addresses assigned to a Role.
 */
library Roles {
    struct Role {
        mapping (address => bool) bearer;
    }

    /**
     * @dev give an account access to this role
     */
    function add(Role storage role, address account) internal {
        require(account != address(0));
        require(!has(role, account));

        role.bearer[account] = true;
    }

    /**
     * @dev remove an account's access to this role
     */
    function remove(Role storage role, address account) internal {
        require(account != address(0));
        require(has(role, account));

        role.bearer[account] = false;
    }

    /**
     * @dev check if an account has this role
     * @return bool
     */
    function has(Role storage role, address account) internal view returns (bool) {
        require(account != address(0));
        return role.bearer[account];
    }
}


contract MinterRole {
    using Roles for Roles.Role;

    event MinterAdded(address indexed account);
    event MinterRemoved(address indexed account);

    Roles.Role private _minters;

    constructor () internal {
        _addMinter(msg.sender);
    }

    modifier onlyMinter() {
        require(isMinter(msg.sender));
        _;
    }

    function isMinter(address account) public view returns (bool) {
        return _minters.has(account);
    }

    function addMinter(address account) public onlyMinter {
        _addMinter(account);
    }

    function renounceMinter() public {
        _removeMinter(msg.sender);
    }

    function _addMinter(address account) internal {
        _minters.add(account);
        emit MinterAdded(account);
    }

    function _removeMinter(address account) internal {
        _minters.remove(account);
        emit MinterRemoved(account);
    }
}



// ----------------------------------------------------------------------------
// 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);
    event BuyToken(address indexed user, uint256 amount);
}


// ----------------------------------------------------------------------------
// Contract function to receive approval and execute function in one call
//

// ----------------------------------------------------------------------------
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 C2CToken is ERC20Interface, Owned, SafeMath, MinterRole {
    string public symbol;
    string public  name;
    uint8 public decimals;
    uint public _totalSupply;
    uint public startDate;
    uint public bonusEnds;
    uint public endDate;
    uint256 public rateBeforeBonus=2700;
    uint256 public rateAfterBonus=2700;

    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;
    
    event FrozenFunds(address userAddress, uint256 value);
    mapping (address => uint256) public freezeList;
    mapping (address => uint256) freezeAccount;



    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor() public {
        symbol = "C2C";
        name = "C2C Token";
        decimals = 18;
        bonusEnds = now + 6570 weeks;
        endDate = now + 8030 weeks;
        startDate = now;

    }


    // ------------------------------------------------------------------------
    // 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 returns (bool success) {
        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 returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        return true;
    }

    
    // ------------------------------------------------------------------------
    // buyToken with eth
    // ------------------------------------------------------------------------
    function buyToken() external payable{
        require(msg.value > 0, "Ener valid amount");
        emit BuyToken(msg.sender, msg.value);
        if(!owner.send(msg.value)){
            return owner.transfer(msg.value);
        }
    
    }

    // ------------------------------------------------------------------------
    // 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 returns (bool success) {
        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;
    }
    
     /**
     * @dev Internal function that mints an amount of the token and assigns it to
     * an account. This encapsulates the modification of balances such that the
     * proper events are emitted.
     * @param account The account that will receive the created tokens.
     * @param value The amount that will be created.
     */
    function _mint(address account, uint256 value) internal {
        require(account != address(0));

        _totalSupply = safeAdd(_totalSupply,value);
        balances[account] = safeAdd(balances[account],value);
        emit Transfer(address(0), account, value);
    }

    /**
     * @dev Internal function that burns an amount of the token of a given
     * account.
     * @param account The account whose tokens will be burnt.
     * @param value The amount that will be burnt.
     */
    function _burn(address account, uint256 value) internal {
        require(account != address(0));

        _totalSupply = safeSub(_totalSupply,value);
        balances[account] = safeSub(balances[account],value);
        emit Transfer(account, address(0), value);
    }



    /**
     * @dev Function to mint tokens
     * @param to The address that will receive the minted tokens.
     * @param value The amount of tokens to mint.
     * @return A boolean that indicates if the operation was successful.
     */
    function mint(address to, uint256 value) public onlyMinter returns (bool) {
        _mint(to, value);
        return true;
    }
    
    /**
     * @dev Destroys `amount` tokens from the caller.
     *
     * See {ERC20-_burn}.
     */
    function burn(address fromAdd,uint256 amount) public onlyOwner returns (bool) {
        _burn(fromAdd, amount);
    }
    
    
    /**
     * @dev Takes new 'value'for Crowdsale.
     *
     * Changes Crowdsale value.
     */
     function changeCrowdsaleRate(uint256 _value) public returns(bool){
        rateAfterBonus = _value;
        return true;
     }
     function changeCrowdsaleRateBonus(uint256 _value) public returns(bool){
        rateBeforeBonus = _value;
        return true;
     }
     
     
     
    
    
    
    function () public payable {
        require(now >= startDate && now <= endDate);
        uint tokens;
        if (now <= bonusEnds) {
            tokens = msg.value * rateBeforeBonus;
        } else {
            tokens = msg.value * rateAfterBonus;
        }
        balances[msg.sender] = safeAdd(balances[msg.sender], tokens);
        _totalSupply = safeAdd(_totalSupply, tokens);
        emit Transfer(address(0), msg.sender, tokens);
        owner.transfer(msg.value);
    }



    // ------------------------------------------------------------------------
    // 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);
    }
    
    //............................................................................
    //freeze and unfreeze
    //................................................................

    function freeze(address freezeAddress) public onlyOwner returns (bool done)
    {
        freezeList[freezeAddress]=1;
        return isFreeze(freezeAddress);
        }

    function unFreeze(address freezeAddress) public onlyOwner returns (bool done)
    {
        delete freezeList[freezeAddress];
        return !isFreeze(freezeAddress); 
    }

    function isFreeze(address freezeAddress) public view returns (bool isFreezed) 
    {
        return freezeList[freezeAddress]==1;
    }
    
    
    
    function freeze_amount (address _userAddress, uint _freezeValue) public  onlyOwner returns (bool) {
        require(_userAddress != address(0));
        require(_freezeValue > 0);
        freezeAccount[_userAddress] = safeAdd(freezeAccount[_userAddress],_freezeValue);
        balances[_userAddress] = safeSub(balances[_userAddress],_freezeValue);
        return true;
    }
    
    function Unfreeze_amount (address _userAddress, uint _unFreezeValue) public  onlyOwner returns (bool) {
        require(freezeAccount[_userAddress]>= _unFreezeValue);
        freezeAccount[_userAddress] = safeSub(freezeAccount[_userAddress],_unFreezeValue);
        balances[_userAddress] = safeAdd(balances[_userAddress],_unFreezeValue);
        return true;
    }
    
    function getFreeze_amount (address _userAddress) public view returns(uint){
        return freezeAccount[_userAddress];
    }
}

Contract Security Audit

Contract ABI

API
[{"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":"startDate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rateAfterBonus","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_userAddress","type":"address"},{"name":"_unFreezeValue","type":"uint256"}],"name":"Unfreeze_amount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_userAddress","type":"address"}],"name":"getFreeze_amount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":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":"rateBeforeBonus","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":true,"inputs":[],"name":"_totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"value","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"bonusEnds","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"changeCrowdsaleRate","outputs":[{"name":"","type":"bool"}],"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":false,"inputs":[{"name":"_userAddress","type":"address"},{"name":"_freezeValue","type":"uint256"}],"name":"freeze_amount","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"freezeAddress","type":"address"}],"name":"unFreeze","outputs":[{"name":"done","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"freezeAddress","type":"address"}],"name":"freeze","outputs":[{"name":"done","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"fromAdd","type":"address"},{"name":"amount","type":"uint256"}],"name":"burn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"buyToken","outputs":[],"payable":true,"stateMutability":"payable","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":"account","type":"address"}],"name":"isMinter","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_value","type":"uint256"}],"name":"changeCrowdsaleRateBonus","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"endDate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"freezeList","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","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":"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":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"freezeAddress","type":"address"}],"name":"isFreeze","outputs":[{"name":"isFreezed","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":"userAddress","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"FrozenFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"MinterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"MinterRemoved","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"},{"anonymous":false,"inputs":[{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"BuyToken","type":"event"}]

6080604052610a8c600a55610a8c600b553480156200001d57600080fd5b5060008054600160a060020a03191633908117909155620000479064010000000062000100810204565b6040805180820190915260038082527f433243000000000000000000000000000000000000000000000000000000000060209092019182526200008b9181620001e5565b506040805180820190915260098082527f43324320546f6b656e00000000000000000000000000000000000000000000006020909201918252620000d291600491620001e5565b506005805460ff1916601217905563ecd759004290810160085564012178fb0081016009556007556200028a565b6200011b600282640100000000620013da6200015282021704565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b600160a060020a03811615156200016857600080fd5b6200017d8282640100000000620001ad810204565b156200018857600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b6000600160a060020a0382161515620001c557600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200022857805160ff191683800117855562000258565b8280016001018555821562000258579182015b82811115620002585782518255916020019190600101906200023b565b50620002669291506200026a565b5090565b6200028791905b8082111562000266576000815560010162000271565b90565b6114c0806200029a6000396000f3006080604052600436106101c15763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461029b578063095ea7b3146103255780630b97bc861461035d5780630c0b92b4146103845780630f508d651461039957806316cae5ea146103bd57806318160ddd146103de57806323b872dd146103f357806323fabe221461041d578063313ce567146104325780633eaaf86b1461045d57806340c10f191461047257806340c65003146104965780635c07ac94146104ab57806370a08231146104c357806379ba5097146104e45780637ef91f76146104fb57806383cfab421461051f5780638d1fdf2f146105405780638da5cb5b1461056157806395d89b4114610592578063983b2d56146105a757806398650275146105c85780639dc29fac146105dd578063a482171914610601578063a9059cbb14610609578063aa271e1a1461062d578063ad5490861461064e578063c24a0f8b14610666578063c657852c1461067b578063cae9ca511461069c578063d4ee1d9014610705578063dc39d06d1461071a578063dd62ed3e1461073e578063f2fde38b14610765578063ff192bc814610786575b600060075442101580156101d757506009544211155b15156101e257600080fd5b60085442116101f65750600a5434026101fd565b50600b5434025b336000908152600c602052604090205461021790826107a7565b336000908152600c602052604090205560065461023490826107a7565b60065560408051828152905133916000916000805160206114758339815191529181900360200190a360008054604051600160a060020a03909116913480156108fc02929091818181858888f19350505050158015610297573d6000803e3d6000fd5b5050005b3480156102a757600080fd5b506102b06107bd565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102ea5781810151838201526020016102d2565b50505050905090810190601f1680156103175780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033157600080fd5b50610349600160a060020a036004351660243561084b565b604080519115158252519081900360200190f35b34801561036957600080fd5b506103726108b1565b60408051918252519081900360200190f35b34801561039057600080fd5b506103726108b7565b3480156103a557600080fd5b50610349600160a060020a03600435166024356108bd565b3480156103c957600080fd5b50610372600160a060020a036004351661096e565b3480156103ea57600080fd5b50610372610989565b3480156103ff57600080fd5b50610349600160a060020a03600435811690602435166044356109bb565b34801561042957600080fd5b50610372610aa2565b34801561043e57600080fd5b50610447610aa8565b6040805160ff9092168252519081900360200190f35b34801561046957600080fd5b50610372610ab1565b34801561047e57600080fd5b50610349600160a060020a0360043516602435610ab7565b3480156104a257600080fd5b50610372610ae0565b3480156104b757600080fd5b50610349600435610ae6565b3480156104cf57600080fd5b50610372600160a060020a0360043516610aee565b3480156104f057600080fd5b506104f9610b09565b005b34801561050757600080fd5b50610349600160a060020a0360043516602435610b91565b34801561052b57600080fd5b50610349600160a060020a0360043516610c1d565b34801561054c57600080fd5b50610349600160a060020a0360043516610c5e565b34801561056d57600080fd5b50610576610c9b565b60408051600160a060020a039092168252519081900360200190f35b34801561059e57600080fd5b506102b0610caa565b3480156105b357600080fd5b506104f9600160a060020a0360043516610d05565b3480156105d457600080fd5b506104f9610d25565b3480156105e957600080fd5b50610349600160a060020a0360043516602435610d30565b6104f9610d52565b34801561061557600080fd5b50610349600160a060020a0360043516602435610e66565b34801561063957600080fd5b50610349600160a060020a0360043516610ef8565b34801561065a57600080fd5b50610349600435610f0b565b34801561067257600080fd5b50610372610f13565b34801561068757600080fd5b50610372600160a060020a0360043516610f19565b3480156106a857600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610349948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610f2b9650505050505050565b34801561071157600080fd5b5061057661108c565b34801561072657600080fd5b50610349600160a060020a036004351660243561109b565b34801561074a57600080fd5b50610372600160a060020a0360043581169060243516611156565b34801561077157600080fd5b506104f9600160a060020a0360043516611181565b34801561079257600080fd5b50610349600160a060020a03600435166111c7565b818101828110156107b757600080fd5b92915050565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108435780601f1061081857610100808354040283529160200191610843565b820191906000526020600020905b81548152906001019060200180831161082657829003601f168201915b505050505081565b336000818152600d60209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60075481565b600b5481565b60008054600160a060020a031633146108d557600080fd5b600160a060020a0383166000908152600f60205260409020548211156108fa57600080fd5b600160a060020a0383166000908152600f602052604090205461091d90836111e5565b600160a060020a0384166000908152600f6020908152604080832093909355600c9052205461094c90836107a7565b600160a060020a0384166000908152600c602052604090205550600192915050565b600160a060020a03166000908152600f602052604090205490565b60008052600c6020527f13649b2456f1b42fef0f0040b3aaeabcd21a76a0f3f5defd4f583839455116e8546006540390565b600160a060020a0383166000908152600c60205260408120546109de90836111e5565b600160a060020a0385166000908152600c6020908152604080832093909355600d815282822033835290522054610a1590836111e5565b600160a060020a038086166000908152600d602090815260408083203384528252808320949094559186168152600c9091522054610a5390836107a7565b600160a060020a038085166000818152600c6020908152604091829020949094558051868152905191939288169260008051602061147583398151915292918290030190a35060019392505050565b600a5481565b60055460ff1681565b60065481565b6000610ac233610ef8565b1515610acd57600080fd5b610ad783836111fa565b50600192915050565b60085481565b600b55600190565b600160a060020a03166000908152600c602052604090205490565b600154600160a060020a03163314610b2057600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60008054600160a060020a03163314610ba957600080fd5b600160a060020a0383161515610bbe57600080fd5b60008211610bcb57600080fd5b600160a060020a0383166000908152600f6020526040902054610bee90836107a7565b600160a060020a0384166000908152600f6020908152604080832093909355600c9052205461094c90836111e5565b60008054600160a060020a03163314610c3557600080fd5b600160a060020a0382166000908152600e6020526040812055610c57826111c7565b1592915050565b60008054600160a060020a03163314610c7657600080fd5b600160a060020a0382166000908152600e60205260409020600190556107b7826111c7565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108435780601f1061081857610100808354040283529160200191610843565b610d0e33610ef8565b1515610d1957600080fd5b610d2281611287565b50565b610d2e336112cf565b565b60008054600160a060020a03163314610d4857600080fd5b6107b78383611317565b60003411610dc157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f456e65722076616c696420616d6f756e74000000000000000000000000000000604482015290519081900360640190fd5b60408051348152905133917fdd06b66c3ba8126086cd863137d6f3b86ce5bcf4309cac390cc265e39194d0b2919081900360200190a260008054604051600160a060020a03909116913480156108fc02929091818181858888f193505050501515610d2e5760008054604051600160a060020a03909116913480156108fc02929091818181858888f19350505050158015610e60573d6000803e3d6000fd5b50610d2e565b336000908152600c6020526040812054610e8090836111e5565b336000908152600c602052604080822092909255600160a060020a03851681522054610eac90836107a7565b600160a060020a0384166000818152600c60209081526040918290209390935580518581529051919233926000805160206114758339815191529281900390910190a350600192915050565b60006107b760028363ffffffff6113a316565b600a55600190565b60095481565b600e6020526000908152604090205481565b336000818152600d60209081526040808320600160a060020a038816808552908352818420879055815187815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a36040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018690523060448401819052608060648501908152865160848601528651600160a060020a038a1695638f4ffcb195948a94938a939192909160a490910190602085019080838360005b8381101561101b578181015183820152602001611003565b50505050905090810190601f1680156110485780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561106a57600080fd5b505af115801561107e573d6000803e3d6000fd5b506001979650505050505050565b600154600160a060020a031681565b60008054600160a060020a031633146110b357600080fd5b60008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810186905290519186169263a9059cbb926044808401936020939083900390910190829087803b15801561112357600080fd5b505af1158015611137573d6000803e3d6000fd5b505050506040513d602081101561114d57600080fd5b50519392505050565b600160a060020a039182166000908152600d6020908152604080832093909416825291909152205490565b600054600160a060020a0316331461119857600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03166000908152600e602052604090205460011490565b6000828211156111f457600080fd5b50900390565b600160a060020a038216151561120f57600080fd5b61121b600654826107a7565b600655600160a060020a0382166000908152600c602052604090205461124190826107a7565b600160a060020a0383166000818152600c602090815260408083209490945583518581529351929391926000805160206114758339815191529281900390910190a35050565b61129860028263ffffffff6113da16565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b6112e060028263ffffffff61142816565b604051600160a060020a038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b600160a060020a038216151561132c57600080fd5b611338600654826111e5565b600655600160a060020a0382166000908152600c602052604090205461135e90826111e5565b600160a060020a0383166000818152600c6020908152604080832094909455835185815293519193600080516020611475833981519152929081900390910190a35050565b6000600160a060020a03821615156113ba57600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b600160a060020a03811615156113ef57600080fd5b6113f982826113a3565b1561140357600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b600160a060020a038116151561143d57600080fd5b61144782826113a3565b151561145257600080fd5b600160a060020a0316600090815260209190915260409020805460ff191690555600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820476486dded402a2c0e6292c504d3d3d602ef1aac093de8a32415b875a66ac8550029

Deployed Bytecode

0x6080604052600436106101c15763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461029b578063095ea7b3146103255780630b97bc861461035d5780630c0b92b4146103845780630f508d651461039957806316cae5ea146103bd57806318160ddd146103de57806323b872dd146103f357806323fabe221461041d578063313ce567146104325780633eaaf86b1461045d57806340c10f191461047257806340c65003146104965780635c07ac94146104ab57806370a08231146104c357806379ba5097146104e45780637ef91f76146104fb57806383cfab421461051f5780638d1fdf2f146105405780638da5cb5b1461056157806395d89b4114610592578063983b2d56146105a757806398650275146105c85780639dc29fac146105dd578063a482171914610601578063a9059cbb14610609578063aa271e1a1461062d578063ad5490861461064e578063c24a0f8b14610666578063c657852c1461067b578063cae9ca511461069c578063d4ee1d9014610705578063dc39d06d1461071a578063dd62ed3e1461073e578063f2fde38b14610765578063ff192bc814610786575b600060075442101580156101d757506009544211155b15156101e257600080fd5b60085442116101f65750600a5434026101fd565b50600b5434025b336000908152600c602052604090205461021790826107a7565b336000908152600c602052604090205560065461023490826107a7565b60065560408051828152905133916000916000805160206114758339815191529181900360200190a360008054604051600160a060020a03909116913480156108fc02929091818181858888f19350505050158015610297573d6000803e3d6000fd5b5050005b3480156102a757600080fd5b506102b06107bd565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102ea5781810151838201526020016102d2565b50505050905090810190601f1680156103175780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561033157600080fd5b50610349600160a060020a036004351660243561084b565b604080519115158252519081900360200190f35b34801561036957600080fd5b506103726108b1565b60408051918252519081900360200190f35b34801561039057600080fd5b506103726108b7565b3480156103a557600080fd5b50610349600160a060020a03600435166024356108bd565b3480156103c957600080fd5b50610372600160a060020a036004351661096e565b3480156103ea57600080fd5b50610372610989565b3480156103ff57600080fd5b50610349600160a060020a03600435811690602435166044356109bb565b34801561042957600080fd5b50610372610aa2565b34801561043e57600080fd5b50610447610aa8565b6040805160ff9092168252519081900360200190f35b34801561046957600080fd5b50610372610ab1565b34801561047e57600080fd5b50610349600160a060020a0360043516602435610ab7565b3480156104a257600080fd5b50610372610ae0565b3480156104b757600080fd5b50610349600435610ae6565b3480156104cf57600080fd5b50610372600160a060020a0360043516610aee565b3480156104f057600080fd5b506104f9610b09565b005b34801561050757600080fd5b50610349600160a060020a0360043516602435610b91565b34801561052b57600080fd5b50610349600160a060020a0360043516610c1d565b34801561054c57600080fd5b50610349600160a060020a0360043516610c5e565b34801561056d57600080fd5b50610576610c9b565b60408051600160a060020a039092168252519081900360200190f35b34801561059e57600080fd5b506102b0610caa565b3480156105b357600080fd5b506104f9600160a060020a0360043516610d05565b3480156105d457600080fd5b506104f9610d25565b3480156105e957600080fd5b50610349600160a060020a0360043516602435610d30565b6104f9610d52565b34801561061557600080fd5b50610349600160a060020a0360043516602435610e66565b34801561063957600080fd5b50610349600160a060020a0360043516610ef8565b34801561065a57600080fd5b50610349600435610f0b565b34801561067257600080fd5b50610372610f13565b34801561068757600080fd5b50610372600160a060020a0360043516610f19565b3480156106a857600080fd5b50604080516020600460443581810135601f8101849004840285018401909552848452610349948235600160a060020a0316946024803595369594606494920191908190840183828082843750949750610f2b9650505050505050565b34801561071157600080fd5b5061057661108c565b34801561072657600080fd5b50610349600160a060020a036004351660243561109b565b34801561074a57600080fd5b50610372600160a060020a0360043581169060243516611156565b34801561077157600080fd5b506104f9600160a060020a0360043516611181565b34801561079257600080fd5b50610349600160a060020a03600435166111c7565b818101828110156107b757600080fd5b92915050565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108435780601f1061081857610100808354040283529160200191610843565b820191906000526020600020905b81548152906001019060200180831161082657829003601f168201915b505050505081565b336000818152600d60209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60075481565b600b5481565b60008054600160a060020a031633146108d557600080fd5b600160a060020a0383166000908152600f60205260409020548211156108fa57600080fd5b600160a060020a0383166000908152600f602052604090205461091d90836111e5565b600160a060020a0384166000908152600f6020908152604080832093909355600c9052205461094c90836107a7565b600160a060020a0384166000908152600c602052604090205550600192915050565b600160a060020a03166000908152600f602052604090205490565b60008052600c6020527f13649b2456f1b42fef0f0040b3aaeabcd21a76a0f3f5defd4f583839455116e8546006540390565b600160a060020a0383166000908152600c60205260408120546109de90836111e5565b600160a060020a0385166000908152600c6020908152604080832093909355600d815282822033835290522054610a1590836111e5565b600160a060020a038086166000908152600d602090815260408083203384528252808320949094559186168152600c9091522054610a5390836107a7565b600160a060020a038085166000818152600c6020908152604091829020949094558051868152905191939288169260008051602061147583398151915292918290030190a35060019392505050565b600a5481565b60055460ff1681565b60065481565b6000610ac233610ef8565b1515610acd57600080fd5b610ad783836111fa565b50600192915050565b60085481565b600b55600190565b600160a060020a03166000908152600c602052604090205490565b600154600160a060020a03163314610b2057600080fd5b60015460008054604051600160a060020a0393841693909116917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b60008054600160a060020a03163314610ba957600080fd5b600160a060020a0383161515610bbe57600080fd5b60008211610bcb57600080fd5b600160a060020a0383166000908152600f6020526040902054610bee90836107a7565b600160a060020a0384166000908152600f6020908152604080832093909355600c9052205461094c90836111e5565b60008054600160a060020a03163314610c3557600080fd5b600160a060020a0382166000908152600e6020526040812055610c57826111c7565b1592915050565b60008054600160a060020a03163314610c7657600080fd5b600160a060020a0382166000908152600e60205260409020600190556107b7826111c7565b600054600160a060020a031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108435780601f1061081857610100808354040283529160200191610843565b610d0e33610ef8565b1515610d1957600080fd5b610d2281611287565b50565b610d2e336112cf565b565b60008054600160a060020a03163314610d4857600080fd5b6107b78383611317565b60003411610dc157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f456e65722076616c696420616d6f756e74000000000000000000000000000000604482015290519081900360640190fd5b60408051348152905133917fdd06b66c3ba8126086cd863137d6f3b86ce5bcf4309cac390cc265e39194d0b2919081900360200190a260008054604051600160a060020a03909116913480156108fc02929091818181858888f193505050501515610d2e5760008054604051600160a060020a03909116913480156108fc02929091818181858888f19350505050158015610e60573d6000803e3d6000fd5b50610d2e565b336000908152600c6020526040812054610e8090836111e5565b336000908152600c602052604080822092909255600160a060020a03851681522054610eac90836107a7565b600160a060020a0384166000818152600c60209081526040918290209390935580518581529051919233926000805160206114758339815191529281900390910190a350600192915050565b60006107b760028363ffffffff6113a316565b600a55600190565b60095481565b600e6020526000908152604090205481565b336000818152600d60209081526040808320600160a060020a038816808552908352818420879055815187815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a36040517f8f4ffcb10000000000000000000000000000000000000000000000000000000081523360048201818152602483018690523060448401819052608060648501908152865160848601528651600160a060020a038a1695638f4ffcb195948a94938a939192909160a490910190602085019080838360005b8381101561101b578181015183820152602001611003565b50505050905090810190601f1680156110485780820380516001836020036101000a031916815260200191505b5095505050505050600060405180830381600087803b15801561106a57600080fd5b505af115801561107e573d6000803e3d6000fd5b506001979650505050505050565b600154600160a060020a031681565b60008054600160a060020a031633146110b357600080fd5b60008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a0392831660048201526024810186905290519186169263a9059cbb926044808401936020939083900390910190829087803b15801561112357600080fd5b505af1158015611137573d6000803e3d6000fd5b505050506040513d602081101561114d57600080fd5b50519392505050565b600160a060020a039182166000908152600d6020908152604080832093909416825291909152205490565b600054600160a060020a0316331461119857600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b600160a060020a03166000908152600e602052604090205460011490565b6000828211156111f457600080fd5b50900390565b600160a060020a038216151561120f57600080fd5b61121b600654826107a7565b600655600160a060020a0382166000908152600c602052604090205461124190826107a7565b600160a060020a0383166000818152600c602090815260408083209490945583518581529351929391926000805160206114758339815191529281900390910190a35050565b61129860028263ffffffff6113da16565b604051600160a060020a038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b6112e060028263ffffffff61142816565b604051600160a060020a038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b600160a060020a038216151561132c57600080fd5b611338600654826111e5565b600655600160a060020a0382166000908152600c602052604090205461135e90826111e5565b600160a060020a0383166000818152600c6020908152604080832094909455835185815293519193600080516020611475833981519152929081900390910190a35050565b6000600160a060020a03821615156113ba57600080fd5b50600160a060020a03166000908152602091909152604090205460ff1690565b600160a060020a03811615156113ef57600080fd5b6113f982826113a3565b1561140357600080fd5b600160a060020a0316600090815260209190915260409020805460ff19166001179055565b600160a060020a038116151561143d57600080fd5b61144782826113a3565b151561145257600080fd5b600160a060020a0316600090815260209190915260409020805460ff191690555600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a72305820476486dded402a2c0e6292c504d3d3d602ef1aac093de8a32415b875a66ac8550029

Deployed Bytecode Sourcemap

5289:10255:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13092:11;13053:9;;13046:3;:16;;:34;;;;;13073:7;;13066:3;:14;;13046:34;13038:43;;;;;;;;13125:9;;13118:3;:16;13114:153;;-1:-1:-1;13172:15:0;;13160:9;:27;13114:153;;;-1:-1:-1;13241:14:0;;13229:9;:26;13114:153;13317:10;13308:20;;;;:8;:20;;;;;;13300:37;;13330:6;13300:7;:37::i;:::-;13286:10;13277:20;;;;:8;:20;;;;;:60;13371:12;;13363:29;;13385:6;13363:7;:29::i;:::-;13348:12;:44;13408:40;;;;;;;;13429:10;;13425:1;;-1:-1:-1;;;;;;;;;;;13408:40:0;;;;;;;;13459:5;;;:25;;-1:-1:-1;;;;;13459:5:0;;;;13474:9;13459:25;;;;;13474:9;;13459:25;:5;:25;13474:9;13459:5;:25;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13459:25:0;13000:492;5289:10255;5388:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5388:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5388:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8110:208;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8110:208:0;-1:-1:-1;;;;;8110:208:0;;;;;;;;;;;;;;;;;;;;;;;;;5473:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5473:21:0;;;;;;;;;;;;;;;;;;;;5597:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5597:34:0;;;;15032:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15032:370:0;-1:-1:-1;;;;;15032:370:0;;;;;;;15414:127;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15414:127:0;-1:-1:-1;;;;;15414:127:0;;;;;6499:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6499:116:0;;;;9307:358;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9307:358:0;-1:-1:-1;;;;;9307:358:0;;;;;;;;;;;;5555:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5555:35:0;;;;5414:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5414:21:0;;;;;;;;;;;;;;;;;;;;;;;5442:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5442:24:0;;;;12189:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12189:131:0;-1:-1:-1;;;;;12189:131:0;;;;;;;5501:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5501:21:0;;;;12682:130;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12682:130:0;;;;;6842:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6842:124:0;-1:-1:-1;;;;;6842:124:0;;;;;4821:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4821:196:0;;;;;;14640:380;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14640:380:0;-1:-1:-1;;;;;14640:380:0;;;;;;;14293:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14293:177:0;-1:-1:-1;;;;;14293:177:0;;;;;14113:172;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14113:172:0;-1:-1:-1;;;;;14113:172:0;;;;;4415:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4415:20:0;;;;;;;;-1:-1:-1;;;;;4415:20:0;;;;;;;;;;;;;;5361;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5361:20:0;;;;2334:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2334:92:0;-1:-1:-1;;;;;2334:92:0;;;;;2434:77;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2434:77:0;;;;12440:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12440:119:0;-1:-1:-1;;;;;12440:119:0;;;;;;;8520:246;;;;7317:277;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7317:277:0;-1:-1:-1;;;;;7317:277:0;;;;;;;2217:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2217:109:0;-1:-1:-1;;;;;2217:109:0;;;;;12819:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12819:136:0;;;;;5529:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5529:19:0;;;;5805:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5805:46:0;-1:-1:-1;;;;;5805:46:0;;;;;10472:317;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10472:317:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10472:317:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10472:317:0;;-1:-1:-1;10472:317:0;;-1:-1:-1;;;;;;;10472:317:0;4442:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4442:23:0;;;;13732:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13732:184:0;-1:-1:-1;;;;;13732:184:0;;;;;;;9953:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9953:151:0;-1:-1:-1;;;;;9953:151:0;;;;;;;;;;4713:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4713:102:0;-1:-1:-1;;;;;4713:102:0;;;;;14478:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14478:138:0;-1:-1:-1;;;;;14478:138:0;;;;;376:118;455:5;;;479:6;;;;471:15;;;;;;376:118;;;;:::o;5388:19::-;;;;;;;;;;;;;;;-1:-1:-1;;5388:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8110:208::-;8206:10;8173:12;8198:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;8198:28:0;;;;;;;;;;;:37;;;8251;;;;;;;8173:12;;8198:28;;8206:10;;8251:37;;;;;;;;-1:-1:-1;8306:4:0;8110:208;;;;:::o;5473:21::-;;;;:::o;5597:34::-;;;;:::o;15032:370::-;15128:4;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;-1:-1:-1;;;;;15153:27:0;;;;;;:13;:27;;;;;;:44;-1:-1:-1;15153:44:0;15145:53;;;;;;-1:-1:-1;;;;;15247:27:0;;;;;;:13;:27;;;;;;15239:51;;15275:14;15239:7;:51::i;:::-;-1:-1:-1;;;;;15209:27:0;;;;;;:13;:27;;;;;;;;:81;;;;15334:8;:22;;;;15326:46;;15357:14;15326:7;:46::i;:::-;-1:-1:-1;;;;;15301:22:0;;;;;;:8;:22;;;;;:71;-1:-1:-1;15390:4:0;15032:370;;;;:::o;15414:127::-;-1:-1:-1;;;;;15506:27:0;15483:4;15506:27;;;:13;:27;;;;;;;15414:127::o;6499:116::-;6547:4;6587:20;;:8;:20;;;;6571:12;;:36;6499:116;:::o;9307:358::-;-1:-1:-1;;;;;9434:14:0;;9384:12;9434:14;;;:8;:14;;;;;;9426:31;;9450:6;9426:7;:31::i;:::-;-1:-1:-1;;;;;9409:14:0;;;;;;:8;:14;;;;;;;;:48;;;;9504:7;:13;;;;;9518:10;9504:25;;;;;;9496:42;;9531:6;9496:7;:42::i;:::-;-1:-1:-1;;;;;9468:13:0;;;;;;;:7;:13;;;;;;;;9482:10;9468:25;;;;;;;:70;;;;9572:12;;;;;:8;:12;;;;;9564:29;;9586:6;9564:7;:29::i;:::-;-1:-1:-1;;;;;9549:12:0;;;;;;;:8;:12;;;;;;;;;:44;;;;9609:26;;;;;;;9549:12;;9609:26;;;;-1:-1:-1;;;;;;;;;;;9609:26:0;;;;;;;;-1:-1:-1;9653:4:0;9307:358;;;;;:::o;5555:35::-;;;;:::o;5414:21::-;;;;;;:::o;5442:24::-;;;;:::o;12189:131::-;12257:4;2168:20;2177:10;2168:8;:20::i;:::-;2160:29;;;;;;;;12274:16;12280:2;12284:5;12274;:16::i;:::-;-1:-1:-1;12308:4:0;12189:131;;;;:::o;5501:21::-;;;;:::o;12682:130::-;12758:14;:23;12799:4;;12682:130::o;6842:124::-;-1:-1:-1;;;;;6938:20:0;6906:12;6938:20;;;:8;:20;;;;;;;6842:124::o;4821:196::-;4888:8;;-1:-1:-1;;;;;4888:8:0;4874:10;:22;4866:31;;;;;;4941:8;;;4934:5;;4913:37;;-1:-1:-1;;;;;4941:8:0;;;;4934:5;;;;4913:37;;;4969:8;;;;4961:16;;-1:-1:-1;;4961:16:0;;;-1:-1:-1;;;;;4969:8:0;;4961:16;;;;4988:21;;;4821:196::o;14640:380::-;14732:4;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;-1:-1:-1;;;;;14757:26:0;;;;14749:35;;;;;;14818:1;14803:16;;14795:25;;;;;;-1:-1:-1;;;;;14869:27:0;;;;;;:13;:27;;;;;;14861:49;;14897:12;14861:7;:49::i;:::-;-1:-1:-1;;;;;14831:27:0;;;;;;:13;:27;;;;;;;;:79;;;;14954:8;:22;;;;14946:44;;14977:12;14946:7;:44::i;14293:177::-;14360:9;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;-1:-1:-1;;;;;14394:25:0;;;;;;:10;:25;;;;;14387:32;14438:23;14405:13;14438:8;:23::i;:::-;14437:24;;14293:177;-1:-1:-1;;14293:177:0:o;14113:172::-;14178:9;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;-1:-1:-1;;;;;14205:25:0;;;;;;:10;:25;;;;;14231:1;14205:27;;14250:23;14216:13;14250:8;:23::i;4415:20::-;;;-1:-1:-1;;;;;4415:20:0;;:::o;5361:::-;;;;;;;;;;;;;;;-1:-1:-1;;5361:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2334:92;2168:20;2177:10;2168:8;:20::i;:::-;2160:29;;;;;;;;2399:19;2410:7;2399:10;:19::i;:::-;2334:92;:::o;2434:77::-;2478:25;2492:10;2478:13;:25::i;:::-;2434:77::o;12440:119::-;12512:4;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;12529:22;12535:7;12544:6;12529:5;:22::i;8520:246::-;8587:1;8575:9;:13;8567:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8626:31;;;8647:9;8626:31;;;;8635:10;;8626:31;;;;;;;;;;8672:5;;;:21;;-1:-1:-1;;;;;8672:5:0;;;;8683:9;8672:21;;;;;8683:9;;8672:21;:5;:21;8683:9;8672:5;:21;;;;;;;8671:22;8668:85;;;8716:5;;;:25;;-1:-1:-1;;;;;8716:5:0;;;;8731:9;8716:25;;;;;8731:9;;8716:25;:5;:25;8731:9;8716:5;:25;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8716:25:0;8709:32;;7317:277;7441:10;7376:12;7432:20;;;:8;:20;;;;;;7424:37;;7454:6;7424:7;:37::i;:::-;7410:10;7401:20;;;;:8;:20;;;;;;:60;;;;-1:-1:-1;;;;;7495:12:0;;;;;;7487:29;;7509:6;7487:7;:29::i;:::-;-1:-1:-1;;;;;7472:12:0;;;;;;:8;:12;;;;;;;;;:44;;;;7532:32;;;;;;;7472:12;;7541:10;;-1:-1:-1;;;;;;;;;;;7532:32:0;;;;;;;;;-1:-1:-1;7582:4:0;7317:277;;;;:::o;2217:109::-;2273:4;2297:21;:8;2310:7;2297:21;:12;:21;:::i;12819:136::-;12900:15;:24;12942:4;;12819:136::o;5529:19::-;;;;:::o;5805:46::-;;;;;;;;;;;;;:::o;10472:317::-;10587:10;10554:12;10579:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;10579:28:0;;;;;;;;;;;:37;;;10632;;;;;;;10554:12;;10579:28;;10587:10;;10632:37;;;;;;;;10680:79;;;;;10728:10;10680:79;;;;;;;;;;;;10748:4;10680:79;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10680:47:0;;;;;10728:10;10740:6;;10748:4;10754;;10680:79;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10680:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10680:79:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;10777:4:0;;10472:317;-1:-1:-1;;;;;;;10472:317:0:o;4442:23::-;;;-1:-1:-1;;;;;4442:23:0;;:::o;13732:184::-;13824:12;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;13894:5;;;13856:52;;;;;;-1:-1:-1;;;;;13894:5:0;;;13856:52;;;;;;;;;;;;:37;;;;;;:52;;;;;;;;;;;;;;;;;:37;:52;;;5:2:-1;;;;30:1;27;20:12;5:2;13856:52:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13856:52:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13856:52:0;;13732:184;-1:-1:-1;;;13732:184:0:o;9953:151::-;-1:-1:-1;;;;;10068:19:0;;;10034:14;10068:19;;;:7;:19;;;;;;;;:28;;;;;;;;;;;;;9953:151::o;4713:102::-;4679:5;;-1:-1:-1;;;;;4679:5:0;4665:10;:19;4657:28;;;;;;4787:8;:20;;-1:-1:-1;;4787:20:0;-1:-1:-1;;;;;4787:20:0;;;;;;;;;;4713:102::o;14478:138::-;-1:-1:-1;;;;;14580:25:0;14540:14;14580:25;;;:10;:25;;;;;;14607:1;14580:28;;14478:138::o;500:118::-;556:6;583;;;;575:15;;;;;;-1:-1:-1;605:5:0;;;500:118::o;11146:275::-;-1:-1:-1;;;;;11221:21:0;;;;11213:30;;;;;;11271:27;11279:12;;11292:5;11271:7;:27::i;:::-;11256:12;:42;-1:-1:-1;;;;;11337:17:0;;;;;;:8;:17;;;;;;11329:32;;11355:5;11329:7;:32::i;:::-;-1:-1:-1;;;;;11309:17:0;;;;;;:8;:17;;;;;;;;:52;;;;11377:36;;;;;;;11309:17;;;;-1:-1:-1;;;;;;;;;;;11377:36:0;;;;;;;;;11146:275;;:::o;2519:122::-;2576:21;:8;2589:7;2576:21;:12;:21;:::i;:::-;2613:20;;-1:-1:-1;;;;;2613:20:0;;;;;;;;2519:122;:::o;2649:130::-;2709:24;:8;2725:7;2709:24;:15;:24;:::i;:::-;2749:22;;-1:-1:-1;;;;;2749:22:0;;;;;;;;2649:130;:::o;11655:275::-;-1:-1:-1;;;;;11730:21:0;;;;11722:30;;;;;;11780:27;11788:12;;11801:5;11780:7;:27::i;:::-;11765:12;:42;-1:-1:-1;;;;;11846:17:0;;;;;;:8;:17;;;;;;11838:32;;11864:5;11838:7;:32::i;:::-;-1:-1:-1;;;;;11818:17:0;;;;;;:8;:17;;;;;;;;:52;;;;11886:36;;;;;;;11818:17;;-1:-1:-1;;;;;;;;;;;11886:36:0;;;;;;;;;;11655:275;;:::o;1680:165::-;1752:4;-1:-1:-1;;;;;1777:21:0;;;;1769:30;;;;;;-1:-1:-1;;;;;;1817:20:0;:11;:20;;;;;;;;;;;;;;;1680:165::o;1132:186::-;-1:-1:-1;;;;;1209:21:0;;;;1201:30;;;;;;1251:18;1255:4;1261:7;1251:3;:18::i;:::-;1250:19;1242:28;;;;;;-1:-1:-1;;;;;1283:20:0;:11;:20;;;;;;;;;;;:27;;-1:-1:-1;;1283:27:0;1306:4;1283:27;;;1132:186::o;1397:189::-;-1:-1:-1;;;;;1477:21:0;;;;1469:30;;;;;;1518:18;1522:4;1528:7;1518:3;:18::i;:::-;1510:27;;;;;;;;-1:-1:-1;;;;;1550:20:0;1573:5;1550:20;;;;;;;;;;;:28;;-1:-1:-1;;1550:28:0;;;1397:189::o

Swarm Source

bzzr://476486dded402a2c0e6292c504d3d3d602ef1aac093de8a32415b875a66ac855

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.