ETH Price: $3,356.97 (+0.97%)

Token

Monster (METH)
 

Overview

Max Total Supply

100,000,000 METH

Holders

57

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
47,333.652653124 METH

Value
$0.00
0x4badd606278b132961316eb129b8249407e46779
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:
Token

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-02-16
*/

/**
           Tokens Telegram --> https://t.me/monsterERC20 4% Tax. 
           
           Owners personal chat for larp -> https://t.me/jeetkiller
*/



pragma solidity  0.8.0;
// SPDX-License-Identifier: Unlicensed


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 Token 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 _isExcluded;
    mapping (address => bool) private _isBlacklisted;

    address[] private _excluded;  
    bool public tradingLive = false;
   
    uint256 private constant MAX = ~uint256(0);
    uint256 private _tTotal = 100000000 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;


    string private _name = "Monster";
    string private _symbol = "METH";
    uint8 private _decimals = 9;
    
    address payable private _marketingWallet;
    address private _burnWallet = 0x000000000000000000000000000000000000dEaD;

    uint256 public launchBlock;
    uint256 public _taxFee = 1; 
    uint256 public _liquidityMarketingFee = 4; // 1% Liquidity, 3% Marketing
    uint256 private _previousTaxFee = _taxFee;
    uint256 private _totalFees = _liquidityMarketingFee;

    IUniswapV2Router02 public immutable uniswapV2Router;
    address public immutable uniswapV2Pair;
    
    bool inSwapAndLiquify;
    bool public swapAndLiquifyEnabled = true;
    bool public antiBotLaunch = true;
    
    uint256 public _maxTxAmount = _tTotal.mul(1).div(100); // 1% max transaction
    uint256 public _maxHoldings = _tTotal.mul(1).div(100); // 1% max wallet
    bool public maxHoldingsEnabled = true;
    bool public maxTXEnabled = true;
    bool public antiSnipe = true;
    uint256 public _routermax = 5000000000 * 10**9;
    
    event MinTokensBeforeSwapUpdated(uint256 minTokensBeforeSwap);
    event SwapAndLiquifyEnabledUpdated(bool enabled);
    event SwapAndLiquify(
        uint256 tokensSwapped,
        uint256 ethReceived,
        uint256 tokensIntoLiqudity
    );
    
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }
    
    constructor (address payable _marketingAddress) {
        _rOwned[_msgSender()] = _rTotal;

        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); //Uni V2
         // Create a uniswap pair for this new token
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH());

        // set the rest of the contract variables
        uniswapV2Router = _uniswapV2Router;
        
        //exclude owner and this contract from fee
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;

        _marketingWallet = _marketingAddress;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

    function balanceOf(address account) public view override returns (uint256) {
        if (_isExcluded[account]) return _tOwned[account];
        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 increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function isExcludedFromReward(address account) public view returns (bool) {
        return _isExcluded[account];
    }

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

    function excludeFromReward(address account) external onlyOwner() {
        // require(account != 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, 'We can not exclude Uniswap router.');
        require(!_isExcluded[account], "Account is already excluded");
        if(_rOwned[account] > 0) {
            _tOwned[account] = tokenFromReflection(_rOwned[account]);
        }
        _isExcluded[account] = true;
        _excluded.push(account);
    }

    function includeInReward(address account) external onlyOwner() {
        require(_isExcluded[account], "Account is already excluded");
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_excluded[i] == account) {
                _excluded[i] = _excluded[_excluded.length - 1];
                _tOwned[account] = 0;
                _isExcluded[account] = false;
                _excluded.pop();
                break;
            }
        }
    }    
    
    function excludeFromFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = true;
    }
    
    function includeInFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = false;
    }

    function setMarketingWallet(address payable _address) external onlyOwner {
        _marketingWallet = _address;
    }
    
    function setMaxTxAmount(uint256 maxTxAmount) external onlyOwner() {
        _maxTxAmount = maxTxAmount * 10**9;
    }

    function setMaxHoldings(uint256 maxHoldings) external onlyOwner() {
        _maxHoldings = maxHoldings * 10**9;
    }
    function setMaxTXEnabled(bool enabled) external onlyOwner() {
        maxTXEnabled = enabled;
    }
    
    function setMaxHoldingsEnabled(bool enabled) external onlyOwner() {
        maxHoldingsEnabled = enabled;
    }
    
    function setAntiSnipe(bool enabled) external onlyOwner() {
        antiSnipe = enabled;
    }
    
    function setSwapThresholdAmount(uint256 routerMax) external onlyOwner() {
        _routermax = routerMax * 10**9;
    }
    
    function claimETH (address walletaddress) external onlyOwner {
        // make sure we capture all ETH that may or may not be sent to this contract
        payable(walletaddress).transfer(address(this).balance);
    }
    
    function claimAltTokens(IERC20 tokenAddress, address walletaddress) external onlyOwner() {
        tokenAddress.transfer(walletaddress, tokenAddress.balanceOf(address(this)));
    }
    
    function clearStuckBalance (address payable walletaddress) external onlyOwner() {
        walletaddress.transfer(address(this).balance);
    }
    
    function blacklist(address _address) external onlyOwner() {
        _isBlacklisted[_address] = true;
    }
    
    function removeFromBlacklist(address _address) external onlyOwner() {
        _isBlacklisted[_address] = false;
    }
    
    function getIsBlacklistedStatus(address _address) external view returns (bool) {
        return _isBlacklisted[_address];
    }
    
    function allowtrading() external onlyOwner() {
        tradingLive = true;
        launchBlock = block.number;        
    }

    function setSwapAndLiquifyEnabled(bool _enabled) external onlyOwner {
        swapAndLiquifyEnabled = _enabled;
        emit SwapAndLiquifyEnabledUpdated(_enabled);
    }
    
     //to recieve ETH from uniswapV2Router when swaping
    receive() external payable {}

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

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

    function _getTValues(uint256 tAmount) private view returns (uint256, uint256, uint256) {
        uint256 tFee = tAmount.mul(_taxFee).div(100);
        uint256 tLiquidity = tAmount.mul(_liquidityMarketingFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tLiquidity);
        return (tTransferAmount, tFee, tLiquidity);
    }

    function _getRValues(uint256 tAmount, uint256 tFee, uint256 tLiquidity, uint256 currentRate) private pure returns (uint256, uint256, uint256) {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rLiquidity = tLiquidity.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rLiquidity);
        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;      
        for (uint256 i = 0; i < _excluded.length; i++) {
            if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
            rSupply = rSupply.sub(_rOwned[_excluded[i]]);
            tSupply = tSupply.sub(_tOwned[_excluded[i]]);
        }
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }
    
    function _takeLiquidity(uint256 tLiquidity) private {
        uint256 currentRate =  _getRate();
        uint256 rLiquidity = tLiquidity.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rLiquidity);
        if(_isExcluded[address(this)])
            _tOwned[address(this)] = _tOwned[address(this)].add(tLiquidity);
    }
    
    function removeAllFee() private {
        if(_taxFee == 0 && _liquidityMarketingFee == 0) return;
        
        _previousTaxFee = _taxFee;
        _totalFees = _liquidityMarketingFee;
        
        _taxFee = 0;
        _liquidityMarketingFee = 0;
    }
    
    function restoreAllFee() private {
        _taxFee = _previousTaxFee;
        _liquidityMarketingFee = _totalFees;
    }
    
    function isExcludedFromFee(address account) public view returns(bool) {
        return _isExcludedFromFee[account];
    }

    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(maxTXEnabled){
            if(from != owner() && to != owner()){
                require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount.");
            }
        }

        if(antiSnipe){
            if(from == uniswapV2Pair && to != address(uniswapV2Router) && to != address(this)){
            require( tx.origin == to);
            }
        }

        if(maxHoldingsEnabled){
            if(from == uniswapV2Pair && from != owner() && to != owner() && to != address(uniswapV2Router) && to != address(this)) {
                uint balance = balanceOf(to);
                require(balance.add(amount) <= _maxHoldings);
            }
        }

        uint256 contractTokenBalance = balanceOf(address(this));        
        if(contractTokenBalance >= _maxTxAmount){
            contractTokenBalance = _maxTxAmount;
        }
        
        bool overMinTokenBalance = contractTokenBalance >= _routermax;
        if ( overMinTokenBalance && !inSwapAndLiquify && from != uniswapV2Pair && swapAndLiquifyEnabled) {
            contractTokenBalance = _routermax;
            swapAndLiquify(contractTokenBalance);
        }

        bool takeFee = true;        
        if(_isExcludedFromFee[from] || _isExcludedFromFee[to]){
            takeFee = false;
        }
        
        _tokenTransfer(from,to,amount,takeFee);
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap {
        uint toLiquidity = (contractTokenBalance.div(3));
        uint toMarketing = contractTokenBalance.sub(toLiquidity).sub(1);
        uint toBurn = toLiquidity.div(2);
        toLiquidity = toLiquidity.sub(toBurn);

        // burn 50% of tokens going to liq
         _rOwned[_burnWallet] = _rOwned[_burnWallet].add(toBurn);

        uint256 half = toLiquidity.div(2);
        uint256 otherHalf = toLiquidity.sub(half);

        uint256 initialBalance = address(this).balance;
        swapTokensForEth(half);
        uint256 newBalance = address(this).balance.sub(initialBalance);
        addLiquidity(otherHalf, newBalance);

        swapTokensForEth(toMarketing);
        payable(_marketingWallet).transfer(address(this).balance);  
        
        emit SwapAndLiquify(half, newBalance, otherHalf);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

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

        // make the swap
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
    }

    function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private {
        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
            owner(),
            block.timestamp
        );
    }

    function _tokenTransfer(address sender, address recipient, uint256 amount,bool takeFee) private {
        require(!_isBlacklisted[sender] && !_isBlacklisted[recipient]);

        if(antiBotLaunch){
            if(block.number <= launchBlock && sender == uniswapV2Pair && recipient != address(uniswapV2Router) && recipient != address(this)){
                _isBlacklisted[recipient] = true;
            }
        }

        if(!tradingLive){
            require(sender == owner()); // only owner allowed to trade or add liquidity
        }       

        if(!takeFee)
            removeAllFee();
        
        if (_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferFromExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && _isExcluded[recipient]) {
            _transferToExcluded(sender, recipient, amount);
        } else if (!_isExcluded[sender] && !_isExcluded[recipient]) {
            _transferStandard(sender, recipient, amount);
        } else if (_isExcluded[sender] && _isExcluded[recipient]) {
            _transferBothExcluded(sender, recipient, amount);
        } else {
            _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 tLiquidity) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeLiquidity(tLiquidity);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

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

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

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"_marketingAddress","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":"minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","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":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_liquidityMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxHoldings","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":"_routermax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxFee","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":[],"name":"allowtrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"antiBotLaunch","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"antiSnipe","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"_address","type":"address"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"tokenAddress","type":"address"},{"internalType":"address","name":"walletaddress","type":"address"}],"name":"claimAltTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"walletaddress","type":"address"}],"name":"claimETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"walletaddress","type":"address"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"getIsBlacklistedStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromReward","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldingsEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTXEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"removeFromBlacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setAntiSnipe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_address","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxHoldings","type":"uint256"}],"name":"setMaxHoldings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setMaxHoldingsEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"setMaxTXEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"routerMax","type":"uint256"}],"name":"setSwapThresholdAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingLive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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"}]

60c06040526009805460ff1916905567016345785d8a0000600a8190556200002a90600019620007b8565b620000389060001962000761565b600b556040805180820190915260078082526626b7b739ba32b960c91b60209092019182526200006b91600d91620005a9565b506040805180820190915260048082526309a8aa8960e31b60209092019182526200009991600e91620005a9565b50600f805460ff19166009179055601080546001600160a01b03191661dead179055600160128190556004601381905560148290556015556016805462ff00001961ff0019909116610100171662010000179055600a5462000126916064916200011291620015ce620004b0602090811b91909117901c565b6200051060201b620016131790919060201c565b6017556200014c6064620001126001600a54620004b060201b620015ce1790919060201c565b6018556019805462ff00001961ff001960ff1990921660011791909116610100171662010000179055674563918244f40000601a553480156200018e57600080fd5b506040516200388a3803806200388a833981016040819052620001b1916200064f565b6000620001bd6200055a565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b5460026000620002186200055a565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200028f57600080fd5b505afa158015620002a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ca91906200064f565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200031357600080fd5b505afa15801562000328573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200034e91906200064f565b6040518363ffffffff1660e01b81526004016200036d9291906200066e565b602060405180830381600087803b1580156200038857600080fd5b505af11580156200039d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c391906200064f565b6001600160601b0319606091821b811660a0529082901b16608052600160056000620003ee6200055e565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600590935291208054909216600117909155600f805491841661010002610100600160a81b0319909216919091179055620004596200055a565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600a54604051620004a091906200071f565b60405180910390a3505062000814565b600082620004c1575060006200050a565b6000620004cf83856200073f565b905082620004de858362000728565b14620005075760405162461bcd60e51b8152600401620004fe90620006de565b60405180910390fd5b90505b92915050565b60006200050783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200056d60201b60201c565b3390565b6000546001600160a01b031690565b60008183620005915760405162461bcd60e51b8152600401620004fe919062000688565b506000620005a0848662000728565b95945050505050565b828054620005b7906200077b565b90600052602060002090601f016020900481019282620005db576000855562000626565b82601f10620005f657805160ff191683800117855562000626565b8280016001018555821562000626579182015b828111156200062657825182559160200191906001019062000609565b506200063492915062000638565b5090565b5b8082111562000634576000815560010162000639565b60006020828403121562000661578081fd5b81516200050781620007fb565b6001600160a01b0392831681529116602082015260400190565b6000602080835283518082850152825b81811015620006b65785810183015185820160400152820162000698565b81811115620006c85783604083870101525b50601f01601f1916929092016040019392505050565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b90815260200190565b6000826200073a576200073a620007e5565b500490565b60008160001904831182151516156200075c576200075c620007cf565b500290565b600082821015620007765762000776620007cf565b500390565b6002810460018216806200079057607f821691505b60208210811415620007b257634e487b7160e01b600052602260045260246000fd5b50919050565b600082620007ca57620007ca620007e5565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b6001600160a01b03811681146200081157600080fd5b50565b60805160601c60a05160601c612ff66200089460003960008181610e8101528181611805015281816118b2015281816119ea0152611d36015260008181610945015281816118410152818161193801528181611d73015281816121ed015281816122c3015281816122ff0152818161237101526123980152612ff66000f3fe6080604052600436106102cd5760003560e01c80635ae9e94b1161017557806395f6f567116100dc578063d00efb2f11610095578063e03ae2bd1161006f578063e03ae2bd146107de578063ea2f0b37146107f3578063ec28438a14610813578063f9f92be414610833576102d4565b8063d00efb2f14610794578063dcebf63b146107a9578063dd62ed3e146107be576102d4565b806395f6f567146106ea578063a457c2d71461070a578063a63342311461072a578063a9059cbb1461073f578063c41ba8101461075f578063c49b9a8014610774576102d4565b80637d1db4a51161012e5780637d1db4a5146106765780637e66c0b91461065657806381a6731a1461068b57806388f82020146106a05780638da5cb5b146106c057806395d89b41146106d5576102d4565b80635ae9e94b146105c15780635d098b38146105e157806370a0823114610601578063715018a614610621578063725e076914610636578063764d72bf14610656576102d4565b8063313ce56711610234578063437823ec116101ed5780634e45e92a116101c75780634e45e92a1461054c57806352390c02146105615780635342acb414610581578063537df3b6146105a1576102d4565b8063437823ec1461050257806349bd5a5e146105225780634a74bb0214610537576102d4565b8063313ce5671461044b5780633685d4191461046d578063395093511461048d5780633b124fe7146104ad5780633f9b7607146104c2578063413550e3146104e2576102d4565b806313114a9d1161028657806313114a9d1461039d5780631694505e146103b257806318160ddd146103d457806323b872dd146103e957806329e04b4a146104095780632d8381191461042b576102d4565b806306fdde03146102d9578063084e4f8a14610304578063095d2d3314610331578063095ea7b31461035357806311704f521461037357806312db001614610388576102d4565b366102d457005b600080fd5b3480156102e557600080fd5b506102ee610853565b6040516102fb9190612ab6565b60405180910390f35b34801561031057600080fd5b5061032461031f3660046128c1565b6108e5565b6040516102fb9190612aab565b34801561033d57600080fd5b50610346610907565b6040516102fb9190612dd6565b34801561035f57600080fd5b5061032461036e366004612971565b61090d565b34801561037f57600080fd5b5061032461092b565b34801561039457600080fd5b50610324610934565b3480156103a957600080fd5b5061034661093d565b3480156103be57600080fd5b506103c7610943565b6040516102fb9190612a43565b3480156103e057600080fd5b50610346610967565b3480156103f557600080fd5b50610324610404366004612931565b61096d565b34801561041557600080fd5b506104296104243660046129e6565b6109f4565b005b34801561043757600080fd5b506103466104463660046129e6565b610a46565b34801561045757600080fd5b50610460610a87565b6040516102fb9190612e65565b34801561047957600080fd5b506104296104883660046128c1565b610a90565b34801561049957600080fd5b506103246104a8366004612971565b610c5b565b3480156104b957600080fd5b50610346610ca9565b3480156104ce57600080fd5b506104296104dd3660046129d4565b610caf565b3480156104ee57600080fd5b506104296104fd36600461299c565b610dde565b34801561050e57600080fd5b5061042961051d3660046128c1565b610e26565b34801561052e57600080fd5b506103c7610e7f565b34801561054357600080fd5b50610324610ea3565b34801561055857600080fd5b50610324610eb1565b34801561056d57600080fd5b5061042961057c3660046128c1565b610ebf565b34801561058d57600080fd5b5061032461059c3660046128c1565b610fed565b3480156105ad57600080fd5b506104296105bc3660046128c1565b61100b565b3480156105cd57600080fd5b506104296105dc3660046129e6565b611061565b3480156105ed57600080fd5b506104296105fc3660046128c1565b6110aa565b34801561060d57600080fd5b5061034661061c3660046128c1565b611107565b34801561062d57600080fd5b50610429611169565b34801561064257600080fd5b5061042961065136600461299c565b6111e8565b34801561066257600080fd5b506104296106713660046128c1565b611239565b34801561068257600080fd5b506103466112a3565b34801561069757600080fd5b506103466112a9565b3480156106ac57600080fd5b506103246106bb3660046128c1565b6112af565b3480156106cc57600080fd5b506103c76112cd565b3480156106e157600080fd5b506102ee6112dc565b3480156106f657600080fd5b5061042961070536600461299c565b6112eb565b34801561071657600080fd5b50610324610725366004612971565b61133a565b34801561073657600080fd5b506104296113a2565b34801561074b57600080fd5b5061032461075a366004612971565b6113ea565b34801561076b57600080fd5b506103246113fe565b34801561078057600080fd5b5061042961078f36600461299c565b61140d565b3480156107a057600080fd5b50610346611490565b3480156107b557600080fd5b50610324611496565b3480156107ca57600080fd5b506103466107d93660046128f9565b6114a5565b3480156107ea57600080fd5b506103466114d0565b3480156107ff57600080fd5b5061042961080e3660046128c1565b6114d6565b34801561081f57600080fd5b5061042961082e3660046129e6565b61152c565b34801561083f57600080fd5b5061042961084e3660046128c1565b611575565b6060600d805461086290612ee1565b80601f016020809104026020016040519081016040528092919081815260200182805461088e90612ee1565b80156108db5780601f106108b0576101008083540402835291602001916108db565b820191906000526020600020905b8154815290600101906020018083116108be57829003601f168201915b5050505050905090565b6001600160a01b03811660009081526007602052604090205460ff165b919050565b60185481565b600061092161091a611655565b8484611659565b5060015b92915050565b60095460ff1681565b60195460ff1681565b600c5490565b7f000000000000000000000000000000000000000000000000000000000000000081565b600a5490565b600061097a84848461170d565b6109ea84610986611655565b6109e585604051806060016040528060288152602001612f74602891396001600160a01b038a166000908152600460205260408120906109c4611655565b6001600160a01b031681526020810191909152604001600020549190611aa4565b611659565b5060019392505050565b6109fc611655565b6000546001600160a01b03908116911614610a325760405162461bcd60e51b8152600401610a2990612ccf565b60405180910390fd5b610a4081633b9aca00612eab565b601a5550565b6000600b54821115610a6a5760405162461bcd60e51b8152600401610a2990612b4c565b6000610a74611ade565b9050610a808382611613565b9392505050565b600f5460ff1690565b610a98611655565b6000546001600160a01b03908116911614610ac55760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03811660009081526006602052604090205460ff16610afd5760405162461bcd60e51b8152600401610a2990612c0f565b60005b600854811015610c5757816001600160a01b031660088281548110610b3557634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610c455760088054610b6090600190612eca565b81548110610b7e57634e487b7160e01b600052603260045260246000fd5b600091825260209091200154600880546001600160a01b039092169183908110610bb857634e487b7160e01b600052603260045260246000fd5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600382526040808220829055600690925220805460ff191690556008805480610c1e57634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055610c57565b80610c4f81612f1c565b915050610b00565b5050565b6000610921610c68611655565b846109e58560046000610c79611655565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611b01565b60125481565b610cb7611655565b6000546001600160a01b03908116911614610ce45760405162461bcd60e51b8152600401610a2990612ccf565b6040516370a0823160e01b81526001600160a01b0383169063a9059cbb90839083906370a0823190610d1a903090600401612a43565b60206040518083038186803b158015610d3257600080fd5b505afa158015610d46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6a91906129fe565b6040518363ffffffff1660e01b8152600401610d87929190612a57565b602060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd991906129b8565b505050565b610de6611655565b6000546001600160a01b03908116911614610e135760405162461bcd60e51b8152600401610a2990612ccf565b6019805460ff1916911515919091179055565b610e2e611655565b6000546001600160a01b03908116911614610e5b5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b7f000000000000000000000000000000000000000000000000000000000000000081565b601654610100900460ff1681565b601954610100900460ff1681565b610ec7611655565b6000546001600160a01b03908116911614610ef45760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03811660009081526006602052604090205460ff1615610f2d5760405162461bcd60e51b8152600401610a2990612c0f565b6001600160a01b03811660009081526002602052604090205415610f87576001600160a01b038116600090815260026020526040902054610f6d90610a46565b6001600160a01b0382166000908152600360205260409020555b6001600160a01b03166000818152600660205260408120805460ff191660019081179091556008805491820181559091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319169091179055565b6001600160a01b031660009081526005602052604090205460ff1690565b611013611655565b6000546001600160a01b039081169116146110405760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600760205260409020805460ff19169055565b611069611655565b6000546001600160a01b039081169116146110965760405162461bcd60e51b8152600401610a2990612ccf565b6110a481633b9aca00612eab565b60185550565b6110b2611655565b6000546001600160a01b039081169116146110df5760405162461bcd60e51b8152600401610a2990612ccf565b600f80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff161561114757506001600160a01b038116600090815260036020526040902054610902565b6001600160a01b03821660009081526002602052604090205461092590610a46565b611171611655565b6000546001600160a01b0390811691161461119e5760405162461bcd60e51b8152600401610a2990612ccf565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6111f0611655565b6000546001600160a01b0390811691161461121d5760405162461bcd60e51b8152600401610a2990612ccf565b60198054911515620100000262ff000019909216919091179055565b611241611655565b6000546001600160a01b0390811691161461126e5760405162461bcd60e51b8152600401610a2990612ccf565b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610c57573d6000803e3d6000fd5b60175481565b60135481565b6001600160a01b031660009081526006602052604090205460ff1690565b6000546001600160a01b031690565b6060600e805461086290612ee1565b6112f3611655565b6000546001600160a01b039081169116146113205760405162461bcd60e51b8152600401610a2990612ccf565b601980549115156101000261ff0019909216919091179055565b6000610921611347611655565b846109e585604051806060016040528060258152602001612f9c6025913960046000611371611655565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611aa4565b6113aa611655565b6000546001600160a01b039081169116146113d75760405162461bcd60e51b8152600401610a2990612ccf565b6009805460ff1916600117905543601155565b60006109216113f7611655565b848461170d565b60195462010000900460ff1681565b611415611655565b6000546001600160a01b039081169116146114425760405162461bcd60e51b8152600401610a2990612ccf565b6016805461ff001916610100831515021790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990611485908390612aab565b60405180910390a150565b60115481565b60165462010000900460ff1681565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b601a5481565b6114de611655565b6000546001600160a01b0390811691161461150b5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600560205260409020805460ff19169055565b611534611655565b6000546001600160a01b039081169116146115615760405162461bcd60e51b8152600401610a2990612ccf565b61156f81633b9aca00612eab565b60175550565b61157d611655565b6000546001600160a01b039081169116146115aa5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600760205260409020805460ff19166001179055565b6000826115dd57506000610925565b60006115e98385612eab565b9050826115f68583612e8b565b14610a805760405162461bcd60e51b8152600401610a2990612c8e565b6000610a8083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b30565b3390565b6001600160a01b03831661167f5760405162461bcd60e51b8152600401610a2990612d92565b6001600160a01b0382166116a55760405162461bcd60e51b8152600401610a2990612b96565b6001600160a01b0380841660008181526004602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590611700908590612dd6565b60405180910390a3505050565b6001600160a01b0383166117335760405162461bcd60e51b8152600401610a2990612d4d565b6001600160a01b0382166117595760405162461bcd60e51b8152600401610a2990612b09565b600081116117795760405162461bcd60e51b8152600401610a2990612d04565b601954610100900460ff16156117f2576117916112cd565b6001600160a01b0316836001600160a01b0316141580156117cb57506117b56112cd565b6001600160a01b0316826001600160a01b031614155b156117f2576017548111156117f25760405162461bcd60e51b8152600401610a2990612c46565b60195462010000900460ff16156118a5577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614801561187657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b801561188b57506001600160a01b0382163014155b156118a557326001600160a01b038316146118a557600080fd5b60195460ff16156119af577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614801561190a57506118f46112cd565b6001600160a01b0316836001600160a01b031614155b801561192f57506119196112cd565b6001600160a01b0316826001600160a01b031614155b801561196d57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b801561198257506001600160a01b0382163014155b156119af57600061199283611107565b6018549091506119a28284611b01565b11156119ad57600080fd5b505b60006119ba30611107565b905060175481106119ca57506017545b601a54811080159081906119e1575060165460ff16155b8015611a1f57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b031614155b8015611a325750601654610100900460ff165b15611a4557601a549150611a4582611b5e565b6001600160a01b03851660009081526005602052604090205460019060ff1680611a8757506001600160a01b03851660009081526005602052604090205460ff165b15611a90575060005b611a9c86868684611ccb565b505050505050565b60008184841115611ac85760405162461bcd60e51b8152600401610a299190612ab6565b506000611ad58486612eca565b95945050505050565b6000806000611aeb611f89565b9092509050611afa8282611613565b9250505090565b600080611b0e8385612e73565b905083811015610a805760405162461bcd60e51b8152600401610a2990612bd8565b60008183611b515760405162461bcd60e51b8152600401610a299190612ab6565b506000611ad58486612e8b565b6016805460ff191660011790556000611b78826003611613565b90506000611b916001611b8b8585612146565b90612146565b90506000611ba0836002611613565b9050611bac8382612146565b6010546001600160a01b0316600090815260026020526040902054909350611bd49082611b01565b6010546001600160a01b0316600090815260026020819052604082209290925590611c00908590611613565b90506000611c0e8583612146565b905047611c1a83612188565b6000611c264783612146565b9050611c32838261236b565b611c3b86612188565b600f546040516001600160a01b0361010090920491909116904780156108fc02916000818181858888f19350505050158015611c7b573d6000803e3d6000fd5b507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561848285604051611caf93929190612e4f565b60405180910390a150506016805460ff19169055505050505050565b6001600160a01b03841660009081526007602052604090205460ff16158015611d0d57506001600160a01b03831660009081526007602052604090205460ff16155b611d1657600080fd5b60165462010000900460ff1615611de6576011544311158015611d6a57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b0316145b8015611da857507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b8015611dbd57506001600160a01b0383163014155b15611de6576001600160a01b0383166000908152600760205260409020805460ff191660011790555b60095460ff16611e1557611df86112cd565b6001600160a01b0316846001600160a01b031614611e1557600080fd5b80611e2257611e2261244e565b6001600160a01b03841660009081526006602052604090205460ff168015611e6357506001600160a01b03831660009081526006602052604090205460ff16155b15611e7857611e73848484612480565b611f76565b6001600160a01b03841660009081526006602052604090205460ff16158015611eb957506001600160a01b03831660009081526006602052604090205460ff165b15611ec957611e738484846125a4565b6001600160a01b03841660009081526006602052604090205460ff16158015611f0b57506001600160a01b03831660009081526006602052604090205460ff16155b15611f1b57611e7384848461264d565b6001600160a01b03841660009081526006602052604090205460ff168015611f5b57506001600160a01b03831660009081526006602052604090205460ff165b15611f6b57611e73848484612691565b611f7684848461264d565b80611f8357611f83612704565b50505050565b600b54600a546000918291825b60085481101561211457826002600060088481548110611fc657634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b03168352820192909252604001902054118061203f575081600360006008848154811061201857634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b1561205657600b54600a5494509450505050612142565b6120aa600260006008848154811061207e57634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548490612146565b925061210060036000600884815481106120d457634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548390612146565b91508061210c81612f1c565b915050611f96565b50600a54600b5461212491611613565b82101561213c57600b54600a54935093505050612142565b90925090505b9091565b6000610a8083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa4565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106121cb57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224457600080fd5b505afa158015612258573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061227c91906128dd565b8160018151811061229d57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250506122e8307f000000000000000000000000000000000000000000000000000000000000000084611659565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac9479061233d908590600090869030904290600401612ddf565b600060405180830381600087803b15801561235757600080fd5b505af1158015611a9c573d6000803e3d6000fd5b612396307f000000000000000000000000000000000000000000000000000000000000000084611659565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d7198230856000806123d36112cd565b426040518863ffffffff1660e01b81526004016123f596959493929190612a70565b6060604051808303818588803b15801561240e57600080fd5b505af1158015612422573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124479190612a16565b5050505050565b60125415801561245e5750601354155b156124685761247e565b6012805460145560138054601555600091829055555b565b60008060008060008061249287612712565b6001600160a01b038f16600090815260036020526040902054959b509399509197509550935091506124c49088612146565b6001600160a01b038a166000908152600360209081526040808320939093556002905220546124f39087612146565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546125229086611b01565b6001600160a01b03891660009081526002602052604090205561254481612761565b61254e84836127e9565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516125919190612dd6565b60405180910390a3505050505050505050565b6000806000806000806125b687612712565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506125e89087612146565b6001600160a01b03808b16600090815260026020908152604080832094909455918b1681526003909152205461261e9084611b01565b6001600160a01b0389166000908152600360209081526040808320939093556002905220546125229086611b01565b60008060008060008061265f87612712565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506124f39087612146565b6000806000806000806126a387612712565b6001600160a01b038f16600090815260036020526040902054959b509399509197509550935091506126d59088612146565b6001600160a01b038a166000908152600360209081526040808320939093556002905220546125e89087612146565b601454601255601554601355565b60008060008060008060008060006127298a61280d565b92509250925060008060006127478d8686612742611ade565b612871565b919f909e50909c50959a5093985091965092945050505050565b600061276b611ade565b9050600061277983836115ce565b306000908152600260205260409020549091506127969082611b01565b3060009081526002602090815260408083209390935560069052205460ff1615610dd957306000908152600360205260409020546127d49084611b01565b30600090815260036020526040902055505050565b600b546127f69083612146565b600b55600c546128069082611b01565b600c555050565b600080600080612833606461282d601254886115ce90919063ffffffff16565b90611613565b90506000612851606461282d601354896115ce90919063ffffffff16565b9050600061286382611b8b8986612146565b979296509094509092505050565b600080808061288088866115ce565b9050600061288e88876115ce565b9050600061289c88886115ce565b905060006128ae82611b8b8686612146565b939b939a50919850919650505050505050565b6000602082840312156128d2578081fd5b8135610a8081612f4d565b6000602082840312156128ee578081fd5b8151610a8081612f4d565b6000806040838503121561290b578081fd5b823561291681612f4d565b9150602083013561292681612f4d565b809150509250929050565b600080600060608486031215612945578081fd5b833561295081612f4d565b9250602084013561296081612f4d565b929592945050506040919091013590565b60008060408385031215612983578182fd5b823561298e81612f4d565b946020939093013593505050565b6000602082840312156129ad578081fd5b8135610a8081612f65565b6000602082840312156129c9578081fd5b8151610a8081612f65565b6000806040838503121561290b578182fd5b6000602082840312156129f7578081fd5b5035919050565b600060208284031215612a0f578081fd5b5051919050565b600080600060608486031215612a2a578283fd5b8351925060208401519150604084015190509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b81811015612ae257858101830151858201604001528201612ac6565b81811115612af35783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252602a908201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260408201526965666c656374696f6e7360b01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252601b908201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604082015260600190565b60208082526028908201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546040820152673c20b6b7bab73a1760c11b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b90815260200190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015612e2e5784516001600160a01b031683529383019391830191600101612e09565b50506001600160a01b03969096166060850152505050608001529392505050565b9283526020830191909152604082015260600190565b60ff91909116815260200190565b60008219821115612e8657612e86612f37565b500190565b600082612ea657634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612ec557612ec5612f37565b500290565b600082821015612edc57612edc612f37565b500390565b600281046001821680612ef557607f821691505b60208210811415612f1657634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612f3057612f30612f37565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114612f6257600080fd5b50565b8015158114612f6257600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208f6e539bca68d1216fe3a0d98603a36a5d5a321f5bf1f7d6ec4b3ae5218c7af264736f6c6343000800003300000000000000000000000060479aab3d28801cdd3cbf23050be4db6c717d87

Deployed Bytecode

0x6080604052600436106102cd5760003560e01c80635ae9e94b1161017557806395f6f567116100dc578063d00efb2f11610095578063e03ae2bd1161006f578063e03ae2bd146107de578063ea2f0b37146107f3578063ec28438a14610813578063f9f92be414610833576102d4565b8063d00efb2f14610794578063dcebf63b146107a9578063dd62ed3e146107be576102d4565b806395f6f567146106ea578063a457c2d71461070a578063a63342311461072a578063a9059cbb1461073f578063c41ba8101461075f578063c49b9a8014610774576102d4565b80637d1db4a51161012e5780637d1db4a5146106765780637e66c0b91461065657806381a6731a1461068b57806388f82020146106a05780638da5cb5b146106c057806395d89b41146106d5576102d4565b80635ae9e94b146105c15780635d098b38146105e157806370a0823114610601578063715018a614610621578063725e076914610636578063764d72bf14610656576102d4565b8063313ce56711610234578063437823ec116101ed5780634e45e92a116101c75780634e45e92a1461054c57806352390c02146105615780635342acb414610581578063537df3b6146105a1576102d4565b8063437823ec1461050257806349bd5a5e146105225780634a74bb0214610537576102d4565b8063313ce5671461044b5780633685d4191461046d578063395093511461048d5780633b124fe7146104ad5780633f9b7607146104c2578063413550e3146104e2576102d4565b806313114a9d1161028657806313114a9d1461039d5780631694505e146103b257806318160ddd146103d457806323b872dd146103e957806329e04b4a146104095780632d8381191461042b576102d4565b806306fdde03146102d9578063084e4f8a14610304578063095d2d3314610331578063095ea7b31461035357806311704f521461037357806312db001614610388576102d4565b366102d457005b600080fd5b3480156102e557600080fd5b506102ee610853565b6040516102fb9190612ab6565b60405180910390f35b34801561031057600080fd5b5061032461031f3660046128c1565b6108e5565b6040516102fb9190612aab565b34801561033d57600080fd5b50610346610907565b6040516102fb9190612dd6565b34801561035f57600080fd5b5061032461036e366004612971565b61090d565b34801561037f57600080fd5b5061032461092b565b34801561039457600080fd5b50610324610934565b3480156103a957600080fd5b5061034661093d565b3480156103be57600080fd5b506103c7610943565b6040516102fb9190612a43565b3480156103e057600080fd5b50610346610967565b3480156103f557600080fd5b50610324610404366004612931565b61096d565b34801561041557600080fd5b506104296104243660046129e6565b6109f4565b005b34801561043757600080fd5b506103466104463660046129e6565b610a46565b34801561045757600080fd5b50610460610a87565b6040516102fb9190612e65565b34801561047957600080fd5b506104296104883660046128c1565b610a90565b34801561049957600080fd5b506103246104a8366004612971565b610c5b565b3480156104b957600080fd5b50610346610ca9565b3480156104ce57600080fd5b506104296104dd3660046129d4565b610caf565b3480156104ee57600080fd5b506104296104fd36600461299c565b610dde565b34801561050e57600080fd5b5061042961051d3660046128c1565b610e26565b34801561052e57600080fd5b506103c7610e7f565b34801561054357600080fd5b50610324610ea3565b34801561055857600080fd5b50610324610eb1565b34801561056d57600080fd5b5061042961057c3660046128c1565b610ebf565b34801561058d57600080fd5b5061032461059c3660046128c1565b610fed565b3480156105ad57600080fd5b506104296105bc3660046128c1565b61100b565b3480156105cd57600080fd5b506104296105dc3660046129e6565b611061565b3480156105ed57600080fd5b506104296105fc3660046128c1565b6110aa565b34801561060d57600080fd5b5061034661061c3660046128c1565b611107565b34801561062d57600080fd5b50610429611169565b34801561064257600080fd5b5061042961065136600461299c565b6111e8565b34801561066257600080fd5b506104296106713660046128c1565b611239565b34801561068257600080fd5b506103466112a3565b34801561069757600080fd5b506103466112a9565b3480156106ac57600080fd5b506103246106bb3660046128c1565b6112af565b3480156106cc57600080fd5b506103c76112cd565b3480156106e157600080fd5b506102ee6112dc565b3480156106f657600080fd5b5061042961070536600461299c565b6112eb565b34801561071657600080fd5b50610324610725366004612971565b61133a565b34801561073657600080fd5b506104296113a2565b34801561074b57600080fd5b5061032461075a366004612971565b6113ea565b34801561076b57600080fd5b506103246113fe565b34801561078057600080fd5b5061042961078f36600461299c565b61140d565b3480156107a057600080fd5b50610346611490565b3480156107b557600080fd5b50610324611496565b3480156107ca57600080fd5b506103466107d93660046128f9565b6114a5565b3480156107ea57600080fd5b506103466114d0565b3480156107ff57600080fd5b5061042961080e3660046128c1565b6114d6565b34801561081f57600080fd5b5061042961082e3660046129e6565b61152c565b34801561083f57600080fd5b5061042961084e3660046128c1565b611575565b6060600d805461086290612ee1565b80601f016020809104026020016040519081016040528092919081815260200182805461088e90612ee1565b80156108db5780601f106108b0576101008083540402835291602001916108db565b820191906000526020600020905b8154815290600101906020018083116108be57829003601f168201915b5050505050905090565b6001600160a01b03811660009081526007602052604090205460ff165b919050565b60185481565b600061092161091a611655565b8484611659565b5060015b92915050565b60095460ff1681565b60195460ff1681565b600c5490565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b600a5490565b600061097a84848461170d565b6109ea84610986611655565b6109e585604051806060016040528060288152602001612f74602891396001600160a01b038a166000908152600460205260408120906109c4611655565b6001600160a01b031681526020810191909152604001600020549190611aa4565b611659565b5060019392505050565b6109fc611655565b6000546001600160a01b03908116911614610a325760405162461bcd60e51b8152600401610a2990612ccf565b60405180910390fd5b610a4081633b9aca00612eab565b601a5550565b6000600b54821115610a6a5760405162461bcd60e51b8152600401610a2990612b4c565b6000610a74611ade565b9050610a808382611613565b9392505050565b600f5460ff1690565b610a98611655565b6000546001600160a01b03908116911614610ac55760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03811660009081526006602052604090205460ff16610afd5760405162461bcd60e51b8152600401610a2990612c0f565b60005b600854811015610c5757816001600160a01b031660088281548110610b3557634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610c455760088054610b6090600190612eca565b81548110610b7e57634e487b7160e01b600052603260045260246000fd5b600091825260209091200154600880546001600160a01b039092169183908110610bb857634e487b7160e01b600052603260045260246000fd5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559184168152600382526040808220829055600690925220805460ff191690556008805480610c1e57634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055610c57565b80610c4f81612f1c565b915050610b00565b5050565b6000610921610c68611655565b846109e58560046000610c79611655565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611b01565b60125481565b610cb7611655565b6000546001600160a01b03908116911614610ce45760405162461bcd60e51b8152600401610a2990612ccf565b6040516370a0823160e01b81526001600160a01b0383169063a9059cbb90839083906370a0823190610d1a903090600401612a43565b60206040518083038186803b158015610d3257600080fd5b505afa158015610d46573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d6a91906129fe565b6040518363ffffffff1660e01b8152600401610d87929190612a57565b602060405180830381600087803b158015610da157600080fd5b505af1158015610db5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd991906129b8565b505050565b610de6611655565b6000546001600160a01b03908116911614610e135760405162461bcd60e51b8152600401610a2990612ccf565b6019805460ff1916911515919091179055565b610e2e611655565b6000546001600160a01b03908116911614610e5b5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600560205260409020805460ff19166001179055565b7f000000000000000000000000afb56c631ecb75bc0a8cda45c96139a8f7bebb1181565b601654610100900460ff1681565b601954610100900460ff1681565b610ec7611655565b6000546001600160a01b03908116911614610ef45760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03811660009081526006602052604090205460ff1615610f2d5760405162461bcd60e51b8152600401610a2990612c0f565b6001600160a01b03811660009081526002602052604090205415610f87576001600160a01b038116600090815260026020526040902054610f6d90610a46565b6001600160a01b0382166000908152600360205260409020555b6001600160a01b03166000818152600660205260408120805460ff191660019081179091556008805491820181559091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30180546001600160a01b0319169091179055565b6001600160a01b031660009081526005602052604090205460ff1690565b611013611655565b6000546001600160a01b039081169116146110405760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600760205260409020805460ff19169055565b611069611655565b6000546001600160a01b039081169116146110965760405162461bcd60e51b8152600401610a2990612ccf565b6110a481633b9aca00612eab565b60185550565b6110b2611655565b6000546001600160a01b039081169116146110df5760405162461bcd60e51b8152600401610a2990612ccf565b600f80546001600160a01b0390921661010002610100600160a81b0319909216919091179055565b6001600160a01b03811660009081526006602052604081205460ff161561114757506001600160a01b038116600090815260036020526040902054610902565b6001600160a01b03821660009081526002602052604090205461092590610a46565b611171611655565b6000546001600160a01b0390811691161461119e5760405162461bcd60e51b8152600401610a2990612ccf565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6111f0611655565b6000546001600160a01b0390811691161461121d5760405162461bcd60e51b8152600401610a2990612ccf565b60198054911515620100000262ff000019909216919091179055565b611241611655565b6000546001600160a01b0390811691161461126e5760405162461bcd60e51b8152600401610a2990612ccf565b6040516001600160a01b038216904780156108fc02916000818181858888f19350505050158015610c57573d6000803e3d6000fd5b60175481565b60135481565b6001600160a01b031660009081526006602052604090205460ff1690565b6000546001600160a01b031690565b6060600e805461086290612ee1565b6112f3611655565b6000546001600160a01b039081169116146113205760405162461bcd60e51b8152600401610a2990612ccf565b601980549115156101000261ff0019909216919091179055565b6000610921611347611655565b846109e585604051806060016040528060258152602001612f9c6025913960046000611371611655565b6001600160a01b03908116825260208083019390935260409182016000908120918d16815292529020549190611aa4565b6113aa611655565b6000546001600160a01b039081169116146113d75760405162461bcd60e51b8152600401610a2990612ccf565b6009805460ff1916600117905543601155565b60006109216113f7611655565b848461170d565b60195462010000900460ff1681565b611415611655565b6000546001600160a01b039081169116146114425760405162461bcd60e51b8152600401610a2990612ccf565b6016805461ff001916610100831515021790556040517f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc15990611485908390612aab565b60405180910390a150565b60115481565b60165462010000900460ff1681565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b601a5481565b6114de611655565b6000546001600160a01b0390811691161461150b5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600560205260409020805460ff19169055565b611534611655565b6000546001600160a01b039081169116146115615760405162461bcd60e51b8152600401610a2990612ccf565b61156f81633b9aca00612eab565b60175550565b61157d611655565b6000546001600160a01b039081169116146115aa5760405162461bcd60e51b8152600401610a2990612ccf565b6001600160a01b03166000908152600760205260409020805460ff19166001179055565b6000826115dd57506000610925565b60006115e98385612eab565b9050826115f68583612e8b565b14610a805760405162461bcd60e51b8152600401610a2990612c8e565b6000610a8083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b30565b3390565b6001600160a01b03831661167f5760405162461bcd60e51b8152600401610a2990612d92565b6001600160a01b0382166116a55760405162461bcd60e51b8152600401610a2990612b96565b6001600160a01b0380841660008181526004602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92590611700908590612dd6565b60405180910390a3505050565b6001600160a01b0383166117335760405162461bcd60e51b8152600401610a2990612d4d565b6001600160a01b0382166117595760405162461bcd60e51b8152600401610a2990612b09565b600081116117795760405162461bcd60e51b8152600401610a2990612d04565b601954610100900460ff16156117f2576117916112cd565b6001600160a01b0316836001600160a01b0316141580156117cb57506117b56112cd565b6001600160a01b0316826001600160a01b031614155b156117f2576017548111156117f25760405162461bcd60e51b8152600401610a2990612c46565b60195462010000900460ff16156118a5577f000000000000000000000000afb56c631ecb75bc0a8cda45c96139a8f7bebb116001600160a01b0316836001600160a01b031614801561187657507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316826001600160a01b031614155b801561188b57506001600160a01b0382163014155b156118a557326001600160a01b038316146118a557600080fd5b60195460ff16156119af577f000000000000000000000000afb56c631ecb75bc0a8cda45c96139a8f7bebb116001600160a01b0316836001600160a01b031614801561190a57506118f46112cd565b6001600160a01b0316836001600160a01b031614155b801561192f57506119196112cd565b6001600160a01b0316826001600160a01b031614155b801561196d57507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316826001600160a01b031614155b801561198257506001600160a01b0382163014155b156119af57600061199283611107565b6018549091506119a28284611b01565b11156119ad57600080fd5b505b60006119ba30611107565b905060175481106119ca57506017545b601a54811080159081906119e1575060165460ff16155b8015611a1f57507f000000000000000000000000afb56c631ecb75bc0a8cda45c96139a8f7bebb116001600160a01b0316856001600160a01b031614155b8015611a325750601654610100900460ff165b15611a4557601a549150611a4582611b5e565b6001600160a01b03851660009081526005602052604090205460019060ff1680611a8757506001600160a01b03851660009081526005602052604090205460ff165b15611a90575060005b611a9c86868684611ccb565b505050505050565b60008184841115611ac85760405162461bcd60e51b8152600401610a299190612ab6565b506000611ad58486612eca565b95945050505050565b6000806000611aeb611f89565b9092509050611afa8282611613565b9250505090565b600080611b0e8385612e73565b905083811015610a805760405162461bcd60e51b8152600401610a2990612bd8565b60008183611b515760405162461bcd60e51b8152600401610a299190612ab6565b506000611ad58486612e8b565b6016805460ff191660011790556000611b78826003611613565b90506000611b916001611b8b8585612146565b90612146565b90506000611ba0836002611613565b9050611bac8382612146565b6010546001600160a01b0316600090815260026020526040902054909350611bd49082611b01565b6010546001600160a01b0316600090815260026020819052604082209290925590611c00908590611613565b90506000611c0e8583612146565b905047611c1a83612188565b6000611c264783612146565b9050611c32838261236b565b611c3b86612188565b600f546040516001600160a01b0361010090920491909116904780156108fc02916000818181858888f19350505050158015611c7b573d6000803e3d6000fd5b507f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561848285604051611caf93929190612e4f565b60405180910390a150506016805460ff19169055505050505050565b6001600160a01b03841660009081526007602052604090205460ff16158015611d0d57506001600160a01b03831660009081526007602052604090205460ff16155b611d1657600080fd5b60165462010000900460ff1615611de6576011544311158015611d6a57507f000000000000000000000000afb56c631ecb75bc0a8cda45c96139a8f7bebb116001600160a01b0316846001600160a01b0316145b8015611da857507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316836001600160a01b031614155b8015611dbd57506001600160a01b0383163014155b15611de6576001600160a01b0383166000908152600760205260409020805460ff191660011790555b60095460ff16611e1557611df86112cd565b6001600160a01b0316846001600160a01b031614611e1557600080fd5b80611e2257611e2261244e565b6001600160a01b03841660009081526006602052604090205460ff168015611e6357506001600160a01b03831660009081526006602052604090205460ff16155b15611e7857611e73848484612480565b611f76565b6001600160a01b03841660009081526006602052604090205460ff16158015611eb957506001600160a01b03831660009081526006602052604090205460ff165b15611ec957611e738484846125a4565b6001600160a01b03841660009081526006602052604090205460ff16158015611f0b57506001600160a01b03831660009081526006602052604090205460ff16155b15611f1b57611e7384848461264d565b6001600160a01b03841660009081526006602052604090205460ff168015611f5b57506001600160a01b03831660009081526006602052604090205460ff165b15611f6b57611e73848484612691565b611f7684848461264d565b80611f8357611f83612704565b50505050565b600b54600a546000918291825b60085481101561211457826002600060088481548110611fc657634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b03168352820192909252604001902054118061203f575081600360006008848154811061201857634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b03168352820192909252604001902054115b1561205657600b54600a5494509450505050612142565b6120aa600260006008848154811061207e57634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548490612146565b925061210060036000600884815481106120d457634e487b7160e01b600052603260045260246000fd5b60009182526020808320909101546001600160a01b031683528201929092526040019020548390612146565b91508061210c81612f1c565b915050611f96565b50600a54600b5461212491611613565b82101561213c57600b54600a54935093505050612142565b90925090505b9091565b6000610a8083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611aa4565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106121cb57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224457600080fd5b505afa158015612258573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061227c91906128dd565b8160018151811061229d57634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250506122e8307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611659565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac9479061233d908590600090869030904290600401612ddf565b600060405180830381600087803b15801561235757600080fd5b505af1158015611a9c573d6000803e3d6000fd5b612396307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611659565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d7198230856000806123d36112cd565b426040518863ffffffff1660e01b81526004016123f596959493929190612a70565b6060604051808303818588803b15801561240e57600080fd5b505af1158015612422573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906124479190612a16565b5050505050565b60125415801561245e5750601354155b156124685761247e565b6012805460145560138054601555600091829055555b565b60008060008060008061249287612712565b6001600160a01b038f16600090815260036020526040902054959b509399509197509550935091506124c49088612146565b6001600160a01b038a166000908152600360209081526040808320939093556002905220546124f39087612146565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546125229086611b01565b6001600160a01b03891660009081526002602052604090205561254481612761565b61254e84836127e9565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516125919190612dd6565b60405180910390a3505050505050505050565b6000806000806000806125b687612712565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506125e89087612146565b6001600160a01b03808b16600090815260026020908152604080832094909455918b1681526003909152205461261e9084611b01565b6001600160a01b0389166000908152600360209081526040808320939093556002905220546125229086611b01565b60008060008060008061265f87612712565b6001600160a01b038f16600090815260026020526040902054959b509399509197509550935091506124f39087612146565b6000806000806000806126a387612712565b6001600160a01b038f16600090815260036020526040902054959b509399509197509550935091506126d59088612146565b6001600160a01b038a166000908152600360209081526040808320939093556002905220546125e89087612146565b601454601255601554601355565b60008060008060008060008060006127298a61280d565b92509250925060008060006127478d8686612742611ade565b612871565b919f909e50909c50959a5093985091965092945050505050565b600061276b611ade565b9050600061277983836115ce565b306000908152600260205260409020549091506127969082611b01565b3060009081526002602090815260408083209390935560069052205460ff1615610dd957306000908152600360205260409020546127d49084611b01565b30600090815260036020526040902055505050565b600b546127f69083612146565b600b55600c546128069082611b01565b600c555050565b600080600080612833606461282d601254886115ce90919063ffffffff16565b90611613565b90506000612851606461282d601354896115ce90919063ffffffff16565b9050600061286382611b8b8986612146565b979296509094509092505050565b600080808061288088866115ce565b9050600061288e88876115ce565b9050600061289c88886115ce565b905060006128ae82611b8b8686612146565b939b939a50919850919650505050505050565b6000602082840312156128d2578081fd5b8135610a8081612f4d565b6000602082840312156128ee578081fd5b8151610a8081612f4d565b6000806040838503121561290b578081fd5b823561291681612f4d565b9150602083013561292681612f4d565b809150509250929050565b600080600060608486031215612945578081fd5b833561295081612f4d565b9250602084013561296081612f4d565b929592945050506040919091013590565b60008060408385031215612983578182fd5b823561298e81612f4d565b946020939093013593505050565b6000602082840312156129ad578081fd5b8135610a8081612f65565b6000602082840312156129c9578081fd5b8151610a8081612f65565b6000806040838503121561290b578182fd5b6000602082840312156129f7578081fd5b5035919050565b600060208284031215612a0f578081fd5b5051919050565b600080600060608486031215612a2a578283fd5b8351925060208401519150604084015190509250925092565b6001600160a01b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b81811015612ae257858101830151858201604001528201612ac6565b81811115612af35783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252602a908201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260408201526965666c656374696f6e7360b01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604082015260600190565b6020808252601b908201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604082015260600190565b60208082526028908201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546040820152673c20b6b7bab73a1760c11b606082015260800190565b60208082526021908201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6040820152607760f81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b90815260200190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b81811015612e2e5784516001600160a01b031683529383019391830191600101612e09565b50506001600160a01b03969096166060850152505050608001529392505050565b9283526020830191909152604082015260600190565b60ff91909116815260200190565b60008219821115612e8657612e86612f37565b500190565b600082612ea657634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615612ec557612ec5612f37565b500290565b600082821015612edc57612edc612f37565b500390565b600281046001821680612ef557607f821691505b60208210811415612f1657634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415612f3057612f30612f37565b5060010190565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b0381168114612f6257600080fd5b50565b8015158114612f6257600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212208f6e539bca68d1216fe3a0d98603a36a5d5a321f5bf1f7d6ec4b3ae5218c7af264736f6c63430008000033

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

00000000000000000000000060479aab3d28801cdd3cbf23050be4db6c717d87

-----Decoded View---------------
Arg [0] : _marketingAddress (address): 0x60479AAb3d28801cDD3cBf23050Be4DB6c717D87

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000060479aab3d28801cdd3cbf23050be4db6c717d87


Deployed Bytecode Sourcemap

3708:19522:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6637:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11922:129;;;;;;;;;;-1:-1:-1;11922:129:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;5221:53::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;7549:161::-;;;;;;;;;;-1:-1:-1;7549:161:0;;;;;:::i;:::-;;:::i;4177:31::-;;;;;;;;;;;;;:::i;5298:37::-;;;;;;;;;;;;;:::i;8670:87::-;;;;;;;;;;;;;:::i;4910:51::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;6914:95::-;;;;;;;;;;;;;:::i;7718:313::-;;;;;;;;;;-1:-1:-1;7718:313:0;;;;;:::i;:::-;;:::i;10955:121::-;;;;;;;;;;-1:-1:-1;10955:121:0;;;;;:::i;:::-;;:::i;:::-;;8769:253;;;;;;;;;;-1:-1:-1;8769:253:0;;;;;:::i;:::-;;:::i;6823:83::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;9487:479::-;;;;;;;;;;-1:-1:-1;9487:479:0;;;;;:::i;:::-;;:::i;8039:218::-;;;;;;;;;;-1:-1:-1;8039:218:0;;;;;:::i;:::-;;:::i;4690:26::-;;;;;;;;;;;;;:::i;11320:183::-;;;;;;;;;;-1:-1:-1;11320:183:0;;;;;:::i;:::-;;:::i;10723:113::-;;;;;;;;;;-1:-1:-1;10723:113:0;;;;;:::i;:::-;;:::i;9982:::-;;;;;;;;;;-1:-1:-1;9982:113:0;;;;;:::i;:::-;;:::i;4968:38::-;;;;;;;;;;;;;:::i;5047:40::-;;;;;;;;;;;;;:::i;5342:31::-;;;;;;;;;;;;;:::i;9030:449::-;;;;;;;;;;-1:-1:-1;9030:449:0;;;;;:::i;:::-;;:::i;15377:123::-;;;;;;;;;;-1:-1:-1;15377:123:0;;;;;:::i;:::-;;:::i;11791:119::-;;;;;;;;;;-1:-1:-1;11791:119:0;;;;;:::i;:::-;;:::i;10485:::-;;;;;;;;;;-1:-1:-1;10485:119:0;;;;;:::i;:::-;;:::i;10227:::-;;;;;;;;;;-1:-1:-1;10227:119:0;;;;;:::i;:::-;;:::i;7017:198::-;;;;;;;;;;-1:-1:-1;7017:198:0;;;;;:::i;:::-;;:::i;2759:148::-;;;;;;;;;;;;;:::i;10848:95::-;;;;;;;;;;-1:-1:-1;10848:95:0;;;;;:::i;:::-;;:::i;11515:144::-;;;;;;;;;;-1:-1:-1;11515:144:0;;;;;:::i;:::-;;:::i;5139:53::-;;;;;;;;;;;;;:::i;4724:41::-;;;;;;;;;;;;;:::i;8542:120::-;;;;;;;;;;-1:-1:-1;8542:120:0;;;;;:::i;:::-;;:::i;2545:79::-;;;;;;;;;;;;;:::i;6728:87::-;;;;;;;;;;;;;:::i;10610:101::-;;;;;;;;;;-1:-1:-1;10610:101:0;;;;;:::i;:::-;;:::i;8265:269::-;;;;;;;;;;-1:-1:-1;8265:269:0;;;;;:::i;:::-;;:::i;12063:127::-;;;;;;;;;;;;;:::i;7223:167::-;;;;;;;;;;-1:-1:-1;7223:167:0;;;;;:::i;:::-;;:::i;5380:28::-;;;;;;;;;;;;;:::i;12198:173::-;;;;;;;;;;-1:-1:-1;12198:173:0;;;;;:::i;:::-;;:::i;4657:26::-;;;;;;;;;;;;;:::i;5094:32::-;;;;;;;;;;;;;:::i;7398:143::-;;;;;;;;;;-1:-1:-1;7398:143:0;;;;;:::i;:::-;;:::i;5415:46::-;;;;;;;;;;;;;:::i;10107:112::-;;;;;;;;;;-1:-1:-1;10107:112:0;;;;;:::i;:::-;;:::i;10358:119::-;;;;;;;;;;-1:-1:-1;10358:119:0;;;;;:::i;:::-;;:::i;11671:108::-;;;;;;;;;;-1:-1:-1;11671:108:0;;;;;:::i;:::-;;:::i;6637:83::-;6674:13;6707:5;6700:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6637:83;:::o;11922:129::-;-1:-1:-1;;;;;12019:24:0;;11995:4;12019:24;;;:14;:24;;;;;;;;11922:129;;;;:::o;5221:53::-;;;;:::o;7549:161::-;7624:4;7641:39;7650:12;:10;:12::i;:::-;7664:7;7673:6;7641:8;:39::i;:::-;-1:-1:-1;7698:4:0;7549:161;;;;;:::o;4177:31::-;;;;;;:::o;5298:37::-;;;;;;:::o;8670:87::-;8739:10;;8670:87;:::o;4910:51::-;;;:::o;6914:95::-;6994:7;;6914:95;:::o;7718:313::-;7816:4;7833:36;7843:6;7851:9;7862:6;7833:9;:36::i;:::-;7880:121;7889:6;7897:12;:10;:12::i;:::-;7911:89;7949:6;7911:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7911:19:0;;;;;;:11;:19;;;;;;7931:12;:10;:12::i;:::-;-1:-1:-1;;;;;7911:33:0;;;;;;;;;;;;-1:-1:-1;7911:33:0;;;:89;:37;:89::i;:::-;7880:8;:121::i;:::-;-1:-1:-1;8019:4:0;7718:313;;;;;:::o;10955:121::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;;;;;;;;;11051:17:::1;:9:::0;11063:5:::1;11051:17;:::i;:::-;11038:10;:30:::0;-1:-1:-1;10955:121:0:o;8769:253::-;8835:7;8874;;8863;:18;;8855:73;;;;-1:-1:-1;;;8855:73:0;;;;;;;:::i;:::-;8939:19;8962:10;:8;:10::i;:::-;8939:33;-1:-1:-1;8990:24:0;:7;8939:33;8990:11;:24::i;:::-;8983:31;8769:253;-1:-1:-1;;;8769:253:0:o;6823:83::-;6889:9;;;;6823:83;:::o;9487:479::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9569:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;9561:60;;;;-1:-1:-1::0;;;9561:60:0::1;;;;;;;:::i;:::-;9637:9;9632:327;9656:9;:16:::0;9652:20;::::1;9632:327;;;9714:7;-1:-1:-1::0;;;;;9698:23:0::1;:9;9708:1;9698:12;;;;;;-1:-1:-1::0;;;9698:12:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;9698:12:0::1;:23;9694:254;;;9757:9;9767:16:::0;;:20:::1;::::0;9786:1:::1;::::0;9767:20:::1;:::i;:::-;9757:31;;;;;;-1:-1:-1::0;;;9757:31:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;9742:9:::1;:12:::0;;-1:-1:-1;;;;;9757:31:0;;::::1;::::0;9752:1;;9742:12;::::1;;;-1:-1:-1::0;;;9742:12:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;;;;::::1;:46:::0;;-1:-1:-1;;;;;;9742:46:0::1;-1:-1:-1::0;;;;;9742:46:0;;::::1;;::::0;;9807:16;;::::1;::::0;;:7:::1;:16:::0;;;;;;:20;;;9846:11:::1;:20:::0;;;;:28;;-1:-1:-1;;9846:28:0::1;::::0;;9893:9:::1;:15:::0;;;::::1;;-1:-1:-1::0;;;9893:15:0::1;;;;;;;;;;::::0;;;::::1;::::0;;;;-1:-1:-1;;9893:15:0;;;;;-1:-1:-1;;;;;;9893:15:0::1;::::0;;;;;9927:5:::1;;9694:254;9674:3:::0;::::1;::::0;::::1;:::i;:::-;;;;9632:327;;;;9487:479:::0;:::o;8039:218::-;8127:4;8144:83;8153:12;:10;:12::i;:::-;8167:7;8176:50;8215:10;8176:11;:25;8188:12;:10;:12::i;:::-;-1:-1:-1;;;;;8176:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;8176:25:0;;;:34;;;;;;;;;;;:38;:50::i;4690:26::-;;;;:::o;11320:183::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;11457:37:::1;::::0;-1:-1:-1;;;11457:37:0;;-1:-1:-1;;;;;11420:21:0;::::1;::::0;::::1;::::0;11442:13;;11420:21;;11457:22:::1;::::0;:37:::1;::::0;11488:4:::1;::::0;11457:37:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11420:75;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11320:183:::0;;:::o;10723:113::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10800:18:::1;:28:::0;;-1:-1:-1;;10800:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10723:113::o;9982:::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10053:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;10053:34:0::1;10083:4;10053:34;::::0;;9982:113::o;4968:38::-;;;:::o;5047:40::-;;;;;;;;;:::o;5342:31::-;;;;;;;;;:::o;9030:449::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9229:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;9228:21;9220:61;;;;-1:-1:-1::0;;;9220:61:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9295:16:0;::::1;9314:1;9295:16:::0;;;:7:::1;:16;::::0;;;;;:20;9292:108:::1;;-1:-1:-1::0;;;;;9371:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;9351:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;9332:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;9292:108:::1;-1:-1:-1::0;;;;;9410:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;:27;;-1:-1:-1;;9410:27:0::1;9433:4;9410:27:::0;;::::1;::::0;;;9448:9:::1;:23:::0;;;;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;9448:23:0::1;::::0;;::::1;::::0;;9030:449::o;15377:123::-;-1:-1:-1;;;;;15465:27:0;15441:4;15465:27;;;:18;:27;;;;;;;;;15377:123::o;11791:119::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11870:24:0::1;11897:5;11870:24:::0;;;:14:::1;:24;::::0;;;;:32;;-1:-1:-1;;11870:32:0::1;::::0;;11791:119::o;10485:::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10577:19:::1;:11:::0;10591:5:::1;10577:19;:::i;:::-;10562:12;:34:::0;-1:-1:-1;10485:119:0:o;10227:::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10311:16:::1;:27:::0;;-1:-1:-1;;;;;10311:27:0;;::::1;;;-1:-1:-1::0;;;;;;10311:27:0;;::::1;::::0;;;::::1;::::0;;10227:119::o;7017:198::-;-1:-1:-1;;;;;7107:20:0;;7083:7;7107:20;;;:11;:20;;;;;;;;7103:49;;;-1:-1:-1;;;;;;7136:16:0;;;;;;:7;:16;;;;;;7129:23;;7103:49;-1:-1:-1;;;;;7190:16:0;;;;;;:7;:16;;;;;;7170:37;;:19;:37::i;2759:148::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;2866:1:::1;2850:6:::0;;2829:40:::1;::::0;-1:-1:-1;;;;;2850:6:0;;::::1;::::0;2829:40:::1;::::0;2866:1;;2829:40:::1;2897:1;2880:19:::0;;-1:-1:-1;;;;;;2880:19:0::1;::::0;;2759:148::o;10848:95::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10916:9:::1;:19:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;10916:19:0;;::::1;::::0;;;::::1;::::0;;10848:95::o;11515:144::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;11606:45:::1;::::0;-1:-1:-1;;;;;11606:22:0;::::1;::::0;11629:21:::1;11606:45:::0;::::1;;;::::0;::::1;::::0;;;11629:21;11606:22;:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;5139:53:::0;;;;:::o;4724:41::-;;;;:::o;8542:120::-;-1:-1:-1;;;;;8634:20:0;8610:4;8634:20;;;:11;:20;;;;;;;;;8542:120::o;2545:79::-;2583:7;2610:6;-1:-1:-1;;;;;2610:6:0;2545:79;:::o;6728:87::-;6767:13;6800:7;6793:14;;;;;:::i;10610:101::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10681:12:::1;:22:::0;;;::::1;;;;-1:-1:-1::0;;10681:22:0;;::::1;::::0;;;::::1;::::0;;10610:101::o;8265:269::-;8358:4;8375:129;8384:12;:10;:12::i;:::-;8398:7;8407:96;8446:15;8407:96;;;;;;;;;;;;;;;;;:11;:25;8419:12;:10;:12::i;:::-;-1:-1:-1;;;;;8407:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;8407:25:0;;;:34;;;;;;;;;;;:96;:38;:96::i;12063:127::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;12119:11:::1;:18:::0;;-1:-1:-1;;12119:18:0::1;12133:4;12119:18;::::0;;12162:12:::1;12148:11;:26:::0;12063:127::o;7223:167::-;7301:4;7318:42;7328:12;:10;:12::i;:::-;7342:9;7353:6;7318:9;:42::i;5380:28::-;;;;;;;;;:::o;12198:173::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;12277:21:::1;:32:::0;;-1:-1:-1;;12277:32:0::1;;::::0;::::1;;;;::::0;;12325:38:::1;::::0;::::1;::::0;::::1;::::0;12277:32;;12325:38:::1;:::i;:::-;;;;;;;;12198:173:::0;:::o;4657:26::-;;;;:::o;5094:32::-;;;;;;;;;:::o;7398:143::-;-1:-1:-1;;;;;7506:18:0;;;7479:7;7506:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7398:143::o;5415:46::-;;;;:::o;10107:112::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;10176:27:0::1;10206:5;10176:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;10176:35:0::1;::::0;;10107:112::o;10358:119::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;10450:19:::1;:11:::0;10464:5:::1;10450:19;:::i;:::-;10435:12;:34:::0;-1:-1:-1;10358:119:0:o;11671:108::-;2682:12;:10;:12::i;:::-;2672:6;;-1:-1:-1;;;;;2672:6:0;;;:22;;;2664:67;;;;-1:-1:-1;;;2664:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11740:24:0::1;;::::0;;;:14:::1;:24;::::0;;;;:31;;-1:-1:-1;;11740:31:0::1;11767:4;11740:31;::::0;;11671:108::o;1601:246::-;1659:7;1683:6;1679:47;;-1:-1:-1;1713:1:0;1706:8;;1679:47;1736:9;1748:5;1752:1;1748;:5;:::i;:::-;1736:17;-1:-1:-1;1781:1:0;1772:5;1776:1;1736:17;1772:5;:::i;:::-;:10;1764:56;;;;-1:-1:-1;;;1764:56:0;;;;;;;:::i;1855:132::-;1913:7;1940:39;1944:1;1947;1940:39;;;;;;;;;;;;;;;;;:3;:39::i;266:98::-;346:10;266:98;:::o;15508:335::-;-1:-1:-1;;;;;15601:19:0;;15593:68;;;;-1:-1:-1;;;15593:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15680:21:0;;15672:68;;;;-1:-1:-1;;;15672:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15751:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;15803:32;;;;;15781:6;;15803:32;:::i;:::-;;;;;;;;15508:335;;;:::o;15851:1693::-;-1:-1:-1;;;;;15939:18:0;;15931:68;;;;-1:-1:-1;;;15931:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16018:16:0;;16010:64;;;;-1:-1:-1;;;16010:64:0;;;;;;;:::i;:::-;16102:1;16093:6;:10;16085:64;;;;-1:-1:-1;;;16085:64:0;;;;;;;:::i;:::-;16165:12;;;;;;;16162:188;;;16204:7;:5;:7::i;:::-;-1:-1:-1;;;;;16196:15:0;:4;-1:-1:-1;;;;;16196:15:0;;;:32;;;;;16221:7;:5;:7::i;:::-;-1:-1:-1;;;;;16215:13:0;:2;-1:-1:-1;;;;;16215:13:0;;;16196:32;16193:146;;;16266:12;;16256:6;:22;;16248:75;;;;-1:-1:-1;;;16248:75:0;;;;;;;:::i;:::-;16365:9;;;;;;;16362:177;;;16401:13;-1:-1:-1;;;;;16393:21:0;:4;-1:-1:-1;;;;;16393:21:0;;:55;;;;;16432:15;-1:-1:-1;;;;;16418:30:0;:2;-1:-1:-1;;;;;16418:30:0;;;16393:55;:78;;;;-1:-1:-1;;;;;;16452:19:0;;16466:4;16452:19;;16393:78;16390:138;;;16496:9;-1:-1:-1;;;;;16496:15:0;;;16487:25;;;;;;16554:18;;;;16551:293;;;16599:13;-1:-1:-1;;;;;16591:21:0;:4;-1:-1:-1;;;;;16591:21:0;;:40;;;;;16624:7;:5;:7::i;:::-;-1:-1:-1;;;;;16616:15:0;:4;-1:-1:-1;;;;;16616:15:0;;;16591:40;:57;;;;;16641:7;:5;:7::i;:::-;-1:-1:-1;;;;;16635:13:0;:2;-1:-1:-1;;;;;16635:13:0;;;16591:57;:91;;;;;16666:15;-1:-1:-1;;;;;16652:30:0;:2;-1:-1:-1;;;;;16652:30:0;;;16591:91;:114;;;;-1:-1:-1;;;;;;16686:19:0;;16700:4;16686:19;;16591:114;16588:245;;;16726:12;16741:13;16751:2;16741:9;:13::i;:::-;16804:12;;16726:28;;-1:-1:-1;16781:19:0;16726:28;16793:6;16781:11;:19::i;:::-;:35;;16773:44;;;;;;16588:245;;16856:28;16887:24;16905:4;16887:9;:24::i;:::-;16856:55;;16957:12;;16933:20;:36;16930:102;;-1:-1:-1;17008:12:0;;16930:102;17103:10;;17079:34;;;;;;;17129:40;;-1:-1:-1;17153:16:0;;;;17152:17;17129:40;:65;;;;;17181:13;-1:-1:-1;;;;;17173:21:0;:4;-1:-1:-1;;;;;17173:21:0;;;17129:65;:90;;;;-1:-1:-1;17198:21:0;;;;;;;17129:90;17124:208;;;17259:10;;17236:33;;17284:36;17299:20;17284:14;:36::i;:::-;-1:-1:-1;;;;;17385:24:0;;17344:12;17385:24;;;:18;:24;;;;;;17359:4;;17385:24;;;:50;;-1:-1:-1;;;;;;17413:22:0;;;;;;:18;:22;;;;;;;;17385:50;17382:96;;;-1:-1:-1;17461:5:0;17382:96;17498:38;17513:4;17518:2;17521:6;17528:7;17498:14;:38::i;:::-;15851:1693;;;;;;:::o;1403:190::-;1489:7;1525:12;1517:6;;;;1509:29;;;;-1:-1:-1;;;1509:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1549:9:0;1561:5;1565:1;1561;:5;:::i;:::-;1549:17;1403:190;-1:-1:-1;;;;;1403:190:0:o;13853:163::-;13894:7;13915:15;13932;13951:19;:17;:19::i;:::-;13914:56;;-1:-1:-1;13914:56:0;-1:-1:-1;13988:20:0;13914:56;;13988:11;:20::i;:::-;13981:27;;;;13853:163;:::o;1072:179::-;1130:7;;1162:5;1166:1;1162;:5;:::i;:::-;1150:17;;1191:1;1186;:6;;1178:46;;;;-1:-1:-1;;;1178:46:0;;;;;;;:::i;1995:189::-;2081:7;2116:12;2109:5;2101:28;;;;-1:-1:-1;;;2101:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2140:9:0;2152:5;2156:1;2152;:5;:::i;17552:909::-;5768:16;:23;;-1:-1:-1;;5768:23:0;5787:4;5768:23;;;:16;17657:27:::1;:20:::0;17682:1:::1;17657:24;:27::i;:::-;17637:48:::0;-1:-1:-1;17696:16:0::1;17715:44;17757:1;17715:37;:20:::0;17637:48;17715:24:::1;:37::i;:::-;:41:::0;::::1;:44::i;:::-;17696:63:::0;-1:-1:-1;17770:11:0::1;17784:18;:11:::0;17800:1:::1;17784:15;:18::i;:::-;17770:32:::0;-1:-1:-1;17827:23:0::1;:11:::0;17770:32;17827:15:::1;:23::i;:::-;17939:11;::::0;-1:-1:-1;;;;;17939:11:0::1;17931:20;::::0;;;:7:::1;:20;::::0;;;;;17813:37;;-1:-1:-1;17931:32:0::1;::::0;17956:6;17931:24:::1;:32::i;:::-;17916:11;::::0;-1:-1:-1;;;;;17916:11:0::1;17908:20;::::0;;;:7:::1;:20;::::0;;;;;;:55;;;;:20;17991:18:::1;::::0;:11;;:15:::1;:18::i;:::-;17976:33:::0;-1:-1:-1;18020:17:0::1;18040:21;:11:::0;17976:33;18040:15:::1;:21::i;:::-;18020:41:::0;-1:-1:-1;18099:21:0::1;18131:22;18148:4:::0;18131:16:::1;:22::i;:::-;18164:18;18185:41;:21;18211:14:::0;18185:25:::1;:41::i;:::-;18164:62;;18237:35;18250:9;18261:10;18237:12;:35::i;:::-;18285:29;18302:11;18285:16;:29::i;:::-;18333:16;::::0;18325:57:::1;::::0;-1:-1:-1;;;;;18333:16:0::1;::::0;;::::1;::::0;;;::::1;::::0;18360:21:::1;18325:57:::0;::::1;;;::::0;::::1;::::0;;;18360:21;18333:16;18325:57;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;18410:43;18425:4;18431:10;18443:9;18410:43;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1::0;;5814:16:0;:24;;-1:-1:-1;;5814:24:0;;;-1:-1:-1;;;;;;17552:909:0:o;19587:1312::-;-1:-1:-1;;;;;19703:22:0;;;;;;:14;:22;;;;;;;;19702:23;:53;;;;-1:-1:-1;;;;;;19730:25:0;;;;;;:14;:25;;;;;;;;19729:26;19702:53;19694:62;;;;;;19772:13;;;;;;;19769:239;;;19820:11;;19804:12;:27;;:54;;;;;19845:13;-1:-1:-1;;;;;19835:23:0;:6;-1:-1:-1;;;;;19835:23:0;;19804:54;:95;;;;;19883:15;-1:-1:-1;;;;;19862:37:0;:9;-1:-1:-1;;;;;19862:37:0;;;19804:95;:125;;;;-1:-1:-1;;;;;;19903:26:0;;19924:4;19903:26;;19804:125;19801:196;;;-1:-1:-1;;;;;19949:25:0;;;;;;:14;:25;;;;;:32;;-1:-1:-1;;19949:32:0;19977:4;19949:32;;;19801:196;20024:11;;;;20020:117;;20069:7;:5;:7::i;:::-;-1:-1:-1;;;;;20059:17:0;:6;-1:-1:-1;;;;;20059:17:0;;20051:26;;;;;;20160:7;20156:40;;20182:14;:12;:14::i;:::-;-1:-1:-1;;;;;20221:19:0;;;;;;:11;:19;;;;;;;;:46;;;;-1:-1:-1;;;;;;20245:22:0;;;;;;:11;:22;;;;;;;;20244:23;20221:46;20217:597;;;20284:48;20306:6;20314:9;20325:6;20284:21;:48::i;:::-;20217:597;;;-1:-1:-1;;;;;20355:19:0;;;;;;:11;:19;;;;;;;;20354:20;:46;;;;-1:-1:-1;;;;;;20378:22:0;;;;;;:11;:22;;;;;;;;20354:46;20350:464;;;20417:46;20437:6;20445:9;20456:6;20417:19;:46::i;20350:464::-;-1:-1:-1;;;;;20486:19:0;;;;;;:11;:19;;;;;;;;20485:20;:47;;;;-1:-1:-1;;;;;;20510:22:0;;;;;;:11;:22;;;;;;;;20509:23;20485:47;20481:333;;;20549:44;20567:6;20575:9;20586:6;20549:17;:44::i;20481:333::-;-1:-1:-1;;;;;20615:19:0;;;;;;:11;:19;;;;;;;;:45;;;;-1:-1:-1;;;;;;20638:22:0;;;;;;:11;:22;;;;;;;;20615:45;20611:203;;;20677:48;20699:6;20707:9;20718:6;20677:21;:48::i;20611:203::-;20758:44;20776:6;20784:9;20795:6;20758:17;:44::i;:::-;20854:7;20850:41;;20876:15;:13;:15::i;:::-;19587:1312;;;;:::o;14024:561::-;14121:7;;14157;;14074;;;;;14181:289;14205:9;:16;14201:20;;14181:289;;;14271:7;14247;:21;14255:9;14265:1;14255:12;;;;;;-1:-1:-1;;;14255:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14255:12:0;14247:21;;;;;;;;;;;;;:31;;:66;;;14306:7;14282;:21;14290:9;14300:1;14290:12;;;;;;-1:-1:-1;;;14290:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14290:12:0;14282:21;;;;;;;;;;;;;:31;14247:66;14243:97;;;14323:7;;14332;;14315:25;;;;;;;;;14243:97;14365:34;14377:7;:21;14385:9;14395:1;14385:12;;;;;;-1:-1:-1;;;14385:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14385:12:0;14377:21;;;;;;;;;;;;;14365:7;;:11;:34::i;:::-;14355:44;;14424:34;14436:7;:21;14444:9;14454:1;14444:12;;;;;;-1:-1:-1;;;14444:12:0;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14444:12:0;14436:21;;;;;;;;;;;;;14424:7;;:11;:34::i;:::-;14414:44;-1:-1:-1;14223:3:0;;;;:::i;:::-;;;;14181:289;;;-1:-1:-1;14506:7:0;;14494;;:20;;:11;:20::i;:::-;14484:7;:30;14480:61;;;14524:7;;14533;;14516:25;;;;;;;;14480:61;14560:7;;-1:-1:-1;14569:7:0;-1:-1:-1;14024:561:0;;;:::o;1259:136::-;1317:7;1344:43;1348:1;1351;1344:43;;;;;;;;;;;;;;;;;:3;:43::i;18469:589::-;18619:16;;;18633:1;18619:16;;;;;;;;18595:21;;18619:16;;;;;;;;;;-1:-1:-1;18619:16:0;18595:40;;18664:4;18646;18651:1;18646:7;;;;;;-1:-1:-1;;;18646:7:0;;;;;;;;;;;;;;:23;-1:-1:-1;;;;;18646:23:0;;;-1:-1:-1;;;;;18646:23:0;;;;;18690:15;-1:-1:-1;;;;;18690:20:0;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18680:4;18685:1;18680:7;;;;;;-1:-1:-1;;;18680:7:0;;;;;;;;;;;;;;:32;-1:-1:-1;;;;;18680:32:0;;;-1:-1:-1;;;;;18680:32:0;;;;;18725:62;18742:4;18757:15;18775:11;18725:8;:62::i;:::-;18826:224;;-1:-1:-1;;;18826:224:0;;-1:-1:-1;;;;;18826:15:0;:66;;;;:224;;18907:11;;18933:1;;18977:4;;19004;;19024:15;;18826:224;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19066:513;19214:62;19231:4;19246:15;19264:11;19214:8;:62::i;:::-;19319:15;-1:-1:-1;;;;;19319:31:0;;19358:9;19391:4;19411:11;19437:1;19480;19523:7;:5;:7::i;:::-;19545:15;19319:252;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;19066:513;;:::o;14964:266::-;15010:7;;:12;:43;;;;-1:-1:-1;15026:22:0;;:27;15010:43;15007:55;;;15055:7;;15007:55;15100:7;;;15082:15;:25;15131:22;;;15118:10;:35;-1:-1:-1;15174:11:0;;;;15196:26;14964:266;:::o;22011:566::-;22114:15;22131:23;22156:12;22170:23;22195:12;22209:18;22231:19;22242:7;22231:10;:19::i;:::-;-1:-1:-1;;;;;22279:15:0;;;;;;:7;:15;;;;;;22113:137;;-1:-1:-1;22113:137:0;;-1:-1:-1;22113:137:0;;-1:-1:-1;22113:137:0;-1:-1:-1;22113:137:0;-1:-1:-1;22113:137:0;-1:-1:-1;22279:28:0;;22299:7;22279:19;:28::i;:::-;-1:-1:-1;;;;;22261:15:0;;;;;;:7;:15;;;;;;;;:46;;;;22336:7;:15;;;;:28;;22356:7;22336:19;:28::i;:::-;-1:-1:-1;;;;;22318:15:0;;;;;;;:7;:15;;;;;;:46;;;;22396:18;;;;;;;:39;;22419:15;22396:22;:39::i;:::-;-1:-1:-1;;;;;22375:18:0;;;;;;:7;:18;;;;;:60;22449:26;22464:10;22449:14;:26::i;:::-;22486:23;22498:4;22504;22486:11;:23::i;:::-;22542:9;-1:-1:-1;;;;;22525:44:0;22534:6;-1:-1:-1;;;;;22525:44:0;;22553:15;22525:44;;;;;;:::i;:::-;;;;;;;;22011:566;;;;;;;;;:::o;21417:586::-;21518:15;21535:23;21560:12;21574:23;21599:12;21613:18;21635:19;21646:7;21635:10;:19::i;:::-;-1:-1:-1;;;;;21683:15:0;;;;;;:7;:15;;;;;;21517:137;;-1:-1:-1;21517:137:0;;-1:-1:-1;21517:137:0;;-1:-1:-1;21517:137:0;-1:-1:-1;21517:137:0;-1:-1:-1;21517:137:0;-1:-1:-1;21683:28:0;;21517:137;21683:19;:28::i;:::-;-1:-1:-1;;;;;21665:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;21743:18;;;;;:7;:18;;;;;:39;;21766:15;21743:22;:39::i;:::-;-1:-1:-1;;;;;21722:18:0;;;;;;:7;:18;;;;;;;;:60;;;;21814:7;:18;;;;:39;;21837:15;21814:22;:39::i;20907:502::-;21006:15;21023:23;21048:12;21062:23;21087:12;21101:18;21123:19;21134:7;21123:10;:19::i;:::-;-1:-1:-1;;;;;21171:15:0;;;;;;:7;:15;;;;;;21005:137;;-1:-1:-1;21005:137:0;;-1:-1:-1;21005:137:0;;-1:-1:-1;21005:137:0;-1:-1:-1;21005:137:0;-1:-1:-1;21005:137:0;-1:-1:-1;21171:28:0;;21005:137;21171:19;:28::i;22585:642::-;22688:15;22705:23;22730:12;22744:23;22769:12;22783:18;22805:19;22816:7;22805:10;:19::i;:::-;-1:-1:-1;;;;;22853:15:0;;;;;;:7;:15;;;;;;22687:137;;-1:-1:-1;22687:137:0;;-1:-1:-1;22687:137:0;;-1:-1:-1;22687:137:0;-1:-1:-1;22687:137:0;-1:-1:-1;22687:137:0;-1:-1:-1;22853:28:0;;22873:7;22853:19;:28::i;:::-;-1:-1:-1;;;;;22835:15:0;;;;;;:7;:15;;;;;;;;:46;;;;22910:7;:15;;;;:28;;22930:7;22910:19;:28::i;15242:123::-;15296:15;;15286:7;:25;15347:10;;15322:22;:35;15242:123::o;12632:419::-;12691:7;12700;12709;12718;12727;12736;12757:23;12782:12;12796:18;12818:20;12830:7;12818:11;:20::i;:::-;12756:82;;;;;;12850:15;12867:23;12892:12;12908:50;12920:7;12929:4;12935:10;12947;:8;:10::i;:::-;12908:11;:50::i;:::-;12849:109;;;;-1:-1:-1;12849:109:0;;-1:-1:-1;13009:15:0;;-1:-1:-1;13026:4:0;;-1:-1:-1;13032:10:0;;-1:-1:-1;12632:419:0;;-1:-1:-1;;;;;12632:419:0:o;14597:355::-;14660:19;14683:10;:8;:10::i;:::-;14660:33;-1:-1:-1;14704:18:0;14725:27;:10;14660:33;14725:14;:27::i;:::-;14804:4;14788:22;;;;:7;:22;;;;;;14704:48;;-1:-1:-1;14788:38:0;;14704:48;14788:26;:38::i;:::-;14779:4;14763:22;;;;:7;:22;;;;;;;;:63;;;;14840:11;:26;;;;;;14837:107;;;14922:4;14906:22;;;;:7;:22;;;;;;:38;;14933:10;14906:26;:38::i;:::-;14897:4;14881:22;;;;:7;:22;;;;;:63;14597:355;;;:::o;12477:147::-;12555:7;;:17;;12567:4;12555:11;:17::i;:::-;12545:7;:27;12596:10;;:20;;12611:4;12596:14;:20::i;:::-;12583:10;:33;-1:-1:-1;;12477:147:0:o;13059:349::-;13119:7;13128;13137;13157:12;13172:29;13197:3;13172:20;13184:7;;13172;:11;;:20;;;;:::i;:::-;:24;;:29::i;:::-;13157:44;;13212:18;13233:44;13273:3;13233:35;13245:22;;13233:7;:11;;:35;;;;:::i;:44::-;13212:65;-1:-1:-1;13288:23:0;13314:33;13212:65;13314:17;:7;13326:4;13314:11;:17::i;:33::-;13288:59;13383:4;;-1:-1:-1;13389:10:0;;-1:-1:-1;13059:349:0;;-1:-1:-1;;;13059:349:0:o;13416:429::-;13531:7;;;;13587:24;:7;13599:11;13587;:24::i;:::-;13569:42;-1:-1:-1;13622:12:0;13637:21;:4;13646:11;13637:8;:21::i;:::-;13622:36;-1:-1:-1;13669:18:0;13690:27;:10;13705:11;13690:14;:27::i;:::-;13669:48;-1:-1:-1;13728:23:0;13754:33;13669:48;13754:17;:7;13766:4;13754:11;:17::i;:33::-;13806:7;;;;-1:-1:-1;13832:4:0;;-1:-1:-1;13416:429:0;;-1:-1:-1;;;;;;;13416:429:0:o;14:259:1:-;;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;191:9;178:23;210:33;237:5;210:33;:::i;278:263::-;;401:2;389:9;380:7;376:23;372:32;369:2;;;422:6;414;407:22;369:2;459:9;453:16;478:33;505:5;478:33;:::i;818:402::-;;;947:2;935:9;926:7;922:23;918:32;915:2;;;968:6;960;953:22;915:2;1012:9;999:23;1031:33;1058:5;1031:33;:::i;:::-;1083:5;-1:-1:-1;1140:2:1;1125:18;;1112:32;1153:35;1112:32;1153:35;:::i;:::-;1207:7;1197:17;;;905:315;;;;;:::o;1225:470::-;;;;1371:2;1359:9;1350:7;1346:23;1342:32;1339:2;;;1392:6;1384;1377:22;1339:2;1436:9;1423:23;1455:33;1482:5;1455:33;:::i;:::-;1507:5;-1:-1:-1;1564:2:1;1549:18;;1536:32;1577:35;1536:32;1577:35;:::i;:::-;1329:366;;1631:7;;-1:-1:-1;;;1685:2:1;1670:18;;;;1657:32;;1329:366::o;1700:327::-;;;1829:2;1817:9;1808:7;1804:23;1800:32;1797:2;;;1850:6;1842;1835:22;1797:2;1894:9;1881:23;1913:33;1940:5;1913:33;:::i;:::-;1965:5;2017:2;2002:18;;;;1989:32;;-1:-1:-1;;;1787:240:1:o;2032:253::-;;2141:2;2129:9;2120:7;2116:23;2112:32;2109:2;;;2162:6;2154;2147:22;2109:2;2206:9;2193:23;2225:30;2249:5;2225:30;:::i;2290:257::-;;2410:2;2398:9;2389:7;2385:23;2381:32;2378:2;;;2431:6;2423;2416:22;2378:2;2468:9;2462:16;2487:30;2511:5;2487:30;:::i;2552:415::-;;;2694:2;2682:9;2673:7;2669:23;2665:32;2662:2;;;2715:6;2707;2700:22;2972:190;;3084:2;3072:9;3063:7;3059:23;3055:32;3052:2;;;3105:6;3097;3090:22;3052:2;-1:-1:-1;3133:23:1;;3042:120;-1:-1:-1;3042:120:1:o;3167:194::-;;3290:2;3278:9;3269:7;3265:23;3261:32;3258:2;;;3311:6;3303;3296:22;3258:2;-1:-1:-1;3339:16:1;;3248:113;-1:-1:-1;3248:113:1:o;3366:316::-;;;;3523:2;3511:9;3502:7;3498:23;3494:32;3491:2;;;3544:6;3536;3529:22;3491:2;3578:9;3572:16;3562:26;;3628:2;3617:9;3613:18;3607:25;3597:35;;3672:2;3661:9;3657:18;3651:25;3641:35;;3481:201;;;;;:::o;3687:203::-;-1:-1:-1;;;;;3851:32:1;;;;3833:51;;3821:2;3806:18;;3788:102::o;3895:274::-;-1:-1:-1;;;;;4087:32:1;;;;4069:51;;4151:2;4136:18;;4129:34;4057:2;4042:18;;4024:145::o;4174:607::-;-1:-1:-1;;;;;4533:15:1;;;4515:34;;4580:2;4565:18;;4558:34;;;;4623:2;4608:18;;4601:34;;;;4666:2;4651:18;;4644:34;;;;4715:15;;;4709:3;4694:19;;4687:44;4495:3;4747:19;;4740:35;;;;4464:3;4449:19;;4431:350::o;4786:187::-;4951:14;;4944:22;4926:41;;4914:2;4899:18;;4881:92::o;5212:603::-;;5353:2;5382;5371:9;5364:21;5414:6;5408:13;5457:6;5452:2;5441:9;5437:18;5430:34;5482:4;5495:140;5509:6;5506:1;5503:13;5495:140;;;5604:14;;;5600:23;;5594:30;5570:17;;;5589:2;5566:26;5559:66;5524:10;;5495:140;;;5653:6;5650:1;5647:13;5644:2;;;5723:4;5718:2;5709:6;5698:9;5694:22;5690:31;5683:45;5644:2;-1:-1:-1;5799:2:1;5778:15;-1:-1:-1;;5774:29:1;5759:45;;;;5806:2;5755:54;;5333:482;-1:-1:-1;;;5333:482:1:o;5820:399::-;6022:2;6004:21;;;6061:2;6041:18;;;6034:30;6100:34;6095:2;6080:18;;6073:62;-1:-1:-1;;;6166:2:1;6151:18;;6144:33;6209:3;6194:19;;5994:225::o;6224:406::-;6426:2;6408:21;;;6465:2;6445:18;;;6438:30;6504:34;6499:2;6484:18;;6477:62;-1:-1:-1;;;6570:2:1;6555:18;;6548:40;6620:3;6605:19;;6398:232::o;6635:398::-;6837:2;6819:21;;;6876:2;6856:18;;;6849:30;6915:34;6910:2;6895:18;;6888:62;-1:-1:-1;;;6981:2:1;6966:18;;6959:32;7023:3;7008:19;;6809:224::o;7038:351::-;7240:2;7222:21;;;7279:2;7259:18;;;7252:30;7318:29;7313:2;7298:18;;7291:57;7380:2;7365:18;;7212:177::o;7394:351::-;7596:2;7578:21;;;7635:2;7615:18;;;7608:30;7674:29;7669:2;7654:18;;7647:57;7736:2;7721:18;;7568:177::o;7750:404::-;7952:2;7934:21;;;7991:2;7971:18;;;7964:30;8030:34;8025:2;8010:18;;8003:62;-1:-1:-1;;;8096:2:1;8081:18;;8074:38;8144:3;8129:19;;7924:230::o;8159:397::-;8361:2;8343:21;;;8400:2;8380:18;;;8373:30;8439:34;8434:2;8419:18;;8412:62;-1:-1:-1;;;8505:2:1;8490:18;;8483:31;8546:3;8531:19;;8333:223::o;8561:356::-;8763:2;8745:21;;;8782:18;;;8775:30;8841:34;8836:2;8821:18;;8814:62;8908:2;8893:18;;8735:182::o;8922:405::-;9124:2;9106:21;;;9163:2;9143:18;;;9136:30;9202:34;9197:2;9182:18;;9175:62;-1:-1:-1;;;9268:2:1;9253:18;;9246:39;9317:3;9302:19;;9096:231::o;9332:401::-;9534:2;9516:21;;;9573:2;9553:18;;;9546:30;9612:34;9607:2;9592:18;;9585:62;-1:-1:-1;;;9678:2:1;9663:18;;9656:35;9723:3;9708:19;;9506:227::o;9738:400::-;9940:2;9922:21;;;9979:2;9959:18;;;9952:30;10018:34;10013:2;9998:18;;9991:62;-1:-1:-1;;;10084:2:1;10069:18;;10062:34;10128:3;10113:19;;9912:226::o;10143:177::-;10289:25;;;10277:2;10262:18;;10244:76::o;10325:983::-;;10635:3;10624:9;10620:19;10666:6;10655:9;10648:25;10692:2;10730:6;10725:2;10714:9;10710:18;10703:34;10773:3;10768:2;10757:9;10753:18;10746:31;10797:6;10832;10826:13;10863:6;10855;10848:22;10901:3;10890:9;10886:19;10879:26;;10940:2;10932:6;10928:15;10914:29;;10961:4;10974:195;10988:6;10985:1;10982:13;10974:195;;;11053:13;;-1:-1:-1;;;;;11049:39:1;11037:52;;11144:15;;;;11109:12;;;;11085:1;11003:9;10974:195;;;-1:-1:-1;;;;;;;11225:32:1;;;;11220:2;11205:18;;11198:60;-1:-1:-1;;;11289:3:1;11274:19;11267:35;11186:3;10596:712;-1:-1:-1;;;10596:712:1:o;11313:319::-;11515:25;;;11571:2;11556:18;;11549:34;;;;11614:2;11599:18;;11592:34;11503:2;11488:18;;11470:162::o;11637:184::-;11809:4;11797:17;;;;11779:36;;11767:2;11752:18;;11734:87::o;11826:128::-;;11897:1;11893:6;11890:1;11887:13;11884:2;;;11903:18;;:::i;:::-;-1:-1:-1;11939:9:1;;11874:80::o;11959:217::-;;12025:1;12015:2;;-1:-1:-1;;;12050:31:1;;12104:4;12101:1;12094:15;12132:4;12057:1;12122:15;12015:2;-1:-1:-1;12161:9:1;;12005:171::o;12181:168::-;;12287:1;12283;12279:6;12275:14;12272:1;12269:21;12264:1;12257:9;12250:17;12246:45;12243:2;;;12294:18;;:::i;:::-;-1:-1:-1;12334:9:1;;12233:116::o;12354:125::-;;12422:1;12419;12416:8;12413:2;;;12427:18;;:::i;:::-;-1:-1:-1;12464:9:1;;12403:76::o;12484:380::-;12569:1;12559:12;;12616:1;12606:12;;;12627:2;;12681:4;12673:6;12669:17;12659:27;;12627:2;12734;12726:6;12723:14;12703:18;12700:38;12697:2;;;12780:10;12775:3;12771:20;12768:1;12761:31;12815:4;12812:1;12805:15;12843:4;12840:1;12833:15;12697:2;;12539:325;;;:::o;12869:135::-;;-1:-1:-1;;12929:17:1;;12926:2;;;12949:18;;:::i;:::-;-1:-1:-1;12996:1:1;12985:13;;12916:88::o;13009:127::-;13070:10;13065:3;13061:20;13058:1;13051:31;13101:4;13098:1;13091:15;13125:4;13122:1;13115:15;13141:133;-1:-1:-1;;;;;13218:31:1;;13208:42;;13198:2;;13264:1;13261;13254:12;13198:2;13188:86;:::o;13279:120::-;13367:5;13360:13;13353:21;13346:5;13343:32;13333:2;;13389:1;13386;13379:12

Swarm Source

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