ETH Price: $3,180.35 (+1.49%)
Gas: 5 Gwei

Contract

0x81127DCbe78D10E045f672e9a7336DF82d3619ea
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer121855872021-04-06 10:18:511194 days ago1617704331IN
0x81127DCb...82d3619ea
0 ETH0.00389298105
Transfer113208472020-11-24 11:49:001327 days ago1606218540IN
0x81127DCb...82d3619ea
0 ETH0.00436737117
Approve110945512020-10-20 18:12:561362 days ago1603217576IN
0x81127DCb...82d3619ea
0 ETH0.0025956458.5
Transfer108146552020-09-07 12:56:181405 days ago1599483378IN
0x81127DCb...82d3619ea
0.00030587 ETH0.002625125
Transfer107195932020-08-23 23:27:261420 days ago1598225246IN
0x81127DCb...82d3619ea
0 ETH0.0019410552
Mint106892182020-08-19 7:33:571424 days ago1597822437IN
0x81127DCb...82d3619ea
0 ETH0.00623772159
Mint106892132020-08-19 7:32:361424 days ago1597822356IN
0x81127DCb...82d3619ea
0 ETH0.00623582159
Mint106892032020-08-19 7:28:421424 days ago1597822122IN
0x81127DCb...82d3619ea
0 ETH0.0061966158
Approve106853502020-08-18 17:23:041425 days ago1597771384IN
0x81127DCb...82d3619ea
0 ETH0.0042861496.60000129
Approve106851072020-08-18 16:34:291425 days ago1597768469IN
0x81127DCb...82d3619ea
0 ETH0.00763164172
Approve106844672020-08-18 14:13:471425 days ago1597760027IN
0x81127DCb...82d3619ea
0 ETH0.00789209177.87
Approve106841222020-08-18 12:59:351425 days ago1597755575IN
0x81127DCb...82d3619ea
0 ETH0.00585684132
Approve106840952020-08-18 12:53:181425 days ago1597755198IN
0x81127DCb...82d3619ea
0 ETH0.00567936128
Approve106839232020-08-18 12:15:141425 days ago1597752914IN
0x81127DCb...82d3619ea
0 ETH0.00470322106
Approve106837852020-08-18 11:47:211425 days ago1597751241IN
0x81127DCb...82d3619ea
0 ETH0.00606937136.79
Approve106837202020-08-18 11:31:121425 days ago1597750272IN
0x81127DCb...82d3619ea
0 ETH0.0040820492.00000123
Approve106835782020-08-18 11:02:451425 days ago1597748565IN
0x81127DCb...82d3619ea
0 ETH0.00479196108
Approve106834662020-08-18 10:37:481425 days ago1597747068IN
0x81127DCb...82d3619ea
0 ETH0.00510255115
Approve106833292020-08-18 10:07:521425 days ago1597745272IN
0x81127DCb...82d3619ea
0 ETH0.0070992160
Approve106831902020-08-18 9:36:091425 days ago1597743369IN
0x81127DCb...82d3619ea
0 ETH0.00545751123
Approve106831832020-08-18 9:34:281425 days ago1597743268IN
0x81127DCb...82d3619ea
0 ETH0.00545751123
Approve106830922020-08-18 9:14:011425 days ago1597742041IN
0x81127DCb...82d3619ea
0 ETH0.00510255115
Approve106827832020-08-18 8:04:421425 days ago1597737882IN
0x81127DCb...82d3619ea
0 ETH0.00519129117
Approve106827712020-08-18 8:01:201425 days ago1597737680IN
0x81127DCb...82d3619ea
0 ETH0.00550188124
Approve106827622020-08-18 7:59:401425 days ago1597737580IN
0x81127DCb...82d3619ea
0 ETH0.0034605977.99399996
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
106809592020-08-18 1:11:351425 days ago1597713095
0x81127DCb...82d3619ea
3 ETH
106806712020-08-18 0:08:561426 days ago1597709336
0x81127DCb...82d3619ea
1 ETH
106785952020-08-17 16:27:081426 days ago1597681628
0x81127DCb...82d3619ea
0.141924 ETH
106785492020-08-17 16:14:571426 days ago1597680897
0x81127DCb...82d3619ea
0.2 ETH
106785112020-08-17 16:05:081426 days ago1597680308
0x81127DCb...82d3619ea
0.2 ETH
106784962020-08-17 16:02:281426 days ago1597680148
0x81127DCb...82d3619ea
1 ETH
106784932020-08-17 16:01:021426 days ago1597680062
0x81127DCb...82d3619ea
1 ETH
106784922020-08-17 16:00:531426 days ago1597680053
0x81127DCb...82d3619ea
1 ETH
106784882020-08-17 16:00:151426 days ago1597680015
0x81127DCb...82d3619ea
2 ETH
106784852020-08-17 15:59:141426 days ago1597679954
0x81127DCb...82d3619ea
5 ETH
106784822020-08-17 15:58:241426 days ago1597679904
0x81127DCb...82d3619ea
2 ETH
106784762020-08-17 15:57:321426 days ago1597679852
0x81127DCb...82d3619ea
0.05 ETH
106784742020-08-17 15:57:001426 days ago1597679820
0x81127DCb...82d3619ea
0.5 ETH
106784712020-08-17 15:56:401426 days ago1597679800
0x81127DCb...82d3619ea
4.95 ETH
106784712020-08-17 15:56:401426 days ago1597679800
0x81127DCb...82d3619ea
2 ETH
106784692020-08-17 15:56:171426 days ago1597679777
0x81127DCb...82d3619ea
1 ETH
106784672020-08-17 15:56:111426 days ago1597679771
0x81127DCb...82d3619ea
0.10132146 ETH
106784672020-08-17 15:56:111426 days ago1597679771
0x81127DCb...82d3619ea
1 ETH
106784632020-08-17 15:54:441426 days ago1597679684
0x81127DCb...82d3619ea
0.5 ETH
106784622020-08-17 15:54:201426 days ago1597679660
0x81127DCb...82d3619ea
0.5 ETH
106784552020-08-17 15:53:531426 days ago1597679633
0x81127DCb...82d3619ea
2 ETH
106784542020-08-17 15:53:491426 days ago1597679629
0x81127DCb...82d3619ea
4 ETH
106784502020-08-17 15:53:161426 days ago1597679596
0x81127DCb...82d3619ea
0.2 ETH
106784492020-08-17 15:53:101426 days ago1597679590
0x81127DCb...82d3619ea
1 ETH
106784452020-08-17 15:52:541426 days ago1597679574
0x81127DCb...82d3619ea
0.6 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ElectriqNetwork

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-08-11
*/

pragma solidity ^0.4.24;

library SafeMath {
    function add(uint a, uint b) internal pure returns (uint c) {
        c = a + b;
        require(c >= a);
    }
    function sub(uint a, uint b) internal pure returns (uint c) {
        require(b <= a);
        c = a - b;
    }
    function mul(uint a, uint b) internal pure returns (uint c) {
        c = a * b;
        require(a == 0 || c / a == b);
    }
    function div(uint a, uint b) internal pure returns (uint c) {
        require(b > 0);
        c = a / b;
    }
}

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// ----------------------------------------------------------------------------
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);
}

// ----------------------------------------------------------------------------
// Ownership contract
// ----------------------------------------------------------------------------
contract Owned {

    address public owner;

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

    constructor() public {
        owner = 0xB4d8F78a9e403E50016623ED11bec00B89411311;
    }

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

    // transfer Ownership to other address
    function transferOwnership(address _newOwner) public onlyOwner {
        require(_newOwner != address(0x0));
        emit OwnershipTransferred(owner,_newOwner);
        owner = _newOwner;
    }
}

// ----------------------------------------------------------------------------
// ERC20 Token, with the addition of symbol, name and decimals and an
// initial fixed supply
// ----------------------------------------------------------------------------
contract ElectriqNetwork is ERC20Interface, Owned {

    using SafeMath for uint;

    string public symbol;
    string public  name;
    uint8 public decimals;
    uint public _totalSupply;
    uint public RATE;
    uint public DENOMINATOR;
    bool public isStopped = false;

    mapping(address => uint) balances;

    mapping(address => mapping(address => uint)) allowed;

    event Mint(address indexed to, uint256 amount);
    event ChangeRate(uint256 amount);

    modifier onlyWhenRunning {
        require(!isStopped);
        _;
    }


    // ------------------------------------------------------------------------
    // Constructor
    // ------------------------------------------------------------------------
    constructor() public {
        symbol = "Eleq";
        name = "Electriq Network";
        decimals = 18;
        _totalSupply = 300000000 * 10**uint(decimals);
        balances[owner] = _totalSupply;
        RATE = 2500000000; // 250k tokens per 1 ether
        DENOMINATOR = 10000;
        emit Transfer(address(0), owner, _totalSupply);
    }


    // ----------------------------------------------------------------------------
    // It invokes when someone sends ETH to this contract address
    // ----------------------------------------------------------------------------
    function() public payable {
        getTokens();
    }

    // ----------------------------------------------------------------------------
    // Low level token purchase function
    // tokens are transferred to user
    // ETH are transferred to current owner
    // ----------------------------------------------------------------------------
    function getTokens() onlyWhenRunning public payable {
        require(msg.value > 0);

        uint tokens = msg.value.mul(RATE).div(DENOMINATOR);
        require(balances[owner] >= tokens);

        balances[msg.sender] = balances[msg.sender].add(tokens);
        balances[owner] = balances[owner].sub(tokens);

        emit Transfer(owner, msg.sender, tokens);

        owner.transfer(msg.value);
    }

    // ------------------------------------------------------------------------
    // Total supply
    // ------------------------------------------------------------------------
    function totalSupply() public view returns (uint) {
        return _totalSupply;
    }

    // ------------------------------------------------------------------------
    // Get the token balance for account `tokenOwner`
    // ------------------------------------------------------------------------
    function balanceOf(address tokenOwner) public view 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) {
        require(to != address(0));
        require(tokens > 0);
        require(balances[msg.sender] >= tokens);

        balances[msg.sender] = balances[msg.sender].sub(tokens);
        balances[to] = balances[to].add(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) {
        require(spender != address(0));
        require(tokens > 0);

        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
    // ------------------------------------------------------------------------
    function transferFrom(address from, address to, uint tokens) public returns (bool success) {
        require(from != address(0));
        require(to != address(0));
        require(tokens > 0);
        require(balances[from] >= tokens);
        require(allowed[from][msg.sender] >= tokens);

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


    // ------------------------------------------------------------------------
    // 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 view returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }


    // ------------------------------------------------------------------------
    // Increase the amount of tokens that an owner allowed to a spender.
    //
    // approve should be called when allowed[_spender] == 0. To increment
    // allowed value is better to use this function to avoid 2 calls (and wait until
    // the first transaction is mined)
    // _spender The address which will spend the funds.
    // _addedValue The amount of tokens to increase the allowance by.
    // ------------------------------------------------------------------------
    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
        require(_spender != address(0));

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


    // ------------------------------------------------------------------------
    // Decrease the amount of tokens that an owner allowed to a spender.
    //
    // approve should be called when allowed[_spender] == 0. To decrement
    // allowed value is better to use this function to avoid 2 calls (and wait until
    // the first transaction is mined)
    // _spender The address which will spend the funds.
    // _subtractedValue The amount of tokens to decrease the allowance by.
    // ------------------------------------------------------------------------
    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
        require(_spender != address(0));

        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }


    // ------------------------------------------------------------------------
    // Change the ETH to IO rate
    // ------------------------------------------------------------------------
    function changeRate(uint256 _rate) public onlyOwner {
        require(_rate > 0);

        RATE =_rate;
        emit ChangeRate(_rate);
    }


    // ------------------------------------------------------------------------
    // Function to mint tokens
    // _to The address that will receive the minted tokens.
    // _amount The amount of tokens to mint.
    // A boolean that indicates if the operation was successful.
    // ------------------------------------------------------------------------
    function mint(address _to, uint256 _amount) onlyOwner public returns (bool) {
        require(_to != address(0));
        require(_amount > 0);

        uint newamount = _amount * 10**uint(decimals);
        _totalSupply = _totalSupply.add(newamount);
        balances[_to] = balances[_to].add(newamount);

        emit Mint(_to, newamount);
        emit Transfer(address(0), _to, newamount);
        return true;
    }


    // ------------------------------------------------------------------------
    // function to stop the ICO
    // ------------------------------------------------------------------------
    function stopICO() onlyOwner public {
        isStopped = true;
    }


    // ------------------------------------------------------------------------
    // function to resume ICO
    // ------------------------------------------------------------------------
    function resumeICO() onlyOwner public {
        isStopped = false;
    }

}

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":"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":true,"inputs":[],"name":"isStopped","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_amount","type":"uint256"}],"name":"mint","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"RATE","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"}],"name":"changeRate","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":"DENOMINATOR","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"resumeICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"getTokens","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"stopICO","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":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"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"amount","type":"uint256"}],"name":"ChangeRate","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"}]

60806040526000600760006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5073b4d8f78a9e403e50016623ed11bec00b894113116000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280600481526020017f456c65710000000000000000000000000000000000000000000000000000000081525060019080519060200190620000ce92919062000265565b506040805190810160405280601081526020017f456c656374726971204e6574776f726b00000000000000000000000000000000815250600290805190602001906200011c92919062000265565b506012600360006101000a81548160ff021916908360ff160217905550600360009054906101000a900460ff1660ff16600a0a6311e1a30002600481905550600454600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550639502f9006005819055506127106006819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004546040518082815260200191505060405180910390a362000314565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002a857805160ff1916838001178555620002d9565b82800160010185558215620002d9579182015b82811115620002d8578251825591602001919060010190620002bb565b5b509050620002e89190620002ec565b5090565b6200031191905b808211156200030d576000816000905550600101620002f3565b5090565b90565b611f9880620003246000396000f300608060405260043610610128576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610132578063095ea7b3146101c257806318160ddd1461022757806323b872dd14610252578063313ce567146102d75780633eaaf86b146103085780633f683b6a1461033357806340c10f191461036257806366188463146103c7578063664e97041461042c57806370a082311461045757806374e7493b146104ae5780638da5cb5b146104db578063918f86741461053257806395d89b411461055d5780639cbd7da5146105ed578063a9059cbb14610604578063aa6ca80814610669578063c8e569a814610673578063d73dd6231461068a578063dd62ed3e146106ef578063f2fde38b14610766575b6101306107a9565b005b34801561013e57600080fd5b50610147610acd565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018757808201518184015260208101905061016c565b50505050905090810190601f1680156101b45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101ce57600080fd5b5061020d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b6b565b604051808215151515815260200191505060405180910390f35b34801561023357600080fd5b5061023c610ca7565b6040518082815260200191505060405180910390f35b34801561025e57600080fd5b506102bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cb1565b604051808215151515815260200191505060405180910390f35b3480156102e357600080fd5b506102ec6110bb565b604051808260ff1660ff16815260200191505060405180910390f35b34801561031457600080fd5b5061031d6110ce565b6040518082815260200191505060405180910390f35b34801561033f57600080fd5b506103486110d4565b604051808215151515815260200191505060405180910390f35b34801561036e57600080fd5b506103ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110e7565b604051808215151515815260200191505060405180910390f35b3480156103d357600080fd5b50610412600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611319565b604051808215151515815260200191505060405180910390f35b34801561043857600080fd5b506104416115e6565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b50610498600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115ec565b6040518082815260200191505060405180910390f35b3480156104ba57600080fd5b506104d960048036038101908080359060200190929190505050611635565b005b3480156104e757600080fd5b506104f06116e0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561053e57600080fd5b50610547611705565b6040518082815260200191505060405180910390f35b34801561056957600080fd5b5061057261170b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105b2578082015181840152602081019050610597565b50505050905090810190601f1680156105df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105f957600080fd5b506106026117a9565b005b34801561061057600080fd5b5061064f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611821565b604051808215151515815260200191505060405180910390f35b6106716107a9565b005b34801561067f57600080fd5b50610688611a54565b005b34801561069657600080fd5b506106d5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611acc565b604051808215151515815260200191505060405180910390f35b3480156106fb57600080fd5b50610750600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d03565b6040518082815260200191505060405180910390f35b34801561077257600080fd5b506107a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d8a565b005b6000600760009054906101000a900460ff161515156107c757600080fd5b6000341115156107d657600080fd5b6107ff6006546107f160055434611edf90919063ffffffff16565b611f1090919063ffffffff16565b905080600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561087057600080fd5b6108c281600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061097881600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610ac9573d6000803e3d6000fd5b5050565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b635780601f10610b3857610100808354040283529160200191610b63565b820191906000526020600020905b815481529060010190602001808311610b4657829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610ba857600080fd5b600082111515610bb757600080fd5b81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600454905090565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515610cee57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d2a57600080fd5b600082111515610d3957600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610d8757600080fd5b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610e1257600080fd5b610e6482600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f3682600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061100882600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600360009054906101000a900460ff1681565b60045481565b600760009054906101000a900460ff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b60008311151561119057600080fd5b600360009054906101000a900460ff1660ff16600a0a830290506111bf81600454611f3490919063ffffffff16565b60048190555061121781600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a28373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600191505092915050565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561135857600080fd5b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611466576000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114fa565b6114798382611f5090919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60055481565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561169057600080fd5b60008111151561169f57600080fd5b806005819055507f5a75aa1ccd5244c76a14e60301b7bc29e02263de78b6af4606269d5e1db08513816040518082815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156117a15780601f10611776576101008083540402835291602001916117a1565b820191906000526020600020905b81548152906001019060200180831161178457829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561180457600080fd5b6000600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561185e57600080fd5b60008211151561186d57600080fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156118bb57600080fd5b61190d82600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119a282600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611aaf57600080fd5b6001600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611b0957600080fd5b611b9882600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611de557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e2157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600081830290506000831480611eff5750818382811515611efc57fe5b04145b1515611f0a57600080fd5b92915050565b60008082111515611f2057600080fd5b8183811515611f2b57fe5b04905092915050565b60008183019050828110151515611f4a57600080fd5b92915050565b6000828211151515611f6157600080fd5b8183039050929150505600a165627a7a72305820c959ac9d74cab355a475cf37aeb67fc48a544f603647e61a187b5d560d7fa3690029

Deployed Bytecode

0x608060405260043610610128576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde0314610132578063095ea7b3146101c257806318160ddd1461022757806323b872dd14610252578063313ce567146102d75780633eaaf86b146103085780633f683b6a1461033357806340c10f191461036257806366188463146103c7578063664e97041461042c57806370a082311461045757806374e7493b146104ae5780638da5cb5b146104db578063918f86741461053257806395d89b411461055d5780639cbd7da5146105ed578063a9059cbb14610604578063aa6ca80814610669578063c8e569a814610673578063d73dd6231461068a578063dd62ed3e146106ef578063f2fde38b14610766575b6101306107a9565b005b34801561013e57600080fd5b50610147610acd565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018757808201518184015260208101905061016c565b50505050905090810190601f1680156101b45780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101ce57600080fd5b5061020d600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b6b565b604051808215151515815260200191505060405180910390f35b34801561023357600080fd5b5061023c610ca7565b6040518082815260200191505060405180910390f35b34801561025e57600080fd5b506102bd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610cb1565b604051808215151515815260200191505060405180910390f35b3480156102e357600080fd5b506102ec6110bb565b604051808260ff1660ff16815260200191505060405180910390f35b34801561031457600080fd5b5061031d6110ce565b6040518082815260200191505060405180910390f35b34801561033f57600080fd5b506103486110d4565b604051808215151515815260200191505060405180910390f35b34801561036e57600080fd5b506103ad600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110e7565b604051808215151515815260200191505060405180910390f35b3480156103d357600080fd5b50610412600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611319565b604051808215151515815260200191505060405180910390f35b34801561043857600080fd5b506104416115e6565b6040518082815260200191505060405180910390f35b34801561046357600080fd5b50610498600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115ec565b6040518082815260200191505060405180910390f35b3480156104ba57600080fd5b506104d960048036038101908080359060200190929190505050611635565b005b3480156104e757600080fd5b506104f06116e0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561053e57600080fd5b50610547611705565b6040518082815260200191505060405180910390f35b34801561056957600080fd5b5061057261170b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105b2578082015181840152602081019050610597565b50505050905090810190601f1680156105df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156105f957600080fd5b506106026117a9565b005b34801561061057600080fd5b5061064f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611821565b604051808215151515815260200191505060405180910390f35b6106716107a9565b005b34801561067f57600080fd5b50610688611a54565b005b34801561069657600080fd5b506106d5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611acc565b604051808215151515815260200191505060405180910390f35b3480156106fb57600080fd5b50610750600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d03565b6040518082815260200191505060405180910390f35b34801561077257600080fd5b506107a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d8a565b005b6000600760009054906101000a900460ff161515156107c757600080fd5b6000341115156107d657600080fd5b6107ff6006546107f160055434611edf90919063ffffffff16565b611f1090919063ffffffff16565b905080600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561087057600080fd5b6108c281600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061097881600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a36000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610ac9573d6000803e3d6000fd5b5050565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610b635780601f10610b3857610100808354040283529160200191610b63565b820191906000526020600020905b815481529060010190602001808311610b4657829003601f168201915b505050505081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610ba857600080fd5b600082111515610bb757600080fd5b81600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600454905090565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614151515610cee57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610d2a57600080fd5b600082111515610d3957600080fd5b81600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610d8757600080fd5b81600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410151515610e1257600080fd5b610e6482600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f3682600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061100882600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600360009054906101000a900460ff1681565b60045481565b600760009054906101000a900460ff1681565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561114557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561118157600080fd5b60008311151561119057600080fd5b600360009054906101000a900460ff1660ff16600a0a830290506111bf81600454611f3490919063ffffffff16565b60048190555061121781600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885826040518082815260200191505060405180910390a28373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3600191505092915050565b600080600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415151561135857600080fd5b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115611466576000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114fa565b6114798382611f5090919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60055481565b6000600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561169057600080fd5b60008111151561169f57600080fd5b806005819055507f5a75aa1ccd5244c76a14e60301b7bc29e02263de78b6af4606269d5e1db08513816040518082815260200191505060405180910390a150565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60065481565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156117a15780601f10611776576101008083540402835291602001916117a1565b820191906000526020600020905b81548152906001019060200180831161178457829003601f168201915b505050505081565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561180457600080fd5b6000600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561185e57600080fd5b60008211151561186d57600080fd5b81600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156118bb57600080fd5b61190d82600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f5090919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119a282600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611aaf57600080fd5b6001600760006101000a81548160ff021916908315150217905550565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611b0957600080fd5b611b9882600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f3490919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611de557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e2157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600081830290506000831480611eff5750818382811515611efc57fe5b04145b1515611f0a57600080fd5b92915050565b60008082111515611f2057600080fd5b8183811515611f2b57fe5b04905092915050565b60008183019050828110151515611f4a57600080fd5b92915050565b6000828211151515611f6157600080fd5b8183039050929150505600a165627a7a72305820c959ac9d74cab355a475cf37aeb67fc48a544f603647e61a187b5d560d7fa3690029

Deployed Bytecode Sourcemap

2455:9484:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3851:11;:9;:11::i;:::-;2455:9484;2573:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2573:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2573:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6466:281;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6466:281:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4781:88;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4781:88:0;;;;;;;;;;;;;;;;;;;;;;;7250:548;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7250:548:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2599:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2599:21:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2627:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2627:24:0;;;;;;;;;;;;;;;;;;;;;;;2711:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2711:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10951:430;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10951:430:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9728:494;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9728:494:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2658:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2658:16:0;;;;;;;;;;;;;;;;;;;;;;;5094:120;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5094:120:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10428:146;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10428:146:0;;;;;;;;;;;;;;;;;;;;;;;;;;1657:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1657:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2681:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2681:23:0;;;;;;;;;;;;;;;;;;;;;;;2546:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2546:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2546:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11860:74;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11860:74:0;;;;;;5565:385;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5565:385:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4174:416;;;;;;11586:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11586:71:0;;;;;;8816:324;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8816:324:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8086:147;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8086:147:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1993:197;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1993:197:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4174:416;4272:11;2991:9;;;;;;;;;;;2990:10;2982:19;;;;;;;;4257:1;4245:9;:13;4237:22;;;;;;;;4286:36;4310:11;;4286:19;4300:4;;4286:9;:13;;:19;;;;:::i;:::-;:23;;:36;;;;:::i;:::-;4272:50;;4360:6;4341:8;:15;4350:5;;;;;;;;;;;4341:15;;;;;;;;;;;;;;;;:25;;4333:34;;;;;;;;4403:32;4428:6;4403:8;:20;4412:10;4403:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;4380:8;:20;4389:10;4380:20;;;;;;;;;;;;;;;:55;;;;4464:27;4484:6;4464:8;:15;4473:5;;;;;;;;;;;4464:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;4446:8;:15;4455:5;;;;;;;;;;;4446:15;;;;;;;;;;;;;;;:45;;;;4525:10;4509:35;;4518:5;;;;;;;;;;;4509:35;;;4537:6;4509:35;;;;;;;;;;;;;;;;;;4557:5;;;;;;;;;;;:14;;:25;4572:9;4557:25;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4557:25:0;4174:416;:::o;2573:19::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6466:281::-;6529:12;6581:1;6562:21;;:7;:21;;;;6554:30;;;;;;;;6612:1;6603:6;:10;6595:19;;;;;;;;6658:6;6627:7;:19;6635:10;6627:19;;;;;;;;;;;;;;;:28;6647:7;6627:28;;;;;;;;;;;;;;;:37;;;;6701:7;6680:37;;6689:10;6680:37;;;6710:6;6680:37;;;;;;;;;;;;;;;;;;6735:4;6728:11;;6466:281;;;;:::o;4781:88::-;4825:4;4849:12;;4842:19;;4781:88;:::o;7250:548::-;7327:12;7376:1;7360:18;;:4;:18;;;;7352:27;;;;;;;;7412:1;7398:16;;:2;:16;;;;7390:25;;;;;;;;7443:1;7434:6;:10;7426:19;;;;;;;;7482:6;7464:8;:14;7473:4;7464:14;;;;;;;;;;;;;;;;:24;;7456:33;;;;;;;;7537:6;7508:7;:13;7516:4;7508:13;;;;;;;;;;;;;;;:25;7522:10;7508:25;;;;;;;;;;;;;;;;:35;;7500:44;;;;;;;;7574:26;7593:6;7574:8;:14;7583:4;7574:14;;;;;;;;;;;;;;;;:18;;:26;;;;:::i;:::-;7557:8;:14;7566:4;7557:14;;;;;;;;;;;;;;;:43;;;;7639:37;7669:6;7639:7;:13;7647:4;7639:13;;;;;;;;;;;;;;;:25;7653:10;7639:25;;;;;;;;;;;;;;;;:29;;:37;;;;:::i;:::-;7611:7;:13;7619:4;7611:13;;;;;;;;;;;;;;;:25;7625:10;7611:25;;;;;;;;;;;;;;;:65;;;;7702:24;7719:6;7702:8;:12;7711:2;7702:12;;;;;;;;;;;;;;;;:16;;:24;;;;:::i;:::-;7687:8;:12;7696:2;7687:12;;;;;;;;;;;;;;;:39;;;;7757:2;7742:26;;7751:4;7742:26;;;7761:6;7742:26;;;;;;;;;;;;;;;;;;7786:4;7779:11;;7250:548;;;;;:::o;2599:21::-;;;;;;;;;;;;;:::o;2627:24::-;;;;:::o;2711:29::-;;;;;;;;;;;;;:::o;10951:430::-;11021:4;11108:14;1915:5;;;;;;;;;;;1901:19;;:10;:19;;;1893:28;;;;;;;;11061:1;11046:17;;:3;:17;;;;11038:26;;;;;;;;11093:1;11083:7;:11;11075:20;;;;;;;;11144:8;;;;;;;;;;;11139:14;;11135:2;:18;11125:7;:28;11108:45;;11179:27;11196:9;11179:12;;:16;;:27;;;;:::i;:::-;11164:12;:42;;;;11233:28;11251:9;11233:8;:13;11242:3;11233:13;;;;;;;;;;;;;;;;:17;;:28;;;;:::i;:::-;11217:8;:13;11226:3;11217:13;;;;;;;;;;;;;;;:44;;;;11284:3;11279:20;;;11289:9;11279:20;;;;;;;;;;;;;;;;;;11336:3;11315:36;;11332:1;11315:36;;;11341:9;11315:36;;;;;;;;;;;;;;;;;;11369:4;11362:11;;10951:430;;;;;:::o;9728:494::-;9811:4;9872:13;9856:1;9836:22;;:8;:22;;;;9828:31;;;;;;;;9888:7;:19;9896:10;9888:19;;;;;;;;;;;;;;;:29;9908:8;9888:29;;;;;;;;;;;;;;;;9872:45;;9951:8;9932:16;:27;9928:188;;;10008:1;9976:7;:19;9984:10;9976:19;;;;;;;;;;;;;;;:29;9996:8;9976:29;;;;;;;;;;;;;;;:33;;;;9928:188;;;10074:30;10087:16;10074:8;:12;;:30;;;;:::i;:::-;10042:7;:19;10050:10;10042:19;;;;;;;;;;;;;;;:29;10062:8;10042:29;;;;;;;;;;;;;;;:62;;;;9928:188;10152:8;10131:61;;10140:10;10131:61;;;10162:7;:19;10170:10;10162:19;;;;;;;;;;;;;;;:29;10182:8;10162:29;;;;;;;;;;;;;;;;10131:61;;;;;;;;;;;;;;;;;;10210:4;10203:11;;9728:494;;;;;:::o;2658:16::-;;;;:::o;5094:120::-;5154:12;5186:8;:20;5195:10;5186:20;;;;;;;;;;;;;;;;5179:27;;5094:120;;;:::o;10428:146::-;1915:5;;;;;;;;;;;1901:19;;:10;:19;;;1893:28;;;;;;;;10507:1;10499:5;:9;10491:18;;;;;;;;10528:5;10522:4;:11;;;;10549:17;10560:5;10549:17;;;;;;;;;;;;;;;;;;10428:146;:::o;1657:20::-;;;;;;;;;;;;;:::o;2681:23::-;;;;:::o;2546:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11860:74::-;1915:5;;;;;;;;;;;1901:19;;:10;:19;;;1893:28;;;;;;;;11921:5;11909:9;;:17;;;;;;;;;;;;;;;;;;11860:74::o;5565:385::-;5624:12;5671:1;5657:16;;:2;:16;;;;5649:25;;;;;;;;5702:1;5693:6;:10;5685:19;;;;;;;;5747:6;5723:8;:20;5732:10;5723:20;;;;;;;;;;;;;;;;:30;;5715:39;;;;;;;;5790:32;5815:6;5790:8;:20;5799:10;5790:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;5767:8;:20;5776:10;5767:20;;;;;;;;;;;;;;;:55;;;;5848:24;5865:6;5848:8;:12;5857:2;5848:12;;;;;;;;;;;;;;;;:16;;:24;;;;:::i;:::-;5833:8;:12;5842:2;5833:12;;;;;;;;;;;;;;;:39;;;;5909:2;5888:32;;5897:10;5888:32;;;5913:6;5888:32;;;;;;;;;;;;;;;;;;5938:4;5931:11;;5565:385;;;;:::o;11586:71::-;1915:5;;;;;;;;;;;1901:19;;:10;:19;;;1893:28;;;;;;;;11645:4;11633:9;;:16;;;;;;;;;;;;;;;;;;11586:71::o;8816:324::-;8894:4;8939:1;8919:22;;:8;:22;;;;8911:31;;;;;;;;8987:46;9021:11;8987:7;:19;8995:10;8987:19;;;;;;;;;;;;;;;:29;9007:8;8987:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;8955:7;:19;8963:10;8955:19;;;;;;;;;;;;;;;:29;8975:8;8955:29;;;;;;;;;;;;;;;:78;;;;9070:8;9049:61;;9058:10;9049:61;;;9080:7;:19;9088:10;9080:19;;;;;;;;;;;;;;;:29;9100:8;9080:29;;;;;;;;;;;;;;;;9049:61;;;;;;;;;;;;;;;;;;9128:4;9121:11;;8816:324;;;;:::o;8086:147::-;8163:14;8197:7;:19;8205:10;8197:19;;;;;;;;;;;;;;;:28;8217:7;8197:28;;;;;;;;;;;;;;;;8190:35;;8086:147;;;;:::o;1993:197::-;1915:5;;;;;;;;;;;1901:19;;:10;:19;;;1893:28;;;;;;;;2096:3;2075:25;;:9;:25;;;;2067:34;;;;;;;;2144:9;2117:37;;2138:5;;;;;;;;;;;2117:37;;;;;;;;;;;;2173:9;2165:5;;:17;;;;;;;;;;;;;;;;;;1993:197;:::o;292:128::-;344:6;371:1;367;:5;363:9;;396:1;391;:6;:20;;;;410:1;405;401;:5;;;;;;;;:10;391:20;383:29;;;;;;;;292:128;;;;:::o;426:113::-;478:6;509:1;505;:5;497:14;;;;;;;;530:1;526;:5;;;;;;;;522:9;;426:113;;;;:::o;52:114::-;104:6;131:1;127;:5;123:9;;156:1;151;:6;;143:15;;;;;;;;52:114;;;;:::o;172:::-;224:6;256:1;251;:6;;243:15;;;;;;;;277:1;273;:5;269:9;;172:114;;;;:::o

Swarm Source

bzzr://c959ac9d74cab355a475cf37aeb67fc48a544f603647e61a187b5d560d7fa369

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ 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.