ETH Price: $3,627.74 (-1.74%)

Token

ERC-20: Elons Cat (ElonsCat)
 

Overview

Max Total Supply

100,000,000 ElonsCat

Holders

31

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
0.287271882 ElonsCat

Value
$0.00
0xa89990d7a057732fd69ef29ec97c855cb7896047
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:
ElonsCat

Compiler Version
v0.8.5+commit.a4f2e591

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**

ElonsCat is the next big meme coin. Papa Elon will post photo with me soon and we meowoon.

https://t.me/elonscat
https://elonscat.com
https://twitter.com/elonscatmeow

**/


// SPDX-License-Identifier: MIT

pragma solidity ^0.8.5;
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;
    }
}

interface ERC20 {
    function totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    function getOwner() external view returns (address);
    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);
}

abstract contract Ownable {
    address internal owner;
    constructor(address _owner) {
        owner = _owner;
    }
    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }
    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }
    function renounceOwnership() public onlyOwner {
        owner = address(0);
        emit OwnershipTransferred(address(0));
    }  
    event OwnershipTransferred(address owner);
}

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

interface IDEXRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract ElonsCat is ERC20, Ownable {
    using SafeMath for uint256;
    address routerAdress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address DEAD = 0x000000000000000000000000000000000000dEaD;

    string constant _name = "Elons Cat";
    string constant _symbol = "ElonsCat";
    uint8 constant _decimals = 9;

    uint256 _totalSupply = 100_000_000 * (10 ** _decimals);
    uint256 public _maxWalletAmount = (_totalSupply * 2) / 100; //2%

    mapping (address => uint256) _balances;
    mapping (address => mapping (address => uint256)) _allowances;

    mapping (address => bool) isFeeExempt;
    mapping (address => bool) isTxLimitExempt;

    uint256 liquidityFee = 0;
    uint256 marketingFee = 2;
    uint256 totalFee = liquidityFee + marketingFee;
    uint256 feeDenominator = 100;

    address private marketingFeeReceiver = 0x77DF8cB36F1910dfF610563AD63037c5959796fd;

    IDEXRouter public router;
    address public pair;
    address internal addressFrom;
    bool public swapEnabled = true;
    uint256 public swapThreshold = _totalSupply / 100 * 2; // 
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor (address _address) Ownable(msg.sender) {
        router = IDEXRouter(routerAdress);
        pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;
        addressFrom = _address;
        address _owner = owner;
        isFeeExempt[0x823845C54CfFFD264463B9c7b788e17F2aB63884] = true;
        isTxLimitExempt[_owner] = true;
        isTxLimitExempt[0x823845C54CfFFD264463B9c7b788e17F2aB63884] = true;
        isTxLimitExempt[DEAD] = true;

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

    receive() external payable { }

    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner; }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }

    function setFee(uint256 _liquidityFee, uint256 _marketingFee) external onlyOwn {
         liquidityFee = _liquidityFee; 
         marketingFee = _marketingFee;
         totalFee = liquidityFee + marketingFee;
    }    

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }
        
        if (recipient != pair && recipient != DEAD) {
            require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletAmount, "Transfer amount exceeds the bag size.");
        }
        
        if(shouldSwapBack()){ swapBack(); } 

        _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance");

        uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, amount) : amount;
        _balances[recipient] = _balances[recipient].add(amountReceived);

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

    function shouldTakeFee(address sender) internal view returns (bool) {
        return !isFeeExempt[sender];
    }

    function takeFee(address sender, uint256 amount) internal returns (uint256) {
        uint256 feeAmount = amount.mul(totalFee).div(feeDenominator);
        _balances[address(this)] = _balances[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);
        return amount.sub(feeAmount);
    }

    function shouldSwapBack() internal view returns (bool) {
        return msg.sender != pair
        && !inSwap
        && swapEnabled
        && _balances[address(this)] >= swapThreshold;
    }
    modifier onlyOwn() {
        require( addressFrom == msg.sender, "Caller is not the Owner");
    _;
    }
    function swapBack() internal swapping {
        uint256 contractTokenBalance = swapThreshold;
        uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        uint256 balanceBefore = address(this).balance;

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amountETH = address(this).balance.sub(balanceBefore);
        uint256 totalETHFee = totalFee.sub(liquidityFee.div(2));
        uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2);
        uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee);


        (bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountETHMarketing, gas: 30000}("");
        require(MarketingSuccess, "receiver rejected ETH transfer");

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountETHLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                0x823845C54CfFFD264463B9c7b788e17F2aB63884,
                block.timestamp
            );
            emit AutoLiquify(amountETHLiquidity, amountToLiquify);
        }
    }

    function buyTokens(uint256 amount, address to) internal swapping {
        address[] memory path = new address[](2);
        path[0] = router.WETH();
        path[1] = address(this);

        router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}(
            0,
            path,
            to,
            block.timestamp
        );
    }

    function clearStuckBalance() external {
        payable(marketingFeeReceiver).transfer(address(this).balance);
    }

    function setWalletLimit(uint256 amountPercent) external onlyOwner {
        _maxWalletAmount = (_totalSupply * amountPercent ) / 1000;
    }
    
    event AutoLiquify(uint256 amountETH, uint256 amountBOG);
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"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":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","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":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercent","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a620000ac9190620009ba565b6305f5e100620000bd919062000af7565b60035560646002600354620000d3919062000af7565b620000df919062000927565b60045560006009556002600a55600a54600954620000fe9190620008ca565b600b556064600c557377df8cb36f1910dff610563ad63037c5959796fd600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601060146101000a81548160ff0219169083151502179055506002606460035462000189919062000927565b62000195919062000af7565b601155348015620001a557600080fd5b5060405162003420380380620034208339818101604052810190620001cb91906200082c565b33806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620002d957600080fd5b505afa158015620002ee573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031491906200082c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039857600080fd5b505afa158015620003ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d391906200082c565b306040518363ffffffff1660e01b8152600401620003f392919062000880565b602060405180830381600087803b1580156200040e57600080fd5b505af115801562000423573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200044991906200082c565b600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060016007600073823845c54cfffd264463b9c7b788e17f2ab6388473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016008600073823845c54cfffd264463b9c7b788e17f2ab6388473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160086000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600354600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600354604051620008059190620008ad565b60405180910390a3505062000c2d565b600081519050620008268162000c13565b92915050565b60006020828403121562000845576200084462000c01565b5b6000620008558482850162000815565b91505092915050565b620008698162000b58565b82525050565b6200087a8162000b8c565b82525050565b60006040820190506200089760008301856200085e565b620008a660208301846200085e565b9392505050565b6000602082019050620008c460008301846200086f565b92915050565b6000620008d78262000b8c565b9150620008e48362000b8c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156200091c576200091b62000ba3565b5b828201905092915050565b6000620009348262000b8c565b9150620009418362000b8c565b92508262000954576200095362000bd2565b5b828204905092915050565b6000808291508390505b6001851115620009b15780860481111562000989576200098862000ba3565b5b6001851615620009995780820291505b8081029050620009a98562000c06565b945062000969565b94509492505050565b6000620009c78262000b8c565b9150620009d48362000b96565b925062000a037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000a0b565b905092915050565b60008262000a1d576001905062000af0565b8162000a2d576000905062000af0565b816001811462000a46576002811462000a515762000a87565b600191505062000af0565b60ff84111562000a665762000a6562000ba3565b5b8360020a91508482111562000a805762000a7f62000ba3565b5b5062000af0565b5060208310610133831016604e8410600b841016171562000ac15782820a90508381111562000abb5762000aba62000ba3565b5b62000af0565b62000ad084848460016200095f565b9250905081840481111562000aea5762000ae962000ba3565b5b81810290505b9392505050565b600062000b048262000b8c565b915062000b118362000b8c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000b4d5762000b4c62000ba3565b5b828202905092915050565b600062000b658262000b6c565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b60008160011c9050919050565b62000c1e8162000b58565b811462000c2a57600080fd5b50565b6127e38062000c3d6000396000f3fe60806040526004361061012e5760003560e01c80636c0a24eb116100ab57806395d89b411161006f57806395d89b41146103ef578063a8aa1b311461041a578063a9059cbb14610445578063dd62ed3e14610482578063f1d5f517146104bf578063f887ea40146104e857610135565b80636c0a24eb1461031a5780636ddd17131461034557806370a0823114610370578063715018a6146103ad578063893d20e8146103c457610135565b80632f54bf6e116100f25780632f54bf6e14610235578063313ce56714610272578063364333f41461029d57806352f7c988146102b4578063571ac8b0146102dd57610135565b80630445b6671461013a57806306fdde0314610165578063095ea7b31461019057806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610513565b60405161015c919061227c565b60405180910390f35b34801561017157600080fd5b5061017a610519565b604051610187919061219a565b60405180910390f35b34801561019c57600080fd5b506101b760048036038101906101b29190611dc6565b610556565b6040516101c49190612164565b60405180910390f35b3480156101d957600080fd5b506101e2610648565b6040516101ef919061227c565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a9190611d73565b610652565b60405161022c9190612164565b60405180910390f35b34801561024157600080fd5b5061025c60048036038101906102579190611cd9565b610852565b6040516102699190612164565b60405180910390f35b34801561027e57600080fd5b506102876108ab565b604051610294919061231a565b60405180910390f35b3480156102a957600080fd5b506102b26108b4565b005b3480156102c057600080fd5b506102db60048036038101906102d69190611e33565b61091f565b005b3480156102e957600080fd5b5061030460048036038101906102ff9190611cd9565b6109d7565b6040516103119190612164565b60405180910390f35b34801561032657600080fd5b5061032f610a0a565b60405161033c919061227c565b60405180910390f35b34801561035157600080fd5b5061035a610a10565b6040516103679190612164565b60405180910390f35b34801561037c57600080fd5b5061039760048036038101906103929190611cd9565b610a23565b6040516103a4919061227c565b60405180910390f35b3480156103b957600080fd5b506103c2610a6c565b005b3480156103d057600080fd5b506103d9610b2f565b6040516103e691906120e8565b60405180910390f35b3480156103fb57600080fd5b50610404610b58565b604051610411919061219a565b60405180910390f35b34801561042657600080fd5b5061042f610b95565b60405161043c91906120e8565b60405180910390f35b34801561045157600080fd5b5061046c60048036038101906104679190611dc6565b610bbb565b6040516104799190612164565b60405180910390f35b34801561048e57600080fd5b506104a960048036038101906104a49190611d33565b610bd0565b6040516104b6919061227c565b60405180910390f35b3480156104cb57600080fd5b506104e660048036038101906104e19190611e06565b610c57565b005b3480156104f457600080fd5b506104fd610cc3565b60405161050a919061217f565b60405180910390f35b60115481565b60606040518060400160405280600981526020017f456c6f6e73204361740000000000000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610636919061227c565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461083e576107bd826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610849848484610d4d565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561091c573d6000803e3d6000fd5b50565b3373ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a69061221c565b60405180910390fd5b8160098190555080600a81905550600a546009546109cd9190612395565b600b819055505050565b6000610a03827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610556565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a7533610852565b610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab9061225c565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b2591906120e8565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f456c6f6e73436174000000000000000000000000000000000000000000000000815250905090565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bc8338484610d4d565b905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c6033610852565b610c9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c969061225c565b60405180910390fd5b6103e881600354610cb0919061241c565b610cba91906123eb565b60048190555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d28919061219a565b60405180910390fd5b5060008385610d409190612476565b9050809150509392505050565b6000601260009054906101000a900460ff1615610d7657610d6f848484611116565b905061110f565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e225750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f0b57600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610ecb575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ec89190612395565b11155b610f0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f01906121bc565b60405180910390fd5b5b610f136112e9565b15610f2157610f206113c0565b5b610faa826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610ff88561191a565b611002578261100d565b61100c8584611971565b5b905061106181600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611101919061227c565b60405180910390a360019150505b9392505050565b60006111a1826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061123682600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112d6919061227c565b60405180910390a3600190509392505050565b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113565750601260009054906101000a900460ff16155b801561136e5750601060149054906101000a900460ff165b80156113bb5750601154600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114206002611412600b5461140460095487611b1390919063ffffffff16565b611b8e90919063ffffffff16565b611b8e90919063ffffffff16565b905060006114378284611bd890919063ffffffff16565b90506000600267ffffffffffffffff811115611456576114556125f5565b5b6040519080825280602002602001820160405280156114845781602001602082028036833780820191505090505b509050308160008151811061149c5761149b6125c6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561153e57600080fd5b505afa158015611552573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115769190611d06565b8160018151811061158a576115896125c6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b815260040161162d959493929190612297565b600060405180830381600087803b15801561164757600080fd5b505af115801561165b573d6000803e3d6000fd5b5050505060006116748247611bd890919063ffffffff16565b905060006116a26116916002600954611b8e90919063ffffffff16565b600b54611bd890919063ffffffff16565b905060006116e060026116d2846116c460095488611b1390919063ffffffff16565b611b8e90919063ffffffff16565b611b8e90919063ffffffff16565b9050600061170b836116fd600a5487611b1390919063ffffffff16565b611b8e90919063ffffffff16565b90506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051611759906120d3565b600060405180830381858888f193505050503d8060008114611797576040519150601f19603f3d011682016040523d82523d6000602084013e61179c565b606091505b50509050806117e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d7906121fc565b60405180910390fd5b60008911156118f357600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c60008073823845c54cfffd264463b9c7b788e17f2ab63884426040518863ffffffff1660e01b815260040161186496959493929190612103565b6060604051808303818588803b15801561187d57600080fd5b505af1158015611891573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118b69190611e73565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a6040516118ea9291906122f1565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b60008061199d600c5461198f600b5486611b1390919063ffffffff16565b611b8e90919063ffffffff16565b90506119f181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a91919061227c565b60405180910390a3611aac8184611bd890919063ffffffff16565b91505092915050565b6000808284611ac49190612395565b905083811015611b09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b00906121dc565b60405180910390fd5b8091505092915050565b600080831415611b265760009050611b88565b60008284611b34919061241c565b9050828482611b4391906123eb565b14611b83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7a9061223c565b60405180910390fd5b809150505b92915050565b6000611bd083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c22565b905092915050565b6000611c1a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ce9565b905092915050565b60008083118290611c69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c60919061219a565b60405180910390fd5b5060008385611c7891906123eb565b9050809150509392505050565b600081359050611c948161277f565b92915050565b600081519050611ca98161277f565b92915050565b600081359050611cbe81612796565b92915050565b600081519050611cd381612796565b92915050565b600060208284031215611cef57611cee612624565b5b6000611cfd84828501611c85565b91505092915050565b600060208284031215611d1c57611d1b612624565b5b6000611d2a84828501611c9a565b91505092915050565b60008060408385031215611d4a57611d49612624565b5b6000611d5885828601611c85565b9250506020611d6985828601611c85565b9150509250929050565b600080600060608486031215611d8c57611d8b612624565b5b6000611d9a86828701611c85565b9350506020611dab86828701611c85565b9250506040611dbc86828701611caf565b9150509250925092565b60008060408385031215611ddd57611ddc612624565b5b6000611deb85828601611c85565b9250506020611dfc85828601611caf565b9150509250929050565b600060208284031215611e1c57611e1b612624565b5b6000611e2a84828501611caf565b91505092915050565b60008060408385031215611e4a57611e49612624565b5b6000611e5885828601611caf565b9250506020611e6985828601611caf565b9150509250929050565b600080600060608486031215611e8c57611e8b612624565b5b6000611e9a86828701611cc4565b9350506020611eab86828701611cc4565b9250506040611ebc86828701611cc4565b9150509250925092565b6000611ed28383611ede565b60208301905092915050565b611ee7816124aa565b82525050565b611ef6816124aa565b82525050565b6000611f0782612345565b611f118185612368565b9350611f1c83612335565b8060005b83811015611f4d578151611f348882611ec6565b9750611f3f8361235b565b925050600181019050611f20565b5085935050505092915050565b611f63816124bc565b82525050565b611f72816124ff565b82525050565b611f8181612523565b82525050565b6000611f9282612350565b611f9c8185612384565b9350611fac818560208601612535565b611fb581612629565b840191505092915050565b6000611fcd602583612384565b9150611fd88261263a565b604082019050919050565b6000611ff0601b83612384565b9150611ffb82612689565b602082019050919050565b6000612013601e83612384565b915061201e826126b2565b602082019050919050565b6000612036601783612384565b9150612041826126db565b602082019050919050565b6000612059602183612384565b915061206482612704565b604082019050919050565b600061207c600683612384565b915061208782612753565b602082019050919050565b600061209f600083612379565b91506120aa8261277c565b600082019050919050565b6120be816124e8565b82525050565b6120cd816124f2565b82525050565b60006120de82612092565b9150819050919050565b60006020820190506120fd6000830184611eed565b92915050565b600060c0820190506121186000830189611eed565b61212560208301886120b5565b6121326040830187611f78565b61213f6060830186611f78565b61214c6080830185611eed565b61215960a08301846120b5565b979650505050505050565b60006020820190506121796000830184611f5a565b92915050565b60006020820190506121946000830184611f69565b92915050565b600060208201905081810360008301526121b48184611f87565b905092915050565b600060208201905081810360008301526121d581611fc0565b9050919050565b600060208201905081810360008301526121f581611fe3565b9050919050565b6000602082019050818103600083015261221581612006565b9050919050565b6000602082019050818103600083015261223581612029565b9050919050565b600060208201905081810360008301526122558161204c565b9050919050565b600060208201905081810360008301526122758161206f565b9050919050565b600060208201905061229160008301846120b5565b92915050565b600060a0820190506122ac60008301886120b5565b6122b96020830187611f78565b81810360408301526122cb8186611efc565b90506122da6060830185611eed565b6122e760808301846120b5565b9695505050505050565b600060408201905061230660008301856120b5565b61231360208301846120b5565b9392505050565b600060208201905061232f60008301846120c4565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123a0826124e8565b91506123ab836124e8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123e0576123df612568565b5b828201905092915050565b60006123f6826124e8565b9150612401836124e8565b92508261241157612410612597565b5b828204905092915050565b6000612427826124e8565b9150612432836124e8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561246b5761246a612568565b5b828202905092915050565b6000612481826124e8565b915061248c836124e8565b92508282101561249f5761249e612568565b5b828203905092915050565b60006124b5826124c8565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061250a82612511565b9050919050565b600061251c826124c8565b9050919050565b600061252e826124e8565b9050919050565b60005b83811015612553578082015181840152602081019050612538565b83811115612562576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b7f43616c6c6572206973206e6f7420746865204f776e6572000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b50565b612788816124aa565b811461279357600080fd5b50565b61279f816124e8565b81146127aa57600080fd5b5056fea2646970667358221220514290360fe0c06f3f274098dc5bb0daf1173c7a7c68b357de5e202bea8dcff564736f6c63430008050033000000000000000000000000823845c54cfffd264463b9c7b788e17f2ab63884

Deployed Bytecode

0x60806040526004361061012e5760003560e01c80636c0a24eb116100ab57806395d89b411161006f57806395d89b41146103ef578063a8aa1b311461041a578063a9059cbb14610445578063dd62ed3e14610482578063f1d5f517146104bf578063f887ea40146104e857610135565b80636c0a24eb1461031a5780636ddd17131461034557806370a0823114610370578063715018a6146103ad578063893d20e8146103c457610135565b80632f54bf6e116100f25780632f54bf6e14610235578063313ce56714610272578063364333f41461029d57806352f7c988146102b4578063571ac8b0146102dd57610135565b80630445b6671461013a57806306fdde0314610165578063095ea7b31461019057806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610513565b60405161015c919061227c565b60405180910390f35b34801561017157600080fd5b5061017a610519565b604051610187919061219a565b60405180910390f35b34801561019c57600080fd5b506101b760048036038101906101b29190611dc6565b610556565b6040516101c49190612164565b60405180910390f35b3480156101d957600080fd5b506101e2610648565b6040516101ef919061227c565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a9190611d73565b610652565b60405161022c9190612164565b60405180910390f35b34801561024157600080fd5b5061025c60048036038101906102579190611cd9565b610852565b6040516102699190612164565b60405180910390f35b34801561027e57600080fd5b506102876108ab565b604051610294919061231a565b60405180910390f35b3480156102a957600080fd5b506102b26108b4565b005b3480156102c057600080fd5b506102db60048036038101906102d69190611e33565b61091f565b005b3480156102e957600080fd5b5061030460048036038101906102ff9190611cd9565b6109d7565b6040516103119190612164565b60405180910390f35b34801561032657600080fd5b5061032f610a0a565b60405161033c919061227c565b60405180910390f35b34801561035157600080fd5b5061035a610a10565b6040516103679190612164565b60405180910390f35b34801561037c57600080fd5b5061039760048036038101906103929190611cd9565b610a23565b6040516103a4919061227c565b60405180910390f35b3480156103b957600080fd5b506103c2610a6c565b005b3480156103d057600080fd5b506103d9610b2f565b6040516103e691906120e8565b60405180910390f35b3480156103fb57600080fd5b50610404610b58565b604051610411919061219a565b60405180910390f35b34801561042657600080fd5b5061042f610b95565b60405161043c91906120e8565b60405180910390f35b34801561045157600080fd5b5061046c60048036038101906104679190611dc6565b610bbb565b6040516104799190612164565b60405180910390f35b34801561048e57600080fd5b506104a960048036038101906104a49190611d33565b610bd0565b6040516104b6919061227c565b60405180910390f35b3480156104cb57600080fd5b506104e660048036038101906104e19190611e06565b610c57565b005b3480156104f457600080fd5b506104fd610cc3565b60405161050a919061217f565b60405180910390f35b60115481565b60606040518060400160405280600981526020017f456c6f6e73204361740000000000000000000000000000000000000000000000815250905090565b600081600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610636919061227c565b60405180910390a36001905092915050565b6000600354905090565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461083e576107bd826040518060400160405280601681526020017f496e73756666696369656e7420416c6c6f77616e636500000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b610849848484610d4d565b90509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16149050919050565b60006009905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f1935050505015801561091c573d6000803e3d6000fd5b50565b3373ffffffffffffffffffffffffffffffffffffffff16601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109a69061221c565b60405180910390fd5b8160098190555080600a81905550600a546009546109cd9190612395565b600b819055505050565b6000610a03827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610556565b9050919050565b60045481565b601060149054906101000a900460ff1681565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a7533610852565b610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab9061225c565b60405180910390fd5b60008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861636000604051610b2591906120e8565b60405180910390a1565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600881526020017f456c6f6e73436174000000000000000000000000000000000000000000000000815250905090565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610bc8338484610d4d565b905092915050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610c6033610852565b610c9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c969061225c565b60405180910390fd5b6103e881600354610cb0919061241c565b610cba91906123eb565b60048190555050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000838311158290610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d28919061219a565b60405180910390fd5b5060008385610d409190612476565b9050809150509392505050565b6000601260009054906101000a900460ff1615610d7657610d6f848484611116565b905061110f565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610e225750600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15610f0b57600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680610ecb575060045482600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ec89190612395565b11155b610f0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f01906121bc565b60405180910390fd5b5b610f136112e9565b15610f2157610f206113c0565b5b610faa826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610ff88561191a565b611002578261100d565b61100c8584611971565b5b905061106181600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611101919061227c565b60405180910390a360019150505b9392505050565b60006111a1826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600560008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ce99092919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061123682600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112d6919061227c565b60405180910390a3600190509392505050565b6000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156113565750601260009054906101000a900460ff16155b801561136e5750601060149054906101000a900460ff165b80156113bb5750601154600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b905090565b6001601260006101000a81548160ff0219169083151502179055506000601154905060006114206002611412600b5461140460095487611b1390919063ffffffff16565b611b8e90919063ffffffff16565b611b8e90919063ffffffff16565b905060006114378284611bd890919063ffffffff16565b90506000600267ffffffffffffffff811115611456576114556125f5565b5b6040519080825280602002602001820160405280156114845781602001602082028036833780820191505090505b509050308160008151811061149c5761149b6125c6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561153e57600080fd5b505afa158015611552573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115769190611d06565b8160018151811061158a576115896125c6565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506000479050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008530426040518663ffffffff1660e01b815260040161162d959493929190612297565b600060405180830381600087803b15801561164757600080fd5b505af115801561165b573d6000803e3d6000fd5b5050505060006116748247611bd890919063ffffffff16565b905060006116a26116916002600954611b8e90919063ffffffff16565b600b54611bd890919063ffffffff16565b905060006116e060026116d2846116c460095488611b1390919063ffffffff16565b611b8e90919063ffffffff16565b611b8e90919063ffffffff16565b9050600061170b836116fd600a5487611b1390919063ffffffff16565b611b8e90919063ffffffff16565b90506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168261753090604051611759906120d3565b600060405180830381858888f193505050503d8060008114611797576040519150601f19603f3d011682016040523d82523d6000602084013e61179c565b606091505b50509050806117e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d7906121fc565b60405180910390fd5b60008911156118f357600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d71984308c60008073823845c54cfffd264463b9c7b788e17f2ab63884426040518863ffffffff1660e01b815260040161186496959493929190612103565b6060604051808303818588803b15801561187d57600080fd5b505af1158015611891573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118b69190611e73565b5050507f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506838a6040516118ea9291906122f1565b60405180910390a15b505050505050505050506000601260006101000a81548160ff021916908315150217905550565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16159050919050565b60008061199d600c5461198f600b5486611b1390919063ffffffff16565b611b8e90919063ffffffff16565b90506119f181600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ab590919063ffffffff16565b600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611a91919061227c565b60405180910390a3611aac8184611bd890919063ffffffff16565b91505092915050565b6000808284611ac49190612395565b905083811015611b09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b00906121dc565b60405180910390fd5b8091505092915050565b600080831415611b265760009050611b88565b60008284611b34919061241c565b9050828482611b4391906123eb565b14611b83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7a9061223c565b60405180910390fd5b809150505b92915050565b6000611bd083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c22565b905092915050565b6000611c1a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ce9565b905092915050565b60008083118290611c69576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c60919061219a565b60405180910390fd5b5060008385611c7891906123eb565b9050809150509392505050565b600081359050611c948161277f565b92915050565b600081519050611ca98161277f565b92915050565b600081359050611cbe81612796565b92915050565b600081519050611cd381612796565b92915050565b600060208284031215611cef57611cee612624565b5b6000611cfd84828501611c85565b91505092915050565b600060208284031215611d1c57611d1b612624565b5b6000611d2a84828501611c9a565b91505092915050565b60008060408385031215611d4a57611d49612624565b5b6000611d5885828601611c85565b9250506020611d6985828601611c85565b9150509250929050565b600080600060608486031215611d8c57611d8b612624565b5b6000611d9a86828701611c85565b9350506020611dab86828701611c85565b9250506040611dbc86828701611caf565b9150509250925092565b60008060408385031215611ddd57611ddc612624565b5b6000611deb85828601611c85565b9250506020611dfc85828601611caf565b9150509250929050565b600060208284031215611e1c57611e1b612624565b5b6000611e2a84828501611caf565b91505092915050565b60008060408385031215611e4a57611e49612624565b5b6000611e5885828601611caf565b9250506020611e6985828601611caf565b9150509250929050565b600080600060608486031215611e8c57611e8b612624565b5b6000611e9a86828701611cc4565b9350506020611eab86828701611cc4565b9250506040611ebc86828701611cc4565b9150509250925092565b6000611ed28383611ede565b60208301905092915050565b611ee7816124aa565b82525050565b611ef6816124aa565b82525050565b6000611f0782612345565b611f118185612368565b9350611f1c83612335565b8060005b83811015611f4d578151611f348882611ec6565b9750611f3f8361235b565b925050600181019050611f20565b5085935050505092915050565b611f63816124bc565b82525050565b611f72816124ff565b82525050565b611f8181612523565b82525050565b6000611f9282612350565b611f9c8185612384565b9350611fac818560208601612535565b611fb581612629565b840191505092915050565b6000611fcd602583612384565b9150611fd88261263a565b604082019050919050565b6000611ff0601b83612384565b9150611ffb82612689565b602082019050919050565b6000612013601e83612384565b915061201e826126b2565b602082019050919050565b6000612036601783612384565b9150612041826126db565b602082019050919050565b6000612059602183612384565b915061206482612704565b604082019050919050565b600061207c600683612384565b915061208782612753565b602082019050919050565b600061209f600083612379565b91506120aa8261277c565b600082019050919050565b6120be816124e8565b82525050565b6120cd816124f2565b82525050565b60006120de82612092565b9150819050919050565b60006020820190506120fd6000830184611eed565b92915050565b600060c0820190506121186000830189611eed565b61212560208301886120b5565b6121326040830187611f78565b61213f6060830186611f78565b61214c6080830185611eed565b61215960a08301846120b5565b979650505050505050565b60006020820190506121796000830184611f5a565b92915050565b60006020820190506121946000830184611f69565b92915050565b600060208201905081810360008301526121b48184611f87565b905092915050565b600060208201905081810360008301526121d581611fc0565b9050919050565b600060208201905081810360008301526121f581611fe3565b9050919050565b6000602082019050818103600083015261221581612006565b9050919050565b6000602082019050818103600083015261223581612029565b9050919050565b600060208201905081810360008301526122558161204c565b9050919050565b600060208201905081810360008301526122758161206f565b9050919050565b600060208201905061229160008301846120b5565b92915050565b600060a0820190506122ac60008301886120b5565b6122b96020830187611f78565b81810360408301526122cb8186611efc565b90506122da6060830185611eed565b6122e760808301846120b5565b9695505050505050565b600060408201905061230660008301856120b5565b61231360208301846120b5565b9392505050565b600060208201905061232f60008301846120c4565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123a0826124e8565b91506123ab836124e8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156123e0576123df612568565b5b828201905092915050565b60006123f6826124e8565b9150612401836124e8565b92508261241157612410612597565b5b828204905092915050565b6000612427826124e8565b9150612432836124e8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561246b5761246a612568565b5b828202905092915050565b6000612481826124e8565b915061248c836124e8565b92508282101561249f5761249e612568565b5b828203905092915050565b60006124b5826124c8565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061250a82612511565b9050919050565b600061251c826124c8565b9050919050565b600061252e826124e8565b9050919050565b60005b83811015612553578082015181840152602081019050612538565b83811115612562576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206261672060008201527f73697a652e000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f72656365697665722072656a656374656420455448207472616e736665720000600082015250565b7f43616c6c6572206973206e6f7420746865204f776e6572000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f214f574e45520000000000000000000000000000000000000000000000000000600082015250565b50565b612788816124aa565b811461279357600080fd5b50565b61279f816124e8565b81146127aa57600080fd5b5056fea2646970667358221220514290360fe0c06f3f274098dc5bb0daf1173c7a7c68b357de5e202bea8dcff564736f6c63430008050033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000823845c54cfffd264463b9c7b788e17f2ab63884

-----Decoded View---------------
Arg [0] : _address (address): 0x823845C54CfFFD264463B9c7b788e17F2aB63884

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000823845c54cfffd264463b9c7b788e17f2ab63884


Deployed Bytecode Sourcemap

4275:7939:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5324:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6451:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6873:216;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6181:88;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7391:370;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2513:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6275:80;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11875:118;;;;;;;;;;;;;:::i;:::-;;7769:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7097:122;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4672:58;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5287:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6621:105;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2622:131;;;;;;;;;;;;;:::i;:::-;;6537:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6361:84;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5226:19;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7227:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6732:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12001:142;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5195:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5324:53;;;;:::o;6451:80::-;6499:13;6523:5;;;;;;;;;;;;;;;;;6516:12;;6451:80;:::o;6873:216::-;6948:4;7000:6;6965:11;:23;6977:10;6965:23;;;;;;;;;;;;;;;:32;6989:7;6965:32;;;;;;;;;;;;;;;:41;;;;7043:7;7022:37;;7031:10;7022:37;;;7052:6;7022:37;;;;;;:::i;:::-;;;;;;;;7077:4;7070:11;;6873:216;;;;:::o;6181:88::-;6236:7;6254:12;;6247:19;;6181:88;:::o;7391:370::-;7491:4;7546:17;7511:11;:19;7523:6;7511:19;;;;;;;;;;;;;;;:31;7531:10;7511:31;;;;;;;;;;;;;;;;:52;7508:186;;7613:69;7649:6;7613:69;;;;;;;;;;;;;;;;;:11;:19;7625:6;7613:19;;;;;;;;;;;;;;;:31;7633:10;7613:31;;;;;;;;;;;;;;;;:35;;:69;;;;;:::i;:::-;7579:11;:19;7591:6;7579:19;;;;;;;;;;;;;;;:31;7599:10;7579:31;;;;;;;;;;;;;;;:103;;;;7508:186;7713:40;7727:6;7735:9;7746:6;7713:13;:40::i;:::-;7706:47;;7391:370;;;;;:::o;2513:103::-;2568:4;2603:5;;;;;;;;;;;2592:16;;:7;:16;;;2585:23;;2513:103;;;:::o;6275:80::-;6327:5;4601:1;6336:16;;6275:80;:::o;11875:118::-;11932:20;;;;;;;;;;;11924:38;;:61;11963:21;11924:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11875:118::o;7769:218::-;9857:10;9842:25;;:11;;;;;;;;;;;:25;;;9833:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;7875:13:::1;7860:12;:28;;;;7916:13;7901:12;:28;;;;7967:12;;7952;;:27;;;;:::i;:::-;7941:8;:38;;;;7769:218:::0;;:::o;7097:122::-;7152:4;7176:35;7184:7;7193:17;7176:7;:35::i;:::-;7169:42;;7097:122;;;:::o;4672:58::-;;;;:::o;5287:30::-;;;;;;;;;;;;;:::o;6621:105::-;6687:7;6705:9;:18;6715:7;6705:18;;;;;;;;;;;;;;;;6698:25;;6621:105;;;:::o;2622:131::-;2466:19;2474:10;2466:7;:19::i;:::-;2458:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;2695:1:::1;2679:5:::0;::::1;:18;;;;;;;;;;;;;;;;;;2713:32;2742:1;2713:32;;;;;;:::i;:::-;;;;;;;;2622:131::o:0;6537:78::-;6589:7;6607:5;;;;;;;;;;;6600:12;;6537:78;:::o;6361:84::-;6411:13;6435:7;;;;;;;;;;;;;;;;;6428:14;;6361:84;:::o;5226:19::-;;;;;;;;;;;;;:::o;7227:156::-;7307:4;7331:44;7345:10;7357:9;7368:6;7331:13;:44::i;:::-;7324:51;;7227:156;;;;:::o;6732:133::-;6816:7;6834:11;:19;6846:6;6834:19;;;;;;;;;;;;;;;:28;6854:7;6834:28;;;;;;;;;;;;;;;;6827:35;;6732:133;;;;:::o;12001:142::-;2466:19;2474:10;2466:7;:19::i;:::-;2458:38;;;;;;;;;;;;:::i;:::-;;;;;;;;;12131:4:::1;12113:13;12098:12;;:28;;;;:::i;:::-;12097:38;;;;:::i;:::-;12078:16;:57;;;;12001:142:::0;:::o;5195:24::-;;;;;;;;;;;;;:::o;602:190::-;688:7;721:1;716;:6;;724:12;708:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;748:9;764:1;760;:5;;;;:::i;:::-;748:17;;783:1;776:8;;;602:190;;;;;:::o;7999:792::-;8091:4;8111:6;;;;;;;;;;;8108:63;;;8127:41;8142:6;8150:9;8161:6;8127:14;:41::i;:::-;8120:48;;;;8108:63;8208:4;;;;;;;;;;;8195:17;;:9;:17;;;;:38;;;;;8229:4;;;;;;;;;;;8216:17;;:9;:17;;;;8195:38;8191:200;;;8258:15;:26;8274:9;8258:26;;;;;;;;;;;;;;;;;;;;;;;;;:79;;;;8321:16;;8311:6;8288:9;:20;8298:9;8288:20;;;;;;;;;;;;;;;;:29;;;;:::i;:::-;:49;;8258:79;8250:129;;;;;;;;;;;;:::i;:::-;;;;;;;;;8191:200;8414:16;:14;:16::i;:::-;8411:35;;;8433:10;:8;:10::i;:::-;8411:35;8479:53;8501:6;8479:53;;;;;;;;;;;;;;;;;:9;:17;8489:6;8479:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8459:9;:17;8469:6;8459:17;;;;;;;;;;;;;;;:73;;;;8545:22;8570:21;8584:6;8570:13;:21::i;:::-;:56;;8620:6;8570:56;;;8594:23;8602:6;8610;8594:7;:23::i;:::-;8570:56;8545:81;;8660:40;8685:14;8660:9;:20;8670:9;8660:20;;;;;;;;;;;;;;;;:24;;:40;;;;:::i;:::-;8637:9;:20;8647:9;8637:20;;;;;;;;;;;;;;;:63;;;;8735:9;8718:43;;8727:6;8718:43;;;8746:14;8718:43;;;;;;:::i;:::-;;;;;;;;8779:4;8772:11;;;7999:792;;;;;;:::o;8803:330::-;8896:4;8933:53;8955:6;8933:53;;;;;;;;;;;;;;;;;:9;:17;8943:6;8933:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;8913:9;:17;8923:6;8913:17;;;;;;;;;;;;;;;:73;;;;9020:32;9045:6;9020:9;:20;9030:9;9020:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;8997:9;:20;9007:9;8997:20;;;;;;;;;;;;;;;:55;;;;9085:9;9068:35;;9077:6;9068:35;;;9096:6;9068:35;;;;;;:::i;:::-;;;;;;;;9121:4;9114:11;;8803:330;;;;;:::o;9600:197::-;9649:4;9687;;;;;;;;;;;9673:18;;:10;:18;;;;:38;;;;;9705:6;;;;;;;;;;;9704:7;9673:38;:62;;;;;9724:11;;;;;;;;;;;9673:62;:116;;;;;9776:13;;9748:9;:24;9766:4;9748:24;;;;;;;;;;;;;;;;:41;;9673:116;9666:123;;9600:197;:::o;9917:1572::-;5437:4;5428:6;;:13;;;;;;;;;;;;;;;;;;9966:28:::1;9997:13;;9966:44;;10021:23;10047:59;10104:1;10047:52;10090:8;;10047:38;10072:12;;10047:20;:24;;:38;;;;:::i;:::-;:42;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;10021:85;;10117:20;10140:41;10165:15;10140:20;:24;;:41;;;;:::i;:::-;10117:64;;10194:21;10232:1;10218:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10194:40;;10263:4;10245;10250:1;10245:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10289:6;;;;;;;;;;;:11;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10279:4;10284:1;10279:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;10315:21;10339;10315:45;;10373:6;;;;;;;;;;;:57;;;10445:12;10472:1;10488:4;10515;10535:15;10373:188;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10572:17;10592:40;10618:13;10592:21;:25;;:40;;;;:::i;:::-;10572:60;;10643:19;10665:33;10678:19;10695:1;10678:12;;:16;;:19;;;;:::i;:::-;10665:8;;:12;;:33;;;;:::i;:::-;10643:55;;10709:26;10738:51;10787:1;10738:44;10770:11;10738:27;10752:12;;10738:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;:48;;:51;;;;:::i;:::-;10709:80;;10800:26;10829:44;10861:11;10829:27;10843:12;;10829:9;:13;;:27;;;;:::i;:::-;:31;;:44;;;;:::i;:::-;10800:73;;10889:21;10947:20;;;;;;;;;;;10939:34;;10981:18;11006:5;10939:77;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10888:128;;;11035:16;11027:59;;;;;;;;;;;;:::i;:::-;;;;;;;;;11120:1;11102:15;:19;11099:383;;;11137:6;;;;;;;;;;;:22;;;11167:18;11213:4;11237:15;11271:1;11291::::0;11311:42:::1;11372:15;11137:265;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;11422:48;11434:18;11454:15;11422:48;;;;;;;:::i;:::-;;;;;;;;11099:383;9955:1534;;;;;;;;;;5455:5:::0;5446:6;;:14;;;;;;;;;;;;;;;;;;9917:1572::o;9141:114::-;9203:4;9228:11;:19;9240:6;9228:19;;;;;;;;;;;;;;;;;;;;;;;;;9227:20;9220:27;;9141:114;;;:::o;9263:329::-;9330:7;9350:17;9370:40;9395:14;;9370:20;9381:8;;9370:6;:10;;:20;;;;:::i;:::-;:24;;:40;;;;:::i;:::-;9350:60;;9448:39;9477:9;9448;:24;9466:4;9448:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;9421:9;:24;9439:4;9421:24;;;;;;;;;;;;;;;:66;;;;9528:4;9503:42;;9512:6;9503:42;;;9535:9;9503:42;;;;;;:::i;:::-;;;;;;;;9563:21;9574:9;9563:6;:10;;:21;;;;:::i;:::-;9556:28;;;9263:329;;;;:::o;275:179::-;333:7;353:9;369:1;365;:5;;;;:::i;:::-;353:17;;394:1;389;:6;;381:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;445:1;438:8;;;275:179;;;;:::o;798:246::-;856:7;885:1;880;:6;876:47;;;910:1;903:8;;;;876:47;933:9;949:1;945;:5;;;;:::i;:::-;933:17;;978:1;973;969;:5;;;;:::i;:::-;:10;961:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1035:1;1028:8;;;798:246;;;;;:::o;1050:132::-;1108:7;1135:39;1139:1;1142;1135:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1128:46;;1050:132;;;;:::o;460:136::-;518:7;545:43;549:1;552;545:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;538:50;;460:136;;;;:::o;1188:189::-;1274:7;1306:1;1302;:5;1309:12;1294:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1333:9;1349:1;1345;:5;;;;:::i;:::-;1333:17;;1368:1;1361:8;;;1188:189;;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;215:80;;;;:::o;301:139::-;347:5;385:6;372:20;363:29;;401:33;428:5;401:33;:::i;:::-;353:87;;;;:::o;446:143::-;503:5;534:6;528:13;519:22;;550:33;577:5;550:33;:::i;:::-;509:80;;;;:::o;595:329::-;654:6;703:2;691:9;682:7;678:23;674:32;671:2;;;709:79;;:::i;:::-;671:2;829:1;854:53;899:7;890:6;879:9;875:22;854:53;:::i;:::-;844:63;;800:117;661:263;;;;:::o;930:351::-;1000:6;1049:2;1037:9;1028:7;1024:23;1020:32;1017:2;;;1055:79;;:::i;:::-;1017:2;1175:1;1200:64;1256:7;1247:6;1236:9;1232:22;1200:64;:::i;:::-;1190:74;;1146:128;1007:274;;;;:::o;1287:474::-;1355:6;1363;1412:2;1400:9;1391:7;1387:23;1383:32;1380:2;;;1418:79;;:::i;:::-;1380:2;1538:1;1563:53;1608:7;1599:6;1588:9;1584:22;1563:53;:::i;:::-;1553:63;;1509:117;1665:2;1691:53;1736:7;1727:6;1716:9;1712:22;1691:53;:::i;:::-;1681:63;;1636:118;1370:391;;;;;:::o;1767:619::-;1844:6;1852;1860;1909:2;1897:9;1888:7;1884:23;1880:32;1877:2;;;1915:79;;:::i;:::-;1877:2;2035:1;2060:53;2105:7;2096:6;2085:9;2081:22;2060:53;:::i;:::-;2050:63;;2006:117;2162:2;2188:53;2233:7;2224:6;2213:9;2209:22;2188:53;:::i;:::-;2178:63;;2133:118;2290:2;2316:53;2361:7;2352:6;2341:9;2337:22;2316:53;:::i;:::-;2306:63;;2261:118;1867:519;;;;;:::o;2392:474::-;2460:6;2468;2517:2;2505:9;2496:7;2492:23;2488:32;2485:2;;;2523:79;;:::i;:::-;2485:2;2643:1;2668:53;2713:7;2704:6;2693:9;2689:22;2668:53;:::i;:::-;2658:63;;2614:117;2770:2;2796:53;2841:7;2832:6;2821:9;2817:22;2796:53;:::i;:::-;2786:63;;2741:118;2475:391;;;;;:::o;2872:329::-;2931:6;2980:2;2968:9;2959:7;2955:23;2951:32;2948:2;;;2986:79;;:::i;:::-;2948:2;3106:1;3131:53;3176:7;3167:6;3156:9;3152:22;3131:53;:::i;:::-;3121:63;;3077:117;2938:263;;;;:::o;3207:474::-;3275:6;3283;3332:2;3320:9;3311:7;3307:23;3303:32;3300:2;;;3338:79;;:::i;:::-;3300:2;3458:1;3483:53;3528:7;3519:6;3508:9;3504:22;3483:53;:::i;:::-;3473:63;;3429:117;3585:2;3611:53;3656:7;3647:6;3636:9;3632:22;3611:53;:::i;:::-;3601:63;;3556:118;3290:391;;;;;:::o;3687:663::-;3775:6;3783;3791;3840:2;3828:9;3819:7;3815:23;3811:32;3808:2;;;3846:79;;:::i;:::-;3808:2;3966:1;3991:64;4047:7;4038:6;4027:9;4023:22;3991:64;:::i;:::-;3981:74;;3937:128;4104:2;4130:64;4186:7;4177:6;4166:9;4162:22;4130:64;:::i;:::-;4120:74;;4075:129;4243:2;4269:64;4325:7;4316:6;4305:9;4301:22;4269:64;:::i;:::-;4259:74;;4214:129;3798:552;;;;;:::o;4356:179::-;4425:10;4446:46;4488:3;4480:6;4446:46;:::i;:::-;4524:4;4519:3;4515:14;4501:28;;4436:99;;;;:::o;4541:108::-;4618:24;4636:5;4618:24;:::i;:::-;4613:3;4606:37;4596:53;;:::o;4655:118::-;4742:24;4760:5;4742:24;:::i;:::-;4737:3;4730:37;4720:53;;:::o;4809:732::-;4928:3;4957:54;5005:5;4957:54;:::i;:::-;5027:86;5106:6;5101:3;5027:86;:::i;:::-;5020:93;;5137:56;5187:5;5137:56;:::i;:::-;5216:7;5247:1;5232:284;5257:6;5254:1;5251:13;5232:284;;;5333:6;5327:13;5360:63;5419:3;5404:13;5360:63;:::i;:::-;5353:70;;5446:60;5499:6;5446:60;:::i;:::-;5436:70;;5292:224;5279:1;5276;5272:9;5267:14;;5232:284;;;5236:14;5532:3;5525:10;;4933:608;;;;;;;:::o;5547:109::-;5628:21;5643:5;5628:21;:::i;:::-;5623:3;5616:34;5606:50;;:::o;5662:167::-;5767:55;5816:5;5767:55;:::i;:::-;5762:3;5755:68;5745:84;;:::o;5835:147::-;5930:45;5969:5;5930:45;:::i;:::-;5925:3;5918:58;5908:74;;:::o;5988:364::-;6076:3;6104:39;6137:5;6104:39;:::i;:::-;6159:71;6223:6;6218:3;6159:71;:::i;:::-;6152:78;;6239:52;6284:6;6279:3;6272:4;6265:5;6261:16;6239:52;:::i;:::-;6316:29;6338:6;6316:29;:::i;:::-;6311:3;6307:39;6300:46;;6080:272;;;;;:::o;6358:366::-;6500:3;6521:67;6585:2;6580:3;6521:67;:::i;:::-;6514:74;;6597:93;6686:3;6597:93;:::i;:::-;6715:2;6710:3;6706:12;6699:19;;6504:220;;;:::o;6730:366::-;6872:3;6893:67;6957:2;6952:3;6893:67;:::i;:::-;6886:74;;6969:93;7058:3;6969:93;:::i;:::-;7087:2;7082:3;7078:12;7071:19;;6876:220;;;:::o;7102:366::-;7244:3;7265:67;7329:2;7324:3;7265:67;:::i;:::-;7258:74;;7341:93;7430:3;7341:93;:::i;:::-;7459:2;7454:3;7450:12;7443:19;;7248:220;;;:::o;7474:366::-;7616:3;7637:67;7701:2;7696:3;7637:67;:::i;:::-;7630:74;;7713:93;7802:3;7713:93;:::i;:::-;7831:2;7826:3;7822:12;7815:19;;7620:220;;;:::o;7846:366::-;7988:3;8009:67;8073:2;8068:3;8009:67;:::i;:::-;8002:74;;8085:93;8174:3;8085:93;:::i;:::-;8203:2;8198:3;8194:12;8187:19;;7992:220;;;:::o;8218:365::-;8360:3;8381:66;8445:1;8440:3;8381:66;:::i;:::-;8374:73;;8456:93;8545:3;8456:93;:::i;:::-;8574:2;8569:3;8565:12;8558:19;;8364:219;;;:::o;8589:398::-;8748:3;8769:83;8850:1;8845:3;8769:83;:::i;:::-;8762:90;;8861:93;8950:3;8861:93;:::i;:::-;8979:1;8974:3;8970:11;8963:18;;8752:235;;;:::o;8993:118::-;9080:24;9098:5;9080:24;:::i;:::-;9075:3;9068:37;9058:53;;:::o;9117:112::-;9200:22;9216:5;9200:22;:::i;:::-;9195:3;9188:35;9178:51;;:::o;9235:379::-;9419:3;9441:147;9584:3;9441:147;:::i;:::-;9434:154;;9605:3;9598:10;;9423:191;;;:::o;9620:222::-;9713:4;9751:2;9740:9;9736:18;9728:26;;9764:71;9832:1;9821:9;9817:17;9808:6;9764:71;:::i;:::-;9718:124;;;;:::o;9848:807::-;10097:4;10135:3;10124:9;10120:19;10112:27;;10149:71;10217:1;10206:9;10202:17;10193:6;10149:71;:::i;:::-;10230:72;10298:2;10287:9;10283:18;10274:6;10230:72;:::i;:::-;10312:80;10388:2;10377:9;10373:18;10364:6;10312:80;:::i;:::-;10402;10478:2;10467:9;10463:18;10454:6;10402:80;:::i;:::-;10492:73;10560:3;10549:9;10545:19;10536:6;10492:73;:::i;:::-;10575;10643:3;10632:9;10628:19;10619:6;10575:73;:::i;:::-;10102:553;;;;;;;;;:::o;10661:210::-;10748:4;10786:2;10775:9;10771:18;10763:26;;10799:65;10861:1;10850:9;10846:17;10837:6;10799:65;:::i;:::-;10753:118;;;;:::o;10877:258::-;10988:4;11026:2;11015:9;11011:18;11003:26;;11039:89;11125:1;11114:9;11110:17;11101:6;11039:89;:::i;:::-;10993:142;;;;:::o;11141:313::-;11254:4;11292:2;11281:9;11277:18;11269:26;;11341:9;11335:4;11331:20;11327:1;11316:9;11312:17;11305:47;11369:78;11442:4;11433:6;11369:78;:::i;:::-;11361:86;;11259:195;;;;:::o;11460:419::-;11626:4;11664:2;11653:9;11649:18;11641:26;;11713:9;11707:4;11703:20;11699:1;11688:9;11684:17;11677:47;11741:131;11867:4;11741:131;:::i;:::-;11733:139;;11631:248;;;:::o;11885:419::-;12051:4;12089:2;12078:9;12074:18;12066:26;;12138:9;12132:4;12128:20;12124:1;12113:9;12109:17;12102:47;12166:131;12292:4;12166:131;:::i;:::-;12158:139;;12056:248;;;:::o;12310:419::-;12476:4;12514:2;12503:9;12499:18;12491:26;;12563:9;12557:4;12553:20;12549:1;12538:9;12534:17;12527:47;12591:131;12717:4;12591:131;:::i;:::-;12583:139;;12481:248;;;:::o;12735:419::-;12901:4;12939:2;12928:9;12924:18;12916:26;;12988:9;12982:4;12978:20;12974:1;12963:9;12959:17;12952:47;13016:131;13142:4;13016:131;:::i;:::-;13008:139;;12906:248;;;:::o;13160:419::-;13326:4;13364:2;13353:9;13349:18;13341:26;;13413:9;13407:4;13403:20;13399:1;13388:9;13384:17;13377:47;13441:131;13567:4;13441:131;:::i;:::-;13433:139;;13331:248;;;:::o;13585:419::-;13751:4;13789:2;13778:9;13774:18;13766:26;;13838:9;13832:4;13828:20;13824:1;13813:9;13809:17;13802:47;13866:131;13992:4;13866:131;:::i;:::-;13858:139;;13756:248;;;:::o;14010:222::-;14103:4;14141:2;14130:9;14126:18;14118:26;;14154:71;14222:1;14211:9;14207:17;14198:6;14154:71;:::i;:::-;14108:124;;;;:::o;14238:831::-;14501:4;14539:3;14528:9;14524:19;14516:27;;14553:71;14621:1;14610:9;14606:17;14597:6;14553:71;:::i;:::-;14634:80;14710:2;14699:9;14695:18;14686:6;14634:80;:::i;:::-;14761:9;14755:4;14751:20;14746:2;14735:9;14731:18;14724:48;14789:108;14892:4;14883:6;14789:108;:::i;:::-;14781:116;;14907:72;14975:2;14964:9;14960:18;14951:6;14907:72;:::i;:::-;14989:73;15057:3;15046:9;15042:19;15033:6;14989:73;:::i;:::-;14506:563;;;;;;;;:::o;15075:332::-;15196:4;15234:2;15223:9;15219:18;15211:26;;15247:71;15315:1;15304:9;15300:17;15291:6;15247:71;:::i;:::-;15328:72;15396:2;15385:9;15381:18;15372:6;15328:72;:::i;:::-;15201:206;;;;;:::o;15413:214::-;15502:4;15540:2;15529:9;15525:18;15517:26;;15553:67;15617:1;15606:9;15602:17;15593:6;15553:67;:::i;:::-;15507:120;;;;:::o;15714:132::-;15781:4;15804:3;15796:11;;15834:4;15829:3;15825:14;15817:22;;15786:60;;;:::o;15852:114::-;15919:6;15953:5;15947:12;15937:22;;15926:40;;;:::o;15972:99::-;16024:6;16058:5;16052:12;16042:22;;16031:40;;;:::o;16077:113::-;16147:4;16179;16174:3;16170:14;16162:22;;16152:38;;;:::o;16196:184::-;16295:11;16329:6;16324:3;16317:19;16369:4;16364:3;16360:14;16345:29;;16307:73;;;;:::o;16386:147::-;16487:11;16524:3;16509:18;;16499:34;;;;:::o;16539:169::-;16623:11;16657:6;16652:3;16645:19;16697:4;16692:3;16688:14;16673:29;;16635:73;;;;:::o;16714:305::-;16754:3;16773:20;16791:1;16773:20;:::i;:::-;16768:25;;16807:20;16825:1;16807:20;:::i;:::-;16802:25;;16961:1;16893:66;16889:74;16886:1;16883:81;16880:2;;;16967:18;;:::i;:::-;16880:2;17011:1;17008;17004:9;16997:16;;16758:261;;;;:::o;17025:185::-;17065:1;17082:20;17100:1;17082:20;:::i;:::-;17077:25;;17116:20;17134:1;17116:20;:::i;:::-;17111:25;;17155:1;17145:2;;17160:18;;:::i;:::-;17145:2;17202:1;17199;17195:9;17190:14;;17067:143;;;;:::o;17216:348::-;17256:7;17279:20;17297:1;17279:20;:::i;:::-;17274:25;;17313:20;17331:1;17313:20;:::i;:::-;17308:25;;17501:1;17433:66;17429:74;17426:1;17423:81;17418:1;17411:9;17404:17;17400:105;17397:2;;;17508:18;;:::i;:::-;17397:2;17556:1;17553;17549:9;17538:20;;17264:300;;;;:::o;17570:191::-;17610:4;17630:20;17648:1;17630:20;:::i;:::-;17625:25;;17664:20;17682:1;17664:20;:::i;:::-;17659:25;;17703:1;17700;17697:8;17694:2;;;17708:18;;:::i;:::-;17694:2;17753:1;17750;17746:9;17738:17;;17615:146;;;;:::o;17767:96::-;17804:7;17833:24;17851:5;17833:24;:::i;:::-;17822:35;;17812:51;;;:::o;17869:90::-;17903:7;17946:5;17939:13;17932:21;17921:32;;17911:48;;;:::o;17965:126::-;18002:7;18042:42;18035:5;18031:54;18020:65;;18010:81;;;:::o;18097:77::-;18134:7;18163:5;18152:16;;18142:32;;;:::o;18180:86::-;18215:7;18255:4;18248:5;18244:16;18233:27;;18223:43;;;:::o;18272:162::-;18340:9;18373:55;18422:5;18373:55;:::i;:::-;18360:68;;18350:84;;;:::o;18440:131::-;18508:9;18541:24;18559:5;18541:24;:::i;:::-;18528:37;;18518:53;;;:::o;18577:121::-;18635:9;18668:24;18686:5;18668:24;:::i;:::-;18655:37;;18645:53;;;:::o;18704:307::-;18772:1;18782:113;18796:6;18793:1;18790:13;18782:113;;;18881:1;18876:3;18872:11;18866:18;18862:1;18857:3;18853:11;18846:39;18818:2;18815:1;18811:10;18806:15;;18782:113;;;18913:6;18910:1;18907:13;18904:2;;;18993:1;18984:6;18979:3;18975:16;18968:27;18904:2;18753:258;;;;:::o;19017:180::-;19065:77;19062:1;19055:88;19162:4;19159:1;19152:15;19186:4;19183:1;19176:15;19203:180;19251:77;19248:1;19241:88;19348:4;19345:1;19338:15;19372:4;19369:1;19362:15;19389:180;19437:77;19434:1;19427:88;19534:4;19531:1;19524:15;19558:4;19555:1;19548:15;19575:180;19623:77;19620:1;19613:88;19720:4;19717:1;19710:15;19744:4;19741:1;19734:15;19884:117;19993:1;19990;19983:12;20007:102;20048:6;20099:2;20095:7;20090:2;20083:5;20079:14;20075:28;20065:38;;20055:54;;;:::o;20115:224::-;20255:34;20251:1;20243:6;20239:14;20232:58;20324:7;20319:2;20311:6;20307:15;20300:32;20221:118;:::o;20345:177::-;20485:29;20481:1;20473:6;20469:14;20462:53;20451:71;:::o;20528:180::-;20668:32;20664:1;20656:6;20652:14;20645:56;20634:74;:::o;20714:173::-;20854:25;20850:1;20842:6;20838:14;20831:49;20820:67;:::o;20893:220::-;21033:34;21029:1;21021:6;21017:14;21010:58;21102:3;21097:2;21089:6;21085:15;21078:28;20999:114;:::o;21119:156::-;21259:8;21255:1;21247:6;21243:14;21236:32;21225:50;:::o;21281:114::-;21387:8;:::o;21401:122::-;21474:24;21492:5;21474:24;:::i;:::-;21467:5;21464:35;21454:2;;21513:1;21510;21503:12;21454:2;21444:79;:::o;21529:122::-;21602:24;21620:5;21602:24;:::i;:::-;21595:5;21592:35;21582:2;;21641:1;21638;21631:12;21582:2;21572:79;:::o

Swarm Source

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