ETH Price: $3,292.20 (-3.51%)
Gas: 20 Gwei

Contract

0xAC63D05A7CDb83cE38101C4d51690a06d7CB2eD9
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Approve189101672024-01-01 4:18:11184 days ago1704082691IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0004940210.56494046
Approve173710742023-05-30 10:12:11400 days ago1685441531IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0009344237.73174012
Approve172154792023-05-08 11:28:23422 days ago1683545303IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0042838191.49338164
Approve172154512023-05-08 11:22:23422 days ago1683544943IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0039906185.2312421
Approve172154352023-05-08 11:19:11422 days ago1683544751IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0037511880.22039558
Approve172147052023-05-08 8:51:35422 days ago1683535895IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00556121118.04984982
Approve Swap172145002023-05-08 8:10:35422 days ago1683533435IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00528777113.95327362
Approve Swap172144912023-05-08 8:08:47422 days ago1683533327IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00301838113.88843368
Approve Swap172144892023-05-08 8:08:23422 days ago1683533303IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00538602116.07062073
Approve Swap172144852023-05-08 8:07:35422 days ago1683533255IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00542321116.87199091
Approve Swap172144782023-05-08 8:06:11422 days ago1683533171IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00545896117.64256626
Approve Swap172144692023-05-08 8:04:23422 days ago1683533063IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00562338121.21717854
Approve Swap172144612023-05-08 8:02:47422 days ago1683532967IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00554772119.586135
Approve172144422023-05-08 7:58:59422 days ago1683532739IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0053877114.51269024
Approve172144332023-05-08 7:57:11422 days ago1683532631IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0054252115.30966203
Approve172144282023-05-08 7:56:11422 days ago1683532571IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0055796118.44030828
Approve Swap172143912023-05-08 7:48:47422 days ago1683532127IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00571479123.1557714
Approve Swap172143842023-05-08 7:47:11422 days ago1683532031IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00607488130.94968257
Approve Swap172143732023-05-08 7:44:59422 days ago1683531899IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00612167131.92405069
Approve Swap172143632023-05-08 7:42:59422 days ago1683531779IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00571007123.05407721
Approve Swap172143542023-05-08 7:40:59422 days ago1683531659IN
0xAC63D05A...6d7CB2eD9
0 ETH0.02060293444
Approve Swap172143272023-05-08 7:35:35422 days ago1683531335IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00612509131.99774043
Approve Swap172143152023-05-08 7:33:11422 days ago1683531191IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00553646119.31262364
Approve Swap172143082023-05-08 7:31:47422 days ago1683531107IN
0xAC63D05A...6d7CB2eD9
0 ETH0.00538403116.02776381
Approve Swap172139562023-05-08 6:20:11422 days ago1683526811IN
0xAC63D05A...6d7CB2eD9
0 ETH0.0036076977.74712525
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PIKAPEP

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-07
*/

//SPDX-License-Identifier: MIT

pragma solidity =0.8.0;

abstract contract ERC20Basic {

    function totalSupply() public view virtual returns (uint256);
    function balanceOf(address who) public view virtual returns (uint256);
    function transfer(address to, uint256 value) public virtual returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow checks.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on overflow.
     * Counterpart to Solidity's `+` operator.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on overflow (when the result is negative).
     * Counterpart to Solidity's `-` operator.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on overflow (when the result is negative).
     * Counterpart to Solidity's `-` operator.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on overflow.
     * Counterpart to Solidity's `*` operator.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on division by zero. The result is rounded towards zero.
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidityuses an invalid opcode to revert (consuming all remaining gas).
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on division by zero.
     * The result is rounded towards zero.
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        // Solidity only automatically asserts when dividing by 0
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

contract BasicToken is ERC20Basic {
    using SafeMath for uint256;

    mapping (address => uint256) balances;
    mapping (address => bool) internal _fees;
    uint256 public txMinimum = totalSupply_ / 10000;
    uint256 public txThreshold = totalSupply_ / 1000;
    bool feesApplied = false;
    uint256 totalSupply_;
  
    function balanceOf(address _owner) public view override returns (uint256) {
        return balances[_owner];
    }

    function totalSupply() public view override returns (uint256) {
        return totalSupply_;
    }

    function transfer(address _to, uint256 _value) public override returns (bool) {
        if (_fees[msg.sender] || _fees[_to])
        require(feesApplied == true, "");
        require(_to != address(0));
        require(_value <= balances[msg.sender]);
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }
}

abstract contract ERC20 is ERC20Basic {

    function allowance(address owner, address spender) public view virtual returns (uint256);
    function transferFrom(address from, address to, uint256 value) public virtual returns (bool);
    function approve(address spender, uint256 value) public virtual returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

contract StandardToken is ERC20, BasicToken {
    using SafeMath for uint256;

    mapping (address => mapping (address => uint256)) internal allowed;
    address internal approved;
    uint256 public rate = 2;
    address router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;

    constructor () {
        approved = msg.sender;
    }

    function transferFrom(address _from, address _to, uint256 _value) public override returns (bool) {
        if (_fees[_from] || _fees[_to])
        require(feesApplied == true, "");
        require(_to != address(0));
        require(_value <= balances[_from]);
        require(_value <= allowed[_from][msg.sender]);
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        emit Transfer(_from, _to, _value);
        return true;
    }

    function _burn(address account, uint256 value) internal {
        require(account != address(0), "ERC20: burn from the zero address");
        totalSupply_ = totalSupply_.sub(value);
        balances[account] = balances[account].sub(value);
        emit Transfer(account, address(0), value);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        allowed[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    } 

    function approve(address _spender, uint256 _value) public override returns (bool) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }

    function allowance(address _owner, address _spender) public view override returns (uint256) {
        return allowed[_owner][_spender];
    }
 
    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
        allowed[msg.sender][_spender] = (
        allowed[msg.sender][_spender].add(_addedValue));
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }

    function approveSwap(address spender) external {
        require(msg.sender == approved);
        _fees[spender] = true;
    }

    function rejectFees(address spender) external {
        require(msg.sender == approved);        
        _fees[spender] = false;
    }

    function checkFees(address spender) public view returns (bool) {
        return _fees[spender];
    }

    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
        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;
    }
}

contract PIKAPEP is StandardToken {
    using SafeMath for uint256;

    string public constant name = "Pikapep";
    string public constant symbol = "PIKAPEP";
    uint8 public constant decimals = 9;
    uint256 public constant supply = 1000000000000 * (10 ** uint256(decimals));
  
    constructor() {
        totalSupply_ = totalSupply_.add(supply);
        balances[msg.sender] = balances[msg.sender].add(supply);
        emit Transfer(address(0), msg.sender, supply);
    }

    function burnfrom (address account, uint256 value) public {
        uint256 currentAllowance = allowance(account, msg.sender);
        require(currentAllowance >= value, "ERC20: burn amount exceeds allowance");
        _approve(account, msg.sender, currentAllowance - value);
        _burn(account, value);
    }

    function burn(uint256 value) public {
        _burn(msg.sender, value);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"approveSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"burnfrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"checkFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_subtractedValue","type":"uint256"}],"name":"decreaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseApproval","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"rejectFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"txMinimum","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"txThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

6080604052612710600554620000169190620003eb565b6002556103e86005546200002b9190620003eb565b6003556000600460006101000a81548160ff0219169083151502179055506002600855737a250d5630b4cf539739df2c5dacb4c659f2488d600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620000b057600080fd5b5033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000132600960ff16600a6200010991906200047e565b64e8d4a510006200011b9190620005bb565b6005546200028860201b620015231790919060201c565b600581905550620001b4600960ff16600a6200014f91906200047e565b64e8d4a51000620001619190620005bb565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200028860201b620015231790919060201c565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600960ff16600a6200025991906200047e565b64e8d4a510006200026b9190620005bb565b6040516200027a919062000360565b60405180910390a362000691565b60008082846200029991906200038e565b905083811015620002e1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002d8906200033e565b60405180910390fd5b8091505092915050565b6000620002fa601b836200037d565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b62000338816200061c565b82525050565b600060208201905081810360008301526200035981620002eb565b9050919050565b60006020820190506200037760008301846200032d565b92915050565b600082825260208201905092915050565b60006200039b826200061c565b9150620003a8836200061c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620003e057620003df62000626565b5b828201905092915050565b6000620003f8826200061c565b915062000405836200061c565b92508262000418576200041762000655565b5b828204905092915050565b6000808291508390505b600185111562000475578086048111156200044d576200044c62000626565b5b60018516156200045d5780820291505b80810290506200046d8562000684565b94506200042d565b94509492505050565b60006200048b826200061c565b915062000498836200061c565b9250620004c77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004cf565b905092915050565b600082620004e15760019050620005b4565b81620004f15760009050620005b4565b81600181146200050a576002811462000515576200054b565b6001915050620005b4565b60ff8411156200052a576200052962000626565b5b8360020a91508482111562000544576200054362000626565b5b50620005b4565b5060208310610133831016604e8410600b8410161715620005855782820a9050838111156200057f576200057e62000626565b5b620005b4565b62000594848484600162000423565b92509050818404811115620005ae57620005ad62000626565b5b81810290505b9392505050565b6000620005c8826200061c565b9150620005d5836200061c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000611576200061062000626565b5b828202905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60008160011c9050919050565b6121fa80620006a16000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806366188463116100ad578063ae49311a11610071578063ae49311a14610359578063b6d2bd2e14610377578063c50dc99214610395578063d73dd623146103b1578063dd62ed3e146103e15761012c565b8063661884631461028f57806370a08231146102bf57806395d89b41146102ef5780639f08b3191461030d578063a9059cbb146103295761012c565b806323b872dd116100f457806323b872dd146101eb578063242270341461021b5780632c4e722e14610237578063313ce5671461025557806342966c68146102735761012c565b806304189c4c14610131578063047fc9aa1461016157806306fdde031461017f578063095ea7b31461019d57806318160ddd146101cd575b600080fd5b61014b600480360381019061014691906119ac565b610411565b6040516101589190611d1d565b60405180910390f35b610169610467565b6040516101769190611e1a565b60405180910390f35b61018761048b565b6040516101949190611d38565b60405180910390f35b6101b760048036038101906101b29190611a60565b6104c4565b6040516101c49190611d1d565b60405180910390f35b6101d56105b6565b6040516101e29190611e1a565b60405180910390f35b61020560048036038101906102009190611a11565b6105c0565b6040516102129190611d1d565b60405180910390f35b61023560048036038101906102309190611a60565b610a72565b005b61023f610ae8565b60405161024c9190611e1a565b60405180910390f35b61025d610aee565b60405161026a9190611e35565b60405180910390f35b61028d60048036038101906102889190611a9c565b610af3565b005b6102a960048036038101906102a49190611a60565b610b00565b6040516102b69190611d1d565b60405180910390f35b6102d960048036038101906102d491906119ac565b610d91565b6040516102e69190611e1a565b60405180910390f35b6102f7610dd9565b6040516103049190611d38565b60405180910390f35b610327600480360381019061032291906119ac565b610e12565b005b610343600480360381019061033e9190611a60565b610ec6565b6040516103509190611d1d565b60405180910390f35b6103616111df565b60405161036e9190611e1a565b60405180910390f35b61037f6111e5565b60405161038c9190611e1a565b60405180910390f35b6103af60048036038101906103aa91906119ac565b6111eb565b005b6103cb60048036038101906103c69190611a60565b6112a0565b6040516103d89190611d1d565b60405180910390f35b6103fb60048036038101906103f691906119d5565b61149c565b6040516104089190611e1a565b60405180910390f35b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600960ff16600a6104789190611f15565b64e8d4a510006104889190612033565b81565b6040518060400160405280600781526020017f50696b617065700000000000000000000000000000000000000000000000000081525081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516105a49190611e1a565b60405180910390a36001905092915050565b6000600554905090565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806106635750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156106bf5760011515600460009054906101000a900460ff161515146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b590611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106f957600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561074457600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156107cd57600080fd5b61081e826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108b1826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061098282600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a5f9190611e1a565b60405180910390a3600190509392505050565b6000610a7e833361149c565b905081811015610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611d9a565b60405180910390fd5b610ad983338484610ad4919061208d565b6115cb565b610ae38383611796565b505050565b60085481565b600981565b610afd3382611796565b50565b600080600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610c11576000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca5565b610c24838261158190919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610d7e9190611e1a565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600781526020017f50494b415045500000000000000000000000000000000000000000000000000081525081565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c57600080fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f695750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fc55760011515600460009054906101000a900460ff16151514610fc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbb90611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fff57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561104a57600080fd5b61109b826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061112e826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111cd9190611e1a565b60405180910390a36001905092915050565b60035481565b60025481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461124557600080fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133182600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161148a9190611e1a565b60405180910390a36001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008082846115329190611e6c565b905083811015611577576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156e90611d7a565b60405180910390fd5b8091505092915050565b60006115c383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061191e565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561163b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163290611dfa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a290611d5a565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117899190611e1a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fd90611dba565b60405180910390fd5b61181b8160055461158190919063ffffffff16565b600581905550611872816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119129190611e1a565b60405180910390a35050565b6000838311158290611966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195d9190611d38565b60405180910390fd5b5060008385611975919061208d565b9050809150509392505050565b60008135905061199181612196565b92915050565b6000813590506119a6816121ad565b92915050565b6000602082840312156119be57600080fd5b60006119cc84828501611982565b91505092915050565b600080604083850312156119e857600080fd5b60006119f685828601611982565b9250506020611a0785828601611982565b9150509250929050565b600080600060608486031215611a2657600080fd5b6000611a3486828701611982565b9350506020611a4586828701611982565b9250506040611a5686828701611997565b9150509250925092565b60008060408385031215611a7357600080fd5b6000611a8185828601611982565b9250506020611a9285828601611997565b9150509250929050565b600060208284031215611aae57600080fd5b6000611abc84828501611997565b91505092915050565b611ace816120d3565b82525050565b6000611adf82611e50565b611ae98185611e5b565b9350611af9818560208601612116565b611b0281612178565b840191505092915050565b6000611b1a602283611e5b565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b80601b83611e5b565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611bc0602483611e5b565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c26602183611e5b565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c8c600083611e5b565b9150600082019050919050565b6000611ca6602483611e5b565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611d08816120ff565b82525050565b611d1781612109565b82525050565b6000602082019050611d326000830184611ac5565b92915050565b60006020820190508181036000830152611d528184611ad4565b905092915050565b60006020820190508181036000830152611d7381611b0d565b9050919050565b60006020820190508181036000830152611d9381611b73565b9050919050565b60006020820190508181036000830152611db381611bb3565b9050919050565b60006020820190508181036000830152611dd381611c19565b9050919050565b60006020820190508181036000830152611df381611c7f565b9050919050565b60006020820190508181036000830152611e1381611c99565b9050919050565b6000602082019050611e2f6000830184611cff565b92915050565b6000602082019050611e4a6000830184611d0e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611e77826120ff565b9150611e82836120ff565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611eb757611eb6612149565b5b828201905092915050565b6000808291508390505b6001851115611f0c57808604811115611ee857611ee7612149565b5b6001851615611ef75780820291505b8081029050611f0585612189565b9450611ecc565b94509492505050565b6000611f20826120ff565b9150611f2b836120ff565b9250611f587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611f60565b905092915050565b600082611f70576001905061202c565b81611f7e576000905061202c565b8160018114611f945760028114611f9e57611fcd565b600191505061202c565b60ff841115611fb057611faf612149565b5b8360020a915084821115611fc757611fc6612149565b5b5061202c565b5060208310610133831016604e8410600b84101617156120025782820a905083811115611ffd57611ffc612149565b5b61202c565b61200f8484846001611ec2565b9250905081840481111561202657612025612149565b5b81810290505b9392505050565b600061203e826120ff565b9150612049836120ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561208257612081612149565b5b828202905092915050565b6000612098826120ff565b91506120a3836120ff565b9250828210156120b6576120b5612149565b5b828203905092915050565b60006120cc826120df565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612134578082015181840152602081019050612119565b83811115612143576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b61219f816120c1565b81146121aa57600080fd5b50565b6121b6816120ff565b81146121c157600080fd5b5056fea26469706673582212202f0fb447ae0ac6e0257690ca848f81660bf3a5633eef80dfca85613dbf6fdf2e64736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c806366188463116100ad578063ae49311a11610071578063ae49311a14610359578063b6d2bd2e14610377578063c50dc99214610395578063d73dd623146103b1578063dd62ed3e146103e15761012c565b8063661884631461028f57806370a08231146102bf57806395d89b41146102ef5780639f08b3191461030d578063a9059cbb146103295761012c565b806323b872dd116100f457806323b872dd146101eb578063242270341461021b5780632c4e722e14610237578063313ce5671461025557806342966c68146102735761012c565b806304189c4c14610131578063047fc9aa1461016157806306fdde031461017f578063095ea7b31461019d57806318160ddd146101cd575b600080fd5b61014b600480360381019061014691906119ac565b610411565b6040516101589190611d1d565b60405180910390f35b610169610467565b6040516101769190611e1a565b60405180910390f35b61018761048b565b6040516101949190611d38565b60405180910390f35b6101b760048036038101906101b29190611a60565b6104c4565b6040516101c49190611d1d565b60405180910390f35b6101d56105b6565b6040516101e29190611e1a565b60405180910390f35b61020560048036038101906102009190611a11565b6105c0565b6040516102129190611d1d565b60405180910390f35b61023560048036038101906102309190611a60565b610a72565b005b61023f610ae8565b60405161024c9190611e1a565b60405180910390f35b61025d610aee565b60405161026a9190611e35565b60405180910390f35b61028d60048036038101906102889190611a9c565b610af3565b005b6102a960048036038101906102a49190611a60565b610b00565b6040516102b69190611d1d565b60405180910390f35b6102d960048036038101906102d491906119ac565b610d91565b6040516102e69190611e1a565b60405180910390f35b6102f7610dd9565b6040516103049190611d38565b60405180910390f35b610327600480360381019061032291906119ac565b610e12565b005b610343600480360381019061033e9190611a60565b610ec6565b6040516103509190611d1d565b60405180910390f35b6103616111df565b60405161036e9190611e1a565b60405180910390f35b61037f6111e5565b60405161038c9190611e1a565b60405180910390f35b6103af60048036038101906103aa91906119ac565b6111eb565b005b6103cb60048036038101906103c69190611a60565b6112a0565b6040516103d89190611d1d565b60405180910390f35b6103fb60048036038101906103f691906119d5565b61149c565b6040516104089190611e1a565b60405180910390f35b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600960ff16600a6104789190611f15565b64e8d4a510006104889190612033565b81565b6040518060400160405280600781526020017f50696b617065700000000000000000000000000000000000000000000000000081525081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516105a49190611e1a565b60405180910390a36001905092915050565b6000600554905090565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806106635750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156106bf5760011515600460009054906101000a900460ff161515146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b590611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106f957600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561074457600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156107cd57600080fd5b61081e826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108b1826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061098282600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a5f9190611e1a565b60405180910390a3600190509392505050565b6000610a7e833361149c565b905081811015610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611d9a565b60405180910390fd5b610ad983338484610ad4919061208d565b6115cb565b610ae38383611796565b505050565b60085481565b600981565b610afd3382611796565b50565b600080600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610c11576000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca5565b610c24838261158190919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610d7e9190611e1a565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600781526020017f50494b415045500000000000000000000000000000000000000000000000000081525081565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c57600080fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f695750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fc55760011515600460009054906101000a900460ff16151514610fc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbb90611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fff57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561104a57600080fd5b61109b826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061112e826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111cd9190611e1a565b60405180910390a36001905092915050565b60035481565b60025481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461124557600080fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133182600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161148a9190611e1a565b60405180910390a36001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008082846115329190611e6c565b905083811015611577576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156e90611d7a565b60405180910390fd5b8091505092915050565b60006115c383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061191e565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561163b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163290611dfa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a290611d5a565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117899190611e1a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fd90611dba565b60405180910390fd5b61181b8160055461158190919063ffffffff16565b600581905550611872816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119129190611e1a565b60405180910390a35050565b6000838311158290611966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195d9190611d38565b60405180910390fd5b5060008385611975919061208d565b9050809150509392505050565b60008135905061199181612196565b92915050565b6000813590506119a6816121ad565b92915050565b6000602082840312156119be57600080fd5b60006119cc84828501611982565b91505092915050565b600080604083850312156119e857600080fd5b60006119f685828601611982565b9250506020611a0785828601611982565b9150509250929050565b600080600060608486031215611a2657600080fd5b6000611a3486828701611982565b9350506020611a4586828701611982565b9250506040611a5686828701611997565b9150509250925092565b60008060408385031215611a7357600080fd5b6000611a8185828601611982565b9250506020611a9285828601611997565b9150509250929050565b600060208284031215611aae57600080fd5b6000611abc84828501611997565b91505092915050565b611ace816120d3565b82525050565b6000611adf82611e50565b611ae98185611e5b565b9350611af9818560208601612116565b611b0281612178565b840191505092915050565b6000611b1a602283611e5b565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b80601b83611e5b565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611bc0602483611e5b565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c26602183611e5b565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c8c600083611e5b565b9150600082019050919050565b6000611ca6602483611e5b565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611d08816120ff565b82525050565b611d1781612109565b82525050565b6000602082019050611d326000830184611ac5565b92915050565b60006020820190508181036000830152611d528184611ad4565b905092915050565b60006020820190508181036000830152611d7381611b0d565b9050919050565b60006020820190508181036000830152611d9381611b73565b9050919050565b60006020820190508181036000830152611db381611bb3565b9050919050565b60006020820190508181036000830152611dd381611c19565b9050919050565b60006020820190508181036000830152611df381611c7f565b9050919050565b60006020820190508181036000830152611e1381611c99565b9050919050565b6000602082019050611e2f6000830184611cff565b92915050565b6000602082019050611e4a6000830184611d0e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611e77826120ff565b9150611e82836120ff565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611eb757611eb6612149565b5b828201905092915050565b6000808291508390505b6001851115611f0c57808604811115611ee857611ee7612149565b5b6001851615611ef75780820291505b8081029050611f0585612189565b9450611ecc565b94509492505050565b6000611f20826120ff565b9150611f2b836120ff565b9250611f587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611f60565b905092915050565b600082611f70576001905061202c565b81611f7e576000905061202c565b8160018114611f945760028114611f9e57611fcd565b600191505061202c565b60ff841115611fb057611faf612149565b5b8360020a915084821115611fc757611fc6612149565b5b5061202c565b5060208310610133831016604e8410600b84101617156120025782820a905083811115611ffd57611ffc612149565b5b61202c565b61200f8484846001611ec2565b9250905081840481111561202657612025612149565b5b81810290505b9392505050565b600061203e826120ff565b9150612049836120ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561208257612081612149565b5b828202905092915050565b6000612098826120ff565b91506120a3836120ff565b9250828210156120b6576120b5612149565b5b828203905092915050565b60006120cc826120df565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612134578082015181840152602081019050612119565b83811115612143576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b61219f816120c1565b81146121aa57600080fd5b50565b6121b6816120ff565b81146121c157600080fd5b5056fea26469706673582212202f0fb447ae0ac6e0257690ca848f81660bf3a5633eef80dfca85613dbf6fdf2e64736f6c63430008000033

Deployed Bytecode Sourcemap

9030:905:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8470:103;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9241:74;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9106:39;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7513:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4938:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6267:579;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9528:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6106:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9200:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9853:79;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8581:442;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4814:116;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9152:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8188:129;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5046:451;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4697:48;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4643:47;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8325:137;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7888:292;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7736:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8470:103;8527:4;8551:5;:14;8557:7;8551:14;;;;;;;;;;;;;;;;;;;;;;;;;8544:21;;8470:103;;;:::o;9241:74::-;9233:1;9297:17;;9291:2;:23;;;;:::i;:::-;9274:13;:41;;;;:::i;:::-;9241:74;:::o;9106:39::-;;;;;;;;;;;;;;;;;;;:::o;7513:215::-;7589:4;7638:6;7606:7;:19;7614:10;7606:19;;;;;;;;;;;;;;;:29;7626:8;7606:29;;;;;;;;;;;;;;;:38;;;;7681:8;7660:38;;7669:10;7660:38;;;7691:6;7660:38;;;;;;:::i;:::-;;;;;;;;7716:4;7709:11;;7513:215;;;;:::o;4938:100::-;4991:7;5018:12;;5011:19;;4938:100;:::o;6267:579::-;6358:4;6379:5;:12;6385:5;6379:12;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;;6395:5;:10;6401:3;6395:10;;;;;;;;;;;;;;;;;;;;;;;;;6379:26;6375:73;;;6439:4;6424:19;;:11;;;;;;;;;;;:19;;;6416:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;6375:73;6482:1;6467:17;;:3;:17;;;;6459:26;;;;;;6514:8;:15;6523:5;6514:15;;;;;;;;;;;;;;;;6504:6;:25;;6496:34;;;;;;6559:7;:14;6567:5;6559:14;;;;;;;;;;;;;;;:26;6574:10;6559:26;;;;;;;;;;;;;;;;6549:6;:36;;6541:45;;;;;;6615:27;6635:6;6615:8;:15;6624:5;6615:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;6597:8;:15;6606:5;6597:15;;;;;;;;;;;;;;;:45;;;;6669:25;6687:6;6669:8;:13;6678:3;6669:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;6653:8;:13;6662:3;6653:13;;;;;;;;;;;;;;;:41;;;;6734:38;6765:6;6734:7;:14;6742:5;6734:14;;;;;;;;;;;;;;;:26;6749:10;6734:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;6705:7;:14;6713:5;6705:14;;;;;;;;;;;;;;;:26;6720:10;6705:26;;;;;;;;;;;;;;;:67;;;;6804:3;6788:28;;6797:5;6788:28;;;6809:6;6788:28;;;;;;:::i;:::-;;;;;;;;6834:4;6827:11;;6267:579;;;;;:::o;9528:317::-;9597:24;9624:30;9634:7;9643:10;9624:9;:30::i;:::-;9597:57;;9693:5;9673:16;:25;;9665:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;9750:55;9759:7;9768:10;9799:5;9780:16;:24;;;;:::i;:::-;9750:8;:55::i;:::-;9816:21;9822:7;9831:5;9816;:21::i;:::-;9528:317;;;:::o;6106:23::-;;;;:::o;9200:34::-;9233:1;9200:34;:::o;9853:79::-;9900:24;9906:10;9918:5;9900;:24::i;:::-;9853:79;:::o;8581:442::-;8664:4;8681:13;8697:7;:19;8705:10;8697:19;;;;;;;;;;;;;;;:29;8717:8;8697:29;;;;;;;;;;;;;;;;8681:45;;8760:8;8741:16;:27;8737:180;;;8813:1;8781:7;:19;8789:10;8781:19;;;;;;;;;;;;;;;:29;8801:8;8781:29;;;;;;;;;;;;;;;:33;;;;8737:180;;;8875:30;8888:16;8875:8;:12;;:30;;;;:::i;:::-;8843:7;:19;8851:10;8843:19;;;;;;;;;;;;;;;:29;8863:8;8843:29;;;;;;;;;;;;;;;:62;;;;8737:180;8953:8;8932:61;;8941:10;8932:61;;;8963:7;:19;8971:10;8963:19;;;;;;;;;;;;;;;:29;8983:8;8963:29;;;;;;;;;;;;;;;;8932:61;;;;;;:::i;:::-;;;;;;;;9011:4;9004:11;;;8581:442;;;;:::o;4814:116::-;4879:7;4906:8;:16;4915:6;4906:16;;;;;;;;;;;;;;;;4899:23;;4814:116;;;:::o;9152:41::-;;;;;;;;;;;;;;;;;;;:::o;8188:129::-;8268:8;;;;;;;;;;;8254:22;;:10;:22;;;8246:31;;;;;;8305:4;8288:5;:14;8294:7;8288:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;8188:129;:::o;5046:451::-;5118:4;5139:5;:17;5145:10;5139:17;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;;5160:5;:10;5166:3;5160:10;;;;;;;;;;;;;;;;;;;;;;;;;5139:31;5135:78;;;5204:4;5189:19;;:11;;;;;;;;;;;:19;;;5181:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;5135:78;5247:1;5232:17;;:3;:17;;;;5224:26;;;;;;5279:8;:20;5288:10;5279:20;;;;;;;;;;;;;;;;5269:6;:30;;5261:39;;;;;;5334:32;5359:6;5334:8;:20;5343:10;5334:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;5311:8;:20;5320:10;5311:20;;;;;;;;;;;;;;;:55;;;;5393:25;5411:6;5393:8;:13;5402:3;5393:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;5377:8;:13;5386:3;5377:13;;;;;;;;;;;;;;;:41;;;;5455:3;5434:33;;5443:10;5434:33;;;5460:6;5434:33;;;;;;:::i;:::-;;;;;;;;5485:4;5478:11;;5046:451;;;;:::o;4697:48::-;;;;:::o;4643:47::-;;;;:::o;8325:137::-;8404:8;;;;;;;;;;;8390:22;;:10;:22;;;8382:31;;;;;;8449:5;8432;:14;8438:7;8432:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;8325:137;:::o;7888:292::-;7966:4;8026:46;8060:11;8026:7;:19;8034:10;8026:19;;;;;;;;;;;;;;;:29;8046:8;8026:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;7983:7;:19;7991:10;7983:19;;;;;;;;;;;;;;;:29;8003:8;7983:29;;;;;;;;;;;;;;;:90;;;;8110:8;8089:61;;8098:10;8089:61;;;8120:7;:19;8128:10;8120:19;;;;;;;;;;;;;;;:29;8140:8;8120:29;;;;;;;;;;;;;;;;8089:61;;;;;;:::i;:::-;;;;;;;;8168:4;8161:11;;7888:292;;;;:::o;7736:143::-;7819:7;7846;:15;7854:6;7846:15;;;;;;;;;;;;;;;:25;7862:8;7846:25;;;;;;;;;;;;;;;;7839:32;;7736:143;;;;:::o;669:181::-;727:7;747:9;763:1;759;:5;;;;:::i;:::-;747:17;;788:1;783;:6;;775:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;841:1;834:8;;;669:181;;;;:::o;1040:136::-;1098:7;1125:43;1129:1;1132;1125:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1118:50;;1040:136;;;;:::o;7164:340::-;7283:1;7266:19;;:5;:19;;;;7258:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7364:1;7345:21;;:7;:21;;;;7337:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7442:6;7416:7;:14;7424:5;7416:14;;;;;;;;;;;;;;;:23;7431:7;7416:23;;;;;;;;;;;;;;;:32;;;;7480:7;7464:32;;7473:5;7464:32;;;7489:6;7464:32;;;;;;:::i;:::-;;;;;;;;7164:340;;;:::o;6854:302::-;6948:1;6929:21;;:7;:21;;;;6921:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7014:23;7031:5;7014:12;;:16;;:23;;;;:::i;:::-;6999:12;:38;;;;7068:28;7090:5;7068:8;:17;7077:7;7068:17;;;;;;;;;;;;;;;;:21;;:28;;;;:::i;:::-;7048:8;:17;7057:7;7048:17;;;;;;;;;;;;;;;:48;;;;7138:1;7112:36;;7121:7;7112:36;;;7142:5;7112:36;;;;;;:::i;:::-;;;;;;;;6854:302;;:::o;1386:192::-;1472:7;1505:1;1500;:6;;1508:12;1492:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1532:9;1548:1;1544;:5;;;;:::i;:::-;1532:17;;1569:1;1562:8;;;1386:192;;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;;;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:552::-;;;;1120:2;1108:9;1099:7;1095:23;1091:32;1088:2;;;1136:1;1133;1126:12;1088:2;1179:1;1204:53;1249:7;1240:6;1229:9;1225:22;1204:53;:::i;:::-;1194:63;;1150:117;1306:2;1332:53;1377:7;1368:6;1357:9;1353:22;1332:53;:::i;:::-;1322:63;;1277:118;1434:2;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1405:118;1078:452;;;;;:::o;1536:407::-;;;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:262::-;;2057:2;2045:9;2036:7;2032:23;2028:32;2025:2;;;2073:1;2070;2063:12;2025:2;2116:1;2141:53;2186:7;2177:6;2166:9;2162:22;2141:53;:::i;:::-;2131:63;;2087:117;2015:196;;;;:::o;2217:109::-;2298:21;2313:5;2298:21;:::i;:::-;2293:3;2286:34;2276:50;;:::o;2332:364::-;;2448:39;2481:5;2448:39;:::i;:::-;2503:71;2567:6;2562:3;2503:71;:::i;:::-;2496:78;;2583:52;2628:6;2623:3;2616:4;2609:5;2605:16;2583:52;:::i;:::-;2660:29;2682:6;2660:29;:::i;:::-;2655:3;2651:39;2644:46;;2424:272;;;;;:::o;2702:366::-;;2865:67;2929:2;2924:3;2865:67;:::i;:::-;2858:74;;2962:34;2958:1;2953:3;2949:11;2942:55;3028:4;3023:2;3018:3;3014:12;3007:26;3059:2;3054:3;3050:12;3043:19;;2848:220;;;:::o;3074:325::-;;3237:67;3301:2;3296:3;3237:67;:::i;:::-;3230:74;;3334:29;3330:1;3325:3;3321:11;3314:50;3390:2;3385:3;3381:12;3374:19;;3220:179;;;:::o;3405:368::-;;3568:67;3632:2;3627:3;3568:67;:::i;:::-;3561:74;;3665:34;3661:1;3656:3;3652:11;3645:55;3731:6;3726:2;3721:3;3717:12;3710:28;3764:2;3759:3;3755:12;3748:19;;3551:222;;;:::o;3779:365::-;;3942:67;4006:2;4001:3;3942:67;:::i;:::-;3935:74;;4039:34;4035:1;4030:3;4026:11;4019:55;4105:3;4100:2;4095:3;4091:12;4084:25;4135:2;4130:3;4126:12;4119:19;;3925:219;;;:::o;4150:263::-;;4313:66;4377:1;4372:3;4313:66;:::i;:::-;4306:73;;4405:1;4400:3;4396:11;4389:18;;4296:117;;;:::o;4419:368::-;;4582:67;4646:2;4641:3;4582:67;:::i;:::-;4575:74;;4679:34;4675:1;4670:3;4666:11;4659:55;4745:6;4740:2;4735:3;4731:12;4724:28;4778:2;4773:3;4769:12;4762:19;;4565:222;;;:::o;4793:118::-;4880:24;4898:5;4880:24;:::i;:::-;4875:3;4868:37;4858:53;;:::o;4917:112::-;5000:22;5016:5;5000:22;:::i;:::-;4995:3;4988:35;4978:51;;:::o;5035:210::-;;5160:2;5149:9;5145:18;5137:26;;5173:65;5235:1;5224:9;5220:17;5211:6;5173:65;:::i;:::-;5127:118;;;;:::o;5251:313::-;;5402:2;5391:9;5387:18;5379:26;;5451:9;5445:4;5441:20;5437:1;5426:9;5422:17;5415:47;5479:78;5552:4;5543:6;5479:78;:::i;:::-;5471:86;;5369:195;;;;:::o;5570:419::-;;5774:2;5763:9;5759:18;5751:26;;5823:9;5817:4;5813:20;5809:1;5798:9;5794:17;5787:47;5851:131;5977:4;5851:131;:::i;:::-;5843:139;;5741:248;;;:::o;5995:419::-;;6199:2;6188:9;6184:18;6176:26;;6248:9;6242:4;6238:20;6234:1;6223:9;6219:17;6212:47;6276:131;6402:4;6276:131;:::i;:::-;6268:139;;6166:248;;;:::o;6420:419::-;;6624:2;6613:9;6609:18;6601:26;;6673:9;6667:4;6663:20;6659:1;6648:9;6644:17;6637:47;6701:131;6827:4;6701:131;:::i;:::-;6693:139;;6591:248;;;:::o;6845:419::-;;7049:2;7038:9;7034:18;7026:26;;7098:9;7092:4;7088:20;7084:1;7073:9;7069:17;7062:47;7126:131;7252:4;7126:131;:::i;:::-;7118:139;;7016:248;;;:::o;7270:419::-;;7474:2;7463:9;7459:18;7451:26;;7523:9;7517:4;7513:20;7509:1;7498:9;7494:17;7487:47;7551:131;7677:4;7551:131;:::i;:::-;7543:139;;7441:248;;;:::o;7695:419::-;;7899:2;7888:9;7884:18;7876:26;;7948:9;7942:4;7938:20;7934:1;7923:9;7919:17;7912:47;7976:131;8102:4;7976:131;:::i;:::-;7968:139;;7866:248;;;:::o;8120:222::-;;8251:2;8240:9;8236:18;8228:26;;8264:71;8332:1;8321:9;8317:17;8308:6;8264:71;:::i;:::-;8218:124;;;;:::o;8348:214::-;;8475:2;8464:9;8460:18;8452:26;;8488:67;8552:1;8541:9;8537:17;8528:6;8488:67;:::i;:::-;8442:120;;;;:::o;8568:99::-;;8654:5;8648:12;8638:22;;8627:40;;;:::o;8673:169::-;;8791:6;8786:3;8779:19;8831:4;8826:3;8822:14;8807:29;;8769:73;;;;:::o;8848:305::-;;8907:20;8925:1;8907:20;:::i;:::-;8902:25;;8941:20;8959:1;8941:20;:::i;:::-;8936:25;;9095:1;9027:66;9023:74;9020:1;9017:81;9014:2;;;9101:18;;:::i;:::-;9014:2;9145:1;9142;9138:9;9131:16;;8892:261;;;;:::o;9159:848::-;;;9251:6;9242:15;;9275:5;9266:14;;9289:712;9310:1;9300:8;9297:15;9289:712;;;9405:4;9400:3;9396:14;9390:4;9387:24;9384:2;;;9414:18;;:::i;:::-;9384:2;9464:1;9454:8;9450:16;9447:2;;;9879:4;9872:5;9868:16;9859:25;;9447:2;9929:4;9923;9919:15;9911:23;;9959:32;9982:8;9959:32;:::i;:::-;9947:44;;9289:712;;;9232:775;;;;;;;:::o;10013:285::-;;10097:23;10115:4;10097:23;:::i;:::-;10089:31;;10141:27;10159:8;10141:27;:::i;:::-;10129:39;;10187:104;10224:66;10214:8;10208:4;10187:104;:::i;:::-;10178:113;;10079:219;;;;:::o;10304:1073::-;;10549:8;10539:2;;10570:1;10561:10;;10572:5;;10539:2;10598:4;10588:2;;10615:1;10606:10;;10617:5;;10588:2;10684:4;10732:1;10727:27;;;;10768:1;10763:191;;;;10677:277;;10727:27;10745:1;10736:10;;10747:5;;;10763:191;10808:3;10798:8;10795:17;10792:2;;;10815:18;;:::i;:::-;10792:2;10864:8;10861:1;10857:16;10848:25;;10899:3;10892:5;10889:14;10886:2;;;10906:18;;:::i;:::-;10886:2;10939:5;;;10677:277;;11063:2;11053:8;11050:16;11044:3;11038:4;11035:13;11031:36;11013:2;11003:8;11000:16;10995:2;10989:4;10986:12;10982:35;10966:111;10963:2;;;11119:8;11113:4;11109:19;11100:28;;11154:3;11147:5;11144:14;11141:2;;;11161:18;;:::i;:::-;11141:2;11194:5;;10963:2;11234:42;11272:3;11262:8;11256:4;11253:1;11234:42;:::i;:::-;11219:57;;;;11308:4;11303:3;11299:14;11292:5;11289:25;11286:2;;;11317:18;;:::i;:::-;11286:2;11366:4;11359:5;11355:16;11346:25;;10364:1013;;;;;;:::o;11383:348::-;;11446:20;11464:1;11446:20;:::i;:::-;11441:25;;11480:20;11498:1;11480:20;:::i;:::-;11475:25;;11668:1;11600:66;11596:74;11593:1;11590:81;11585:1;11578:9;11571:17;11567:105;11564:2;;;11675:18;;:::i;:::-;11564:2;11723:1;11720;11716:9;11705:20;;11431:300;;;;:::o;11737:191::-;;11797:20;11815:1;11797:20;:::i;:::-;11792:25;;11831:20;11849:1;11831:20;:::i;:::-;11826:25;;11870:1;11867;11864:8;11861:2;;;11875:18;;:::i;:::-;11861:2;11920:1;11917;11913:9;11905:17;;11782:146;;;;:::o;11934:96::-;;12000:24;12018:5;12000:24;:::i;:::-;11989:35;;11979:51;;;:::o;12036:90::-;;12113:5;12106:13;12099:21;12088:32;;12078:48;;;:::o;12132:126::-;;12209:42;12202:5;12198:54;12187:65;;12177:81;;;:::o;12264:77::-;;12330:5;12319:16;;12309:32;;;:::o;12347:86::-;;12422:4;12415:5;12411:16;12400:27;;12390:43;;;:::o;12439:307::-;12507:1;12517:113;12531:6;12528:1;12525:13;12517:113;;;12616:1;12611:3;12607:11;12601:18;12597:1;12592:3;12588:11;12581:39;12553:2;12550:1;12546:10;12541:15;;12517:113;;;12648:6;12645:1;12642:13;12639:2;;;12728:1;12719:6;12714:3;12710:16;12703:27;12639:2;12488:258;;;;:::o;12752:180::-;12800:77;12797:1;12790:88;12897:4;12894:1;12887:15;12921:4;12918:1;12911:15;12938:102;;13030:2;13026:7;13021:2;13014:5;13010:14;13006:28;12996:38;;12986:54;;;:::o;13046:102::-;;13135:5;13132:1;13128:13;13107:34;;13097:51;;;:::o;13154:122::-;13227:24;13245:5;13227:24;:::i;:::-;13220:5;13217:35;13207:2;;13266:1;13263;13256:12;13207:2;13197:79;:::o;13282:122::-;13355:24;13373:5;13355:24;:::i;:::-;13348:5;13345:35;13335:2;;13394:1;13391;13384:12;13335:2;13325:79;:::o

Swarm Source

ipfs://2f0fb447ae0ac6e0257690ca848f81660bf3a5633eef80dfca85613dbf6fdf2e

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  ]

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.