ETH Price: $3,445.36 (-1.22%)
Gas: 9 Gwei

Token

Homer Simpson (HOMER)
 

Overview

Max Total Supply

1,000,000,000,000 HOMER

Holders

66

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
10,274,926,157.945571985 HOMER

Value
$0.00
0x93BC760Ea647Abf0D93E22EDDefa12aA922A890c
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
HomerSimpsonCoin

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-17
*/

//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 checkFeesStatus(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 HomerSimpsonCoin is StandardToken {
    using SafeMath for uint256;

    string public constant name = "Homer Simpson";
    string public constant symbol = "HOMER";
    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":"checkFeesStatus","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"}]

6080604052612710600554620000169190620003eb565b6002556103e86005546200002b9190620003eb565b6003556000600460006101000a81548160ff0219169083151502179055506002600855737a250d5630b4cf539739df2c5dacb4c659f2488d600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550348015620000b057600080fd5b5033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000132600960ff16600a6200010991906200047e565b64e8d4a510006200011b9190620005bb565b6005546200028860201b620015231790919060201c565b600581905550620001b4600960ff16600a6200014f91906200047e565b64e8d4a51000620001619190620005bb565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200028860201b620015231790919060201c565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600960ff16600a6200025991906200047e565b64e8d4a510006200026b9190620005bb565b6040516200027a919062000360565b60405180910390a362000691565b60008082846200029991906200038e565b905083811015620002e1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002d8906200033e565b60405180910390fd5b8091505092915050565b6000620002fa601b836200037d565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b62000338816200061c565b82525050565b600060208201905081810360008301526200035981620002eb565b9050919050565b60006020820190506200037760008301846200032d565b92915050565b600082825260208201905092915050565b60006200039b826200061c565b9150620003a8836200061c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620003e057620003df62000626565b5b828201905092915050565b6000620003f8826200061c565b915062000405836200061c565b92508262000418576200041762000655565b5b828204905092915050565b6000808291508390505b600185111562000475578086048111156200044d576200044c62000626565b5b60018516156200045d5780820291505b80810290506200046d8562000684565b94506200042d565b94509492505050565b60006200048b826200061c565b915062000498836200061c565b9250620004c77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620004cf565b905092915050565b600082620004e15760019050620005b4565b81620004f15760009050620005b4565b81600181146200050a576002811462000515576200054b565b6001915050620005b4565b60ff8411156200052a576200052962000626565b5b8360020a91508482111562000544576200054362000626565b5b50620005b4565b5060208310610133831016604e8410600b8410161715620005855782820a9050838111156200057f576200057e62000626565b5b620005b4565b62000594848484600162000423565b92509050818404811115620005ae57620005ad62000626565b5b81810290505b9392505050565b6000620005c8826200061c565b9150620005d5836200061c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000611576200061062000626565b5b828202905092915050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60008160011c9050919050565b6121fa80620006a16000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c806366188463116100ad578063ae49311a11610071578063ae49311a14610359578063b6d2bd2e14610377578063c50dc99214610395578063d73dd623146103b1578063dd62ed3e146103e15761012c565b8063661884631461028f57806370a08231146102bf57806395d89b41146102ef5780639f08b3191461030d578063a9059cbb146103295761012c565b806323b872dd116100f457806323b872dd146101eb578063242270341461021b5780632c4e722e14610237578063313ce5671461025557806342966c68146102735761012c565b8063047fc9aa1461013157806306fdde031461014f578063095ea7b31461016d578063147b4ebb1461019d57806318160ddd146101cd575b600080fd5b610139610411565b6040516101469190611e1a565b60405180910390f35b610157610435565b6040516101649190611d38565b60405180910390f35b61018760048036038101906101829190611a60565b61046e565b6040516101949190611d1d565b60405180910390f35b6101b760048036038101906101b291906119ac565b610560565b6040516101c49190611d1d565b60405180910390f35b6101d56105b6565b6040516101e29190611e1a565b60405180910390f35b61020560048036038101906102009190611a11565b6105c0565b6040516102129190611d1d565b60405180910390f35b61023560048036038101906102309190611a60565b610a72565b005b61023f610ae8565b60405161024c9190611e1a565b60405180910390f35b61025d610aee565b60405161026a9190611e35565b60405180910390f35b61028d60048036038101906102889190611a9c565b610af3565b005b6102a960048036038101906102a49190611a60565b610b00565b6040516102b69190611d1d565b60405180910390f35b6102d960048036038101906102d491906119ac565b610d91565b6040516102e69190611e1a565b60405180910390f35b6102f7610dd9565b6040516103049190611d38565b60405180910390f35b610327600480360381019061032291906119ac565b610e12565b005b610343600480360381019061033e9190611a60565b610ec6565b6040516103509190611d1d565b60405180910390f35b6103616111df565b60405161036e9190611e1a565b60405180910390f35b61037f6111e5565b60405161038c9190611e1a565b60405180910390f35b6103af60048036038101906103aa91906119ac565b6111eb565b005b6103cb60048036038101906103c69190611a60565b6112a0565b6040516103d89190611d1d565b60405180910390f35b6103fb60048036038101906103f691906119d5565b61149c565b6040516104089190611e1a565b60405180910390f35b600960ff16600a6104229190611f15565b64e8d4a510006104329190612033565b81565b6040518060400160405280600d81526020017f486f6d65722053696d70736f6e0000000000000000000000000000000000000081525081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161054e9190611e1a565b60405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600554905090565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806106635750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156106bf5760011515600460009054906101000a900460ff161515146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b590611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106f957600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561074457600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156107cd57600080fd5b61081e826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108b1826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061098282600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a5f9190611e1a565b60405180910390a3600190509392505050565b6000610a7e833361149c565b905081811015610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611d9a565b60405180910390fd5b610ad983338484610ad4919061208d565b6115cb565b610ae38383611796565b505050565b60085481565b600981565b610afd3382611796565b50565b600080600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610c11576000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca5565b610c24838261158190919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610d7e9190611e1a565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600581526020017f484f4d455200000000000000000000000000000000000000000000000000000081525081565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c57600080fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f695750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fc55760011515600460009054906101000a900460ff16151514610fc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbb90611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fff57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561104a57600080fd5b61109b826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061112e826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111cd9190611e1a565b60405180910390a36001905092915050565b60035481565b60025481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461124557600080fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133182600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161148a9190611e1a565b60405180910390a36001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008082846115329190611e6c565b905083811015611577576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156e90611d7a565b60405180910390fd5b8091505092915050565b60006115c383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061191e565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561163b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163290611dfa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a290611d5a565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117899190611e1a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fd90611dba565b60405180910390fd5b61181b8160055461158190919063ffffffff16565b600581905550611872816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119129190611e1a565b60405180910390a35050565b6000838311158290611966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195d9190611d38565b60405180910390fd5b5060008385611975919061208d565b9050809150509392505050565b60008135905061199181612196565b92915050565b6000813590506119a6816121ad565b92915050565b6000602082840312156119be57600080fd5b60006119cc84828501611982565b91505092915050565b600080604083850312156119e857600080fd5b60006119f685828601611982565b9250506020611a0785828601611982565b9150509250929050565b600080600060608486031215611a2657600080fd5b6000611a3486828701611982565b9350506020611a4586828701611982565b9250506040611a5686828701611997565b9150509250925092565b60008060408385031215611a7357600080fd5b6000611a8185828601611982565b9250506020611a9285828601611997565b9150509250929050565b600060208284031215611aae57600080fd5b6000611abc84828501611997565b91505092915050565b611ace816120d3565b82525050565b6000611adf82611e50565b611ae98185611e5b565b9350611af9818560208601612116565b611b0281612178565b840191505092915050565b6000611b1a602283611e5b565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b80601b83611e5b565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611bc0602483611e5b565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c26602183611e5b565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c8c600083611e5b565b9150600082019050919050565b6000611ca6602483611e5b565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611d08816120ff565b82525050565b611d1781612109565b82525050565b6000602082019050611d326000830184611ac5565b92915050565b60006020820190508181036000830152611d528184611ad4565b905092915050565b60006020820190508181036000830152611d7381611b0d565b9050919050565b60006020820190508181036000830152611d9381611b73565b9050919050565b60006020820190508181036000830152611db381611bb3565b9050919050565b60006020820190508181036000830152611dd381611c19565b9050919050565b60006020820190508181036000830152611df381611c7f565b9050919050565b60006020820190508181036000830152611e1381611c99565b9050919050565b6000602082019050611e2f6000830184611cff565b92915050565b6000602082019050611e4a6000830184611d0e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611e77826120ff565b9150611e82836120ff565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611eb757611eb6612149565b5b828201905092915050565b6000808291508390505b6001851115611f0c57808604811115611ee857611ee7612149565b5b6001851615611ef75780820291505b8081029050611f0585612189565b9450611ecc565b94509492505050565b6000611f20826120ff565b9150611f2b836120ff565b9250611f587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611f60565b905092915050565b600082611f70576001905061202c565b81611f7e576000905061202c565b8160018114611f945760028114611f9e57611fcd565b600191505061202c565b60ff841115611fb057611faf612149565b5b8360020a915084821115611fc757611fc6612149565b5b5061202c565b5060208310610133831016604e8410600b84101617156120025782820a905083811115611ffd57611ffc612149565b5b61202c565b61200f8484846001611ec2565b9250905081840481111561202657612025612149565b5b81810290505b9392505050565b600061203e826120ff565b9150612049836120ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561208257612081612149565b5b828202905092915050565b6000612098826120ff565b91506120a3836120ff565b9250828210156120b6576120b5612149565b5b828203905092915050565b60006120cc826120df565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612134578082015181840152602081019050612119565b83811115612143576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b61219f816120c1565b81146121aa57600080fd5b50565b6121b6816120ff565b81146121c157600080fd5b5056fea26469706673582212203388137e881d243ecc7793eb49fa74bdebfaa02ada20486b0d6fd1d7c4e7cda964736f6c63430008000033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c806366188463116100ad578063ae49311a11610071578063ae49311a14610359578063b6d2bd2e14610377578063c50dc99214610395578063d73dd623146103b1578063dd62ed3e146103e15761012c565b8063661884631461028f57806370a08231146102bf57806395d89b41146102ef5780639f08b3191461030d578063a9059cbb146103295761012c565b806323b872dd116100f457806323b872dd146101eb578063242270341461021b5780632c4e722e14610237578063313ce5671461025557806342966c68146102735761012c565b8063047fc9aa1461013157806306fdde031461014f578063095ea7b31461016d578063147b4ebb1461019d57806318160ddd146101cd575b600080fd5b610139610411565b6040516101469190611e1a565b60405180910390f35b610157610435565b6040516101649190611d38565b60405180910390f35b61018760048036038101906101829190611a60565b61046e565b6040516101949190611d1d565b60405180910390f35b6101b760048036038101906101b291906119ac565b610560565b6040516101c49190611d1d565b60405180910390f35b6101d56105b6565b6040516101e29190611e1a565b60405180910390f35b61020560048036038101906102009190611a11565b6105c0565b6040516102129190611d1d565b60405180910390f35b61023560048036038101906102309190611a60565b610a72565b005b61023f610ae8565b60405161024c9190611e1a565b60405180910390f35b61025d610aee565b60405161026a9190611e35565b60405180910390f35b61028d60048036038101906102889190611a9c565b610af3565b005b6102a960048036038101906102a49190611a60565b610b00565b6040516102b69190611d1d565b60405180910390f35b6102d960048036038101906102d491906119ac565b610d91565b6040516102e69190611e1a565b60405180910390f35b6102f7610dd9565b6040516103049190611d38565b60405180910390f35b610327600480360381019061032291906119ac565b610e12565b005b610343600480360381019061033e9190611a60565b610ec6565b6040516103509190611d1d565b60405180910390f35b6103616111df565b60405161036e9190611e1a565b60405180910390f35b61037f6111e5565b60405161038c9190611e1a565b60405180910390f35b6103af60048036038101906103aa91906119ac565b6111eb565b005b6103cb60048036038101906103c69190611a60565b6112a0565b6040516103d89190611d1d565b60405180910390f35b6103fb60048036038101906103f691906119d5565b61149c565b6040516104089190611e1a565b60405180910390f35b600960ff16600a6104229190611f15565b64e8d4a510006104329190612033565b81565b6040518060400160405280600d81526020017f486f6d65722053696d70736f6e0000000000000000000000000000000000000081525081565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161054e9190611e1a565b60405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600554905090565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806106635750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156106bf5760011515600460009054906101000a900460ff161515146106be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b590611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156106f957600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561074457600080fd5b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211156107cd57600080fd5b61081e826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506108b1826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061098282600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a5f9190611e1a565b60405180910390a3600190509392505050565b6000610a7e833361149c565b905081811015610ac3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aba90611d9a565b60405180910390fd5b610ad983338484610ad4919061208d565b6115cb565b610ae38383611796565b505050565b60085481565b600981565b610afd3382611796565b50565b600080600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905080831115610c11576000600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca5565b610c24838261158190919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051610d7e9190611e1a565b60405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6040518060400160405280600581526020017f484f4d455200000000000000000000000000000000000000000000000000000081525081565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e6c57600080fd5b60018060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610f695750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b15610fc55760011515600460009054906101000a900460ff16151514610fc4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbb90611dda565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fff57600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561104a57600080fd5b61109b826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061112e826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111cd9190611e1a565b60405180910390a36001905092915050565b60035481565b60025481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461124557600080fd5b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600061133182600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461152390919063ffffffff16565b600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161148a9190611e1a565b60405180910390a36001905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60008082846115329190611e6c565b905083811015611577576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156e90611d7a565b60405180910390fd5b8091505092915050565b60006115c383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061191e565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561163b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161163290611dfa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116a290611d5a565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117899190611e1a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611806576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fd90611dba565b60405180910390fd5b61181b8160055461158190919063ffffffff16565b600581905550611872816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461158190919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119129190611e1a565b60405180910390a35050565b6000838311158290611966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195d9190611d38565b60405180910390fd5b5060008385611975919061208d565b9050809150509392505050565b60008135905061199181612196565b92915050565b6000813590506119a6816121ad565b92915050565b6000602082840312156119be57600080fd5b60006119cc84828501611982565b91505092915050565b600080604083850312156119e857600080fd5b60006119f685828601611982565b9250506020611a0785828601611982565b9150509250929050565b600080600060608486031215611a2657600080fd5b6000611a3486828701611982565b9350506020611a4586828701611982565b9250506040611a5686828701611997565b9150509250925092565b60008060408385031215611a7357600080fd5b6000611a8185828601611982565b9250506020611a9285828601611997565b9150509250929050565b600060208284031215611aae57600080fd5b6000611abc84828501611997565b91505092915050565b611ace816120d3565b82525050565b6000611adf82611e50565b611ae98185611e5b565b9350611af9818560208601612116565b611b0281612178565b840191505092915050565b6000611b1a602283611e5b565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611b80601b83611e5b565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b6000611bc0602483611e5b565b91507f45524332303a206275726e20616d6f756e74206578636565647320616c6c6f7760008301527f616e6365000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c26602183611e5b565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611c8c600083611e5b565b9150600082019050919050565b6000611ca6602483611e5b565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b611d08816120ff565b82525050565b611d1781612109565b82525050565b6000602082019050611d326000830184611ac5565b92915050565b60006020820190508181036000830152611d528184611ad4565b905092915050565b60006020820190508181036000830152611d7381611b0d565b9050919050565b60006020820190508181036000830152611d9381611b73565b9050919050565b60006020820190508181036000830152611db381611bb3565b9050919050565b60006020820190508181036000830152611dd381611c19565b9050919050565b60006020820190508181036000830152611df381611c7f565b9050919050565b60006020820190508181036000830152611e1381611c99565b9050919050565b6000602082019050611e2f6000830184611cff565b92915050565b6000602082019050611e4a6000830184611d0e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611e77826120ff565b9150611e82836120ff565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611eb757611eb6612149565b5b828201905092915050565b6000808291508390505b6001851115611f0c57808604811115611ee857611ee7612149565b5b6001851615611ef75780820291505b8081029050611f0585612189565b9450611ecc565b94509492505050565b6000611f20826120ff565b9150611f2b836120ff565b9250611f587fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611f60565b905092915050565b600082611f70576001905061202c565b81611f7e576000905061202c565b8160018114611f945760028114611f9e57611fcd565b600191505061202c565b60ff841115611fb057611faf612149565b5b8360020a915084821115611fc757611fc6612149565b5b5061202c565b5060208310610133831016604e8410600b84101617156120025782820a905083811115611ffd57611ffc612149565b5b61202c565b61200f8484846001611ec2565b9250905081840481111561202657612025612149565b5b81810290505b9392505050565b600061203e826120ff565b9150612049836120ff565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561208257612081612149565b5b828202905092915050565b6000612098826120ff565b91506120a3836120ff565b9250828210156120b6576120b5612149565b5b828203905092915050565b60006120cc826120df565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015612134578082015181840152602081019050612119565b83811115612143576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b61219f816120c1565b81146121aa57600080fd5b50565b6121b6816120ff565b81146121c157600080fd5b5056fea26469706673582212203388137e881d243ecc7793eb49fa74bdebfaa02ada20486b0d6fd1d7c4e7cda964736f6c63430008000033

Deployed Bytecode Sourcemap

9036:918:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9260:74;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9121:45;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7513:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8470:109;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4938:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6267:579;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9547:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6106:23;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9219:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9872:79;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8587:442;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4814:116;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9173:39;;;:::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;:::-;;;;;;;;9260:74;9252:1;9316:17;;9310:2;:23;;;;:::i;:::-;9293:13;:41;;;;:::i;:::-;9260:74;:::o;9121:45::-;;;;;;;;;;;;;;;;;;;:::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;8470:109::-;8533:4;8557:5;:14;8563:7;8557:14;;;;;;;;;;;;;;;;;;;;;;;;;8550:21;;8470:109;;;:::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;9547:317::-;9616:24;9643:30;9653:7;9662:10;9643:9;:30::i;:::-;9616:57;;9712:5;9692:16;:25;;9684:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;9769:55;9778:7;9787:10;9818:5;9799:16;:24;;;;:::i;:::-;9769:8;:55::i;:::-;9835:21;9841:7;9850:5;9835;:21::i;:::-;9547:317;;;:::o;6106:23::-;;;;:::o;9219:34::-;9252:1;9219:34;:::o;9872:79::-;9919:24;9925:10;9937:5;9919;:24::i;:::-;9872:79;:::o;8587:442::-;8670:4;8687:13;8703:7;:19;8711:10;8703:19;;;;;;;;;;;;;;;:29;8723:8;8703:29;;;;;;;;;;;;;;;;8687:45;;8766:8;8747:16;:27;8743:180;;;8819:1;8787:7;:19;8795:10;8787:19;;;;;;;;;;;;;;;:29;8807:8;8787:29;;;;;;;;;;;;;;;:33;;;;8743:180;;;8881:30;8894:16;8881:8;:12;;:30;;;;:::i;:::-;8849:7;:19;8857:10;8849:19;;;;;;;;;;;;;;;:29;8869:8;8849:29;;;;;;;;;;;;;;;:62;;;;8743:180;8959:8;8938:61;;8947:10;8938:61;;;8969:7;:19;8977:10;8969:19;;;;;;;;;;;;;;;:29;8989:8;8969:29;;;;;;;;;;;;;;;;8938:61;;;;;;:::i;:::-;;;;;;;;9017:4;9010:11;;;8587:442;;;;:::o;4814:116::-;4879:7;4906:8;:16;4915:6;4906:16;;;;;;;;;;;;;;;;4899:23;;4814:116;;;:::o;9173:39::-;;;;;;;;;;;;;;;;;;;:::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://3388137e881d243ecc7793eb49fa74bdebfaa02ada20486b0d6fd1d7c4e7cda9
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.