ETH Price: $2,524.64 (+0.31%)

Token

Member Coin (MEMBR)
 

Overview

Max Total Supply

111,111,111,000 MEMBR

Holders

28

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,120,906,775.563578735 MEMBR

Value
$0.00
0x6419bd66b7ca3ddc06affdf64678ac2aac2a12bc
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:
MEMBR

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 1111 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-21
*/

// SPDX-License-Identifier: Unlicensed

/*

Twitter: https://twitter.com/Membercoineth
Telegram: https://t.me/MemberCoinAnnouncements
Website: https://membercoin.io/

                                                                                                                                     
                                                                          bbbbbbbb                                                    
MMMMMMMM               MMMMMMMM                                           b::::::b                                                    
M:::::::M             M:::::::M                                           b::::::b                                                    
M::::::::M           M::::::::M                                           b::::::b                                                    
M:::::::::M         M:::::::::M                                            b:::::b                                                    
M::::::::::M       M::::::::::M    eeeeeeeeeeee       mmmmmmm    mmmmmmm   b:::::bbbbbbbbb        eeeeeeeeeeee    rrrrr   rrrrrrrrr   
M:::::::::::M     M:::::::::::M  ee::::::::::::ee   mm:::::::m  m:::::::mm b::::::::::::::bb    ee::::::::::::ee  r::::rrr:::::::::r  
M:::::::M::::M   M::::M:::::::M e::::::eeeee:::::eem::::::::::mm::::::::::mb::::::::::::::::b  e::::::eeeee:::::eer:::::::::::::::::r 
M::::::M M::::M M::::M M::::::Me::::::e     e:::::em::::::::::::::::::::::mb:::::bbbbb:::::::be::::::e     e:::::err::::::rrrrr::::::r
M::::::M  M::::M::::M  M::::::Me:::::::eeeee::::::em:::::mmm::::::mmm:::::mb:::::b    b::::::be:::::::eeeee::::::e r:::::r     r:::::r
M::::::M   M:::::::M   M::::::Me:::::::::::::::::e m::::m   m::::m   m::::mb:::::b     b:::::be:::::::::::::::::e  r:::::r     rrrrrrr
M::::::M    M:::::M    M::::::Me::::::eeeeeeeeeee  m::::m   m::::m   m::::mb:::::b     b:::::be::::::eeeeeeeeeee   r:::::r            
M::::::M     MMMMM     M::::::Me:::::::e           m::::m   m::::m   m::::mb:::::b     b:::::be:::::::e            r:::::r            
M::::::M               M::::::Me::::::::e          m::::m   m::::m   m::::mb:::::bbbbbb::::::be::::::::e           r:::::r            
M::::::M               M::::::M e::::::::eeeeeeee  m::::m   m::::m   m::::mb::::::::::::::::b  e::::::::eeeeeeee   r:::::r            
M::::::M               M::::::M  ee:::::::::::::e  m::::m   m::::m   m::::mb:::::::::::::::b    ee:::::::::::::e   r:::::r            
MMMMMMMM               MMMMMMMM    eeeeeeeeeeeeee  mmmmmm   mmmmmm   mmmmmmbbbbbbbbbbbbbbbb       eeeeeeeeeeeeee   rrrrrrr  

*/

pragma solidity ^0.8.9;

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

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

}

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

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

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

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

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

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

interface 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 MEMBR is Context, IERC20, Ownable {

    using SafeMath for uint256;

    string private constant _name = "Member Coin";
    string private constant _symbol = "MEMBR";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 111111111 * 10**12;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 15;
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 50;

    //Original Fee
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;

    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;

    mapping(address => bool) public bots; mapping (address => uint256) public _buyMap;
    address payable private _developmentAddress = payable(0x96c8f498A02226fAB9bDC9F2Ac835eCb81fEC9AF);
    address payable private _marketingAddress = payable(0x96c8f498A02226fAB9bDC9F2Ac835eCb81fEC9AF);

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    bool private tradingOpen = false;
    bool private inSwap = false;
    bool private swapEnabled = true;

    uint256 public _maxTxAmount = 2222222 * 10**12;
    uint256 public _maxWalletSize = 2222222 * 10**12;
    uint256 public _swapTokensAtAmount = 11111 * 10**12 ;

    event MaxTxAmountUpdated(uint256 _maxTxAmount);
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() {

        _rOwned[_msgSender()] = _rTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);//
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_developmentAddress] = true;
        _isExcludedFromFee[_marketingAddress] = true;

        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    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 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 (_redisFee == 0 && _taxFee == 0) return;

        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;

        _redisFee = 0;
        _taxFee = 0;
    }

    function restoreAllFee() private {
        _redisFee = _previousredisFee;
        _taxFee = _previoustaxFee;
    }

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

        if (from != owner() && to != owner()) {

            //Trade start check
            if (!tradingOpen) {
                require(from == owner(), "TOKEN: This account cannot send tokens until trading is enabled");
            }

            require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
            require(!bots[from] && !bots[to], "TOKEN: Your account is blacklisted!");

            if(to != uniswapV2Pair) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance >= _swapTokensAtAmount;

            if(contractTokenBalance >= _maxTxAmount)
            {
                contractTokenBalance = _maxTxAmount;
            }

            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                swapTokensForEth(contractTokenBalance);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        bool takeFee = true;

        //Transfer Tokens
        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {

            //Set Fee for Buys
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnBuy;
                _taxFee = _taxFeeOnBuy;
            }

            //Set Fee for Sells
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                _redisFee = _redisFeeOnSell;
                _taxFee = _taxFeeOnSell;
            }

        }

        _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 {
        _marketingAddress.transfer(amount);
    }

    function setTrading(bool _tradingOpen) public onlyOwner {
        tradingOpen = _tradingOpen;
    }

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

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

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

    function unblockBot(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 _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _redisFee, _taxFee);
        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 redisFee,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(redisFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).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 setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _redisFeeOnBuy = redisFeeOnBuy;
        _redisFeeOnSell = redisFeeOnSell;
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    //Set minimum tokens required to swap.
    function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) public onlyOwner {
        _swapTokensAtAmount = swapTokensAtAmount;
    }

    //Set minimum tokens required to swap.
    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }

    //Set maximum transaction
    function setMaxTxnAmount(uint256 maxTxAmount) public onlyOwner {
        _maxTxAmount = maxTxAmount;
    }

    function setMaxWalletSize(uint256 maxWalletSize) public onlyOwner {
        _maxWalletSize = maxWalletSize;
    }

    function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner {
        for(uint256 i = 0; i < accounts.length; i++) {
            _isExcludedFromFee[accounts[i]] = excluded;
        }
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":"","type":"address"}],"name":"_buyMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001b680605f9f6c339ff700060001962000367565b62000029906000196200038a565b60065560006008819055600f6009819055600a8290556032600b819055600c839055600d819055600e9290925555601280546001600160a01b03199081167396c8f498a02226fab9bdc9f2ac835ecb81fec9af9081179092556013805490911690911790556015805462ffffff60a01b1916600160b01b179055671ed6eb229a0ee00060168190556017556627796548197000601855348015620000cc57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506006543360009081526002602090815260409182902092909255601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa1580156200018a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b09190620003b2565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002249190620003b2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000272573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002989190620003b2565b601580546001600160a01b0319166001600160a01b03928316179055600080548216815260056020526040808220805460ff1990811660019081179092553084528284208054821683179055601254851684528284208054821683179055601354909416835291208054909216179055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef680605f9f6c339ff70006040516200035891815260200190565b60405180910390a350620003e4565b6000826200038557634e487b7160e01b600052601260045260246000fd5b500690565b81810381811115620003ac57634e487b7160e01b600052601160045260246000fd5b92915050565b600060208284031215620003c557600080fd5b81516001600160a01b0381168114620003dd57600080fd5b9392505050565b61216480620003f46000396000f3fe6080604052600436106101d05760003560e01c80637d1db4a5116100f7578063a2a957bb11610095578063c492f04611610064578063c492f04614610582578063dd62ed3e146105a2578063ea1644d5146105e8578063f2fde38b1461060857600080fd5b8063a2a957bb146104fd578063a9059cbb1461051d578063bfd792841461053d578063c3c8cd801461056d57600080fd5b80638f70ccf7116100d15780638f70ccf7146104615780638f9a55c01461048157806395d89b411461049757806398a5c315146104dd57600080fd5b80637d1db4a5146104005780637f2feddc146104165780638da5cb5b1461044357600080fd5b8063313ce5671161016f5780636fc3eaec1161013e5780636fc3eaec1461039657806370a08231146103ab578063715018a6146103cb57806374010ece146103e057600080fd5b8063313ce5671461031a57806349bd5a5e146103365780636b999053146103565780636d8aa8f81461037657600080fd5b80631694505e116101ab5780631694505e1461028657806318160ddd146102be57806323b872dd146102e45780632fd689e31461030457600080fd5b8062b8cf2a146101dc57806306fdde03146101fe578063095ea7b31461025657600080fd5b366101d757005b600080fd5b3480156101e857600080fd5b506101fc6101f7366004611d04565b610628565b005b34801561020a57600080fd5b5060408051808201909152600b81527f4d656d62657220436f696e00000000000000000000000000000000000000000060208201525b60405161024d9190611dc9565b60405180910390f35b34801561026257600080fd5b50610276610271366004611e17565b6106f3565b604051901515815260200161024d565b34801561029257600080fd5b506014546102a6906001600160a01b031681565b6040516001600160a01b03909116815260200161024d565b3480156102ca57600080fd5b50680605f9f6c339ff70005b60405190815260200161024d565b3480156102f057600080fd5b506102766102ff366004611e43565b61070a565b34801561031057600080fd5b506102d660185481565b34801561032657600080fd5b506040516009815260200161024d565b34801561034257600080fd5b506015546102a6906001600160a01b031681565b34801561036257600080fd5b506101fc610371366004611e84565b610773565b34801561038257600080fd5b506101fc610391366004611eb1565b6107ee565b3480156103a257600080fd5b506101fc610881565b3480156103b757600080fd5b506102d66103c6366004611e84565b6108cc565b3480156103d757600080fd5b506101fc6108ee565b3480156103ec57600080fd5b506101fc6103fb366004611ecc565b61099f565b34801561040c57600080fd5b506102d660165481565b34801561042257600080fd5b506102d6610431366004611e84565b60116020526000908152604090205481565b34801561044f57600080fd5b506000546001600160a01b03166102a6565b34801561046d57600080fd5b506101fc61047c366004611eb1565b6109fe565b34801561048d57600080fd5b506102d660175481565b3480156104a357600080fd5b5060408051808201909152600581527f4d454d42520000000000000000000000000000000000000000000000000000006020820152610240565b3480156104e957600080fd5b506101fc6104f8366004611ecc565b610a91565b34801561050957600080fd5b506101fc610518366004611ee5565b610af0565b34801561052957600080fd5b50610276610538366004611e17565b610b5e565b34801561054957600080fd5b50610276610558366004611e84565b60106020526000908152604090205460ff1681565b34801561057957600080fd5b506101fc610b6b565b34801561058e57600080fd5b506101fc61059d366004611f17565b610bbf565b3480156105ae57600080fd5b506102d66105bd366004611f9b565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105f457600080fd5b506101fc610603366004611ecc565b610c90565b34801561061457600080fd5b506101fc610623366004611e84565b610cef565b6000546001600160a01b031633146106875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b60005b81518110156106ef576001601060008484815181106106ab576106ab611fd4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806106e781612000565b91505061068a565b5050565b6000610700338484610e2d565b5060015b92915050565b6000610717848484610f85565b610769843361076485604051806060016040528060288152602001612107602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061153b565b610e2d565b5060019392505050565b6000546001600160a01b031633146107cd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b031633146108485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60158054911515600160b01b027fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6012546001600160a01b0316336001600160a01b031614806108b657506013546001600160a01b0316336001600160a01b0316145b6108bf57600080fd5b476108c981611575565b50565b6001600160a01b038116600090815260026020526040812054610704906115af565b6000546001600160a01b031633146109485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000546001600160a01b031633146109f95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601655565b6000546001600160a01b03163314610a585760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60158054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601855565b6000546001600160a01b03163314610b4a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b600893909355600a91909155600955600b55565b6000610700338484610f85565b6012546001600160a01b0316336001600160a01b03161480610ba057506013546001600160a01b0316336001600160a01b0316145b610ba957600080fd5b6000610bb4306108cc565b90506108c981611646565b6000546001600160a01b03163314610c195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60005b82811015610c8a578160056000868685818110610c3b57610c3b611fd4565b9050602002016020810190610c509190611e84565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610c8281612000565b915050610c1c565b50505050565b6000546001600160a01b03163314610cea5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601755565b6000546001600160a01b03163314610d495760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161067e565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6001600160a01b038316610ea85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b038216610f245760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110015760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b03821661107d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161067e565b600081116110f35760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f0000000000000000000000000000000000000000000000606482015260840161067e565b6000546001600160a01b0384811691161480159061111f57506000546001600160a01b03838116911614155b1561143457601554600160a01b900460ff166111b8576000546001600160a01b038481169116146111b85760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161067e565b60165481111561120a5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161067e565b6001600160a01b03831660009081526010602052604090205460ff1615801561124c57506001600160a01b03821660009081526010602052604090205460ff16155b6112be5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201527f6564210000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6015546001600160a01b0383811691161461135d57601754816112e0846108cc565b6112ea9190612019565b1061135d5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960448201527f7a65210000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6000611368306108cc565b6018546016549192508210159082106113815760165491505b8080156113985750601554600160a81b900460ff16155b80156113b257506015546001600160a01b03868116911614155b80156113c75750601554600160b01b900460ff165b80156113ec57506001600160a01b03851660009081526005602052604090205460ff16155b801561141157506001600160a01b03841660009081526005602052604090205460ff16155b156114315761141f82611646565b47801561142f5761142f47611575565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061147657506001600160a01b03831660009081526005602052604090205460ff165b806114a857506015546001600160a01b038581169116148015906114a857506015546001600160a01b03848116911614155b156114b55750600061152f565b6015546001600160a01b0385811691161480156114e057506014546001600160a01b03848116911614155b156114f257600854600c55600954600d555b6015546001600160a01b03848116911614801561151d57506014546001600160a01b03858116911614155b1561152f57600a54600c55600b54600d555b610c8a848484846117f2565b6000818484111561155f5760405162461bcd60e51b815260040161067e9190611dc9565b50600061156c848661202c565b95945050505050565b6013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156106ef573d6000803e3d6000fd5b60006006548211156116295760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201527f65666c656374696f6e7300000000000000000000000000000000000000000000606482015260840161067e565b6000611633611820565b905061163f8382611843565b9392505050565b6015805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061168e5761168e611fd4565b6001600160a01b03928316602091820292909201810191909152601454604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa158015611700573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611724919061203f565b8160018151811061173757611737611fd4565b6001600160a01b03928316602091820292909201015260145461175d9130911684610e2d565b6014546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906117af90859060009086903090429060040161205c565b600060405180830381600087803b1580156117c957600080fd5b505af11580156117dd573d6000803e3d6000fd5b50506015805460ff60a81b1916905550505050565b806117ff576117ff611885565b61180a8484846118b3565b80610c8a57610c8a600e54600c55600f54600d55565b600080600061182d6119aa565b909250905061183c8282611843565b9250505090565b600061163f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119ec565b600c541580156118955750600d54155b1561189c57565b600c8054600e55600d8054600f5560009182905555565b6000806000806000806118c587611a1a565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506118f79087611a77565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546119269086611ab9565b6001600160a01b03891660009081526002602052604090205561194881611b18565b6119528483611b62565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161199791815260200190565b60405180910390a3505050505050505050565b6006546000908190680605f9f6c339ff70006119c68282611843565b8210156119e357505060065492680605f9f6c339ff700092509050565b90939092509050565b60008183611a0d5760405162461bcd60e51b815260040161067e9190611dc9565b50600061156c84866120cd565b6000806000806000806000806000611a378a600c54600d54611b86565b9250925092506000611a47611820565b90506000806000611a5a8e878787611bdb565b919e509c509a509598509396509194505050505091939550919395565b600061163f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061153b565b600080611ac68385612019565b90508381101561163f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161067e565b6000611b22611820565b90506000611b308383611c2b565b30600090815260026020526040902054909150611b4d9082611ab9565b30600090815260026020526040902055505050565b600654611b6f9083611a77565b600655600754611b7f9082611ab9565b6007555050565b6000808080611ba06064611b9a8989611c2b565b90611843565b90506000611bb36064611b9a8a89611c2b565b90506000611bcb82611bc58b86611a77565b90611a77565b9992985090965090945050505050565b6000808080611bea8886611c2b565b90506000611bf88887611c2b565b90506000611c068888611c2b565b90506000611c1882611bc58686611a77565b939b939a50919850919650505050505050565b600082600003611c3d57506000610704565b6000611c4983856120ef565b905082611c5685836120cd565b1461163f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f7700000000000000000000000000000000000000000000000000000000000000606482015260840161067e565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146108c957600080fd5b8035611cff81611cdf565b919050565b60006020808385031215611d1757600080fd5b823567ffffffffffffffff80821115611d2f57600080fd5b818501915085601f830112611d4357600080fd5b813581811115611d5557611d55611cc9565b8060051b604051601f19603f83011681018181108582111715611d7a57611d7a611cc9565b604052918252848201925083810185019188831115611d9857600080fd5b938501935b82851015611dbd57611dae85611cf4565b84529385019392850192611d9d565b98975050505050505050565b600060208083528351808285015260005b81811015611df657858101830151858201604001528201611dda565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e2a57600080fd5b8235611e3581611cdf565b946020939093013593505050565b600080600060608486031215611e5857600080fd5b8335611e6381611cdf565b92506020840135611e7381611cdf565b929592945050506040919091013590565b600060208284031215611e9657600080fd5b813561163f81611cdf565b80358015158114611cff57600080fd5b600060208284031215611ec357600080fd5b61163f82611ea1565b600060208284031215611ede57600080fd5b5035919050565b60008060008060808587031215611efb57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060408486031215611f2c57600080fd5b833567ffffffffffffffff80821115611f4457600080fd5b818601915086601f830112611f5857600080fd5b813581811115611f6757600080fd5b8760208260051b8501011115611f7c57600080fd5b602092830195509350611f929186019050611ea1565b90509250925092565b60008060408385031215611fae57600080fd5b8235611fb981611cdf565b91506020830135611fc981611cdf565b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161201257612012611fea565b5060010190565b8082018082111561070457610704611fea565b8181038181111561070457610704611fea565b60006020828403121561205157600080fd5b815161163f81611cdf565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ac5784516001600160a01b031683529383019391830191600101612087565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826120ea57634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761070457610704611fea56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c0c02a4928236a81fbf1777c4aec62522833f3db40d2cac213b559abceaaa19264736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101d05760003560e01c80637d1db4a5116100f7578063a2a957bb11610095578063c492f04611610064578063c492f04614610582578063dd62ed3e146105a2578063ea1644d5146105e8578063f2fde38b1461060857600080fd5b8063a2a957bb146104fd578063a9059cbb1461051d578063bfd792841461053d578063c3c8cd801461056d57600080fd5b80638f70ccf7116100d15780638f70ccf7146104615780638f9a55c01461048157806395d89b411461049757806398a5c315146104dd57600080fd5b80637d1db4a5146104005780637f2feddc146104165780638da5cb5b1461044357600080fd5b8063313ce5671161016f5780636fc3eaec1161013e5780636fc3eaec1461039657806370a08231146103ab578063715018a6146103cb57806374010ece146103e057600080fd5b8063313ce5671461031a57806349bd5a5e146103365780636b999053146103565780636d8aa8f81461037657600080fd5b80631694505e116101ab5780631694505e1461028657806318160ddd146102be57806323b872dd146102e45780632fd689e31461030457600080fd5b8062b8cf2a146101dc57806306fdde03146101fe578063095ea7b31461025657600080fd5b366101d757005b600080fd5b3480156101e857600080fd5b506101fc6101f7366004611d04565b610628565b005b34801561020a57600080fd5b5060408051808201909152600b81527f4d656d62657220436f696e00000000000000000000000000000000000000000060208201525b60405161024d9190611dc9565b60405180910390f35b34801561026257600080fd5b50610276610271366004611e17565b6106f3565b604051901515815260200161024d565b34801561029257600080fd5b506014546102a6906001600160a01b031681565b6040516001600160a01b03909116815260200161024d565b3480156102ca57600080fd5b50680605f9f6c339ff70005b60405190815260200161024d565b3480156102f057600080fd5b506102766102ff366004611e43565b61070a565b34801561031057600080fd5b506102d660185481565b34801561032657600080fd5b506040516009815260200161024d565b34801561034257600080fd5b506015546102a6906001600160a01b031681565b34801561036257600080fd5b506101fc610371366004611e84565b610773565b34801561038257600080fd5b506101fc610391366004611eb1565b6107ee565b3480156103a257600080fd5b506101fc610881565b3480156103b757600080fd5b506102d66103c6366004611e84565b6108cc565b3480156103d757600080fd5b506101fc6108ee565b3480156103ec57600080fd5b506101fc6103fb366004611ecc565b61099f565b34801561040c57600080fd5b506102d660165481565b34801561042257600080fd5b506102d6610431366004611e84565b60116020526000908152604090205481565b34801561044f57600080fd5b506000546001600160a01b03166102a6565b34801561046d57600080fd5b506101fc61047c366004611eb1565b6109fe565b34801561048d57600080fd5b506102d660175481565b3480156104a357600080fd5b5060408051808201909152600581527f4d454d42520000000000000000000000000000000000000000000000000000006020820152610240565b3480156104e957600080fd5b506101fc6104f8366004611ecc565b610a91565b34801561050957600080fd5b506101fc610518366004611ee5565b610af0565b34801561052957600080fd5b50610276610538366004611e17565b610b5e565b34801561054957600080fd5b50610276610558366004611e84565b60106020526000908152604090205460ff1681565b34801561057957600080fd5b506101fc610b6b565b34801561058e57600080fd5b506101fc61059d366004611f17565b610bbf565b3480156105ae57600080fd5b506102d66105bd366004611f9b565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105f457600080fd5b506101fc610603366004611ecc565b610c90565b34801561061457600080fd5b506101fc610623366004611e84565b610cef565b6000546001600160a01b031633146106875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b60005b81518110156106ef576001601060008484815181106106ab576106ab611fd4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806106e781612000565b91505061068a565b5050565b6000610700338484610e2d565b5060015b92915050565b6000610717848484610f85565b610769843361076485604051806060016040528060288152602001612107602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061153b565b610e2d565b5060019392505050565b6000546001600160a01b031633146107cd5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b031633146108485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60158054911515600160b01b027fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6012546001600160a01b0316336001600160a01b031614806108b657506013546001600160a01b0316336001600160a01b0316145b6108bf57600080fd5b476108c981611575565b50565b6001600160a01b038116600090815260026020526040812054610704906115af565b6000546001600160a01b031633146109485760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000546001600160a01b031633146109f95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601655565b6000546001600160a01b03163314610a585760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60158054911515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff909216919091179055565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601855565b6000546001600160a01b03163314610b4a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b600893909355600a91909155600955600b55565b6000610700338484610f85565b6012546001600160a01b0316336001600160a01b03161480610ba057506013546001600160a01b0316336001600160a01b0316145b610ba957600080fd5b6000610bb4306108cc565b90506108c981611646565b6000546001600160a01b03163314610c195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b60005b82811015610c8a578160056000868685818110610c3b57610c3b611fd4565b9050602002016020810190610c509190611e84565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610c8281612000565b915050610c1c565b50505050565b6000546001600160a01b03163314610cea5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b601755565b6000546001600160a01b03163314610d495760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161067e565b6001600160a01b038116610dc55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161067e565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6001600160a01b038316610ea85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b038216610f245760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110015760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161067e565b6001600160a01b03821661107d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f6573730000000000000000000000000000000000000000000000000000000000606482015260840161067e565b600081116110f35760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f0000000000000000000000000000000000000000000000606482015260840161067e565b6000546001600160a01b0384811691161480159061111f57506000546001600160a01b03838116911614155b1561143457601554600160a01b900460ff166111b8576000546001600160a01b038481169116146111b85760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161067e565b60165481111561120a5760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161067e565b6001600160a01b03831660009081526010602052604090205460ff1615801561124c57506001600160a01b03821660009081526010602052604090205460ff16155b6112be5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201527f6564210000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6015546001600160a01b0383811691161461135d57601754816112e0846108cc565b6112ea9190612019565b1061135d5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960448201527f7a65210000000000000000000000000000000000000000000000000000000000606482015260840161067e565b6000611368306108cc565b6018546016549192508210159082106113815760165491505b8080156113985750601554600160a81b900460ff16155b80156113b257506015546001600160a01b03868116911614155b80156113c75750601554600160b01b900460ff165b80156113ec57506001600160a01b03851660009081526005602052604090205460ff16155b801561141157506001600160a01b03841660009081526005602052604090205460ff16155b156114315761141f82611646565b47801561142f5761142f47611575565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061147657506001600160a01b03831660009081526005602052604090205460ff165b806114a857506015546001600160a01b038581169116148015906114a857506015546001600160a01b03848116911614155b156114b55750600061152f565b6015546001600160a01b0385811691161480156114e057506014546001600160a01b03848116911614155b156114f257600854600c55600954600d555b6015546001600160a01b03848116911614801561151d57506014546001600160a01b03858116911614155b1561152f57600a54600c55600b54600d555b610c8a848484846117f2565b6000818484111561155f5760405162461bcd60e51b815260040161067e9190611dc9565b50600061156c848661202c565b95945050505050565b6013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156106ef573d6000803e3d6000fd5b60006006548211156116295760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201527f65666c656374696f6e7300000000000000000000000000000000000000000000606482015260840161067e565b6000611633611820565b905061163f8382611843565b9392505050565b6015805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061168e5761168e611fd4565b6001600160a01b03928316602091820292909201810191909152601454604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa158015611700573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611724919061203f565b8160018151811061173757611737611fd4565b6001600160a01b03928316602091820292909201015260145461175d9130911684610e2d565b6014546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906117af90859060009086903090429060040161205c565b600060405180830381600087803b1580156117c957600080fd5b505af11580156117dd573d6000803e3d6000fd5b50506015805460ff60a81b1916905550505050565b806117ff576117ff611885565b61180a8484846118b3565b80610c8a57610c8a600e54600c55600f54600d55565b600080600061182d6119aa565b909250905061183c8282611843565b9250505090565b600061163f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506119ec565b600c541580156118955750600d54155b1561189c57565b600c8054600e55600d8054600f5560009182905555565b6000806000806000806118c587611a1a565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506118f79087611a77565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546119269086611ab9565b6001600160a01b03891660009081526002602052604090205561194881611b18565b6119528483611b62565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161199791815260200190565b60405180910390a3505050505050505050565b6006546000908190680605f9f6c339ff70006119c68282611843565b8210156119e357505060065492680605f9f6c339ff700092509050565b90939092509050565b60008183611a0d5760405162461bcd60e51b815260040161067e9190611dc9565b50600061156c84866120cd565b6000806000806000806000806000611a378a600c54600d54611b86565b9250925092506000611a47611820565b90506000806000611a5a8e878787611bdb565b919e509c509a509598509396509194505050505091939550919395565b600061163f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061153b565b600080611ac68385612019565b90508381101561163f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161067e565b6000611b22611820565b90506000611b308383611c2b565b30600090815260026020526040902054909150611b4d9082611ab9565b30600090815260026020526040902055505050565b600654611b6f9083611a77565b600655600754611b7f9082611ab9565b6007555050565b6000808080611ba06064611b9a8989611c2b565b90611843565b90506000611bb36064611b9a8a89611c2b565b90506000611bcb82611bc58b86611a77565b90611a77565b9992985090965090945050505050565b6000808080611bea8886611c2b565b90506000611bf88887611c2b565b90506000611c068888611c2b565b90506000611c1882611bc58686611a77565b939b939a50919850919650505050505050565b600082600003611c3d57506000610704565b6000611c4983856120ef565b905082611c5685836120cd565b1461163f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f7700000000000000000000000000000000000000000000000000000000000000606482015260840161067e565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146108c957600080fd5b8035611cff81611cdf565b919050565b60006020808385031215611d1757600080fd5b823567ffffffffffffffff80821115611d2f57600080fd5b818501915085601f830112611d4357600080fd5b813581811115611d5557611d55611cc9565b8060051b604051601f19603f83011681018181108582111715611d7a57611d7a611cc9565b604052918252848201925083810185019188831115611d9857600080fd5b938501935b82851015611dbd57611dae85611cf4565b84529385019392850192611d9d565b98975050505050505050565b600060208083528351808285015260005b81811015611df657858101830151858201604001528201611dda565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e2a57600080fd5b8235611e3581611cdf565b946020939093013593505050565b600080600060608486031215611e5857600080fd5b8335611e6381611cdf565b92506020840135611e7381611cdf565b929592945050506040919091013590565b600060208284031215611e9657600080fd5b813561163f81611cdf565b80358015158114611cff57600080fd5b600060208284031215611ec357600080fd5b61163f82611ea1565b600060208284031215611ede57600080fd5b5035919050565b60008060008060808587031215611efb57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060408486031215611f2c57600080fd5b833567ffffffffffffffff80821115611f4457600080fd5b818601915086601f830112611f5857600080fd5b813581811115611f6757600080fd5b8760208260051b8501011115611f7c57600080fd5b602092830195509350611f929186019050611ea1565b90509250925092565b60008060408385031215611fae57600080fd5b8235611fb981611cdf565b91506020830135611fc981611cdf565b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161201257612012611fea565b5060010190565b8082018082111561070457610704611fea565b8181038181111561070457610704611fea565b60006020828403121561205157600080fd5b815161163f81611cdf565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ac5784516001600160a01b031683529383019391830191600101612087565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826120ea57634e487b7160e01b600052601260045260246000fd5b500490565b808202811582820484141761070457610704611fea56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220c0c02a4928236a81fbf1777c4aec62522833f3db40d2cac213b559abceaaa19264736f6c63430008130033

Deployed Bytecode Sourcemap

6648:13503:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15324:169;;;;;;;;;;-1:-1:-1;15324:169:0;;;;;:::i;:::-;;:::i;:::-;;9152:83;;;;;;;;;;-1:-1:-1;9222:5:0;;;;;;;;;;;;;;;;;9152:83;;;;;;;:::i;:::-;;;;;;;;10077:193;;;;;;;;;;-1:-1:-1;10077:193:0;;;;;:::i;:::-;;:::i;:::-;;;2665:14:1;;2658:22;2640:41;;2628:2;2613:18;10077:193:0;2500:187:1;7992:41:0;;;;;;;;;;-1:-1:-1;7992:41:0;;;;-1:-1:-1;;;;;7992:41:0;;;;;;-1:-1:-1;;;;;2882:55:1;;;2864:74;;2852:2;2837:18;7992:41:0;2692:252:1;9429:95:0;;;;;;;;;;-1:-1:-1;7196:18:0;9429:95;;;3095:25:1;;;3083:2;3068:18;9429:95:0;2949:177:1;10278:446:0;;;;;;;;;;-1:-1:-1;10278:446:0;;;;;:::i;:::-;;:::i;8298:51::-;;;;;;;;;;;;;;;;9338:83;;;;;;;;;;-1:-1:-1;9338:83:0;;6870:1;3734:36:1;;3722:2;3707:18;9338:83:0;3592:184:1;8040:28:0;;;;;;;;;;-1:-1:-1;8040:28:0;;;;-1:-1:-1;;;;;8040:28:0;;;15501:92;;;;;;;;;;-1:-1:-1;15501:92:0;;;;;:::i;:::-;;:::i;19533:101::-;;;;;;;;;;-1:-1:-1;19533:101:0;;;;;:::i;:::-;;:::i;15081:235::-;;;;;;;;;;;;;:::i;9532:138::-;;;;;;;;;;-1:-1:-1;9532:138:0;;;;;:::i;:::-;;:::i;4135:148::-;;;;;;;;;;;;;:::i;19673:108::-;;;;;;;;;;-1:-1:-1;19673:108:0;;;;;:::i;:::-;;:::i;8190:46::-;;;;;;;;;;;;;;;;7734:43;;;;;;;;;;-1:-1:-1;7734:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;3921:79;;;;;;;;;;-1:-1:-1;3959:7:0;3986:6;-1:-1:-1;;;;;3986:6:0;3921:79;;14728:101;;;;;;;;;;-1:-1:-1;14728:101:0;;;;;:::i;:::-;;:::i;8243:48::-;;;;;;;;;;;;;;;;9243:87;;;;;;;;;;-1:-1:-1;9315:7:0;;;;;;;;;;;;;;;;;9243:87;;19342:139;;;;;;;;;;-1:-1:-1;19342:139:0;;;;;:::i;:::-;;:::i;18999:291::-;;;;;;;;;;-1:-1:-1;18999:291:0;;;;;:::i;:::-;;:::i;9678:199::-;;;;;;;;;;-1:-1:-1;9678:199:0;;;;;:::i;:::-;;:::i;7696:36::-;;;;;;;;;;-1:-1:-1;7696:36:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14837:236;;;;;;;;;;;;;:::i;19912:234::-;;;;;;;;;;-1:-1:-1;19912:234:0;;;;;:::i;:::-;;:::i;9885:184::-;;;;;;;;;;-1:-1:-1;9885:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;10034:18:0;;;10002:7;10034:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;9885:184;19789:115;;;;;;;;;;-1:-1:-1;19789:115:0;;;;;:::i;:::-;;:::i;4291:244::-;;;;;;;;;;-1:-1:-1;4291:244:0;;;;;:::i;:::-;;:::i;15324:169::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;;;;;;;;;15400:9:::1;15395:91;15419:5;:12;15415:1;:16;15395:91;;;15470:4;15453;:14;15458:5;15464:1;15458:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;15453:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;15453:14:0;:21;;-1:-1:-1;;15453:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15433:3;::::1;::::0;::::1;:::i;:::-;;;;15395:91;;;;15324:169:::0;:::o;10077:193::-;10179:4;10201:39;2760:10;10224:7;10233:6;10201:8;:39::i;:::-;-1:-1:-1;10258:4:0;10077:193;;;;;:::o;10278:446::-;10410:4;10427:36;10437:6;10445:9;10456:6;10427:9;:36::i;:::-;10474:220;10497:6;2760:10;10545:138;10601:6;10545:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10545:19:0;;;;;;:11;:19;;;;;;;;2760:10;10545:33;;;;;;;;;;:37;:138::i;:::-;10474:8;:220::i;:::-;-1:-1:-1;10712:4:0;10278:446;;;;;:::o;15501:92::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;-1:-1:-1;;;;;15565:12:0::1;15580:5;15565:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;15565:20:0::1;::::0;;15501:92::o;19533:101::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;19600:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;19600:26:0::1;::::0;;;::::1;::::0;;;::::1;::::0;;19533:101::o;15081:235::-;15147:19;;-1:-1:-1;;;;;15147:19:0;2760:10;-1:-1:-1;;;;;15131:35:0;;:72;;;-1:-1:-1;15186:17:0;;-1:-1:-1;;;;;15186:17:0;2760:10;-1:-1:-1;;;;;15170:33:0;;15131:72;15123:81;;;;;;15244:21;15276:32;15244:21;15276:12;:32::i;:::-;15112:204;15081:235::o;9532:138::-;-1:-1:-1;;;;;9645:16:0;;9598:7;9645:16;;;:7;:16;;;;;;9625:37;;:19;:37::i;4135:148::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;4242:1:::1;4226:6:::0;;4205:40:::1;::::0;-1:-1:-1;;;;;4226:6:0;;::::1;::::0;4205:40:::1;::::0;4242:1;;4205:40:::1;4273:1;4256:19:::0;;-1:-1:-1;;4256:19:0::1;::::0;;4135:148::o;19673:108::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;19747:12:::1;:26:::0;19673:108::o;14728:101::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;14795:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;14795:26:0::1;::::0;;;::::1;::::0;;;::::1;::::0;;14728:101::o;19342:139::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;19433:19:::1;:40:::0;19342:139::o;18999:291::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;19133:14:::1;:30:::0;;;;19174:15:::1;:32:::0;;;;19217:12:::1;:26:::0;19254:13:::1;:28:::0;18999:291::o;9678:199::-;9783:4;9805:42;2760:10;9829:9;9840:6;9805:9;:42::i;14837:236::-;14903:19;;-1:-1:-1;;;;;14903:19:0;2760:10;-1:-1:-1;;;;;14887:35:0;;:72;;;-1:-1:-1;14942:17:0;;-1:-1:-1;;;;;14942:17:0;2760:10;-1:-1:-1;;;;;14926:33:0;;14887:72;14879:81;;;;;;14971:23;14997:24;15015:4;14997:9;:24::i;:::-;14971:50;;15032:33;15049:15;15032:16;:33::i;19912:234::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;20029:9:::1;20025:114;20044:19:::0;;::::1;20025:114;;;20119:8;20085:18;:31;20104:8;;20113:1;20104:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;20085:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;20085:31:0;:42;;-1:-1:-1;;20085:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;20065:3;::::1;::::0;::::1;:::i;:::-;;;;20025:114;;;;19912:234:::0;;;:::o;19789:115::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;19866:14:::1;:30:::0;19789:115::o;4291:244::-;4048:6;;-1:-1:-1;;;;;4048:6:0;2760:10;4048:22;4040:67;;;;-1:-1:-1;;;4040:67:0;;6478:2:1;4040:67:0;;;6460:21:1;;;6497:18;;;6490:30;6556:34;6536:18;;;6529:62;6608:18;;4040:67:0;6276:356:1;4040:67:0;-1:-1:-1;;;;;4380:22:0;::::1;4372:73;;;::::0;-1:-1:-1;;;4372:73:0;;7357:2:1;4372:73:0::1;::::0;::::1;7339:21:1::0;7396:2;7376:18;;;7369:30;7435:34;7415:18;;;7408:62;7506:8;7486:18;;;7479:36;7532:19;;4372:73:0::1;7155:402:1::0;4372:73:0::1;4482:6;::::0;;4461:38:::1;::::0;-1:-1:-1;;;;;4461:38:0;;::::1;::::0;4482:6;::::1;::::0;4461:38:::1;::::0;::::1;4510:6;:17:::0;;-1:-1:-1;;4510:17:0::1;-1:-1:-1::0;;;;;4510:17:0;;;::::1;::::0;;;::::1;::::0;;4291:244::o;11415:369::-;-1:-1:-1;;;;;11542:19:0;;11534:68;;;;-1:-1:-1;;;11534:68:0;;7764:2:1;11534:68:0;;;7746:21:1;7803:2;7783:18;;;7776:30;7842:34;7822:18;;;7815:62;7913:6;7893:18;;;7886:34;7937:19;;11534:68:0;7562:400:1;11534:68:0;-1:-1:-1;;;;;11621:21:0;;11613:68;;;;-1:-1:-1;;;11613:68:0;;8169:2:1;11613:68:0;;;8151:21:1;8208:2;8188:18;;;8181:30;8247:34;8227:18;;;8220:62;8318:4;8298:18;;;8291:32;8340:19;;11613:68:0;7967:398:1;11613:68:0;-1:-1:-1;;;;;11692:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11744:32;;3095:25:1;;;11744:32:0;;3068:18:1;11744:32:0;;;;;;;11415:369;;;:::o;11792:2330::-;-1:-1:-1;;;;;11914:18:0;;11906:68;;;;-1:-1:-1;;;11906:68:0;;8572:2:1;11906:68:0;;;8554:21:1;8611:2;8591:18;;;8584:30;8650:34;8630:18;;;8623:62;8721:7;8701:18;;;8694:35;8746:19;;11906:68:0;8370:401:1;11906:68:0;-1:-1:-1;;;;;11993:16:0;;11985:64;;;;-1:-1:-1;;;11985:64:0;;8978:2:1;11985:64:0;;;8960:21:1;9017:2;8997:18;;;8990:30;9056:34;9036:18;;;9029:62;9127:5;9107:18;;;9100:33;9150:19;;11985:64:0;8776:399:1;11985:64:0;12077:1;12068:6;:10;12060:64;;;;-1:-1:-1;;;12060:64:0;;9382:2:1;12060:64:0;;;9364:21:1;9421:2;9401:18;;;9394:30;9460:34;9440:18;;;9433:62;9531:11;9511:18;;;9504:39;9560:19;;12060:64:0;9180:405:1;12060:64:0;3959:7;3986:6;-1:-1:-1;;;;;12141:15:0;;;3986:6;;12141:15;;;;:32;;-1:-1:-1;3959:7:0;3986:6;-1:-1:-1;;;;;12160:13:0;;;3986:6;;12160:13;;12141:32;12137:1259;;;12230:11;;-1:-1:-1;;;12230:11:0;;;;12225:144;;3959:7;3986:6;-1:-1:-1;;;;;12270:15:0;;;3986:6;;12270:15;12262:91;;;;-1:-1:-1;;;12262:91:0;;9792:2:1;12262:91:0;;;9774:21:1;9831:2;9811:18;;;9804:30;9870:34;9850:18;;;9843:62;9941:33;9921:18;;;9914:61;9992:19;;12262:91:0;9590:427:1;12262:91:0;12403:12;;12393:6;:22;;12385:63;;;;-1:-1:-1;;;12385:63:0;;10224:2:1;12385:63:0;;;10206:21:1;10263:2;10243:18;;;10236:30;10302;10282:18;;;10275:58;10350:18;;12385:63:0;10022:352:1;12385:63:0;-1:-1:-1;;;;;12472:10:0;;;;;;:4;:10;;;;;;;;12471:11;:24;;;;-1:-1:-1;;;;;;12487:8:0;;;;;;:4;:8;;;;;;;;12486:9;12471:24;12463:72;;;;-1:-1:-1;;;12463:72:0;;10581:2:1;12463:72:0;;;10563:21:1;10620:2;10600:18;;;10593:30;10659:34;10639:18;;;10632:62;10730:5;10710:18;;;10703:33;10753:19;;12463:72:0;10379:399:1;12463:72:0;12561:13;;-1:-1:-1;;;;;12555:19:0;;;12561:13;;12555:19;12552:146;;12628:14;;12619:6;12603:13;12613:2;12603:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12595:87;;;;-1:-1:-1;;;12595:87:0;;11115:2:1;12595:87:0;;;11097:21:1;11154:2;11134:18;;;11127:30;11193:34;11173:18;;;11166:62;11264:5;11244:18;;;11237:33;11287:19;;12595:87:0;10913:399:1;12595:87:0;12714:28;12745:24;12763:4;12745:9;:24::i;:::-;12823:19;;12886:12;;12714:55;;-1:-1:-1;12799:43:0;;;;12862:36;;12859:124;;12955:12;;12932:35;;12859:124;13003:7;:18;;;;-1:-1:-1;13015:6:0;;-1:-1:-1;;;13015:6:0;;;;13014:7;13003:18;:43;;;;-1:-1:-1;13033:13:0;;-1:-1:-1;;;;;13025:21:0;;;13033:13;;13025:21;;13003:43;:58;;;;-1:-1:-1;13050:11:0;;-1:-1:-1;;;13050:11:0;;;;13003:58;:87;;;;-1:-1:-1;;;;;;13066:24:0;;;;;;:18;:24;;;;;;;;13065:25;13003:87;:114;;;;-1:-1:-1;;;;;;13095:22:0;;;;;;:18;:22;;;;;;;;13094:23;13003:114;12999:386;;;13138:38;13155:20;13138:16;:38::i;:::-;13224:21;13268:22;;13264:106;;13315:35;13328:21;13315:12;:35::i;:::-;13119:266;12999:386;12175:1221;;12137:1259;-1:-1:-1;;;;;13472:24:0;;13408:12;13472:24;;;:18;:24;;;;;;13423:4;;13472:24;;;:50;;-1:-1:-1;;;;;;13500:22:0;;;;;;:18;:22;;;;;;;;13472:50;13471:102;;;-1:-1:-1;13536:13:0;;-1:-1:-1;;;;;13528:21:0;;;13536:13;;13528:21;;;;:44;;-1:-1:-1;13559:13:0;;-1:-1:-1;;;;;13553:19:0;;;13559:13;;13553:19;;13528:44;13467:594;;;-1:-1:-1;13600:5:0;13467:594;;;13683:13;;-1:-1:-1;;;;;13675:21:0;;;13683:13;;13675:21;:55;;;;-1:-1:-1;13714:15:0;;-1:-1:-1;;;;;13700:30:0;;;13714:15;;13700:30;;13675:55;13672:162;;;13763:14;;13751:9;:26;13806:12;;13796:7;:22;13672:162;13893:13;;-1:-1:-1;;;;;13887:19:0;;;13893:13;;13887:19;:55;;;;-1:-1:-1;13926:15:0;;-1:-1:-1;;;;;13910:32:0;;;13926:15;;13910:32;;13887:55;13883:165;;;13975:15;;13963:9;:27;14019:13;;14009:7;:23;13883:165;14073:41;14088:4;14094:2;14098:6;14106:7;14073:14;:41::i;4899:224::-;5019:7;5055:12;5047:6;;;;5039:29;;;;-1:-1:-1;;;5039:29:0;;;;;;;;:::i;:::-;-1:-1:-1;5079:9:0;5091:5;5095:1;5091;:5;:::i;:::-;5079:17;4899:224;-1:-1:-1;;;;;4899:224:0:o;14621:99::-;14678:17;;:34;;-1:-1:-1;;;;;14678:17:0;;;;:34;;;;;14705:6;;14678:17;:34;:17;:34;14705:6;14678:17;:34;;;;;;;;;;;;;;;;;;;10732:323;10827:7;10885;;10874;:18;;10852:110;;;;-1:-1:-1;;;10852:110:0;;11652:2:1;10852:110:0;;;11634:21:1;11691:2;11671:18;;;11664:30;11730:34;11710:18;;;11703:62;11801:12;11781:18;;;11774:40;11831:19;;10852:110:0;11450:406:1;10852:110:0;10973:19;10995:10;:8;:10::i;:::-;10973:32;-1:-1:-1;11023:24:0;:7;10973:32;11023:11;:24::i;:::-;11016:31;10732:323;-1:-1:-1;;;10732:323:0:o;14130:483::-;8444:6;:13;;-1:-1:-1;;;;8444:13:0;-1:-1:-1;;;8444:13:0;;;14232:16:::1;::::0;;14246:1:::1;14232:16:::0;;;;;::::1;::::0;;-1:-1:-1;;14232:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14232:16:0::1;14208:40;;14277:4;14259;14264:1;14259:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14259:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;14303:15:::1;::::0;:22:::1;::::0;;;;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;14259:7;;14303:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14293:4;14298:1;14293:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14293:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;14368:15:::1;::::0;14336:62:::1;::::0;14353:4:::1;::::0;14368:15:::1;14386:11:::0;14336:8:::1;:62::i;:::-;14409:15;::::0;:196:::1;::::0;;;;-1:-1:-1;;;;;14409:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;14490:11;;14409:15:::1;::::0;14532:4;;14559::::1;::::0;14579:15:::1;::::0;14409:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;8480:6:0;:14;;-1:-1:-1;;;;8480:14:0;;;-1:-1:-1;;;;14130:483:0:o;15601:282::-;15757:7;15752:28;;15766:14;:12;:14::i;:::-;15791:44;15809:6;15817:9;15828:6;15791:17;:44::i;:::-;15851:7;15846:29;;15860:15;11346:17;;11334:9;:29;11384:15;;11374:7;:25;11290:117;18562:164;18604:7;18625:15;18642;18661:19;:17;:19::i;:::-;18624:56;;-1:-1:-1;18624:56:0;-1:-1:-1;18698:20:0;18624:56;;18698:11;:20::i;:::-;18691:27;;;;18562:164;:::o;5385:132::-;5443:7;5470:39;5474:1;5477;5470:39;;;;;;;;;;;;;;;;;:3;:39::i;11063:219::-;11110:9;;:14;:30;;;;-1:-1:-1;11128:7:0;;:12;11110:30;11106:43;;;11063:219::o;11106:43::-;11181:9;;;11161:17;:29;11219:7;;;11201:15;:25;-1:-1:-1;11239:13:0;;;;11263:11;11063:219::o;15891:610::-;16038:15;16068:23;16106:12;16133:23;16171:12;16198:13;16225:19;16236:7;16225:10;:19::i;:::-;-1:-1:-1;;;;;16273:15:0;;;;;;:7;:15;;;;;;16023:221;;-1:-1:-1;16023:221:0;;-1:-1:-1;16023:221:0;;-1:-1:-1;16023:221:0;-1:-1:-1;16023:221:0;-1:-1:-1;16023:221:0;-1:-1:-1;16273:28:0;;16023:221;16273:19;:28::i;:::-;-1:-1:-1;;;;;16255:15:0;;;;;;;:7;:15;;;;;;:46;;;;16333:18;;;;;;;:39;;16356:15;16333:22;:39::i;:::-;-1:-1:-1;;;;;16312:18:0;;;;;;:7;:18;;;;;:60;16383:16;16393:5;16383:9;:16::i;:::-;16410:23;16422:4;16428;16410:11;:23::i;:::-;16466:9;-1:-1:-1;;;;;16449:44:0;16458:6;-1:-1:-1;;;;;16449:44:0;;16477:15;16449:44;;;;3095:25:1;;3083:2;3068:18;;2949:177;16449:44:0;;;;;;;;16012:489;;;;;;15891:610;;;:::o;18734:257::-;18832:7;;18785;;;;7196:18;18900:20;18832:7;7196:18;18900:11;:20::i;:::-;18890:7;:30;18886:61;;;-1:-1:-1;;18930:7:0;;;7196:18;;-1:-1:-1;18734:257:0;-1:-1:-1;18734:257:0:o;18886:61::-;18966:7;;18975;;-1:-1:-1;18734:257:0;-1:-1:-1;18734:257:0:o;5525:223::-;5645:7;5680:12;5673:5;5665:28;;;;-1:-1:-1;;;5665:28:0;;;;;;;;:::i;:::-;-1:-1:-1;5704:9:0;5716:5;5720:1;5716;:5;:::i;16920:615::-;17020:7;17042;17064;17086;17108;17130;17166:23;17191:12;17205:13;17235:40;17247:7;17256:9;;17267:7;;17235:11;:40::i;:::-;17165:110;;;;;;17286:19;17308:10;:8;:10::i;:::-;17286:32;;17330:15;17347:23;17372:12;17401:46;17413:7;17422:4;17428:5;17435:11;17401;:46::i;:::-;17329:118;;-1:-1:-1;17329:118:0;-1:-1:-1;17329:118:0;-1:-1:-1;17498:15:0;;-1:-1:-1;17515:4:0;;-1:-1:-1;17521:5:0;;-1:-1:-1;;;;;16920:615:0;;;;;;;:::o;4755:136::-;4813:7;4840:43;4844:1;4847;4840:43;;;;;;;;;;;;;;;;;:3;:43::i;4568:179::-;4626:7;;4658:5;4662:1;4658;:5;:::i;:::-;4646:17;;4687:1;4682;:6;;4674:46;;;;-1:-1:-1;;;4674:46:0;;13629:2:1;4674:46:0;;;13611:21:1;13668:2;13648:18;;;13641:30;13707:29;13687:18;;;13680:57;13754:18;;4674:46:0;13427:351:1;16509:211:0;16562:19;16584:10;:8;:10::i;:::-;16562:32;-1:-1:-1;16605:13:0;16621:22;:5;16562:32;16621:9;:22::i;:::-;16695:4;16679:22;;;;:7;:22;;;;;;16605:38;;-1:-1:-1;16679:33:0;;16605:38;16679:26;:33::i;:::-;16670:4;16654:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;16509:211:0:o;16728:147::-;16806:7;;:17;;16818:4;16806:11;:17::i;:::-;16796:7;:27;16847:10;;:20;;16862:4;16847:14;:20::i;:::-;16834:10;:33;-1:-1:-1;;16728:147:0:o;17543:469::-;17712:7;;;;17806:30;17832:3;17806:21;:7;17818:8;17806:11;:21::i;:::-;:25;;:30::i;:::-;17791:45;-1:-1:-1;17847:13:0;17863:28;17887:3;17863:19;:7;17875:6;17863:11;:19::i;:28::-;17847:44;-1:-1:-1;17902:23:0;17928:28;17847:44;17928:17;:7;17940:4;17928:11;:17::i;:::-;:21;;:28::i;:::-;17902:54;17992:4;;-1:-1:-1;17998:5:0;;-1:-1:-1;17543:469:0;;-1:-1:-1;;;;;17543:469:0:o;18020:534::-;18214:7;;;;18311:24;:7;18323:11;18311;:24::i;:::-;18293:42;-1:-1:-1;18346:12:0;18361:21;:4;18370:11;18361:8;:21::i;:::-;18346:36;-1:-1:-1;18393:13:0;18409:22;:5;18419:11;18409:9;:22::i;:::-;18393:38;-1:-1:-1;18442:23:0;18468:28;18393:38;18468:17;:7;18480:4;18468:11;:17::i;:28::-;18515:7;;;;-1:-1:-1;18541:4:0;;-1:-1:-1;18020:534:0;;-1:-1:-1;;;;;;;18020:534:0:o;5131:246::-;5189:7;5213:1;5218;5213:6;5209:47;;-1:-1:-1;5243:1:0;5236:8;;5209:47;5266:9;5278:5;5282:1;5278;:5;:::i;:::-;5266:17;-1:-1:-1;5311:1:0;5302:5;5306:1;5266:17;5302:5;:::i;:::-;:10;5294:56;;;;-1:-1:-1;;;5294:56:0;;14158:2:1;5294:56:0;;;14140:21:1;14197:2;14177:18;;;14170:30;14236:34;14216:18;;;14209:62;14307:3;14287:18;;;14280:31;14328:19;;5294:56:0;13956:397:1;14:184;-1:-1:-1;;;63:1:1;56:88;163:4;160:1;153:15;187:4;184:1;177:15;203:154;-1:-1:-1;;;;;282:5:1;278:54;271:5;268:65;258:93;;347:1;344;337:12;362:134;430:20;;459:31;430:20;459:31;:::i;:::-;362:134;;;:::o;501:1121::-;585:6;616:2;659;647:9;638:7;634:23;630:32;627:52;;;675:1;672;665:12;627:52;715:9;702:23;744:18;785:2;777:6;774:14;771:34;;;801:1;798;791:12;771:34;839:6;828:9;824:22;814:32;;884:7;877:4;873:2;869:13;865:27;855:55;;906:1;903;896:12;855:55;942:2;929:16;964:2;960;957:10;954:36;;;970:18;;:::i;:::-;1016:2;1013:1;1009:10;1048:2;1042:9;1111:2;1107:7;1102:2;1098;1094:11;1090:25;1082:6;1078:38;1166:6;1154:10;1151:22;1146:2;1134:10;1131:18;1128:46;1125:72;;;1177:18;;:::i;:::-;1213:2;1206:22;1263:18;;;1297:15;;;;-1:-1:-1;1339:11:1;;;1335:20;;;1367:19;;;1364:39;;;1399:1;1396;1389:12;1364:39;1423:11;;;;1443:148;1459:6;1454:3;1451:15;1443:148;;;1525:23;1544:3;1525:23;:::i;:::-;1513:36;;1476:12;;;;1569;;;;1443:148;;;1610:6;501:1121;-1:-1:-1;;;;;;;;501:1121:1:o;1627:548::-;1739:4;1768:2;1797;1786:9;1779:21;1829:6;1823:13;1872:6;1867:2;1856:9;1852:18;1845:34;1897:1;1907:140;1921:6;1918:1;1915:13;1907:140;;;2016:14;;;2012:23;;2006:30;1982:17;;;2001:2;1978:26;1971:66;1936:10;;1907:140;;;1911:3;2096:1;2091:2;2082:6;2071:9;2067:22;2063:31;2056:42;2166:2;2159;2155:7;2150:2;2142:6;2138:15;2134:29;2123:9;2119:45;2115:54;2107:62;;;;1627:548;;;;:::o;2180:315::-;2248:6;2256;2309:2;2297:9;2288:7;2284:23;2280:32;2277:52;;;2325:1;2322;2315:12;2277:52;2364:9;2351:23;2383:31;2408:5;2383:31;:::i;:::-;2433:5;2485:2;2470:18;;;;2457:32;;-1:-1:-1;;;2180:315:1:o;3131:456::-;3208:6;3216;3224;3277:2;3265:9;3256:7;3252:23;3248:32;3245:52;;;3293:1;3290;3283:12;3245:52;3332:9;3319:23;3351:31;3376:5;3351:31;:::i;:::-;3401:5;-1:-1:-1;3458:2:1;3443:18;;3430:32;3471:33;3430:32;3471:33;:::i;:::-;3131:456;;3523:7;;-1:-1:-1;;;3577:2:1;3562:18;;;;3549:32;;3131:456::o;4012:247::-;4071:6;4124:2;4112:9;4103:7;4099:23;4095:32;4092:52;;;4140:1;4137;4130:12;4092:52;4179:9;4166:23;4198:31;4223:5;4198:31;:::i;4264:160::-;4329:20;;4385:13;;4378:21;4368:32;;4358:60;;4414:1;4411;4404:12;4429:180;4485:6;4538:2;4526:9;4517:7;4513:23;4509:32;4506:52;;;4554:1;4551;4544:12;4506:52;4577:26;4593:9;4577:26;:::i;4614:180::-;4673:6;4726:2;4714:9;4705:7;4701:23;4697:32;4694:52;;;4742:1;4739;4732:12;4694:52;-1:-1:-1;4765:23:1;;4614:180;-1:-1:-1;4614:180:1:o;4799:385::-;4885:6;4893;4901;4909;4962:3;4950:9;4941:7;4937:23;4933:33;4930:53;;;4979:1;4976;4969:12;4930:53;-1:-1:-1;;5002:23:1;;;5072:2;5057:18;;5044:32;;-1:-1:-1;5123:2:1;5108:18;;5095:32;;5174:2;5159:18;5146:32;;-1:-1:-1;4799:385:1;-1:-1:-1;4799:385:1:o;5189:689::-;5281:6;5289;5297;5350:2;5338:9;5329:7;5325:23;5321:32;5318:52;;;5366:1;5363;5356:12;5318:52;5406:9;5393:23;5435:18;5476:2;5468:6;5465:14;5462:34;;;5492:1;5489;5482:12;5462:34;5530:6;5519:9;5515:22;5505:32;;5575:7;5568:4;5564:2;5560:13;5556:27;5546:55;;5597:1;5594;5587:12;5546:55;5637:2;5624:16;5663:2;5655:6;5652:14;5649:34;;;5679:1;5676;5669:12;5649:34;5734:7;5727:4;5717:6;5714:1;5710:14;5706:2;5702:23;5698:34;5695:47;5692:67;;;5755:1;5752;5745:12;5692:67;5786:4;5778:13;;;;-1:-1:-1;5810:6:1;-1:-1:-1;5835:37:1;;5851:20;;;-1:-1:-1;5835:37:1;:::i;:::-;5825:47;;5189:689;;;;;:::o;5883:388::-;5951:6;5959;6012:2;6000:9;5991:7;5987:23;5983:32;5980:52;;;6028:1;6025;6018:12;5980:52;6067:9;6054:23;6086:31;6111:5;6086:31;:::i;:::-;6136:5;-1:-1:-1;6193:2:1;6178:18;;6165:32;6206:33;6165:32;6206:33;:::i;:::-;6258:7;6248:17;;;5883:388;;;;;:::o;6637:184::-;-1:-1:-1;;;6686:1:1;6679:88;6786:4;6783:1;6776:15;6810:4;6807:1;6800:15;6826:184;-1:-1:-1;;;6875:1:1;6868:88;6975:4;6972:1;6965:15;6999:4;6996:1;6989:15;7015:135;7054:3;7075:17;;;7072:43;;7095:18;;:::i;:::-;-1:-1:-1;7142:1:1;7131:13;;7015:135::o;10783:125::-;10848:9;;;10869:10;;;10866:36;;;10882:18;;:::i;11317:128::-;11384:9;;;11405:11;;;11402:37;;;11419:18;;:::i;11861:251::-;11931:6;11984:2;11972:9;11963:7;11959:23;11955:32;11952:52;;;12000:1;11997;11990:12;11952:52;12032:9;12026:16;12051:31;12076:5;12051:31;:::i;12117:1026::-;12379:4;12427:3;12416:9;12412:19;12458:6;12447:9;12440:25;12484:2;12522:6;12517:2;12506:9;12502:18;12495:34;12565:3;12560:2;12549:9;12545:18;12538:31;12589:6;12624;12618:13;12655:6;12647;12640:22;12693:3;12682:9;12678:19;12671:26;;12732:2;12724:6;12720:15;12706:29;;12753:1;12763:218;12777:6;12774:1;12771:13;12763:218;;;12842:13;;-1:-1:-1;;;;;12838:62:1;12826:75;;12956:15;;;;12921:12;;;;12799:1;12792:9;12763:218;;;-1:-1:-1;;;;;;;13037:55:1;;;;13032:2;13017:18;;13010:83;-1:-1:-1;;;13124:3:1;13109:19;13102:35;12998:3;12117:1026;-1:-1:-1;;;12117:1026:1:o;13148:274::-;13188:1;13214;13204:189;;-1:-1:-1;;;13246:1:1;13239:88;13350:4;13347:1;13340:15;13378:4;13375:1;13368:15;13204:189;-1:-1:-1;13407:9:1;;13148:274::o;13783:168::-;13856:9;;;13887;;13904:15;;;13898:22;;13884:37;13874:71;;13925:18;;:::i

Swarm Source

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