ETH Price: $3,859.91 (-1.32%)

Token

ERC-20: No Cry (NOCRY 🦴)
 

Overview

Max Total Supply

1,000,000,000,000 NOCRY 🦴

Holders

130

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
4,247,356.320316097 NOCRY 🦴

Value
$0.00
0x2c17fadcb8b074d5694e988e6f6d78429f820fba
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:
ShibaNoCry

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-01-17
*/

/*

Website: http://shibanocry.com

Telegram: https://t.me/NoCryPortal

Twitter: https://twitter.com/ShibaNoCry


$$\   $$\  $$$$$$\   $$$$$$\  $$$$$$$\ $$\     $$\ 
$$$\  $$ |$$  __$$\ $$  __$$\ $$  __$$\\$$\   $$  |
$$$$\ $$ |$$ /  $$ |$$ /  \__|$$ |  $$ |\$$\ $$  / 
$$ $$\$$ |$$ |  $$ |$$ |      $$$$$$$  | \$$$$  /  
$$ \$$$$ |$$ |  $$ |$$ |      $$  __$$<   \$$  /   
$$ |\$$$ |$$ |  $$ |$$ |  $$\ $$ |  $$ |   $$ |    
$$ | \$$ | $$$$$$  |\$$$$$$  |$$ |  $$ |   $$ |    
\__|  \__| \______/  \______/ \__|  \__|   \__|    
                                                   
Designed to counter the Bear Market by providing diversification for crypto currency holders.                                                   
                                                   
1% Rewards
4% Marketing 
4% Treasury Dev

*/

//SPDX-License-Identifier: Unlicensed

pragma solidity 0.8.7;

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

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

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );

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

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

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

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

contract ShibaNoCry is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    mapping(address => bool) private _forceFee;
    mapping(address => bool) private bots;
    mapping(address => uint256) private cooldown;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1000000000000 * 10**9;
    address private constant UNI_ROUTER_ADDRESS =
        0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address private constant DEAD_ADDRESS =
        0x000000000000000000000000000000000000dEaD;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    string private constant _name = "No Cry";
    string private constant _symbol = unicode"NOCRY 🦴";
    uint8 private constant _decimals = 9;
    uint256 private _taxFee;
    uint256 private _teamFee;
    uint256 private _previousTaxFee = _taxFee;
    uint256 private _previousteamFee = _teamFee;
    address payable private _FeeAddress;
    address payable private _marketingWalletAddress;
    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;
    bool private cooldownEnabled = false;
    uint256 private _maxTxAmount = _tTotal;
    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(
        address payable FeeAddress,
        address payable marketingWalletAddress
    ) {
        _FeeAddress = FeeAddress;
        _marketingWalletAddress = marketingWalletAddress;
        _rOwned[_msgSender()] = _rTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[FeeAddress] = true;
        _isExcludedFromFee[marketingWalletAddress] = true;
        emit Transfer(address(0), _msgSender(), _tTotal);
        _forceFee[UNI_ROUTER_ADDRESS] = true;
        _forceFee[DEAD_ADDRESS] = true;
        uniswapV2Router = IUniswapV2Router02(UNI_ROUTER_ADDRESS);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            uniswapV2Router.WETH()
        );
    }

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

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

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

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

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

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

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

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

    function 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 setCooldownEnabled(bool onoff) external onlyOwner() {
        cooldownEnabled = onoff;
    }

    function tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if (_taxFee == 0 && _teamFee == 0) return;
        _previousTaxFee = _taxFee;
        _previousteamFee = _teamFee;
        _taxFee = 0;
        _teamFee = 0;
    }

    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _teamFee = _previousteamFee;
    }

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

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");

        _taxFee = 4;
        _teamFee = 4;
        bool isBuyOrSell = false;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            // check if buy
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_isExcludedFromFee[to] &&
                cooldownEnabled
            ) {
                require(amount <= _maxTxAmount);
                require(cooldown[to] < block.timestamp);
                cooldown[to] = block.timestamp + (30 seconds);
                // user is buying
                isBuyOrSell = true;
            }
            // check if sell
            if (
                to == uniswapV2Pair &&
                from != address(uniswapV2Router) &&
                !_isExcludedFromFee[from]
            ) {
                _taxFee = 4;
                _teamFee = 4;
                // user is selling
                isBuyOrSell = true;
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                from != uniswapV2Pair &&
                swapEnabled &&
                contractTokenBalance > 0
            ) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        bool takeFee = _forceFee[to] || isBuyOrSell;
        if (isBuyOrSell) {
            require(tradingOpen, "trading is not open");
        }
        _tokenTransfer(from, to, amount, takeFee);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function sendETHToFee(uint256 amount) private {
        _FeeAddress.transfer(amount.div(2));
        _marketingWalletAddress.transfer(amount.div(2));
    }

    function prepareTrading() external onlyOwner() {
        require(!tradingOpen, "trading is already open");
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        swapEnabled = true;
        cooldownEnabled = true;
        setMaxTxPercent(10);
        IERC20(uniswapV2Pair).approve(
            address(uniswapV2Router),
            type(uint256).max
        );
    }

    function openTrading() external onlyOwner() {
        tradingOpen = true;
    }

    function setBots(address[] memory bots_) public onlyOwner {
        for (uint256 i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

    function delBot(address notbot) public onlyOwner {
        bots[notbot] = false;
    }

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function manualswap() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function manualsend() external {
        require(_msgSender() == _FeeAddress);
        uint256 contractETHBalance = address(this).balance;
        sendETHToFee(contractETHBalance);
    }

    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(
            tAmount,
            _taxFee,
            _teamFee
        );
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(
            tAmount,
            tFee,
            tTeam,
            currentRate
        );
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 taxFee,
        uint256 TeamFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(TeamFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

    function setMaxTxPercent(uint256 maxTxPercent) public onlyOwner() {
        require(maxTxPercent > 0, "Amount must be greater than 0");
        _maxTxAmount = _tTotal.mul(maxTxPercent).div(10**2);
        emit MaxTxAmountUpdated(_maxTxAmount);
    }

    function setTradingOpen(bool tradingOpen_) public onlyOwner() {
        tradingOpen = tradingOpen_;
    }

    function withdraw() external onlyOwner {
        address payable recipient = payable(owner());
        recipient.transfer(address(this).balance);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"FeeAddress","type":"address"},{"internalType":"address payable","name":"marketingWalletAddress","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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"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":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"delBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"prepareTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxPercent","type":"uint256"}],"name":"setMaxTxPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"tradingOpen_","type":"bool"}],"name":"setTradingOpen","outputs":[],"stateMutability":"nonpayable","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":"pure","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":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052683635c9adc5dea000006000196200001d919062000c03565b6000196200002c919062000b76565b600955600b54600d55600c54600e556000601260156101000a81548160ff0219169083151502179055506000601260166101000a81548160ff0219169083151502179055506000601260176101000a81548160ff021916908315150217905550683635c9adc5dea00000601355348015620000a657600080fd5b5060405162004519380380620045198339818101604052810190620000cc919062000a20565b6000620000de620007bc60201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009546002600062000215620007bc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060016005600062000269620007c460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620003d2620007bc60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef683635c9adc5dea000006040516200043a919062000b48565b60405180910390a3600160066000737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016006600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d601160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200059b30601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16683635c9adc5dea00000620007ed60201b60201c565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200060457600080fd5b505afa15801562000619573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200063f9190620009ee565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620006c457600080fd5b505afa158015620006d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006ff9190620009ee565b6040518363ffffffff1660e01b81526004016200071e92919062000ad7565b602060405180830381600087803b1580156200073957600080fd5b505af11580156200074e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007749190620009ee565b601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000d70565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141562000860576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008579062000b26565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620008d3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008ca9062000b04565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051620009b3919062000b48565b60405180910390a3505050565b600081519050620009d18162000d3c565b92915050565b600081519050620009e88162000d56565b92915050565b60006020828403121562000a075762000a0662000c99565b5b600062000a1784828501620009c0565b91505092915050565b6000806040838503121562000a3a5762000a3962000c99565b5b600062000a4a85828601620009d7565b925050602062000a5d85828601620009d7565b9150509250929050565b62000a728162000bb1565b82525050565b600062000a8760228362000b65565b915062000a948262000c9e565b604082019050919050565b600062000aae60248362000b65565b915062000abb8262000ced565b604082019050919050565b62000ad18162000bf9565b82525050565b600060408201905062000aee600083018562000a67565b62000afd602083018462000a67565b9392505050565b6000602082019050818103600083015262000b1f8162000a78565b9050919050565b6000602082019050818103600083015262000b418162000a9f565b9050919050565b600060208201905062000b5f600083018462000ac6565b92915050565b600082825260208201905092915050565b600062000b838262000bf9565b915062000b908362000bf9565b92508282101562000ba65762000ba562000c3b565b5b828203905092915050565b600062000bbe8262000bd9565b9050919050565b600062000bd28262000bd9565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600062000c108262000bf9565b915062000c1d8362000bf9565b92508262000c305762000c2f62000c6a565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b62000d478162000bb1565b811462000d5357600080fd5b50565b62000d618162000bc5565b811462000d6d57600080fd5b50565b6137998062000d806000396000f3fe6080604052600436106101395760003560e01c806370a08231116100ab578063b515566a1161006f578063b515566a146103fb578063c3c8cd8014610424578063c9567bf91461043b578063cb2f17b114610452578063d543dbeb14610469578063dd62ed3e1461049257610140565b806370a0823114610314578063715018a6146103515780638da5cb5b1461036857806395d89b4114610393578063a9059cbb146103be57610140565b8063273123b7116100fd578063273123b71461023e578063313ce567146102675780633ccfd60b1461029257806349bd5a5e146102a95780635932ead1146102d45780636fc3eaec146102fd57610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806321c03a97146101d857806323b872dd1461020157610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6104cf565b6040516101679190612e1e565b60405180910390f35b34801561017c57600080fd5b506101976004803603810190610192919061294e565b61050c565b6040516101a49190612e03565b60405180910390f35b3480156101b957600080fd5b506101c261052a565b6040516101cf9190612fc0565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906129d7565b61053b565b005b34801561020d57600080fd5b50610228600480360381019061022391906128fb565b6105ed565b6040516102359190612e03565b60405180910390f35b34801561024a57600080fd5b5061026560048036038101906102609190612861565b6106c6565b005b34801561027357600080fd5b5061027c6107b6565b6040516102899190613035565b60405180910390f35b34801561029e57600080fd5b506102a76107bf565b005b3480156102b557600080fd5b506102be6108aa565b6040516102cb9190612d5e565b60405180910390f35b3480156102e057600080fd5b506102fb60048036038101906102f691906129d7565b6108d0565b005b34801561030957600080fd5b50610312610982565b005b34801561032057600080fd5b5061033b60048036038101906103369190612861565b6109f4565b6040516103489190612fc0565b60405180910390f35b34801561035d57600080fd5b50610366610a45565b005b34801561037457600080fd5b5061037d610b98565b60405161038a9190612d5e565b60405180910390f35b34801561039f57600080fd5b506103a8610bc1565b6040516103b59190612e1e565b60405180910390f35b3480156103ca57600080fd5b506103e560048036038101906103e0919061294e565b610bfe565b6040516103f29190612e03565b60405180910390f35b34801561040757600080fd5b50610422600480360381019061041d919061298e565b610c1c565b005b34801561043057600080fd5b50610439610d46565b005b34801561044757600080fd5b50610450610dc0565b005b34801561045e57600080fd5b50610467610e72565b005b34801561047557600080fd5b50610490600480360381019061048b9190612a31565b611156565b005b34801561049e57600080fd5b506104b960048036038101906104b491906128bb565b61129f565b6040516104c69190612fc0565b60405180910390f35b60606040518060400160405280600681526020017f4e6f204372790000000000000000000000000000000000000000000000000000815250905090565b6000610520610519611326565b848461132e565b6001905092915050565b6000683635c9adc5dea00000905090565b610543611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c790612f20565b60405180910390fd5b80601260146101000a81548160ff02191690831515021790555050565b60006105fa8484846114f9565b6106bb84610606611326565b6106b68560405180606001604052806028815260200161373c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061066c611326565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bc69092919063ffffffff16565b61132e565b600190509392505050565b6106ce611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461075b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161075290612f20565b60405180910390fd5b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b6107c7611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084b90612f20565b60405180910390fd5b600061085e610b98565b90508073ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156108a6573d6000803e3d6000fd5b5050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108d8611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610965576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095c90612f20565b60405180910390fd5b80601260176101000a81548160ff02191690831515021790555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109c3611326565b73ffffffffffffffffffffffffffffffffffffffff16146109e357600080fd5b60004790506109f181611c2a565b50565b6000610a3e600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d25565b9050919050565b610a4d611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad190612f20565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600a81526020017f4e4f43525920f09fa6b400000000000000000000000000000000000000000000815250905090565b6000610c12610c0b611326565b84846114f9565b6001905092915050565b610c24611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca890612f20565b60405180910390fd5b60005b8151811015610d4257600160076000848481518110610cd657610cd561337d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610d3a906132d6565b915050610cb4565b5050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d87611326565b73ffffffffffffffffffffffffffffffffffffffff1614610da757600080fd5b6000610db2306109f4565b9050610dbd81611d93565b50565b610dc8611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4c90612f20565b60405180910390fd5b6001601260146101000a81548160ff021916908315150217905550565b610e7a611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efe90612f20565b60405180910390fd5b601260149054906101000a900460ff1615610f57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4e90612fa0565b60405180910390fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610fa0306109f4565b600080610fab610b98565b426040518863ffffffff1660e01b8152600401610fcd96959493929190612da2565b6060604051808303818588803b158015610fe657600080fd5b505af1158015610ffa573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061101f9190612a5e565b5050506001601260166101000a81548160ff0219169083151502179055506001601260176101000a81548160ff021916908315150217905550611062600a611156565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611101929190612d79565b602060405180830381600087803b15801561111b57600080fd5b505af115801561112f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111539190612a04565b50565b61115e611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e290612f20565b60405180910390fd5b6000811161122e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122590612ec0565b60405180910390fd5b61125d606461124f83683635c9adc5dea0000061201b90919063ffffffff16565b61209690919063ffffffff16565b6013819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6013546040516112949190612fc0565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561139e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139590612f80565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561140e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140590612e80565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114ec9190612fc0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611569576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156090612f60565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612e40565b60405180910390fd5b6000811161161c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161390612f40565b60405180910390fd5b6004600b819055506004600c819055506000611636610b98565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116a45750611674610b98565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b0457600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561174d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61175657600080fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118015750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156118575750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561186f5750601260179054906101000a900460ff165b156119235760135482111561188357600080fd5b42600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106118ce57600080fd5b601e426118db91906130f6565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600190505b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156119ce5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611a245750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a3e576004600b819055506004600c81905550600190505b6000611a49306109f4565b9050601260159054906101000a900460ff16158015611ab65750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611ace5750601260169054906101000a900460ff165b8015611ada5750600081115b15611b0257611ae881611d93565b60004790506000811115611b0057611aff47611c2a565b5b505b505b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611b5b5750815b90508115611bb357601260149054906101000a900460ff16611bb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba990612ee0565b60405180910390fd5b5b611bbf858585846120e0565b5050505050565b6000838311158290611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c059190612e1e565b60405180910390fd5b5060008385611c1d91906131d7565b9050809150509392505050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611c7a60028461209690919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611ca5573d6000803e3d6000fd5b50601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611cf660028461209690919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611d21573d6000803e3d6000fd5b5050565b6000600954821115611d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6390612e60565b60405180910390fd5b6000611d7661210d565b9050611d8b818461209690919063ffffffff16565b915050919050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611dcb57611dca6133ac565b5b604051908082528060200260200182016040528015611df95781602001602082028036833780820191505090505b5090503081600081518110611e1157611e1061337d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611eb357600080fd5b505afa158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb919061288e565b81600181518110611eff57611efe61337d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f6630601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461132e565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611fca959493929190612fdb565b600060405180830381600087803b158015611fe457600080fd5b505af1158015611ff8573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b60008083141561202e5760009050612090565b6000828461203c919061317d565b905082848261204b919061314c565b1461208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208290612f00565b60405180910390fd5b809150505b92915050565b60006120d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612138565b905092915050565b806120ee576120ed61219b565b5b6120f98484846121de565b80612107576121066123a9565b5b50505050565b600080600061211a6123bd565b91509150612131818361209690919063ffffffff16565b9250505090565b6000808311829061217f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121769190612e1e565b60405180910390fd5b506000838561218e919061314c565b9050809150509392505050565b6000600b541480156121af57506000600c54145b156121b9576121dc565b600b54600d81905550600c54600e819055506000600b819055506000600c819055505b565b6000806000806000806121f08761241f565b95509550955095509550955061224e86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461248790919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122e385600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124d190919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061232f8161252f565b61233984836125ec565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516123969190612fc0565b60405180910390a3505050505050505050565b600d54600b81905550600e54600c81905550565b600080600060095490506000683635c9adc5dea0000090506123f3683635c9adc5dea0000060095461209690919063ffffffff16565b82101561241257600954683635c9adc5dea0000093509350505061241b565b81819350935050505b9091565b600080600080600080600080600061243c8a600b54600c54612626565b925092509250600061244c61210d565b9050600080600061245f8e8787876126bc565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006124c983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611bc6565b905092915050565b60008082846124e091906130f6565b905083811015612525576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161251c90612ea0565b60405180910390fd5b8091505092915050565b600061253961210d565b90506000612550828461201b90919063ffffffff16565b90506125a481600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124d190919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6126018260095461248790919063ffffffff16565b60098190555061261c81600a546124d190919063ffffffff16565b600a819055505050565b6000806000806126526064612644888a61201b90919063ffffffff16565b61209690919063ffffffff16565b9050600061267c606461266e888b61201b90919063ffffffff16565b61209690919063ffffffff16565b905060006126a582612697858c61248790919063ffffffff16565b61248790919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806126d5858961201b90919063ffffffff16565b905060006126ec868961201b90919063ffffffff16565b90506000612703878961201b90919063ffffffff16565b9050600061272c8261271e858761248790919063ffffffff16565b61248790919063ffffffff16565b9050838184965096509650505050509450945094915050565b600061275861275384613075565b613050565b9050808382526020820190508285602086028201111561277b5761277a6133e0565b5b60005b858110156127ab578161279188826127b5565b84526020840193506020830192505060018101905061277e565b5050509392505050565b6000813590506127c4816136f6565b92915050565b6000815190506127d9816136f6565b92915050565b600082601f8301126127f4576127f36133db565b5b8135612804848260208601612745565b91505092915050565b60008135905061281c8161370d565b92915050565b6000815190506128318161370d565b92915050565b60008135905061284681613724565b92915050565b60008151905061285b81613724565b92915050565b600060208284031215612877576128766133ea565b5b6000612885848285016127b5565b91505092915050565b6000602082840312156128a4576128a36133ea565b5b60006128b2848285016127ca565b91505092915050565b600080604083850312156128d2576128d16133ea565b5b60006128e0858286016127b5565b92505060206128f1858286016127b5565b9150509250929050565b600080600060608486031215612914576129136133ea565b5b6000612922868287016127b5565b9350506020612933868287016127b5565b925050604061294486828701612837565b9150509250925092565b60008060408385031215612965576129646133ea565b5b6000612973858286016127b5565b925050602061298485828601612837565b9150509250929050565b6000602082840312156129a4576129a36133ea565b5b600082013567ffffffffffffffff8111156129c2576129c16133e5565b5b6129ce848285016127df565b91505092915050565b6000602082840312156129ed576129ec6133ea565b5b60006129fb8482850161280d565b91505092915050565b600060208284031215612a1a57612a196133ea565b5b6000612a2884828501612822565b91505092915050565b600060208284031215612a4757612a466133ea565b5b6000612a5584828501612837565b91505092915050565b600080600060608486031215612a7757612a766133ea565b5b6000612a858682870161284c565b9350506020612a968682870161284c565b9250506040612aa78682870161284c565b9150509250925092565b6000612abd8383612ac9565b60208301905092915050565b612ad28161320b565b82525050565b612ae18161320b565b82525050565b6000612af2826130b1565b612afc81856130d4565b9350612b07836130a1565b8060005b83811015612b38578151612b1f8882612ab1565b9750612b2a836130c7565b925050600181019050612b0b565b5085935050505092915050565b612b4e8161321d565b82525050565b612b5d81613260565b82525050565b6000612b6e826130bc565b612b7881856130e5565b9350612b88818560208601613272565b612b91816133ef565b840191505092915050565b6000612ba96023836130e5565b9150612bb482613400565b604082019050919050565b6000612bcc602a836130e5565b9150612bd78261344f565b604082019050919050565b6000612bef6022836130e5565b9150612bfa8261349e565b604082019050919050565b6000612c12601b836130e5565b9150612c1d826134ed565b602082019050919050565b6000612c35601d836130e5565b9150612c4082613516565b602082019050919050565b6000612c586013836130e5565b9150612c638261353f565b602082019050919050565b6000612c7b6021836130e5565b9150612c8682613568565b604082019050919050565b6000612c9e6020836130e5565b9150612ca9826135b7565b602082019050919050565b6000612cc16029836130e5565b9150612ccc826135e0565b604082019050919050565b6000612ce46025836130e5565b9150612cef8261362f565b604082019050919050565b6000612d076024836130e5565b9150612d128261367e565b604082019050919050565b6000612d2a6017836130e5565b9150612d35826136cd565b602082019050919050565b612d4981613249565b82525050565b612d5881613253565b82525050565b6000602082019050612d736000830184612ad8565b92915050565b6000604082019050612d8e6000830185612ad8565b612d9b6020830184612d40565b9392505050565b600060c082019050612db76000830189612ad8565b612dc46020830188612d40565b612dd16040830187612b54565b612dde6060830186612b54565b612deb6080830185612ad8565b612df860a0830184612d40565b979650505050505050565b6000602082019050612e186000830184612b45565b92915050565b60006020820190508181036000830152612e388184612b63565b905092915050565b60006020820190508181036000830152612e5981612b9c565b9050919050565b60006020820190508181036000830152612e7981612bbf565b9050919050565b60006020820190508181036000830152612e9981612be2565b9050919050565b60006020820190508181036000830152612eb981612c05565b9050919050565b60006020820190508181036000830152612ed981612c28565b9050919050565b60006020820190508181036000830152612ef981612c4b565b9050919050565b60006020820190508181036000830152612f1981612c6e565b9050919050565b60006020820190508181036000830152612f3981612c91565b9050919050565b60006020820190508181036000830152612f5981612cb4565b9050919050565b60006020820190508181036000830152612f7981612cd7565b9050919050565b60006020820190508181036000830152612f9981612cfa565b9050919050565b60006020820190508181036000830152612fb981612d1d565b9050919050565b6000602082019050612fd56000830184612d40565b92915050565b600060a082019050612ff06000830188612d40565b612ffd6020830187612b54565b818103604083015261300f8186612ae7565b905061301e6060830185612ad8565b61302b6080830184612d40565b9695505050505050565b600060208201905061304a6000830184612d4f565b92915050565b600061305a61306b565b905061306682826132a5565b919050565b6000604051905090565b600067ffffffffffffffff8211156130905761308f6133ac565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061310182613249565b915061310c83613249565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156131415761314061331f565b5b828201905092915050565b600061315782613249565b915061316283613249565b9250826131725761317161334e565b5b828204905092915050565b600061318882613249565b915061319383613249565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131cc576131cb61331f565b5b828202905092915050565b60006131e282613249565b91506131ed83613249565b925082821015613200576131ff61331f565b5b828203905092915050565b600061321682613229565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061326b82613249565b9050919050565b60005b83811015613290578082015181840152602081019050613275565b8381111561329f576000848401525b50505050565b6132ae826133ef565b810181811067ffffffffffffffff821117156132cd576132cc6133ac565b5b80604052505050565b60006132e182613249565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156133145761331361331f565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b7f74726164696e67206973206e6f74206f70656e00000000000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6136ff8161320b565b811461370a57600080fd5b50565b6137168161321d565b811461372157600080fd5b50565b61372d81613249565b811461373857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e95c41c67a260cbaa6da15479957750242402ff321102d1311ec38f0ce4bd41464736f6c634300080700330000000000000000000000009d21417d3817a3f017cf26803332aae8e5b605a6000000000000000000000000ce5f50c18c9a3d3d2a552f2cfd10018ec0879b6b

Deployed Bytecode

0x6080604052600436106101395760003560e01c806370a08231116100ab578063b515566a1161006f578063b515566a146103fb578063c3c8cd8014610424578063c9567bf91461043b578063cb2f17b114610452578063d543dbeb14610469578063dd62ed3e1461049257610140565b806370a0823114610314578063715018a6146103515780638da5cb5b1461036857806395d89b4114610393578063a9059cbb146103be57610140565b8063273123b7116100fd578063273123b71461023e578063313ce567146102675780633ccfd60b1461029257806349bd5a5e146102a95780635932ead1146102d45780636fc3eaec146102fd57610140565b806306fdde0314610145578063095ea7b31461017057806318160ddd146101ad57806321c03a97146101d857806323b872dd1461020157610140565b3661014057005b600080fd5b34801561015157600080fd5b5061015a6104cf565b6040516101679190612e1e565b60405180910390f35b34801561017c57600080fd5b506101976004803603810190610192919061294e565b61050c565b6040516101a49190612e03565b60405180910390f35b3480156101b957600080fd5b506101c261052a565b6040516101cf9190612fc0565b60405180910390f35b3480156101e457600080fd5b506101ff60048036038101906101fa91906129d7565b61053b565b005b34801561020d57600080fd5b50610228600480360381019061022391906128fb565b6105ed565b6040516102359190612e03565b60405180910390f35b34801561024a57600080fd5b5061026560048036038101906102609190612861565b6106c6565b005b34801561027357600080fd5b5061027c6107b6565b6040516102899190613035565b60405180910390f35b34801561029e57600080fd5b506102a76107bf565b005b3480156102b557600080fd5b506102be6108aa565b6040516102cb9190612d5e565b60405180910390f35b3480156102e057600080fd5b506102fb60048036038101906102f691906129d7565b6108d0565b005b34801561030957600080fd5b50610312610982565b005b34801561032057600080fd5b5061033b60048036038101906103369190612861565b6109f4565b6040516103489190612fc0565b60405180910390f35b34801561035d57600080fd5b50610366610a45565b005b34801561037457600080fd5b5061037d610b98565b60405161038a9190612d5e565b60405180910390f35b34801561039f57600080fd5b506103a8610bc1565b6040516103b59190612e1e565b60405180910390f35b3480156103ca57600080fd5b506103e560048036038101906103e0919061294e565b610bfe565b6040516103f29190612e03565b60405180910390f35b34801561040757600080fd5b50610422600480360381019061041d919061298e565b610c1c565b005b34801561043057600080fd5b50610439610d46565b005b34801561044757600080fd5b50610450610dc0565b005b34801561045e57600080fd5b50610467610e72565b005b34801561047557600080fd5b50610490600480360381019061048b9190612a31565b611156565b005b34801561049e57600080fd5b506104b960048036038101906104b491906128bb565b61129f565b6040516104c69190612fc0565b60405180910390f35b60606040518060400160405280600681526020017f4e6f204372790000000000000000000000000000000000000000000000000000815250905090565b6000610520610519611326565b848461132e565b6001905092915050565b6000683635c9adc5dea00000905090565b610543611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146105d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105c790612f20565b60405180910390fd5b80601260146101000a81548160ff02191690831515021790555050565b60006105fa8484846114f9565b6106bb84610606611326565b6106b68560405180606001604052806028815260200161373c60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061066c611326565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bc69092919063ffffffff16565b61132e565b600190509392505050565b6106ce611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461075b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161075290612f20565b60405180910390fd5b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006009905090565b6107c7611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084b90612f20565b60405180910390fd5b600061085e610b98565b90508073ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156108a6573d6000803e3d6000fd5b5050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6108d8611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610965576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095c90612f20565b60405180910390fd5b80601260176101000a81548160ff02191690831515021790555050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166109c3611326565b73ffffffffffffffffffffffffffffffffffffffff16146109e357600080fd5b60004790506109f181611c2a565b50565b6000610a3e600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d25565b9050919050565b610a4d611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ad190612f20565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600a81526020017f4e4f43525920f09fa6b400000000000000000000000000000000000000000000815250905090565b6000610c12610c0b611326565b84846114f9565b6001905092915050565b610c24611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610cb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ca890612f20565b60405180910390fd5b60005b8151811015610d4257600160076000848481518110610cd657610cd561337d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610d3a906132d6565b915050610cb4565b5050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610d87611326565b73ffffffffffffffffffffffffffffffffffffffff1614610da757600080fd5b6000610db2306109f4565b9050610dbd81611d93565b50565b610dc8611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4c90612f20565b60405180910390fd5b6001601260146101000a81548160ff021916908315150217905550565b610e7a611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610efe90612f20565b60405180910390fd5b601260149054906101000a900460ff1615610f57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4e90612fa0565b60405180910390fd5b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7194730610fa0306109f4565b600080610fab610b98565b426040518863ffffffff1660e01b8152600401610fcd96959493929190612da2565b6060604051808303818588803b158015610fe657600080fd5b505af1158015610ffa573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061101f9190612a5e565b5050506001601260166101000a81548160ff0219169083151502179055506001601260176101000a81548160ff021916908315150217905550611062600a611156565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611101929190612d79565b602060405180830381600087803b15801561111b57600080fd5b505af115801561112f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111539190612a04565b50565b61115e611326565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146111eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111e290612f20565b60405180910390fd5b6000811161122e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161122590612ec0565b60405180910390fd5b61125d606461124f83683635c9adc5dea0000061201b90919063ffffffff16565b61209690919063ffffffff16565b6013819055507f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6013546040516112949190612fc0565b60405180910390a150565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561139e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139590612f80565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561140e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161140590612e80565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516114ec9190612fc0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611569576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156090612f60565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d090612e40565b60405180910390fd5b6000811161161c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161390612f40565b60405180910390fd5b6004600b819055506004600c819055506000611636610b98565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156116a45750611674610b98565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611b0457600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561174d5750600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b61175657600080fd5b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480156118015750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b80156118575750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561186f5750601260179054906101000a900460ff165b156119235760135482111561188357600080fd5b42600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054106118ce57600080fd5b601e426118db91906130f6565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600190505b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480156119ce5750601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015611a245750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611a3e576004600b819055506004600c81905550600190505b6000611a49306109f4565b9050601260159054906101000a900460ff16158015611ab65750601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611ace5750601260169054906101000a900460ff165b8015611ada5750600081115b15611b0257611ae881611d93565b60004790506000811115611b0057611aff47611c2a565b5b505b505b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611b5b5750815b90508115611bb357601260149054906101000a900460ff16611bb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba990612ee0565b60405180910390fd5b5b611bbf858585846120e0565b5050505050565b6000838311158290611c0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c059190612e1e565b60405180910390fd5b5060008385611c1d91906131d7565b9050809150509392505050565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611c7a60028461209690919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611ca5573d6000803e3d6000fd5b50601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611cf660028461209690919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611d21573d6000803e3d6000fd5b5050565b6000600954821115611d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6390612e60565b60405180910390fd5b6000611d7661210d565b9050611d8b818461209690919063ffffffff16565b915050919050565b6001601260156101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115611dcb57611dca6133ac565b5b604051908082528060200260200182016040528015611df95781602001602082028036833780820191505090505b5090503081600081518110611e1157611e1061337d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015611eb357600080fd5b505afa158015611ec7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eeb919061288e565b81600181518110611eff57611efe61337d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050611f6630601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168461132e565b601160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401611fca959493929190612fdb565b600060405180830381600087803b158015611fe457600080fd5b505af1158015611ff8573d6000803e3d6000fd5b50505050506000601260156101000a81548160ff02191690831515021790555050565b60008083141561202e5760009050612090565b6000828461203c919061317d565b905082848261204b919061314c565b1461208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208290612f00565b60405180910390fd5b809150505b92915050565b60006120d883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612138565b905092915050565b806120ee576120ed61219b565b5b6120f98484846121de565b80612107576121066123a9565b5b50505050565b600080600061211a6123bd565b91509150612131818361209690919063ffffffff16565b9250505090565b6000808311829061217f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121769190612e1e565b60405180910390fd5b506000838561218e919061314c565b9050809150509392505050565b6000600b541480156121af57506000600c54145b156121b9576121dc565b600b54600d81905550600c54600e819055506000600b819055506000600c819055505b565b6000806000806000806121f08761241f565b95509550955095509550955061224e86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461248790919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506122e385600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124d190919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061232f8161252f565b61233984836125ec565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516123969190612fc0565b60405180910390a3505050505050505050565b600d54600b81905550600e54600c81905550565b600080600060095490506000683635c9adc5dea0000090506123f3683635c9adc5dea0000060095461209690919063ffffffff16565b82101561241257600954683635c9adc5dea0000093509350505061241b565b81819350935050505b9091565b600080600080600080600080600061243c8a600b54600c54612626565b925092509250600061244c61210d565b9050600080600061245f8e8787876126bc565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b60006124c983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611bc6565b905092915050565b60008082846124e091906130f6565b905083811015612525576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161251c90612ea0565b60405180910390fd5b8091505092915050565b600061253961210d565b90506000612550828461201b90919063ffffffff16565b90506125a481600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124d190919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6126018260095461248790919063ffffffff16565b60098190555061261c81600a546124d190919063ffffffff16565b600a819055505050565b6000806000806126526064612644888a61201b90919063ffffffff16565b61209690919063ffffffff16565b9050600061267c606461266e888b61201b90919063ffffffff16565b61209690919063ffffffff16565b905060006126a582612697858c61248790919063ffffffff16565b61248790919063ffffffff16565b905080838395509550955050505093509350939050565b6000806000806126d5858961201b90919063ffffffff16565b905060006126ec868961201b90919063ffffffff16565b90506000612703878961201b90919063ffffffff16565b9050600061272c8261271e858761248790919063ffffffff16565b61248790919063ffffffff16565b9050838184965096509650505050509450945094915050565b600061275861275384613075565b613050565b9050808382526020820190508285602086028201111561277b5761277a6133e0565b5b60005b858110156127ab578161279188826127b5565b84526020840193506020830192505060018101905061277e565b5050509392505050565b6000813590506127c4816136f6565b92915050565b6000815190506127d9816136f6565b92915050565b600082601f8301126127f4576127f36133db565b5b8135612804848260208601612745565b91505092915050565b60008135905061281c8161370d565b92915050565b6000815190506128318161370d565b92915050565b60008135905061284681613724565b92915050565b60008151905061285b81613724565b92915050565b600060208284031215612877576128766133ea565b5b6000612885848285016127b5565b91505092915050565b6000602082840312156128a4576128a36133ea565b5b60006128b2848285016127ca565b91505092915050565b600080604083850312156128d2576128d16133ea565b5b60006128e0858286016127b5565b92505060206128f1858286016127b5565b9150509250929050565b600080600060608486031215612914576129136133ea565b5b6000612922868287016127b5565b9350506020612933868287016127b5565b925050604061294486828701612837565b9150509250925092565b60008060408385031215612965576129646133ea565b5b6000612973858286016127b5565b925050602061298485828601612837565b9150509250929050565b6000602082840312156129a4576129a36133ea565b5b600082013567ffffffffffffffff8111156129c2576129c16133e5565b5b6129ce848285016127df565b91505092915050565b6000602082840312156129ed576129ec6133ea565b5b60006129fb8482850161280d565b91505092915050565b600060208284031215612a1a57612a196133ea565b5b6000612a2884828501612822565b91505092915050565b600060208284031215612a4757612a466133ea565b5b6000612a5584828501612837565b91505092915050565b600080600060608486031215612a7757612a766133ea565b5b6000612a858682870161284c565b9350506020612a968682870161284c565b9250506040612aa78682870161284c565b9150509250925092565b6000612abd8383612ac9565b60208301905092915050565b612ad28161320b565b82525050565b612ae18161320b565b82525050565b6000612af2826130b1565b612afc81856130d4565b9350612b07836130a1565b8060005b83811015612b38578151612b1f8882612ab1565b9750612b2a836130c7565b925050600181019050612b0b565b5085935050505092915050565b612b4e8161321d565b82525050565b612b5d81613260565b82525050565b6000612b6e826130bc565b612b7881856130e5565b9350612b88818560208601613272565b612b91816133ef565b840191505092915050565b6000612ba96023836130e5565b9150612bb482613400565b604082019050919050565b6000612bcc602a836130e5565b9150612bd78261344f565b604082019050919050565b6000612bef6022836130e5565b9150612bfa8261349e565b604082019050919050565b6000612c12601b836130e5565b9150612c1d826134ed565b602082019050919050565b6000612c35601d836130e5565b9150612c4082613516565b602082019050919050565b6000612c586013836130e5565b9150612c638261353f565b602082019050919050565b6000612c7b6021836130e5565b9150612c8682613568565b604082019050919050565b6000612c9e6020836130e5565b9150612ca9826135b7565b602082019050919050565b6000612cc16029836130e5565b9150612ccc826135e0565b604082019050919050565b6000612ce46025836130e5565b9150612cef8261362f565b604082019050919050565b6000612d076024836130e5565b9150612d128261367e565b604082019050919050565b6000612d2a6017836130e5565b9150612d35826136cd565b602082019050919050565b612d4981613249565b82525050565b612d5881613253565b82525050565b6000602082019050612d736000830184612ad8565b92915050565b6000604082019050612d8e6000830185612ad8565b612d9b6020830184612d40565b9392505050565b600060c082019050612db76000830189612ad8565b612dc46020830188612d40565b612dd16040830187612b54565b612dde6060830186612b54565b612deb6080830185612ad8565b612df860a0830184612d40565b979650505050505050565b6000602082019050612e186000830184612b45565b92915050565b60006020820190508181036000830152612e388184612b63565b905092915050565b60006020820190508181036000830152612e5981612b9c565b9050919050565b60006020820190508181036000830152612e7981612bbf565b9050919050565b60006020820190508181036000830152612e9981612be2565b9050919050565b60006020820190508181036000830152612eb981612c05565b9050919050565b60006020820190508181036000830152612ed981612c28565b9050919050565b60006020820190508181036000830152612ef981612c4b565b9050919050565b60006020820190508181036000830152612f1981612c6e565b9050919050565b60006020820190508181036000830152612f3981612c91565b9050919050565b60006020820190508181036000830152612f5981612cb4565b9050919050565b60006020820190508181036000830152612f7981612cd7565b9050919050565b60006020820190508181036000830152612f9981612cfa565b9050919050565b60006020820190508181036000830152612fb981612d1d565b9050919050565b6000602082019050612fd56000830184612d40565b92915050565b600060a082019050612ff06000830188612d40565b612ffd6020830187612b54565b818103604083015261300f8186612ae7565b905061301e6060830185612ad8565b61302b6080830184612d40565b9695505050505050565b600060208201905061304a6000830184612d4f565b92915050565b600061305a61306b565b905061306682826132a5565b919050565b6000604051905090565b600067ffffffffffffffff8211156130905761308f6133ac565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600061310182613249565b915061310c83613249565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156131415761314061331f565b5b828201905092915050565b600061315782613249565b915061316283613249565b9250826131725761317161334e565b5b828204905092915050565b600061318882613249565b915061319383613249565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131cc576131cb61331f565b5b828202905092915050565b60006131e282613249565b91506131ed83613249565b925082821015613200576131ff61331f565b5b828203905092915050565b600061321682613229565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061326b82613249565b9050919050565b60005b83811015613290578082015181840152602081019050613275565b8381111561329f576000848401525b50505050565b6132ae826133ef565b810181811067ffffffffffffffff821117156132cd576132cc6133ac565b5b80604052505050565b60006132e182613249565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156133145761331361331f565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f416d6f756e74206d7573742062652067726561746572207468616e2030000000600082015250565b7f74726164696e67206973206e6f74206f70656e00000000000000000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f74726164696e6720697320616c7265616479206f70656e000000000000000000600082015250565b6136ff8161320b565b811461370a57600080fd5b50565b6137168161321d565b811461372157600080fd5b50565b61372d81613249565b811461373857600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e95c41c67a260cbaa6da15479957750242402ff321102d1311ec38f0ce4bd41464736f6c63430008070033

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

0000000000000000000000009d21417d3817a3f017cf26803332aae8e5b605a6000000000000000000000000ce5f50c18c9a3d3d2a552f2cfd10018ec0879b6b

-----Decoded View---------------
Arg [0] : FeeAddress (address): 0x9d21417d3817a3F017CF26803332aAE8E5B605a6
Arg [1] : marketingWalletAddress (address): 0xCE5f50c18c9a3D3d2a552f2cFd10018eC0879B6b

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000009d21417d3817a3f017cf26803332aae8e5b605a6
Arg [1] : 000000000000000000000000ce5f50c18c9a3d3d2a552f2cfd10018ec0879b6b


Deployed Bytecode Sourcemap

4710:13439:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7311:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8236:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7588:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17877:107;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8437:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13641:88;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7497:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17992:154;;;;;;;;;;;;;:::i;:::-;;6031:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8891:103;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15255:190;;;;;;;;;;;;;:::i;:::-;;7691:138;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3662:148;;;;;;;;;;;;;:::i;:::-;;3448:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7402:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7837:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13466:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15056:191;;;;;;;;;;;;;:::i;:::-;;13377:81;;;;;;;;;;;;;:::i;:::-;;12807:562;;;;;;;;;;;;;:::i;:::-;;17616:253;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8044:184;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7311:83;7348:13;7381:5;;;;;;;;;;;;;;;;;7374:12;;7311:83;:::o;8236:193::-;8338:4;8360:39;8369:12;:10;:12::i;:::-;8383:7;8392:6;8360:8;:39::i;:::-;8417:4;8410:11;;8236:193;;;;:::o;7588:95::-;7641:7;5258:21;7661:14;;7588:95;:::o;17877:107::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;17964:12:::1;17950:11;;:26;;;;;;;;;;;;;;;;;;17877:107:::0;:::o;8437:446::-;8569:4;8586:36;8596:6;8604:9;8615:6;8586:9;:36::i;:::-;8633:220;8656:6;8677:12;:10;:12::i;:::-;8704:138;8760:6;8704:138;;;;;;;;;;;;;;;;;:11;:19;8716:6;8704:19;;;;;;;;;;;;;;;:33;8724:12;:10;:12::i;:::-;8704:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;8633:8;:220::i;:::-;8871:4;8864:11;;8437:446;;;;;:::o;13641:88::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13716:5:::1;13701:4;:12;13706:6;13701:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;13641:88:::0;:::o;7497:83::-;7538:5;5719:1;7556:16;;7497:83;:::o;17992:154::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;18042:25:::1;18078:7;:5;:7::i;:::-;18042:44;;18097:9;:18;;:41;18116:21;18097:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;18031:115;17992:154::o:0;6031:28::-;;;;;;;;;;;;;:::o;8891:103::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;8981:5:::1;8963:15;;:23;;;;;;;;;;;;;;;;;;8891:103:::0;:::o;15255:190::-;15321:11;;;;;;;;;;;15305:27;;:12;:10;:12::i;:::-;:27;;;15297:36;;;;;;15344:26;15373:21;15344:50;;15405:32;15418:18;15405:12;:32::i;:::-;15286:159;15255:190::o;7691:138::-;7757:7;7784:37;7804:7;:16;7812:7;7804:16;;;;;;;;;;;;;;;;7784:19;:37::i;:::-;7777:44;;7691:138;;;:::o;3662:148::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3769:1:::1;3732:40;;3753:6;::::0;::::1;;;;;;;;3732:40;;;;;;;;;;;;3800:1;3783:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3662:148::o:0;3448:79::-;3486:7;3513:6;;;;;;;;;;;3506:13;;3448:79;:::o;7402:87::-;7441:13;7474:7;;;;;;;;;;;;;;;;;7467:14;;7402:87;:::o;7837:199::-;7942:4;7964:42;7974:12;:10;:12::i;:::-;7988:9;7999:6;7964:9;:42::i;:::-;8024:4;8017:11;;7837:199;;;;:::o;13466:167::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13540:9:::1;13535:91;13559:5;:12;13555:1;:16;13535:91;;;13610:4;13593;:14;13598:5;13604:1;13598:8;;;;;;;;:::i;:::-;;;;;;;;13593:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;13573:3;;;;;:::i;:::-;;;;13535:91;;;;13466:167:::0;:::o;15056:191::-;15122:11;;;;;;;;;;;15106:27;;:12;:10;:12::i;:::-;:27;;;15098:36;;;;;;15145:23;15171:24;15189:4;15171:9;:24::i;:::-;15145:50;;15206:33;15223:15;15206:16;:33::i;:::-;15087:160;15056:191::o;13377:81::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13446:4:::1;13432:11;;:18;;;;;;;;;;;;;;;;;;13377:81::o:0;12807:562::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12874:11:::1;;;;;;;;;;;12873:12;12865:48;;;;;;;;;;;;:::i;:::-;;;;;;;;;12924:15;;;;;;;;;;;:31;;;12963:21;13008:4;13028:24;13046:4;13028:9;:24::i;:::-;13067:1;13083::::0;13099:7:::1;:5;:7::i;:::-;13121:15;12924:223;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;13172:4;13158:11;;:18;;;;;;;;;;;;;;;;;;13205:4;13187:15;;:22;;;;;;;;;;;;;;;;;;13220:19;13236:2;13220:15;:19::i;:::-;13257:13;;;;;;;;;;;13250:29;;;13302:15;;;;;;;;;;;13333:17;13250:111;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12807:562::o:0;17616:253::-;3585:12;:10;:12::i;:::-;3575:22;;:6;;;;;;;;;;:22;;;3567:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;17716:1:::1;17701:12;:16;17693:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;17777:36;17807:5;17777:25;17789:12;5258:21;17777:11;;:25;;;;:::i;:::-;:29;;:36;;;;:::i;:::-;17762:12;:51;;;;17829:32;17848:12;;17829:32;;;;;;:::i;:::-;;;;;;;;17616:253:::0;:::o;8044:184::-;8161:7;8193:11;:18;8205:5;8193:18;;;;;;;;;;;;;;;:27;8212:7;8193:27;;;;;;;;;;;;;;;;8186:34;;8044:184;;;;:::o;951:98::-;1004:7;1031:10;1024:17;;951:98;:::o;9675:369::-;9819:1;9802:19;;:5;:19;;;;9794:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9900:1;9881:21;;:7;:21;;;;9873:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9982:6;9952:11;:18;9964:5;9952:18;;;;;;;;;;;;;;;:27;9971:7;9952:27;;;;;;;;;;;;;;;:36;;;;10020:7;10004:32;;10013:5;10004:32;;;10029:6;10004:32;;;;;;:::i;:::-;;;;;;;;9675:369;;;:::o;10052:2090::-;10190:1;10174:18;;:4;:18;;;;10166:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10267:1;10253:16;;:2;:16;;;;10245:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;10337:1;10328:6;:10;10320:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;10407:1;10397:7;:11;;;;10430:1;10419:8;:12;;;;10442:16;10489:7;:5;:7::i;:::-;10481:15;;:4;:15;;;;:32;;;;;10506:7;:5;:7::i;:::-;10500:13;;:2;:13;;;;10481:32;10477:1455;;;10539:4;:10;10544:4;10539:10;;;;;;;;;;;;;;;;;;;;;;;;;10538:11;:24;;;;;10554:4;:8;10559:2;10554:8;;;;;;;;;;;;;;;;;;;;;;;;;10553:9;10538:24;10530:33;;;;;;10637:13;;;;;;;;;;;10629:21;;:4;:21;;;:72;;;;;10685:15;;;;;;;;;;;10671:30;;:2;:30;;;;10629:72;:116;;;;;10723:18;:22;10742:2;10723:22;;;;;;;;;;;;;;;;;;;;;;;;;10722:23;10629:116;:152;;;;;10766:15;;;;;;;;;;;10629:152;10607:450;;;10834:12;;10824:6;:22;;10816:31;;;;;;10889:15;10874:8;:12;10883:2;10874:12;;;;;;;;;;;;;;;;:30;10866:39;;;;;;10958:10;10939:15;:30;;;;:::i;:::-;10924:8;:12;10933:2;10924:12;;;;;;;;;;;;;;;:45;;;;11037:4;11023:18;;10607:450;11129:13;;;;;;;;;;;11123:19;;:2;:19;;;:72;;;;;11179:15;;;;;;;;;;;11163:32;;:4;:32;;;;11123:72;:118;;;;;11217:18;:24;11236:4;11217:24;;;;;;;;;;;;;;;;;;;;;;;;;11216:25;11123:118;11101:306;;;11286:1;11276:7;:11;;;;11317:1;11306:8;:12;;;;11387:4;11373:18;;11101:306;11421:28;11452:24;11470:4;11452:9;:24::i;:::-;11421:55;;11514:6;;;;;;;;;;;11513:7;:49;;;;;11549:13;;;;;;;;;;;11541:21;;:4;:21;;;;11513:49;:81;;;;;11583:11;;;;;;;;;;;11513:81;:126;;;;;11638:1;11615:20;:24;11513:126;11491:430;;;11674:38;11691:20;11674:16;:38::i;:::-;11731:26;11760:21;11731:50;;11825:1;11804:18;:22;11800:106;;;11851:35;11864:21;11851:12;:35::i;:::-;11800:106;11655:266;11491:430;10515:1417;10477:1455;11942:12;11957:9;:13;11967:2;11957:13;;;;;;;;;;;;;;;;;;;;;;;;;:28;;;;11974:11;11957:28;11942:43;;12000:11;11996:87;;;12036:11;;;;;;;;;;;12028:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;11996:87;12093:41;12108:4;12114:2;12118:6;12126:7;12093:14;:41::i;:::-;10155:1987;;10052:2090;;;:::o;2213:224::-;2333:7;2366:1;2361;:6;;2369:12;2353:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2393:9;2409:1;2405;:5;;;;:::i;:::-;2393:17;;2428:1;2421:8;;;2213:224;;;;;:::o;12641:158::-;12698:11;;;;;;;;;;;:20;;:35;12719:13;12730:1;12719:6;:10;;:13;;;;:::i;:::-;12698:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12744:23;;;;;;;;;;;:32;;:47;12777:13;12788:1;12777:6;:10;;:13;;;;:::i;:::-;12744:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12641:158;:::o;9002:323::-;9097:7;9155;;9144;:18;;9122:110;;;;;;;;;;;;:::i;:::-;;;;;;;;;9243:19;9265:10;:8;:10::i;:::-;9243:32;;9293:24;9305:11;9293:7;:11;;:24;;;;:::i;:::-;9286:31;;;9002:323;;;:::o;12150:483::-;6352:4;6343:6;;:13;;;;;;;;;;;;;;;;;;12228:21:::1;12266:1;12252:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12228:40;;12297:4;12279;12284:1;12279:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;12323:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12313:4;12318:1;12313:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;12356:62;12373:4;12388:15;;;;;;;;;;;12406:11;12356:8;:62::i;:::-;12429:15;;;;;;;;;;;:66;;;12510:11;12536:1;12552:4;12579;12599:15;12429:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;12217:416;6388:5:::0;6379:6;;:14;;;;;;;;;;;;;;;;;;12150:483;:::o;2445:246::-;2503:7;2532:1;2527;:6;2523:47;;;2557:1;2550:8;;;;2523:47;2580:9;2596:1;2592;:5;;;;:::i;:::-;2580:17;;2625:1;2620;2616;:5;;;;:::i;:::-;:10;2608:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;2682:1;2675:8;;;2445:246;;;;;:::o;2699:132::-;2757:7;2784:39;2788:1;2791;2784:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2777:46;;2699:132;;;;:::o;13737:282::-;13893:7;13888:28;;13902:14;:12;:14::i;:::-;13888:28;13927:44;13945:6;13953:9;13964:6;13927:17;:44::i;:::-;13987:7;13982:29;;13996:15;:13;:15::i;:::-;13982:29;13737:282;;;;:::o;17179:164::-;17221:7;17242:15;17259;17278:19;:17;:19::i;:::-;17241:56;;;;17315:20;17327:7;17315;:11;;:20;;;;:::i;:::-;17308:27;;;;17179:164;:::o;2839:223::-;2959:7;2991:1;2987;:5;2994:12;2979:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3018:9;3034:1;3030;:5;;;;:::i;:::-;3018:17;;3053:1;3046:8;;;2839:223;;;;;:::o;9333:211::-;9391:1;9380:7;;:12;:29;;;;;9408:1;9396:8;;:13;9380:29;9376:42;;;9411:7;;9376:42;9446:7;;9428:15;:25;;;;9483:8;;9464:16;:27;;;;9512:1;9502:7;:11;;;;9535:1;9524:8;:12;;;;9333:211;:::o;14027:610::-;14174:15;14204:23;14242:12;14269:23;14307:12;14334:13;14361:19;14372:7;14361:10;:19::i;:::-;14159:221;;;;;;;;;;;;14409:28;14429:7;14409;:15;14417:6;14409:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;14391:7;:15;14399:6;14391:15;;;;;;;;;;;;;;;:46;;;;14469:39;14492:15;14469:7;:18;14477:9;14469:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;14448:7;:18;14456:9;14448:18;;;;;;;;;;;;;;;:60;;;;14519:16;14529:5;14519:9;:16::i;:::-;14546:23;14558:4;14564;14546:11;:23::i;:::-;14602:9;14585:44;;14594:6;14585:44;;;14613:15;14585:44;;;;;;:::i;:::-;;;;;;;;14148:489;;;;;;14027:610;;;:::o;9552:115::-;9606:15;;9596:7;:25;;;;9643:16;;9632:8;:27;;;;9552:115::o;17351:257::-;17402:7;17411;17431:15;17449:7;;17431:25;;17467:15;5258:21;17467:25;;17517:20;5258:21;17517:7;;:11;;:20;;;;:::i;:::-;17507:7;:30;17503:61;;;17547:7;;5258:21;17539:25;;;;;;;;17503:61;17583:7;17592;17575:25;;;;;;17351:257;;;:::o;15453:701::-;15553:7;15575;15597;15619;15641;15663;15699:23;15724:12;15738:13;15755:89;15781:7;15803;;15825:8;;15755:11;:89::i;:::-;15698:146;;;;;;15855:19;15877:10;:8;:10::i;:::-;15855:32;;15899:15;15916:23;15941:12;15957:109;15983:7;16005:4;16024:5;16044:11;15957;:109::i;:::-;15898:168;;;;;;16085:7;16094:15;16111:4;16117:15;16134:4;16140:5;16077:69;;;;;;;;;;;;;;;;;;;15453:701;;;;;;;:::o;2069:136::-;2127:7;2154:43;2158:1;2161;2154:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2147:50;;2069:136;;;;:::o;1882:179::-;1940:7;1960:9;1976:1;1972;:5;;;;:::i;:::-;1960:17;;2001:1;1996;:6;;1988:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;2052:1;2045:8;;;1882:179;;;;:::o;14645:211::-;14698:19;14720:10;:8;:10::i;:::-;14698:32;;14741:13;14757:22;14767:11;14757:5;:9;;:22;;;;:::i;:::-;14741:38;;14815:33;14842:5;14815:7;:22;14831:4;14815:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;14790:7;:22;14806:4;14790:22;;;;;;;;;;;;;;;:58;;;;14687:169;;14645:211;:::o;14864:147::-;14942:17;14954:4;14942:7;;:11;;:17;;;;:::i;:::-;14932:7;:27;;;;14983:20;14998:4;14983:10;;:14;;:20;;;;:::i;:::-;14970:10;:33;;;;14864:147;;:::o;16162:467::-;16330:7;16352;16374;16409:12;16424:28;16448:3;16424:19;16436:6;16424:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;16409:43;;16463:13;16479:29;16504:3;16479:20;16491:7;16479;:11;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;16463:45;;16519:23;16545:28;16567:5;16545:17;16557:4;16545:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;16519:54;;16592:15;16609:4;16615:5;16584:37;;;;;;;;;16162:467;;;;;;;:::o;16637:534::-;16831:7;16853;16875;16910:15;16928:24;16940:11;16928:7;:11;;:24;;;;:::i;:::-;16910:42;;16963:12;16978:21;16987:11;16978:4;:8;;:21;;;;:::i;:::-;16963:36;;17010:13;17026:22;17036:11;17026:5;:9;;:22;;;;:::i;:::-;17010:38;;17059:23;17085:28;17107:5;17085:17;17097:4;17085:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;17059:54;;17132:7;17141:15;17158:4;17124:39;;;;;;;;;;16637:534;;;;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;752:139;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;897:143;;;;:::o;1063:370::-;1134:5;1183:3;1176:4;1168:6;1164:17;1160:27;1150:122;;1191:79;;:::i;:::-;1150:122;1308:6;1295:20;1333:94;1423:3;1415:6;1408:4;1400:6;1396:17;1333:94;:::i;:::-;1324:103;;1140:293;1063:370;;;;:::o;1439:133::-;1482:5;1520:6;1507:20;1498:29;;1536:30;1560:5;1536:30;:::i;:::-;1439:133;;;;:::o;1578:137::-;1632:5;1663:6;1657:13;1648:22;;1679:30;1703:5;1679:30;:::i;:::-;1578:137;;;;:::o;1721:139::-;1767:5;1805:6;1792:20;1783:29;;1821:33;1848:5;1821:33;:::i;:::-;1721:139;;;;:::o;1866:143::-;1923:5;1954:6;1948:13;1939:22;;1970:33;1997:5;1970:33;:::i;:::-;1866:143;;;;:::o;2015:329::-;2074:6;2123:2;2111:9;2102:7;2098:23;2094:32;2091:119;;;2129:79;;:::i;:::-;2091:119;2249:1;2274:53;2319:7;2310:6;2299:9;2295:22;2274:53;:::i;:::-;2264:63;;2220:117;2015:329;;;;:::o;2350:351::-;2420:6;2469:2;2457:9;2448:7;2444:23;2440:32;2437:119;;;2475:79;;:::i;:::-;2437:119;2595:1;2620:64;2676:7;2667:6;2656:9;2652:22;2620:64;:::i;:::-;2610:74;;2566:128;2350:351;;;;:::o;2707:474::-;2775:6;2783;2832:2;2820:9;2811:7;2807:23;2803:32;2800:119;;;2838:79;;:::i;:::-;2800:119;2958:1;2983:53;3028:7;3019:6;3008:9;3004:22;2983:53;:::i;:::-;2973:63;;2929:117;3085:2;3111:53;3156:7;3147:6;3136:9;3132:22;3111:53;:::i;:::-;3101:63;;3056:118;2707:474;;;;;:::o;3187:619::-;3264:6;3272;3280;3329:2;3317:9;3308:7;3304:23;3300:32;3297:119;;;3335:79;;:::i;:::-;3297:119;3455:1;3480:53;3525:7;3516:6;3505:9;3501:22;3480:53;:::i;:::-;3470:63;;3426:117;3582:2;3608:53;3653:7;3644:6;3633:9;3629:22;3608:53;:::i;:::-;3598:63;;3553:118;3710:2;3736:53;3781:7;3772:6;3761:9;3757:22;3736:53;:::i;:::-;3726:63;;3681:118;3187:619;;;;;:::o;3812:474::-;3880:6;3888;3937:2;3925:9;3916:7;3912:23;3908:32;3905:119;;;3943:79;;:::i;:::-;3905:119;4063:1;4088:53;4133:7;4124:6;4113:9;4109:22;4088:53;:::i;:::-;4078:63;;4034:117;4190:2;4216:53;4261:7;4252:6;4241:9;4237:22;4216:53;:::i;:::-;4206:63;;4161:118;3812:474;;;;;:::o;4292:539::-;4376:6;4425:2;4413:9;4404:7;4400:23;4396:32;4393:119;;;4431:79;;:::i;:::-;4393:119;4579:1;4568:9;4564:17;4551:31;4609:18;4601:6;4598:30;4595:117;;;4631:79;;:::i;:::-;4595:117;4736:78;4806:7;4797:6;4786:9;4782:22;4736:78;:::i;:::-;4726:88;;4522:302;4292:539;;;;:::o;4837:323::-;4893:6;4942:2;4930:9;4921:7;4917:23;4913:32;4910:119;;;4948:79;;:::i;:::-;4910:119;5068:1;5093:50;5135:7;5126:6;5115:9;5111:22;5093:50;:::i;:::-;5083:60;;5039:114;4837:323;;;;:::o;5166:345::-;5233:6;5282:2;5270:9;5261:7;5257:23;5253:32;5250:119;;;5288:79;;:::i;:::-;5250:119;5408:1;5433:61;5486:7;5477:6;5466:9;5462:22;5433:61;:::i;:::-;5423:71;;5379:125;5166:345;;;;:::o;5517:329::-;5576:6;5625:2;5613:9;5604:7;5600:23;5596:32;5593:119;;;5631:79;;:::i;:::-;5593:119;5751:1;5776:53;5821:7;5812:6;5801:9;5797:22;5776:53;:::i;:::-;5766:63;;5722:117;5517:329;;;;:::o;5852:663::-;5940:6;5948;5956;6005:2;5993:9;5984:7;5980:23;5976:32;5973:119;;;6011:79;;:::i;:::-;5973:119;6131:1;6156:64;6212:7;6203:6;6192:9;6188:22;6156:64;:::i;:::-;6146:74;;6102:128;6269:2;6295:64;6351:7;6342:6;6331:9;6327:22;6295:64;:::i;:::-;6285:74;;6240:129;6408:2;6434:64;6490:7;6481:6;6470:9;6466:22;6434:64;:::i;:::-;6424:74;;6379:129;5852:663;;;;;:::o;6521:179::-;6590:10;6611:46;6653:3;6645:6;6611:46;:::i;:::-;6689:4;6684:3;6680:14;6666:28;;6521:179;;;;:::o;6706:108::-;6783:24;6801:5;6783:24;:::i;:::-;6778:3;6771:37;6706:108;;:::o;6820:118::-;6907:24;6925:5;6907:24;:::i;:::-;6902:3;6895:37;6820:118;;:::o;6974:732::-;7093:3;7122:54;7170:5;7122:54;:::i;:::-;7192:86;7271:6;7266:3;7192:86;:::i;:::-;7185:93;;7302:56;7352:5;7302:56;:::i;:::-;7381:7;7412:1;7397:284;7422:6;7419:1;7416:13;7397:284;;;7498:6;7492:13;7525:63;7584:3;7569:13;7525:63;:::i;:::-;7518:70;;7611:60;7664:6;7611:60;:::i;:::-;7601:70;;7457:224;7444:1;7441;7437:9;7432:14;;7397:284;;;7401:14;7697:3;7690:10;;7098:608;;;6974:732;;;;:::o;7712:109::-;7793:21;7808:5;7793:21;:::i;:::-;7788:3;7781:34;7712:109;;:::o;7827:147::-;7922:45;7961:5;7922:45;:::i;:::-;7917:3;7910:58;7827:147;;:::o;7980:364::-;8068:3;8096:39;8129:5;8096:39;:::i;:::-;8151:71;8215:6;8210:3;8151:71;:::i;:::-;8144:78;;8231:52;8276:6;8271:3;8264:4;8257:5;8253:16;8231:52;:::i;:::-;8308:29;8330:6;8308:29;:::i;:::-;8303:3;8299:39;8292:46;;8072:272;7980:364;;;;:::o;8350:366::-;8492:3;8513:67;8577:2;8572:3;8513:67;:::i;:::-;8506:74;;8589:93;8678:3;8589:93;:::i;:::-;8707:2;8702:3;8698:12;8691:19;;8350:366;;;:::o;8722:::-;8864:3;8885:67;8949:2;8944:3;8885:67;:::i;:::-;8878:74;;8961:93;9050:3;8961:93;:::i;:::-;9079:2;9074:3;9070:12;9063:19;;8722:366;;;:::o;9094:::-;9236:3;9257:67;9321:2;9316:3;9257:67;:::i;:::-;9250:74;;9333:93;9422:3;9333:93;:::i;:::-;9451:2;9446:3;9442:12;9435:19;;9094:366;;;:::o;9466:::-;9608:3;9629:67;9693:2;9688:3;9629:67;:::i;:::-;9622:74;;9705:93;9794:3;9705:93;:::i;:::-;9823:2;9818:3;9814:12;9807:19;;9466:366;;;:::o;9838:::-;9980:3;10001:67;10065:2;10060:3;10001:67;:::i;:::-;9994:74;;10077:93;10166:3;10077:93;:::i;:::-;10195:2;10190:3;10186:12;10179:19;;9838:366;;;:::o;10210:::-;10352:3;10373:67;10437:2;10432:3;10373:67;:::i;:::-;10366:74;;10449:93;10538:3;10449:93;:::i;:::-;10567:2;10562:3;10558:12;10551:19;;10210:366;;;:::o;10582:::-;10724:3;10745:67;10809:2;10804:3;10745:67;:::i;:::-;10738:74;;10821:93;10910:3;10821:93;:::i;:::-;10939:2;10934:3;10930:12;10923:19;;10582:366;;;:::o;10954:::-;11096:3;11117:67;11181:2;11176:3;11117:67;:::i;:::-;11110:74;;11193:93;11282:3;11193:93;:::i;:::-;11311:2;11306:3;11302:12;11295:19;;10954:366;;;:::o;11326:::-;11468:3;11489:67;11553:2;11548:3;11489:67;:::i;:::-;11482:74;;11565:93;11654:3;11565:93;:::i;:::-;11683:2;11678:3;11674:12;11667:19;;11326:366;;;:::o;11698:::-;11840:3;11861:67;11925:2;11920:3;11861:67;:::i;:::-;11854:74;;11937:93;12026:3;11937:93;:::i;:::-;12055:2;12050:3;12046:12;12039:19;;11698:366;;;:::o;12070:::-;12212:3;12233:67;12297:2;12292:3;12233:67;:::i;:::-;12226:74;;12309:93;12398:3;12309:93;:::i;:::-;12427:2;12422:3;12418:12;12411:19;;12070:366;;;:::o;12442:::-;12584:3;12605:67;12669:2;12664:3;12605:67;:::i;:::-;12598:74;;12681:93;12770:3;12681:93;:::i;:::-;12799:2;12794:3;12790:12;12783:19;;12442:366;;;:::o;12814:118::-;12901:24;12919:5;12901:24;:::i;:::-;12896:3;12889:37;12814:118;;:::o;12938:112::-;13021:22;13037:5;13021:22;:::i;:::-;13016:3;13009:35;12938:112;;:::o;13056:222::-;13149:4;13187:2;13176:9;13172:18;13164:26;;13200:71;13268:1;13257:9;13253:17;13244:6;13200:71;:::i;:::-;13056:222;;;;:::o;13284:332::-;13405:4;13443:2;13432:9;13428:18;13420:26;;13456:71;13524:1;13513:9;13509:17;13500:6;13456:71;:::i;:::-;13537:72;13605:2;13594:9;13590:18;13581:6;13537:72;:::i;:::-;13284:332;;;;;:::o;13622:807::-;13871:4;13909:3;13898:9;13894:19;13886:27;;13923:71;13991:1;13980:9;13976:17;13967:6;13923:71;:::i;:::-;14004:72;14072:2;14061:9;14057:18;14048:6;14004:72;:::i;:::-;14086:80;14162:2;14151:9;14147:18;14138:6;14086:80;:::i;:::-;14176;14252:2;14241:9;14237:18;14228:6;14176:80;:::i;:::-;14266:73;14334:3;14323:9;14319:19;14310:6;14266:73;:::i;:::-;14349;14417:3;14406:9;14402:19;14393:6;14349:73;:::i;:::-;13622:807;;;;;;;;;:::o;14435:210::-;14522:4;14560:2;14549:9;14545:18;14537:26;;14573:65;14635:1;14624:9;14620:17;14611:6;14573:65;:::i;:::-;14435:210;;;;:::o;14651:313::-;14764:4;14802:2;14791:9;14787:18;14779:26;;14851:9;14845:4;14841:20;14837:1;14826:9;14822:17;14815:47;14879:78;14952:4;14943:6;14879:78;:::i;:::-;14871:86;;14651:313;;;;:::o;14970:419::-;15136:4;15174:2;15163:9;15159:18;15151:26;;15223:9;15217:4;15213:20;15209:1;15198:9;15194:17;15187:47;15251:131;15377:4;15251:131;:::i;:::-;15243:139;;14970:419;;;:::o;15395:::-;15561:4;15599:2;15588:9;15584:18;15576:26;;15648:9;15642:4;15638:20;15634:1;15623:9;15619:17;15612:47;15676:131;15802:4;15676:131;:::i;:::-;15668:139;;15395:419;;;:::o;15820:::-;15986:4;16024:2;16013:9;16009:18;16001:26;;16073:9;16067:4;16063:20;16059:1;16048:9;16044:17;16037:47;16101:131;16227:4;16101:131;:::i;:::-;16093:139;;15820:419;;;:::o;16245:::-;16411:4;16449:2;16438:9;16434:18;16426:26;;16498:9;16492:4;16488:20;16484:1;16473:9;16469:17;16462:47;16526:131;16652:4;16526:131;:::i;:::-;16518:139;;16245:419;;;:::o;16670:::-;16836:4;16874:2;16863:9;16859:18;16851:26;;16923:9;16917:4;16913:20;16909:1;16898:9;16894:17;16887:47;16951:131;17077:4;16951:131;:::i;:::-;16943:139;;16670:419;;;:::o;17095:::-;17261:4;17299:2;17288:9;17284:18;17276:26;;17348:9;17342:4;17338:20;17334:1;17323:9;17319:17;17312:47;17376:131;17502:4;17376:131;:::i;:::-;17368:139;;17095:419;;;:::o;17520:::-;17686:4;17724:2;17713:9;17709:18;17701:26;;17773:9;17767:4;17763:20;17759:1;17748:9;17744:17;17737:47;17801:131;17927:4;17801:131;:::i;:::-;17793:139;;17520:419;;;:::o;17945:::-;18111:4;18149:2;18138:9;18134:18;18126:26;;18198:9;18192:4;18188:20;18184:1;18173:9;18169:17;18162:47;18226:131;18352:4;18226:131;:::i;:::-;18218:139;;17945:419;;;:::o;18370:::-;18536:4;18574:2;18563:9;18559:18;18551:26;;18623:9;18617:4;18613:20;18609:1;18598:9;18594:17;18587:47;18651:131;18777:4;18651:131;:::i;:::-;18643:139;;18370:419;;;:::o;18795:::-;18961:4;18999:2;18988:9;18984:18;18976:26;;19048:9;19042:4;19038:20;19034:1;19023:9;19019:17;19012:47;19076:131;19202:4;19076:131;:::i;:::-;19068:139;;18795:419;;;:::o;19220:::-;19386:4;19424:2;19413:9;19409:18;19401:26;;19473:9;19467:4;19463:20;19459:1;19448:9;19444:17;19437:47;19501:131;19627:4;19501:131;:::i;:::-;19493:139;;19220:419;;;:::o;19645:::-;19811:4;19849:2;19838:9;19834:18;19826:26;;19898:9;19892:4;19888:20;19884:1;19873:9;19869:17;19862:47;19926:131;20052:4;19926:131;:::i;:::-;19918:139;;19645:419;;;:::o;20070:222::-;20163:4;20201:2;20190:9;20186:18;20178:26;;20214:71;20282:1;20271:9;20267:17;20258:6;20214:71;:::i;:::-;20070:222;;;;:::o;20298:831::-;20561:4;20599:3;20588:9;20584:19;20576:27;;20613:71;20681:1;20670:9;20666:17;20657:6;20613:71;:::i;:::-;20694:80;20770:2;20759:9;20755:18;20746:6;20694:80;:::i;:::-;20821:9;20815:4;20811:20;20806:2;20795:9;20791:18;20784:48;20849:108;20952:4;20943:6;20849:108;:::i;:::-;20841:116;;20967:72;21035:2;21024:9;21020:18;21011:6;20967:72;:::i;:::-;21049:73;21117:3;21106:9;21102:19;21093:6;21049:73;:::i;:::-;20298:831;;;;;;;;:::o;21135:214::-;21224:4;21262:2;21251:9;21247:18;21239:26;;21275:67;21339:1;21328:9;21324:17;21315:6;21275:67;:::i;:::-;21135:214;;;;:::o;21355:129::-;21389:6;21416:20;;:::i;:::-;21406:30;;21445:33;21473:4;21465:6;21445:33;:::i;:::-;21355:129;;;:::o;21490:75::-;21523:6;21556:2;21550:9;21540:19;;21490:75;:::o;21571:311::-;21648:4;21738:18;21730:6;21727:30;21724:56;;;21760:18;;:::i;:::-;21724:56;21810:4;21802:6;21798:17;21790:25;;21870:4;21864;21860:15;21852:23;;21571:311;;;:::o;21888:132::-;21955:4;21978:3;21970:11;;22008:4;22003:3;21999:14;21991:22;;21888:132;;;:::o;22026:114::-;22093:6;22127:5;22121:12;22111:22;;22026:114;;;:::o;22146:99::-;22198:6;22232:5;22226:12;22216:22;;22146:99;;;:::o;22251:113::-;22321:4;22353;22348:3;22344:14;22336:22;;22251:113;;;:::o;22370:184::-;22469:11;22503:6;22498:3;22491:19;22543:4;22538:3;22534:14;22519:29;;22370:184;;;;:::o;22560:169::-;22644:11;22678:6;22673:3;22666:19;22718:4;22713:3;22709:14;22694:29;;22560:169;;;;:::o;22735:305::-;22775:3;22794:20;22812:1;22794:20;:::i;:::-;22789:25;;22828:20;22846:1;22828:20;:::i;:::-;22823:25;;22982:1;22914:66;22910:74;22907:1;22904:81;22901:107;;;22988:18;;:::i;:::-;22901:107;23032:1;23029;23025:9;23018:16;;22735:305;;;;:::o;23046:185::-;23086:1;23103:20;23121:1;23103:20;:::i;:::-;23098:25;;23137:20;23155:1;23137:20;:::i;:::-;23132:25;;23176:1;23166:35;;23181:18;;:::i;:::-;23166:35;23223:1;23220;23216:9;23211:14;;23046:185;;;;:::o;23237:348::-;23277:7;23300:20;23318:1;23300:20;:::i;:::-;23295:25;;23334:20;23352:1;23334:20;:::i;:::-;23329:25;;23522:1;23454:66;23450:74;23447:1;23444:81;23439:1;23432:9;23425:17;23421:105;23418:131;;;23529:18;;:::i;:::-;23418:131;23577:1;23574;23570:9;23559:20;;23237:348;;;;:::o;23591:191::-;23631:4;23651:20;23669:1;23651:20;:::i;:::-;23646:25;;23685:20;23703:1;23685:20;:::i;:::-;23680:25;;23724:1;23721;23718:8;23715:34;;;23729:18;;:::i;:::-;23715:34;23774:1;23771;23767:9;23759:17;;23591:191;;;;:::o;23788:96::-;23825:7;23854:24;23872:5;23854:24;:::i;:::-;23843:35;;23788:96;;;:::o;23890:90::-;23924:7;23967:5;23960:13;23953:21;23942:32;;23890:90;;;:::o;23986:126::-;24023:7;24063:42;24056:5;24052:54;24041:65;;23986:126;;;:::o;24118:77::-;24155:7;24184:5;24173:16;;24118:77;;;:::o;24201:86::-;24236:7;24276:4;24269:5;24265:16;24254:27;;24201:86;;;:::o;24293:121::-;24351:9;24384:24;24402:5;24384:24;:::i;:::-;24371:37;;24293:121;;;:::o;24420:307::-;24488:1;24498:113;24512:6;24509:1;24506:13;24498:113;;;24597:1;24592:3;24588:11;24582:18;24578:1;24573:3;24569:11;24562:39;24534:2;24531:1;24527:10;24522:15;;24498:113;;;24629:6;24626:1;24623:13;24620:101;;;24709:1;24700:6;24695:3;24691:16;24684:27;24620:101;24469:258;24420:307;;;:::o;24733:281::-;24816:27;24838:4;24816:27;:::i;:::-;24808:6;24804:40;24946:6;24934:10;24931:22;24910:18;24898:10;24895:34;24892:62;24889:88;;;24957:18;;:::i;:::-;24889:88;24997:10;24993:2;24986:22;24776:238;24733:281;;:::o;25020:233::-;25059:3;25082:24;25100:5;25082:24;:::i;:::-;25073:33;;25128:66;25121:5;25118:77;25115:103;;;25198:18;;:::i;:::-;25115:103;25245:1;25238:5;25234:13;25227:20;;25020:233;;;:::o;25259:180::-;25307:77;25304:1;25297:88;25404:4;25401:1;25394:15;25428:4;25425:1;25418:15;25445:180;25493:77;25490:1;25483:88;25590:4;25587:1;25580:15;25614:4;25611:1;25604:15;25631:180;25679:77;25676:1;25669:88;25776:4;25773:1;25766:15;25800:4;25797:1;25790:15;25817:180;25865:77;25862:1;25855:88;25962:4;25959:1;25952:15;25986:4;25983:1;25976:15;26003:117;26112:1;26109;26102:12;26126:117;26235:1;26232;26225:12;26249:117;26358:1;26355;26348:12;26372:117;26481:1;26478;26471:12;26495:102;26536:6;26587:2;26583:7;26578:2;26571:5;26567:14;26563:28;26553:38;;26495:102;;;:::o;26603:222::-;26743:34;26739:1;26731:6;26727:14;26720:58;26812:5;26807:2;26799:6;26795:15;26788:30;26603:222;:::o;26831:229::-;26971:34;26967:1;26959:6;26955:14;26948:58;27040:12;27035:2;27027:6;27023:15;27016:37;26831:229;:::o;27066:221::-;27206:34;27202:1;27194:6;27190:14;27183:58;27275:4;27270:2;27262:6;27258:15;27251:29;27066:221;:::o;27293:177::-;27433:29;27429:1;27421:6;27417:14;27410:53;27293:177;:::o;27476:179::-;27616:31;27612:1;27604:6;27600:14;27593:55;27476:179;:::o;27661:169::-;27801:21;27797:1;27789:6;27785:14;27778:45;27661:169;:::o;27836:220::-;27976:34;27972:1;27964:6;27960:14;27953:58;28045:3;28040:2;28032:6;28028:15;28021:28;27836:220;:::o;28062:182::-;28202:34;28198:1;28190:6;28186:14;28179:58;28062:182;:::o;28250:228::-;28390:34;28386:1;28378:6;28374:14;28367:58;28459:11;28454:2;28446:6;28442:15;28435:36;28250:228;:::o;28484:224::-;28624:34;28620:1;28612:6;28608:14;28601:58;28693:7;28688:2;28680:6;28676:15;28669:32;28484:224;:::o;28714:223::-;28854:34;28850:1;28842:6;28838:14;28831:58;28923:6;28918:2;28910:6;28906:15;28899:31;28714:223;:::o;28943:173::-;29083:25;29079:1;29071:6;29067:14;29060:49;28943:173;:::o;29122:122::-;29195:24;29213:5;29195:24;:::i;:::-;29188:5;29185:35;29175:63;;29234:1;29231;29224:12;29175:63;29122:122;:::o;29250:116::-;29320:21;29335:5;29320:21;:::i;:::-;29313:5;29310:32;29300:60;;29356:1;29353;29346:12;29300:60;29250:116;:::o;29372:122::-;29445:24;29463:5;29445:24;:::i;:::-;29438:5;29435:35;29425:63;;29484:1;29481;29474:12;29425:63;29372:122;:::o

Swarm Source

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