ETH Price: $2,681.21 (+1.66%)

Token

AKATSUKINU (AKINU)
 

Overview

Max Total Supply

10,000,000,000,000 AKINU

Holders

48

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
AKINU

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed
/**

      >>       >=>   >=>         >>       >===>>=====>   >=>>=>   >=>     >=> >=>   >=>   >=> >==>    >=> >=>     >=> 
     >>=>      >=>  >=>         >>=>           >=>     >=>    >=> >=>     >=> >=>  >=>    >=> >> >=>  >=> >=>     >=> 
    >> >=>     >=> >=>         >> >=>          >=>      >=>       >=>     >=> >=> >=>     >=> >=> >=> >=> >=>     >=> 
   >=>  >=>    >>=>>          >=>  >=>         >=>        >=>     >=>     >=> >>=>>       >=> >=>  >=>>=> >=>     >=> 
  >=====>>=>   >=>  >=>      >=====>>=>        >=>           >=>  >=>     >=> >=>  >=>    >=> >=>   > >=> >=>     >=> 
 >=>      >=>  >=>   >=>    >=>      >=>       >=>     >=>    >=> >=>     >=> >=>   >=>   >=> >=>    >>=> >=>     >=> 
>=>        >=> >=>     >=> >=>        >=>      >=>       >=>>=>     >====>    >=>     >=> >=> >=>     >=>   >====>    
                                                                                                                      

https://t.me/akatsukinuportal

https://akatsukinu.com


*/
pragma solidity ^0.8.4;

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 value
    );
}

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

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

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

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

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

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

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

contract AKINU is Context, IERC20, Ownable {
    
    using SafeMath for uint256;

    string private constant _name = "AKATSUKINU";
    string private constant _symbol = "AKINU";
    uint8 private constant _decimals = 9;

    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    mapping (address => uint256) private _buyMap;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 1e13 * 10**9;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _tFeeTotal;
    mapping(address => bool) private _isSniper;
    uint256 public launchTime;

    uint256 private _redisFeeJeets = 0;
    uint256 private _taxFeeJeets = 12;

    uint256 private _redisFeeOnBuy = 0;
    uint256 private _taxFeeOnBuy = 12;
    
    uint256 private _redisFeeOnSell = 0;
    uint256 private _taxFeeOnSell = 12;
    
    uint256 private _redisFee = _redisFeeOnSell;
    uint256 private _taxFee = _taxFeeOnSell;
    uint256 private _burnFee = 25;
    
    uint256 private _previousredisFee = _redisFee;
    uint256 private _previoustaxFee = _taxFee;
    uint256 private _previousburnFee = _burnFee;
    
    address payable private _marketingAddress = payable(0xE50B5063E1F5b139D16F4091e30787D834d7b578);
    address public constant deadAddress = 0x000000000000000000000000000000000000dEaD;

    uint256 public timeJeets = 2 minutes;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = true;
    bool private isMaxBuyActivated = true;
    
    uint256 public _maxTxAmount = 1e11 * 10**9; 
    uint256 public _maxWalletSize = 2e11 * 10**9;
    uint256 public _swapTokensAtAmount = 1000 * 10**9;
    uint256 public _minimumBuyAmount = 1e11 * 10**9 ;

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

    constructor() {
        
        _rOwned[_msgSender()] = _rTotal;
        
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_marketingAddress] = true;
        _isExcludedFromFee[deadAddress] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

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

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

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

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

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

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

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

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

    function removeAllFee() private {
        if (_redisFee == 0 && _taxFee == 0 && _burnFee == 0) return;
    
        _previousredisFee = _redisFee;
        _previoustaxFee = _taxFee;
        _previousburnFee = _burnFee;
        
        _redisFee = 0;
        _taxFee = 0;
        _burnFee = 0;
    }

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

    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");
        require(!_isSniper[to], 'Stop sniping!');
        require(!_isSniper[from], 'Stop sniping!');
        require(!_isSniper[_msgSender()], 'Stop sniping!');

        if (from != owner() && to != owner()) {
            
            if (!tradingOpen) {
                revert("Trading not yet enabled!");
            }
            
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (to != address(this) && from != address(this) && to != _marketingAddress && from != _marketingAddress) {
                    require(amount <= _maxTxAmount, "TOKEN: Max Transaction Limit");
                }
            }

            if (to != uniswapV2Pair && to != _marketingAddress && to != address(this) && to != deadAddress) {
                require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!");
                if (isMaxBuyActivated) {
                    if (block.timestamp <= launchTime + 2 minutes) {
                        require(amount <= _minimumBuyAmount);
                    }
                }
            }
            
            uint256 contractTokenBalance = balanceOf(address(this));
            bool canSwap = contractTokenBalance > _swapTokensAtAmount;
            
            if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
                uint256 burntAmount = 0;
                if (_burnFee > 0) {
                    burntAmount = contractTokenBalance.mul(_burnFee).div(10**2);
                    burnTokens(burntAmount);
                }
                swapTokensForEth(contractTokenBalance - burntAmount);
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        
        bool takeFee = true;

        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
                    _buyMap[to] = block.timestamp;
                    _redisFee = _redisFeeOnBuy;
                    _taxFee = _taxFeeOnBuy;
                    if (block.timestamp == launchTime) {
                        _isSniper[to] = true;
                    }
            }
    
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
                if (_buyMap[from] != 0 && (_buyMap[from] + timeJeets >= block.timestamp)) {
                    _redisFee = _redisFeeJeets;
                    _taxFee = _taxFeeJeets;
                } else {
                    _redisFee = _redisFeeOnSell;
                    _taxFee = _taxFeeOnSell;
                }
            }
        }

        _tokenTransfer(from, to, amount, takeFee);
    }

    function burnTokens(uint256 burntAmount) private {
        _transfer(address(this), deadAddress, burntAmount);
    }

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

    function sendETHToFee(uint256 amount) private {
        _marketingAddress.transfer(amount);
    }

    function setTrading() public onlyOwner {
        require(!tradingOpen);
        tradingOpen = true;
        launchTime = block.timestamp;
    }

    function setMarketingWallet(address marketingAddress) external {
        require(_msgSender() == _marketingAddress);
        _marketingAddress = payable(marketingAddress);
        _isExcludedFromFee[_marketingAddress] = true;
    }

    function setIsMaxBuyActivated(bool _isMaxBuyActivated) public onlyOwner {
        isMaxBuyActivated = _isMaxBuyActivated;
    }

    function manualswap(uint256 amount) external {
        require(_msgSender() == _marketingAddress);
        require(amount <= balanceOf(address(this)) && amount > 0, "Wrong amount");
        swapTokensForEth(amount);
    }

    function addSniper(address[] memory snipers) external onlyOwner {
        for(uint256 i= 0; i< snipers.length; i++){
            _isSniper[snipers[i]] = true;
            
        }
    }

    function removeSniper(address sniper) external onlyOwner {
        if (_isSniper[sniper]) {
            _isSniper[sniper] = false;
        }
    }

    function isSniper(address sniper) external view returns (bool){
        return _isSniper[sniper];
    }

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

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

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

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

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

    receive() external payable {}

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

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

        return (tTransferAmount, tFee, tTeam);
    }

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

        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();

        return rSupply.div(tSupply);
    }

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

    function toggleSwap(bool _swapEnabled) public onlyOwner {
        swapEnabled = _swapEnabled;
    }
    
    function setMaxTxnAmount(uint256 maxTxAmount) external onlyOwner {
        require(maxTxAmount >= 5e9 * 10**9, "Maximum transaction amount must be greater than 0.5%");
        _maxTxAmount = maxTxAmount;
    }
    
    function setMaxWalletSize(uint256 maxWalletSize) external onlyOwner {
        require(maxWalletSize >= _maxWalletSize);
        _maxWalletSize = maxWalletSize;
    }

    function setTaxFee(uint256 amountBuy, uint256 amountSell) external onlyOwner {
        require(amountBuy >= 0 && amountBuy <= 13);
        require(amountSell >= 0 && amountSell <= 13);
        _taxFeeOnBuy = amountBuy;
        _taxFeeOnSell = amountSell;
    }

    function setRefFee(uint256 amountRefBuy, uint256 amountRefSell) external onlyOwner {
        require(amountRefBuy >= 0 && amountRefBuy <= 1);
        require(amountRefSell >= 0 && amountRefSell <= 1);
        _redisFeeOnBuy = amountRefBuy;
        _redisFeeOnSell = amountRefSell;
    }

    function setBurnFee(uint256 amount) external onlyOwner {
        require(amount >= 0 && amount <= 1);
        _burnFee = amount;
    }

    function setJeetsFee(uint256 amountRedisJeets, uint256 amountTaxJeets) external onlyOwner {
        require(amountRedisJeets >= 0 && amountRedisJeets <= 1);
        require(amountTaxJeets >= 0 && amountTaxJeets <= 19);
        _redisFeeJeets = amountRedisJeets;
        _taxFeeJeets = amountTaxJeets;
    }

    function setTimeJeets(uint256 hoursTime) external onlyOwner {
        require(hoursTime >= 0 && hoursTime <= 4);
        timeJeets = hoursTime * 1 hours;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_minimumBuyAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"snipers","type":"address[]"}],"name":"addSniper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"isSniper","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sniper","type":"address"}],"name":"removeSniper","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setBurnFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isMaxBuyActivated","type":"bool"}],"name":"setIsMaxBuyActivated","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRedisJeets","type":"uint256"},{"internalType":"uint256","name":"amountTaxJeets","type":"uint256"}],"name":"setJeetsFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountRefBuy","type":"uint256"},{"internalType":"uint256","name":"amountRefSell","type":"uint256"}],"name":"setRefFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountBuy","type":"uint256"},{"internalType":"uint256","name":"amountSell","type":"uint256"}],"name":"setTaxFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"hoursTime","type":"uint256"}],"name":"setTimeJeets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"timeJeets","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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"}]

60806040526200001c69021e19e0c9bab240000060001962000409565b6200002a90600019620003e3565b6007556000600b819055600c808055600d829055600e819055600f82905560108190556011829055601281905560196013819055601492909255601555601655601780546001600160a01b03191673e50b5063e1f5b139d16f4091e30787d834d7b5781790556078601855601a805461010160b01b62ffffff60a81b1990911617905568056bc75e2d63100000601b819055680ad78ebc5ac6200000601c5564e8d4a51000601d55601e55348015620000e257600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506007543360009081526002602090815260409182902092909255601980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a01559260048083019392829003018186803b1580156200019b57600080fd5b505afa158015620001b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d69190620003b1565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200021f57600080fd5b505afa15801562000234573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025a9190620003b1565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015620002a357600080fd5b505af1158015620002b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002de9190620003b1565b601a80546001600160a01b0319166001600160a01b039283161790556000805482168152600660209081526040808320805460ff19908116600190811790925530855282852080548216831790556017549095168452818420805486168217905561dead84527f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e22805490951617909355915169021e19e0c9bab2400000815233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200042c565b600060208284031215620003c457600080fd5b81516001600160a01b0381168114620003dc57600080fd5b9392505050565b6000828210156200040457634e487b7160e01b600052601160045260246000fd5b500390565b6000826200042757634e487b7160e01b600052601260045260246000fd5b500690565b612250806200043c6000396000f3fe60806040526004361061021e5760003560e01c806370a082311161012357806395d89b41116100ab578063dd62ed3e1161006f578063dd62ed3e14610644578063e0f9f6a01461068a578063ea1644d5146106aa578063f2fde38b146106ca578063fe72c3c1146106ea57600080fd5b806395d89b41146105965780639ec350ed146105c45780639f131571146105e4578063a9059cbb14610604578063c55284901461062457600080fd5b80637c519ffb116100f25780637c519ffb146105175780637d1db4a51461052c578063881dce60146105425780638da5cb5b146105625780638f9a55c01461058057600080fd5b806370a08231146104ac578063715018a6146104cc57806374010ece146104e1578063790ca4131461050157600080fd5b8063313ce567116101a65780634bf2c7c9116101755780634bf2c7c9146104215780635d098b38146104415780636b9cf534146104615780636d8aa8f8146104775780636fc3eaec1461049757600080fd5b8063313ce567146103a557806333251a0b146103c157806338eea22d146103e157806349bd5a5e1461040157600080fd5b806318160ddd116101ed57806318160ddd1461031057806323b872dd1461033757806327c8f8351461035757806328bb665a1461036d5780632fd689e31461038f57600080fd5b806306fdde031461022a578063095ea7b31461026f5780630f3a325f1461029f5780631694505e146102d857600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5060408051808201909152600a815269414b415453554b494e5560b01b60208201525b6040516102669190611fee565b60405180910390f35b34801561027b57600080fd5b5061028f61028a366004611e99565b610700565b6040519015158152602001610266565b3480156102ab57600080fd5b5061028f6102ba366004611de5565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102e457600080fd5b506019546102f8906001600160a01b031681565b6040516001600160a01b039091168152602001610266565b34801561031c57600080fd5b5069021e19e0c9bab24000005b604051908152602001610266565b34801561034357600080fd5b5061028f610352366004611e58565b610717565b34801561036357600080fd5b506102f861dead81565b34801561037957600080fd5b5061038d610388366004611ec5565b610780565b005b34801561039b57600080fd5b50610329601d5481565b3480156103b157600080fd5b5060405160098152602001610266565b3480156103cd57600080fd5b5061038d6103dc366004611de5565b61081f565b3480156103ed57600080fd5b5061038d6103fc366004611fcc565b61088e565b34801561040d57600080fd5b50601a546102f8906001600160a01b031681565b34801561042d57600080fd5b5061038d61043c366004611fb3565b6108df565b34801561044d57600080fd5b5061038d61045c366004611de5565b61091c565b34801561046d57600080fd5b50610329601e5481565b34801561048357600080fd5b5061038d610492366004611f91565b610976565b3480156104a357600080fd5b5061038d6109be565b3480156104b857600080fd5b506103296104c7366004611de5565b6109e8565b3480156104d857600080fd5b5061038d610a0a565b3480156104ed57600080fd5b5061038d6104fc366004611fb3565b610a7e565b34801561050d57600080fd5b50610329600a5481565b34801561052357600080fd5b5061038d610b22565b34801561053857600080fd5b50610329601b5481565b34801561054e57600080fd5b5061038d61055d366004611fb3565b610b7c565b34801561056e57600080fd5b506000546001600160a01b03166102f8565b34801561058c57600080fd5b50610329601c5481565b3480156105a257600080fd5b50604080518082019091526005815264414b494e5560d81b6020820152610259565b3480156105d057600080fd5b5061038d6105df366004611fcc565b610bf8565b3480156105f057600080fd5b5061038d6105ff366004611f91565b610c49565b34801561061057600080fd5b5061028f61061f366004611e99565b610c91565b34801561063057600080fd5b5061038d61063f366004611fcc565b610c9e565b34801561065057600080fd5b5061032961065f366004611e1f565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561069657600080fd5b5061038d6106a5366004611fb3565b610cef565b3480156106b657600080fd5b5061038d6106c5366004611fb3565b610d39565b3480156106d657600080fd5b5061038d6106e5366004611de5565b610d77565b3480156106f657600080fd5b5061032960185481565b600061070d338484610e61565b5060015b92915050565b6000610724848484610f85565b6107768433610771856040518060600160405280602881526020016121f3602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190611676565b610e61565b5060019392505050565b6000546001600160a01b031633146107b35760405162461bcd60e51b81526004016107aa90612043565b60405180910390fd5b60005b815181101561081b576001600960008484815181106107d7576107d76121b1565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061081381612180565b9150506107b6565b5050565b6000546001600160a01b031633146108495760405162461bcd60e51b81526004016107aa90612043565b6001600160a01b03811660009081526009602052604090205460ff161561088b576001600160a01b0381166000908152600960205260409020805460ff191690555b50565b6000546001600160a01b031633146108b85760405162461bcd60e51b81526004016107aa90612043565b60018211156108c657600080fd5b60018111156108d457600080fd5b600d91909155600f55565b6000546001600160a01b031633146109095760405162461bcd60e51b81526004016107aa90612043565b600181111561091757600080fd5b601355565b6017546001600160a01b0316336001600160a01b03161461093c57600080fd5b601780546001600160a01b039092166001600160a01b0319909216821790556000908152600660205260409020805460ff19166001179055565b6000546001600160a01b031633146109a05760405162461bcd60e51b81526004016107aa90612043565b601a8054911515600160b01b0260ff60b01b19909216919091179055565b6017546001600160a01b0316336001600160a01b0316146109de57600080fd5b4761088b816116b0565b6001600160a01b038116600090815260026020526040812054610711906116ea565b6000546001600160a01b03163314610a345760405162461bcd60e51b81526004016107aa90612043565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610aa85760405162461bcd60e51b81526004016107aa90612043565b674563918244f40000811015610b1d5760405162461bcd60e51b815260206004820152603460248201527f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060448201527362652067726561746572207468616e20302e352560601b60648201526084016107aa565b601b55565b6000546001600160a01b03163314610b4c5760405162461bcd60e51b81526004016107aa90612043565b601a54600160a01b900460ff1615610b6357600080fd5b601a805460ff60a01b1916600160a01b17905542600a55565b6017546001600160a01b0316336001600160a01b031614610b9c57600080fd5b610ba5306109e8565b8111158015610bb45750600081115b610bef5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b60448201526064016107aa565b61088b8161176e565b6000546001600160a01b03163314610c225760405162461bcd60e51b81526004016107aa90612043565b6001821115610c3057600080fd5b6013811115610c3e57600080fd5b600b91909155600c55565b6000546001600160a01b03163314610c735760405162461bcd60e51b81526004016107aa90612043565b601a8054911515600160b81b0260ff60b81b19909216919091179055565b600061070d338484610f85565b6000546001600160a01b03163314610cc85760405162461bcd60e51b81526004016107aa90612043565b600d821115610cd657600080fd5b600d811115610ce457600080fd5b600e91909155601055565b6000546001600160a01b03163314610d195760405162461bcd60e51b81526004016107aa90612043565b6004811115610d2757600080fd5b610d3381610e1061214a565b60185550565b6000546001600160a01b03163314610d635760405162461bcd60e51b81526004016107aa90612043565b601c54811015610d7257600080fd5b601c55565b6000546001600160a01b03163314610da15760405162461bcd60e51b81526004016107aa90612043565b6001600160a01b038116610e065760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107aa565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610ec35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107aa565b6001600160a01b038216610f245760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107aa565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fe95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107aa565b6001600160a01b03821661104b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107aa565b600081116110ad5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107aa565b6001600160a01b03821660009081526009602052604090205460ff16156110e65760405162461bcd60e51b81526004016107aa90612078565b6001600160a01b03831660009081526009602052604090205460ff161561111f5760405162461bcd60e51b81526004016107aa90612078565b3360009081526009602052604090205460ff161561114f5760405162461bcd60e51b81526004016107aa90612078565b6000546001600160a01b0384811691161480159061117b57506000546001600160a01b03838116911614155b156114be57601a54600160a01b900460ff166111d95760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016107aa565b601a546001600160a01b03838116911614801561120457506019546001600160a01b03848116911614155b156112b6576001600160a01b038216301480159061122b57506001600160a01b0383163014155b801561124557506017546001600160a01b03838116911614155b801561125f57506017546001600160a01b03848116911614155b156112b657601b548111156112b65760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016107aa565b601a546001600160a01b038381169116148015906112e257506017546001600160a01b03838116911614155b80156112f757506001600160a01b0382163014155b801561130e57506001600160a01b03821661dead14155b156113b857601c5481611320846109e8565b61132a9190612110565b106113835760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016107aa565b601a54600160b81b900460ff16156113b857600a546113a3906078612110565b42116113b857601e548111156113b857600080fd5b60006113c3306109e8565b601d5490915081118080156113e25750601a54600160a81b900460ff16155b80156113fc5750601a546001600160a01b03868116911614155b80156114115750601a54600160b01b900460ff165b801561143657506001600160a01b03851660009081526006602052604090205460ff16155b801561145b57506001600160a01b03841660009081526006602052604090205460ff16155b156114bb57601354600090156114965761148b6064611485601354866118f790919063ffffffff16565b90611976565b9050611496816119b8565b6114a86114a38285612169565b61176e565b4780156114b8576114b8476116b0565b50505b50505b6001600160a01b03831660009081526006602052604090205460019060ff168061150057506001600160a01b03831660009081526006602052604090205460ff165b806115325750601a546001600160a01b038581169116148015906115325750601a546001600160a01b03848116911614155b1561153f57506000611664565b601a546001600160a01b03858116911614801561156a57506019546001600160a01b03848116911614155b156115c5576001600160a01b03831660009081526004602052604090204290819055600d54601155600e54601255600a5414156115c5576001600160a01b0383166000908152600960205260409020805460ff191660011790555b601a546001600160a01b0384811691161480156115f057506019546001600160a01b03858116911614155b15611664576001600160a01b0384166000908152600460205260409020541580159061164157506018546001600160a01b038516600090815260046020526040902054429161163e91612110565b10155b1561165757600b54601155600c54601255611664565b600f546011556010546012555b611670848484846119c5565b50505050565b6000818484111561169a5760405162461bcd60e51b81526004016107aa9190611fee565b5060006116a78486612169565b95945050505050565b6017546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561081b573d6000803e3d6000fd5b60006007548211156117515760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016107aa565b600061175b6119f9565b90506117678382611976565b9392505050565b601a805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106117b6576117b66121b1565b6001600160a01b03928316602091820292909201810191909152601954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561180a57600080fd5b505afa15801561181e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118429190611e02565b81600181518110611855576118556121b1565b6001600160a01b03928316602091820292909201015260195461187b9130911684610e61565b60195460405163791ac94760e01b81526001600160a01b039091169063791ac947906118b490859060009086903090429060040161209f565b600060405180830381600087803b1580156118ce57600080fd5b505af11580156118e2573d6000803e3d6000fd5b5050601a805460ff60a81b1916905550505050565b60008261190657506000610711565b6000611912838561214a565b90508261191f8583612128565b146117675760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107aa565b600061176783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a1c565b61088b3061dead83610f85565b806119d2576119d2611a4a565b6119dd848484611a8f565b8061167057611670601454601155601554601255601654601355565b6000806000611a06611b86565b9092509050611a158282611976565b9250505090565b60008183611a3d5760405162461bcd60e51b81526004016107aa9190611fee565b5060006116a78486612128565b601154158015611a5a5750601254155b8015611a665750601354155b15611a6d57565b6011805460145560128054601555601380546016556000928390559082905555565b600080600080600080611aa187611bca565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150611ad39087611c27565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054611b029086611c69565b6001600160a01b038916600090815260026020526040902055611b2481611cc8565b611b2e8483611d12565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b7391815260200190565b60405180910390a3505050505050505050565b600754600090819069021e19e0c9bab2400000611ba38282611976565b821015611bc15750506007549269021e19e0c9bab240000092509050565b90939092509050565b6000806000806000806000806000611be78a601154601254611d36565b9250925092506000611bf76119f9565b90506000806000611c0a8e878787611d85565b919e509c509a509598509396509194505050505091939550919395565b600061176783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611676565b600080611c768385612110565b9050838110156117675760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107aa565b6000611cd26119f9565b90506000611ce083836118f7565b30600090815260026020526040902054909150611cfd9082611c69565b30600090815260026020526040902055505050565b600754611d1f9083611c27565b600755600854611d2f9082611c69565b6008555050565b6000808080611d4a606461148589896118f7565b90506000611d5d60646114858a896118f7565b90506000611d7582611d6f8b86611c27565b90611c27565b9992985090965090945050505050565b6000808080611d9488866118f7565b90506000611da288876118f7565b90506000611db088886118f7565b90506000611dc282611d6f8686611c27565b939b939a50919850919650505050505050565b8035611de0816121dd565b919050565b600060208284031215611df757600080fd5b8135611767816121dd565b600060208284031215611e1457600080fd5b8151611767816121dd565b60008060408385031215611e3257600080fd5b8235611e3d816121dd565b91506020830135611e4d816121dd565b809150509250929050565b600080600060608486031215611e6d57600080fd5b8335611e78816121dd565b92506020840135611e88816121dd565b929592945050506040919091013590565b60008060408385031215611eac57600080fd5b8235611eb7816121dd565b946020939093013593505050565b60006020808385031215611ed857600080fd5b823567ffffffffffffffff80821115611ef057600080fd5b818501915085601f830112611f0457600080fd5b813581811115611f1657611f166121c7565b8060051b604051601f19603f83011681018181108582111715611f3b57611f3b6121c7565b604052828152858101935084860182860187018a1015611f5a57600080fd5b600095505b83861015611f8457611f7081611dd5565b855260019590950194938601938601611f5f565b5098975050505050505050565b600060208284031215611fa357600080fd5b8135801515811461176757600080fd5b600060208284031215611fc557600080fd5b5035919050565b60008060408385031215611fdf57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b8181101561201b57858101830151858201604001528201611fff565b8181111561202d576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600d908201526c53746f7020736e6970696e672160981b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ef5784516001600160a01b0316835293830193918301916001016120ca565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156121235761212361219b565b500190565b60008261214557634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156121645761216461219b565b500290565b60008282101561217b5761217b61219b565b500390565b60006000198214156121945761219461219b565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461088b57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a9a4e06715ed521463c0fd1c855ceb86f4adc83c997e3d6976880aa8a2ee387c64736f6c63430008070033

Deployed Bytecode

0x60806040526004361061021e5760003560e01c806370a082311161012357806395d89b41116100ab578063dd62ed3e1161006f578063dd62ed3e14610644578063e0f9f6a01461068a578063ea1644d5146106aa578063f2fde38b146106ca578063fe72c3c1146106ea57600080fd5b806395d89b41146105965780639ec350ed146105c45780639f131571146105e4578063a9059cbb14610604578063c55284901461062457600080fd5b80637c519ffb116100f25780637c519ffb146105175780637d1db4a51461052c578063881dce60146105425780638da5cb5b146105625780638f9a55c01461058057600080fd5b806370a08231146104ac578063715018a6146104cc57806374010ece146104e1578063790ca4131461050157600080fd5b8063313ce567116101a65780634bf2c7c9116101755780634bf2c7c9146104215780635d098b38146104415780636b9cf534146104615780636d8aa8f8146104775780636fc3eaec1461049757600080fd5b8063313ce567146103a557806333251a0b146103c157806338eea22d146103e157806349bd5a5e1461040157600080fd5b806318160ddd116101ed57806318160ddd1461031057806323b872dd1461033757806327c8f8351461035757806328bb665a1461036d5780632fd689e31461038f57600080fd5b806306fdde031461022a578063095ea7b31461026f5780630f3a325f1461029f5780631694505e146102d857600080fd5b3661022557005b600080fd5b34801561023657600080fd5b5060408051808201909152600a815269414b415453554b494e5560b01b60208201525b6040516102669190611fee565b60405180910390f35b34801561027b57600080fd5b5061028f61028a366004611e99565b610700565b6040519015158152602001610266565b3480156102ab57600080fd5b5061028f6102ba366004611de5565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102e457600080fd5b506019546102f8906001600160a01b031681565b6040516001600160a01b039091168152602001610266565b34801561031c57600080fd5b5069021e19e0c9bab24000005b604051908152602001610266565b34801561034357600080fd5b5061028f610352366004611e58565b610717565b34801561036357600080fd5b506102f861dead81565b34801561037957600080fd5b5061038d610388366004611ec5565b610780565b005b34801561039b57600080fd5b50610329601d5481565b3480156103b157600080fd5b5060405160098152602001610266565b3480156103cd57600080fd5b5061038d6103dc366004611de5565b61081f565b3480156103ed57600080fd5b5061038d6103fc366004611fcc565b61088e565b34801561040d57600080fd5b50601a546102f8906001600160a01b031681565b34801561042d57600080fd5b5061038d61043c366004611fb3565b6108df565b34801561044d57600080fd5b5061038d61045c366004611de5565b61091c565b34801561046d57600080fd5b50610329601e5481565b34801561048357600080fd5b5061038d610492366004611f91565b610976565b3480156104a357600080fd5b5061038d6109be565b3480156104b857600080fd5b506103296104c7366004611de5565b6109e8565b3480156104d857600080fd5b5061038d610a0a565b3480156104ed57600080fd5b5061038d6104fc366004611fb3565b610a7e565b34801561050d57600080fd5b50610329600a5481565b34801561052357600080fd5b5061038d610b22565b34801561053857600080fd5b50610329601b5481565b34801561054e57600080fd5b5061038d61055d366004611fb3565b610b7c565b34801561056e57600080fd5b506000546001600160a01b03166102f8565b34801561058c57600080fd5b50610329601c5481565b3480156105a257600080fd5b50604080518082019091526005815264414b494e5560d81b6020820152610259565b3480156105d057600080fd5b5061038d6105df366004611fcc565b610bf8565b3480156105f057600080fd5b5061038d6105ff366004611f91565b610c49565b34801561061057600080fd5b5061028f61061f366004611e99565b610c91565b34801561063057600080fd5b5061038d61063f366004611fcc565b610c9e565b34801561065057600080fd5b5061032961065f366004611e1f565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561069657600080fd5b5061038d6106a5366004611fb3565b610cef565b3480156106b657600080fd5b5061038d6106c5366004611fb3565b610d39565b3480156106d657600080fd5b5061038d6106e5366004611de5565b610d77565b3480156106f657600080fd5b5061032960185481565b600061070d338484610e61565b5060015b92915050565b6000610724848484610f85565b6107768433610771856040518060600160405280602881526020016121f3602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190611676565b610e61565b5060019392505050565b6000546001600160a01b031633146107b35760405162461bcd60e51b81526004016107aa90612043565b60405180910390fd5b60005b815181101561081b576001600960008484815181106107d7576107d76121b1565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061081381612180565b9150506107b6565b5050565b6000546001600160a01b031633146108495760405162461bcd60e51b81526004016107aa90612043565b6001600160a01b03811660009081526009602052604090205460ff161561088b576001600160a01b0381166000908152600960205260409020805460ff191690555b50565b6000546001600160a01b031633146108b85760405162461bcd60e51b81526004016107aa90612043565b60018211156108c657600080fd5b60018111156108d457600080fd5b600d91909155600f55565b6000546001600160a01b031633146109095760405162461bcd60e51b81526004016107aa90612043565b600181111561091757600080fd5b601355565b6017546001600160a01b0316336001600160a01b03161461093c57600080fd5b601780546001600160a01b039092166001600160a01b0319909216821790556000908152600660205260409020805460ff19166001179055565b6000546001600160a01b031633146109a05760405162461bcd60e51b81526004016107aa90612043565b601a8054911515600160b01b0260ff60b01b19909216919091179055565b6017546001600160a01b0316336001600160a01b0316146109de57600080fd5b4761088b816116b0565b6001600160a01b038116600090815260026020526040812054610711906116ea565b6000546001600160a01b03163314610a345760405162461bcd60e51b81526004016107aa90612043565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610aa85760405162461bcd60e51b81526004016107aa90612043565b674563918244f40000811015610b1d5760405162461bcd60e51b815260206004820152603460248201527f4d6178696d756d207472616e73616374696f6e20616d6f756e74206d7573742060448201527362652067726561746572207468616e20302e352560601b60648201526084016107aa565b601b55565b6000546001600160a01b03163314610b4c5760405162461bcd60e51b81526004016107aa90612043565b601a54600160a01b900460ff1615610b6357600080fd5b601a805460ff60a01b1916600160a01b17905542600a55565b6017546001600160a01b0316336001600160a01b031614610b9c57600080fd5b610ba5306109e8565b8111158015610bb45750600081115b610bef5760405162461bcd60e51b815260206004820152600c60248201526b15dc9bdb99c8185b5bdd5b9d60a21b60448201526064016107aa565b61088b8161176e565b6000546001600160a01b03163314610c225760405162461bcd60e51b81526004016107aa90612043565b6001821115610c3057600080fd5b6013811115610c3e57600080fd5b600b91909155600c55565b6000546001600160a01b03163314610c735760405162461bcd60e51b81526004016107aa90612043565b601a8054911515600160b81b0260ff60b81b19909216919091179055565b600061070d338484610f85565b6000546001600160a01b03163314610cc85760405162461bcd60e51b81526004016107aa90612043565b600d821115610cd657600080fd5b600d811115610ce457600080fd5b600e91909155601055565b6000546001600160a01b03163314610d195760405162461bcd60e51b81526004016107aa90612043565b6004811115610d2757600080fd5b610d3381610e1061214a565b60185550565b6000546001600160a01b03163314610d635760405162461bcd60e51b81526004016107aa90612043565b601c54811015610d7257600080fd5b601c55565b6000546001600160a01b03163314610da15760405162461bcd60e51b81526004016107aa90612043565b6001600160a01b038116610e065760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107aa565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610ec35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107aa565b6001600160a01b038216610f245760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107aa565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fe95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107aa565b6001600160a01b03821661104b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107aa565b600081116110ad5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107aa565b6001600160a01b03821660009081526009602052604090205460ff16156110e65760405162461bcd60e51b81526004016107aa90612078565b6001600160a01b03831660009081526009602052604090205460ff161561111f5760405162461bcd60e51b81526004016107aa90612078565b3360009081526009602052604090205460ff161561114f5760405162461bcd60e51b81526004016107aa90612078565b6000546001600160a01b0384811691161480159061117b57506000546001600160a01b03838116911614155b156114be57601a54600160a01b900460ff166111d95760405162461bcd60e51b815260206004820152601860248201527f54726164696e67206e6f742079657420656e61626c656421000000000000000060448201526064016107aa565b601a546001600160a01b03838116911614801561120457506019546001600160a01b03848116911614155b156112b6576001600160a01b038216301480159061122b57506001600160a01b0383163014155b801561124557506017546001600160a01b03838116911614155b801561125f57506017546001600160a01b03848116911614155b156112b657601b548111156112b65760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016107aa565b601a546001600160a01b038381169116148015906112e257506017546001600160a01b03838116911614155b80156112f757506001600160a01b0382163014155b801561130e57506001600160a01b03821661dead14155b156113b857601c5481611320846109e8565b61132a9190612110565b106113835760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016107aa565b601a54600160b81b900460ff16156113b857600a546113a3906078612110565b42116113b857601e548111156113b857600080fd5b60006113c3306109e8565b601d5490915081118080156113e25750601a54600160a81b900460ff16155b80156113fc5750601a546001600160a01b03868116911614155b80156114115750601a54600160b01b900460ff165b801561143657506001600160a01b03851660009081526006602052604090205460ff16155b801561145b57506001600160a01b03841660009081526006602052604090205460ff16155b156114bb57601354600090156114965761148b6064611485601354866118f790919063ffffffff16565b90611976565b9050611496816119b8565b6114a86114a38285612169565b61176e565b4780156114b8576114b8476116b0565b50505b50505b6001600160a01b03831660009081526006602052604090205460019060ff168061150057506001600160a01b03831660009081526006602052604090205460ff165b806115325750601a546001600160a01b038581169116148015906115325750601a546001600160a01b03848116911614155b1561153f57506000611664565b601a546001600160a01b03858116911614801561156a57506019546001600160a01b03848116911614155b156115c5576001600160a01b03831660009081526004602052604090204290819055600d54601155600e54601255600a5414156115c5576001600160a01b0383166000908152600960205260409020805460ff191660011790555b601a546001600160a01b0384811691161480156115f057506019546001600160a01b03858116911614155b15611664576001600160a01b0384166000908152600460205260409020541580159061164157506018546001600160a01b038516600090815260046020526040902054429161163e91612110565b10155b1561165757600b54601155600c54601255611664565b600f546011556010546012555b611670848484846119c5565b50505050565b6000818484111561169a5760405162461bcd60e51b81526004016107aa9190611fee565b5060006116a78486612169565b95945050505050565b6017546040516001600160a01b039091169082156108fc029083906000818181858888f1935050505015801561081b573d6000803e3d6000fd5b60006007548211156117515760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b60648201526084016107aa565b600061175b6119f9565b90506117678382611976565b9392505050565b601a805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106117b6576117b66121b1565b6001600160a01b03928316602091820292909201810191909152601954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561180a57600080fd5b505afa15801561181e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118429190611e02565b81600181518110611855576118556121b1565b6001600160a01b03928316602091820292909201015260195461187b9130911684610e61565b60195460405163791ac94760e01b81526001600160a01b039091169063791ac947906118b490859060009086903090429060040161209f565b600060405180830381600087803b1580156118ce57600080fd5b505af11580156118e2573d6000803e3d6000fd5b5050601a805460ff60a81b1916905550505050565b60008261190657506000610711565b6000611912838561214a565b90508261191f8583612128565b146117675760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107aa565b600061176783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a1c565b61088b3061dead83610f85565b806119d2576119d2611a4a565b6119dd848484611a8f565b8061167057611670601454601155601554601255601654601355565b6000806000611a06611b86565b9092509050611a158282611976565b9250505090565b60008183611a3d5760405162461bcd60e51b81526004016107aa9190611fee565b5060006116a78486612128565b601154158015611a5a5750601254155b8015611a665750601354155b15611a6d57565b6011805460145560128054601555601380546016556000928390559082905555565b600080600080600080611aa187611bca565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150611ad39087611c27565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054611b029086611c69565b6001600160a01b038916600090815260026020526040902055611b2481611cc8565b611b2e8483611d12565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b7391815260200190565b60405180910390a3505050505050505050565b600754600090819069021e19e0c9bab2400000611ba38282611976565b821015611bc15750506007549269021e19e0c9bab240000092509050565b90939092509050565b6000806000806000806000806000611be78a601154601254611d36565b9250925092506000611bf76119f9565b90506000806000611c0a8e878787611d85565b919e509c509a509598509396509194505050505091939550919395565b600061176783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611676565b600080611c768385612110565b9050838110156117675760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107aa565b6000611cd26119f9565b90506000611ce083836118f7565b30600090815260026020526040902054909150611cfd9082611c69565b30600090815260026020526040902055505050565b600754611d1f9083611c27565b600755600854611d2f9082611c69565b6008555050565b6000808080611d4a606461148589896118f7565b90506000611d5d60646114858a896118f7565b90506000611d7582611d6f8b86611c27565b90611c27565b9992985090965090945050505050565b6000808080611d9488866118f7565b90506000611da288876118f7565b90506000611db088886118f7565b90506000611dc282611d6f8686611c27565b939b939a50919850919650505050505050565b8035611de0816121dd565b919050565b600060208284031215611df757600080fd5b8135611767816121dd565b600060208284031215611e1457600080fd5b8151611767816121dd565b60008060408385031215611e3257600080fd5b8235611e3d816121dd565b91506020830135611e4d816121dd565b809150509250929050565b600080600060608486031215611e6d57600080fd5b8335611e78816121dd565b92506020840135611e88816121dd565b929592945050506040919091013590565b60008060408385031215611eac57600080fd5b8235611eb7816121dd565b946020939093013593505050565b60006020808385031215611ed857600080fd5b823567ffffffffffffffff80821115611ef057600080fd5b818501915085601f830112611f0457600080fd5b813581811115611f1657611f166121c7565b8060051b604051601f19603f83011681018181108582111715611f3b57611f3b6121c7565b604052828152858101935084860182860187018a1015611f5a57600080fd5b600095505b83861015611f8457611f7081611dd5565b855260019590950194938601938601611f5f565b5098975050505050505050565b600060208284031215611fa357600080fd5b8135801515811461176757600080fd5b600060208284031215611fc557600080fd5b5035919050565b60008060408385031215611fdf57600080fd5b50508035926020909101359150565b600060208083528351808285015260005b8181101561201b57858101830151858201604001528201611fff565b8181111561202d576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6020808252600d908201526c53746f7020736e6970696e672160981b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156120ef5784516001600160a01b0316835293830193918301916001016120ca565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156121235761212361219b565b500190565b60008261214557634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156121645761216461219b565b500290565b60008282101561217b5761217b61219b565b500390565b60006000198214156121945761219461219b565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461088b57600080fdfe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220a9a4e06715ed521463c0fd1c855ceb86f4adc83c997e3d6976880aa8a2ee387c64736f6c63430008070033

Deployed Bytecode Sourcemap

5110:16263:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7953:83;;;;;;;;;;-1:-1:-1;8023:5:0;;;;;;;;;;;;-1:-1:-1;;;8023:5:0;;;;7953:83;;;;;;;:::i;:::-;;;;;;;;8878:193;;;;;;;;;;-1:-1:-1;8878:193:0;;;;;:::i;:::-;;:::i;:::-;;;4061:14:1;;4054:22;4036:41;;4024:2;4009:18;8878:193:0;3896:187:1;15920:105:0;;;;;;;;;;-1:-1:-1;15920:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;16000:17:0;15977:4;16000:17;;;:9;:17;;;;;;;;;15920:105;6690:41;;;;;;;;;;-1:-1:-1;6690:41:0;;;;-1:-1:-1;;;;;6690:41:0;;;;;;-1:-1:-1;;;;;3852:32:1;;;3834:51;;3822:2;3807:18;6690:41:0;3688:203:1;8230:95:0;;;;;;;;;;-1:-1:-1;5712:12:0;8230:95;;;11253:25:1;;;11241:2;11226:18;8230:95:0;11107:177:1;9079:446:0;;;;;;;;;;-1:-1:-1;9079:446:0;;;;;:::i;:::-;;:::i;6558:80::-;;;;;;;;;;;;6596:42;6558:80;;15562:192;;;;;;;;;;-1:-1:-1;15562:192:0;;;;;:::i;:::-;;:::i;:::-;;7033:49;;;;;;;;;;;;;;;;8139:83;;;;;;;;;;-1:-1:-1;8139:83:0;;5335:1;12416:36:1;;12404:2;12389:18;8139:83:0;12274:184:1;15762:150:0;;;;;;;;;;-1:-1:-1;15762:150:0;;;;;:::i;:::-;;:::i;20443:291::-;;;;;;;;;;-1:-1:-1;20443:291:0;;;;;:::i;:::-;;:::i;6738:28::-;;;;;;;;;;-1:-1:-1;6738:28:0;;;;-1:-1:-1;;;;;6738:28:0;;;20742:137;;;;;;;;;;-1:-1:-1;20742:137:0;;;;;:::i;:::-;;:::i;14949:235::-;;;;;;;;;;-1:-1:-1;14949:235:0;;;;;:::i;:::-;;:::i;7089:47::-;;;;;;;;;;;;;;;;19657:101;;;;;;;;;;-1:-1:-1;19657:101:0;;;;;:::i;:::-;;:::i;16033:196::-;;;;;;;;;;;;;:::i;8333:138::-;;;;;;;;;;-1:-1:-1;8333:138:0;;;;;:::i;:::-;;:::i;2589:148::-;;;;;;;;;;;;;:::i;19770:212::-;;;;;;;;;;-1:-1:-1;19770:212:0;;;;;:::i;:::-;;:::i;5869:25::-;;;;;;;;;;;;;;;;14794:147;;;;;;;;;;;;;:::i;6932:42::-;;;;;;;;;;;;;;;;15329:225;;;;;;;;;;-1:-1:-1;15329:225:0;;;;;:::i;:::-;;:::i;2375:79::-;;;;;;;;;;-1:-1:-1;2413:7:0;2440:6;-1:-1:-1;;;;;2440:6:0;2375:79;;6982:44;;;;;;;;;;;;;;;;8044:87;;;;;;;;;;-1:-1:-1;8116:7:0;;;;;;;;;;;;-1:-1:-1;;;8116:7:0;;;;8044:87;;20887:311;;;;;;;;;;-1:-1:-1;20887:311:0;;;;;:::i;:::-;;:::i;15192:129::-;;;;;;;;;;-1:-1:-1;15192:129:0;;;;;:::i;:::-;;:::i;8479:199::-;;;;;;;;;;-1:-1:-1;8479:199:0;;;;;:::i;:::-;;:::i;20170:265::-;;;;;;;;;;-1:-1:-1;20170:265:0;;;;;:::i;:::-;;:::i;8686:184::-;;;;;;;;;;-1:-1:-1;8686:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;8835:18:0;;;8803:7;8835:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8686:184;21206:162;;;;;;;;;;-1:-1:-1;21206:162:0;;;;;:::i;:::-;;:::i;19994:168::-;;;;;;;;;;-1:-1:-1;19994:168:0;;;;;:::i;:::-;;:::i;2749:244::-;;;;;;;;;;-1:-1:-1;2749:244:0;;;;;:::i;:::-;;:::i;6647:36::-;;;;;;;;;;;;;;;;8878:193;8980:4;9002:39;1214:10;9025:7;9034:6;9002:8;:39::i;:::-;-1:-1:-1;9059:4:0;8878:193;;;;;:::o;9079:446::-;9211:4;9228:36;9238:6;9246:9;9257:6;9228:9;:36::i;:::-;9275:220;9298:6;1214:10;9346:138;9402:6;9346:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9346:19:0;;;;;;:11;:19;;;;;;;;1214:10;9346:33;;;;;;;;;;:37;:138::i;:::-;9275:8;:220::i;:::-;-1:-1:-1;9513:4:0;9079:446;;;;;:::o;15562:192::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;;;;;;;;;15641:9:::1;15637:110;15658:7;:14;15655:1;:17;15637:110;;;15717:4;15693:9;:21;15703:7;15711:1;15703:10;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;15693:21:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;15693:21:0;:28;;-1:-1:-1;;15693:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15674:3;::::1;::::0;::::1;:::i;:::-;;;;15637:110;;;;15562:192:::0;:::o;15762:150::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15834:17:0;::::1;;::::0;;;:9:::1;:17;::::0;;;;;::::1;;15830:75;;;-1:-1:-1::0;;;;;15868:17:0;::::1;15888:5;15868:17:::0;;;:9:::1;:17;::::0;;;;:25;;-1:-1:-1;;15868:25:0::1;::::0;;15830:75:::1;15762:150:::0;:::o;20443:291::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;20582:1:::1;20566:12;:17;;20537:47;;;::::0;::::1;;20642:1;20625:13;:18;;20595:49;;;::::0;::::1;;20655:14;:29:::0;;;;20695:15:::1;:31:::0;20443:291::o;20742:137::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;20841:1:::1;20831:6;:11;;20808:35;;;::::0;::::1;;20854:8;:17:::0;20742:137::o;14949:235::-;15047:17;;-1:-1:-1;;;;;15047:17:0;1214:10;-1:-1:-1;;;;;15031:33:0;;15023:42;;;;;;15076:17;:45;;-1:-1:-1;;;;;15076:45:0;;;-1:-1:-1;;;;;;15076:45:0;;;;;;;:17;15132:37;;;:18;:37;;;;;:44;;-1:-1:-1;;15132:44:0;15076:45;15132:44;;;14949:235::o;19657:101::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;19724:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;19724:26:0::1;-1:-1:-1::0;;;;19724:26:0;;::::1;::::0;;;::::1;::::0;;19657:101::o;16033:196::-;16099:17;;-1:-1:-1;;;;;16099:17:0;1214:10;-1:-1:-1;;;;;16083:33:0;;16075:42;;;;;;16157:21;16189:32;16157:21;16189:12;:32::i;8333:138::-;-1:-1:-1;;;;;8446:16:0;;8399:7;8446:16;;;:7;:16;;;;;;8426:37;;:19;:37::i;2589:148::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;2696:1:::1;2680:6:::0;;2659:40:::1;::::0;-1:-1:-1;;;;;2680:6:0;;::::1;::::0;2659:40:::1;::::0;2696:1;;2659:40:::1;2727:1;2710:19:::0;;-1:-1:-1;;;;;;2710:19:0::1;::::0;;2589:148::o;19770:212::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;19869:11:::1;19854;:26;;19846:91;;;::::0;-1:-1:-1;;;19846:91:0;;7817:2:1;19846:91:0::1;::::0;::::1;7799:21:1::0;7856:2;7836:18;;;7829:30;7895:34;7875:18;;;7868:62;-1:-1:-1;;;7946:18:1;;;7939:50;8006:19;;19846:91:0::1;7615:416:1::0;19846:91:0::1;19948:12;:26:::0;19770:212::o;14794:147::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;14853:11:::1;::::0;-1:-1:-1;;;14853:11:0;::::1;;;14852:12;14844:21;;;::::0;::::1;;14876:11;:18:::0;;-1:-1:-1;;;;14876:18:0::1;-1:-1:-1::0;;;14876:18:0::1;::::0;;14918:15:::1;14905:10;:28:::0;14794:147::o;15329:225::-;15409:17;;-1:-1:-1;;;;;15409:17:0;1214:10;-1:-1:-1;;;;;15393:33:0;;15385:42;;;;;;15456:24;15474:4;15456:9;:24::i;:::-;15446:6;:34;;:48;;;;;15493:1;15484:6;:10;15446:48;15438:73;;;;-1:-1:-1;;;15438:73:0;;10968:2:1;15438:73:0;;;10950:21:1;11007:2;10987:18;;;10980:30;-1:-1:-1;;;11026:18:1;;;11019:42;11078:18;;15438:73:0;10766:336:1;15438:73:0;15522:24;15539:6;15522:16;:24::i;20887:311::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;21041:1:::1;21021:16;:21;;20988:55;;;::::0;::::1;;21103:2;21085:14;:20;;21054:52;;;::::0;::::1;;21117:14;:33:::0;;;;21161:12:::1;:29:::0;20887:311::o;15192:129::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;15275:17:::1;:38:::0;;;::::1;;-1:-1:-1::0;;;15275:38:0::1;-1:-1:-1::0;;;;15275:38:0;;::::1;::::0;;;::::1;::::0;;15192:129::o;8479:199::-;8584:4;8606:42;1214:10;8630:9;8641:6;8606:9;:42::i;20170:265::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;20297:2:::1;20284:9;:15;;20258:42;;;::::0;::::1;;20352:2;20338:10;:16;;20311:44;;;::::0;::::1;;20366:12;:24:::0;;;;20401:13:::1;:26:::0;20170:265::o;21206:162::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;21316:1:::1;21303:9;:14;;21277:41;;;::::0;::::1;;21341:19;:9:::0;21353:7:::1;21341:19;:::i;:::-;21329:9;:31:::0;-1:-1:-1;21206:162:0:o;19994:168::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;20098:14:::1;;20081:13;:31;;20073:40;;;::::0;::::1;;20124:14;:30:::0;19994:168::o;2749:244::-;2502:6;;-1:-1:-1;;;;;2502:6:0;1214:10;2502:22;2494:67;;;;-1:-1:-1;;;2494:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2838:22:0;::::1;2830:73;;;::::0;-1:-1:-1;;;2830:73:0;;6651:2:1;2830:73:0::1;::::0;::::1;6633:21:1::0;6690:2;6670:18;;;6663:30;6729:34;6709:18;;;6702:62;-1:-1:-1;;;6780:18:1;;;6773:36;6826:19;;2830:73:0::1;6449:402:1::0;2830:73:0::1;2940:6;::::0;;2919:38:::1;::::0;-1:-1:-1;;;;;2919:38:0;;::::1;::::0;2940:6;::::1;::::0;2919:38:::1;::::0;::::1;2968:6;:17:::0;;-1:-1:-1;;;;;;2968:17:0::1;-1:-1:-1::0;;;;;2968:17:0;;;::::1;::::0;;;::::1;::::0;;2749:244::o;10344:369::-;-1:-1:-1;;;;;10471:19:0;;10463:68;;;;-1:-1:-1;;;10463:68:0;;10563:2:1;10463:68:0;;;10545:21:1;10602:2;10582:18;;;10575:30;10641:34;10621:18;;;10614:62;-1:-1:-1;;;10692:18:1;;;10685:34;10736:19;;10463:68:0;10361:400:1;10463:68:0;-1:-1:-1;;;;;10550:21:0;;10542:68;;;;-1:-1:-1;;;10542:68:0;;7058:2:1;10542:68:0;;;7040:21:1;7097:2;7077:18;;;7070:30;7136:34;7116:18;;;7109:62;-1:-1:-1;;;7187:18:1;;;7180:32;7229:19;;10542:68:0;6856:398:1;10542:68:0;-1:-1:-1;;;;;10621:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10673:32;;11253:25:1;;;10673:32:0;;11226:18:1;10673:32:0;;;;;;;10344:369;;;:::o;10721:3341::-;-1:-1:-1;;;;;10843:18:0;;10835:68;;;;-1:-1:-1;;;10835:68:0;;9411:2:1;10835:68:0;;;9393:21:1;9450:2;9430:18;;;9423:30;9489:34;9469:18;;;9462:62;-1:-1:-1;;;9540:18:1;;;9533:35;9585:19;;10835:68:0;9209:401:1;10835:68:0;-1:-1:-1;;;;;10922:16:0;;10914:64;;;;-1:-1:-1;;;10914:64:0;;5126:2:1;10914:64:0;;;5108:21:1;5165:2;5145:18;;;5138:30;5204:34;5184:18;;;5177:62;-1:-1:-1;;;5255:18:1;;;5248:33;5298:19;;10914:64:0;4924:399:1;10914:64:0;11006:1;10997:6;:10;10989:64;;;;-1:-1:-1;;;10989:64:0;;9001:2:1;10989:64:0;;;8983:21:1;9040:2;9020:18;;;9013:30;9079:34;9059:18;;;9052:62;-1:-1:-1;;;9130:18:1;;;9123:39;9179:19;;10989:64:0;8799:405:1;10989:64:0;-1:-1:-1;;;;;11073:13:0;;;;;;:9;:13;;;;;;;;11072:14;11064:40;;;;-1:-1:-1;;;11064:40:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11124:15:0;;;;;;:9;:15;;;;;;;;11123:16;11115:42;;;;-1:-1:-1;;;11115:42:0;;;;;;;:::i;:::-;1214:10;11177:23;;;;:9;:23;;;;;;;;11176:24;11168:50;;;;-1:-1:-1;;;11168:50:0;;;;;;;:::i;:::-;2413:7;2440:6;-1:-1:-1;;;;;11235:15:0;;;2440:6;;11235:15;;;;:32;;-1:-1:-1;2413:7:0;2440:6;-1:-1:-1;;;;;11254:13:0;;;2440:6;;11254:13;;11235:32;11231:1761;;;11303:11;;-1:-1:-1;;;11303:11:0;;;;11298:87;;11335:34;;-1:-1:-1;;;11335:34:0;;5530:2:1;11335:34:0;;;5512:21:1;5569:2;5549:18;;;5542:30;5608:26;5588:18;;;5581:54;5652:18;;11335:34:0;5328:348:1;11298:87:0;11423:13;;-1:-1:-1;;;;;11417:19:0;;;11423:13;;11417:19;:55;;;;-1:-1:-1;11456:15:0;;-1:-1:-1;;;;;11440:32:0;;;11456:15;;11440:32;;11417:55;11413:307;;;-1:-1:-1;;;;;11497:19:0;;11511:4;11497:19;;;;:44;;-1:-1:-1;;;;;;11520:21:0;;11536:4;11520:21;;11497:44;:71;;;;-1:-1:-1;11551:17:0;;-1:-1:-1;;;;;11545:23:0;;;11551:17;;11545:23;;11497:71;:100;;;;-1:-1:-1;11580:17:0;;-1:-1:-1;;;;;11572:25:0;;;11580:17;;11572:25;;11497:100;11493:212;;;11640:12;;11630:6;:22;;11622:63;;;;-1:-1:-1;;;11622:63:0;;6294:2:1;11622:63:0;;;6276:21:1;6333:2;6313:18;;;6306:30;6372;6352:18;;;6345:58;6420:18;;11622:63:0;6092:352:1;11622:63:0;11746:13;;-1:-1:-1;;;;;11740:19:0;;;11746:13;;11740:19;;;;:46;;-1:-1:-1;11769:17:0;;-1:-1:-1;;;;;11763:23:0;;;11769:17;;11763:23;;11740:46;:69;;;;-1:-1:-1;;;;;;11790:19:0;;11804:4;11790:19;;11740:69;:90;;;;-1:-1:-1;;;;;;11813:17:0;;6596:42;11813:17;;11740:90;11736:435;;;11884:14;;11875:6;11859:13;11869:2;11859:9;:13::i;:::-;:22;;;;:::i;:::-;:39;11851:87;;;;-1:-1:-1;;;11851:87:0;;9817:2:1;11851:87:0;;;9799:21:1;9856:2;9836:18;;;9829:30;9895:34;9875:18;;;9868:62;-1:-1:-1;;;9946:18:1;;;9939:33;9989:19;;11851:87:0;9615:399:1;11851:87:0;11961:17;;-1:-1:-1;;;11961:17:0;;;;11957:199;;;12026:10;;:22;;12039:9;12026:22;:::i;:::-;12007:15;:41;12003:134;;12095:17;;12085:6;:27;;12077:36;;;;;;12199:28;12230:24;12248:4;12230:9;:24::i;:::-;12307:19;;12199:55;;-1:-1:-1;12284:42:0;;;12359:18;;;;-1:-1:-1;12371:6:0;;-1:-1:-1;;;12371:6:0;;;;12370:7;12359:18;:43;;;;-1:-1:-1;12389:13:0;;-1:-1:-1;;;;;12381:21:0;;;12389:13;;12381:21;;12359:43;:58;;;;-1:-1:-1;12406:11:0;;-1:-1:-1;;;12406:11:0;;;;12359:58;:87;;;;-1:-1:-1;;;;;;12422:24:0;;;;;;:18;:24;;;;;;;;12421:25;12359:87;:114;;;;-1:-1:-1;;;;;;12451:22:0;;;;;;:18;:22;;;;;;;;12450:23;12359:114;12355:626;;;12540:8;;12494:19;;12540:12;12536:166;;12591:45;12630:5;12591:34;12616:8;;12591:20;:24;;:34;;;;:::i;:::-;:38;;:45::i;:::-;12577:59;;12659:23;12670:11;12659:10;:23::i;:::-;12720:52;12737:34;12760:11;12737:20;:34;:::i;:::-;12720:16;:52::i;:::-;12820:21;12864:22;;12860:106;;12911:35;12924:21;12911:12;:35::i;:::-;12475:506;;12355:626;11269:1723;;11231:1761;-1:-1:-1;;;;;13049:24:0;;13012:12;13049:24;;;:18;:24;;;;;;13027:4;;13049:24;;;:50;;-1:-1:-1;;;;;;13077:22:0;;;;;;:18;:22;;;;;;;;13049:50;13048:102;;;-1:-1:-1;13113:13:0;;-1:-1:-1;;;;;13105:21:0;;;13113:13;;13105:21;;;;:44;;-1:-1:-1;13136:13:0;;-1:-1:-1;;;;;13130:19:0;;;13136:13;;13130:19;;13105:44;13044:957;;;-1:-1:-1;13177:5:0;13044:957;;;13226:13;;-1:-1:-1;;;;;13218:21:0;;;13226:13;;13218:21;:55;;;;-1:-1:-1;13257:15:0;;-1:-1:-1;;;;;13243:30:0;;;13257:15;;13243:30;;13218:55;13215:350;;;-1:-1:-1;;;;;13298:11:0;;;;;;:7;:11;;;;;13312:15;13298:29;;;;13362:14;;13350:9;:26;13409:12;;13399:7;:22;13467:10;;13448:29;13444:106;;;-1:-1:-1;;;;;13506:13:0;;;;;;:9;:13;;;;;:20;;-1:-1:-1;;13506:20:0;13522:4;13506:20;;;13444:106;13595:13;;-1:-1:-1;;;;;13589:19:0;;;13595:13;;13589:19;:55;;;;-1:-1:-1;13628:15:0;;-1:-1:-1;;;;;13612:32:0;;;13628:15;;13612:32;;13589:55;13585:405;;;-1:-1:-1;;;;;13669:13:0;;;;;;:7;:13;;;;;;:18;;;;:68;;-1:-1:-1;13708:9:0;;-1:-1:-1;;;;;13692:13:0;;;;;;:7;:13;;;;;;13721:15;;13692:25;;;:::i;:::-;:44;;13669:68;13665:310;;;13774:14;;13762:9;:26;13821:12;;13811:7;:22;13665:310;;;13894:15;;13882:9;:27;13942:13;;13932:7;:23;13665:310;14013:41;14028:4;14034:2;14038:6;14046:7;14013:14;:41::i;:::-;10824:3238;10721:3341;;;:::o;3361:224::-;3481:7;3517:12;3509:6;;;;3501:29;;;;-1:-1:-1;;;3501:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3541:9:0;3553:5;3557:1;3553;:5;:::i;:::-;3541:17;3361:224;-1:-1:-1;;;;;3361:224:0:o;14687:99::-;14744:17;;:34;;-1:-1:-1;;;;;14744:17:0;;;;:34;;;;;14771:6;;14744:17;:34;:17;:34;14771:6;14744:17;:34;;;;;;;;;;;;;;;;;;;9533:323;9628:7;9686;;9675;:18;;9653:110;;;;-1:-1:-1;;;9653:110:0;;5883:2:1;9653:110:0;;;5865:21:1;5922:2;5902:18;;;5895:30;5961:34;5941:18;;;5934:62;-1:-1:-1;;;6012:18:1;;;6005:40;6062:19;;9653:110:0;5681:406:1;9653:110:0;9774:19;9796:10;:8;:10::i;:::-;9774:32;-1:-1:-1;9824:24:0;:7;9774:32;9824:11;:24::i;:::-;9817:31;9533:323;-1:-1:-1;;;9533:323:0:o;14196:483::-;7231:6;:13;;-1:-1:-1;;;;7231:13:0;-1:-1:-1;;;7231:13:0;;;14298:16:::1;::::0;;14312:1:::1;14298:16:::0;;;;;::::1;::::0;;-1:-1:-1;;14298:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14298:16:0::1;14274:40;;14343:4;14325;14330:1;14325:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14325:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;14369:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;14369:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;14325:7;;14369:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14359:4;14364:1;14359:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14359:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;14434:15:::1;::::0;14402:62:::1;::::0;14419:4:::1;::::0;14434:15:::1;14452:11:::0;14402:8:::1;:62::i;:::-;14475:15;::::0;:196:::1;::::0;-1:-1:-1;;;14475:196:0;;-1:-1:-1;;;;;14475:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;14556:11;;14475:15:::1;::::0;14598:4;;14625::::1;::::0;14645:15:::1;::::0;14475:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7267:6:0;:14;;-1:-1:-1;;;;7267:14:0;;;-1:-1:-1;;;;14196:483:0:o;3593:246::-;3651:7;3675:6;3671:47;;-1:-1:-1;3705:1:0;3698:8;;3671:47;3728:9;3740:5;3744:1;3740;:5;:::i;:::-;3728:17;-1:-1:-1;3773:1:0;3764:5;3768:1;3728:17;3764:5;:::i;:::-;:10;3756:56;;;;-1:-1:-1;;;3756:56:0;;8238:2:1;3756:56:0;;;8220:21:1;8277:2;8257:18;;;8250:30;8316:34;8296:18;;;8289:62;-1:-1:-1;;;8367:18:1;;;8360:31;8408:19;;3756:56:0;8036:397:1;3847:132:0;3905:7;3932:39;3936:1;3939;3932:39;;;;;;;;;;;;;;;;;:3;:39::i;14070:118::-;14130:50;14148:4;6596:42;14168:11;14130:9;:50::i;16237:282::-;16393:7;16388:28;;16402:14;:12;:14::i;:::-;16427:44;16445:6;16453:9;16464:6;16427:17;:44::i;:::-;16487:7;16482:29;;16496:15;10237:17;;10225:9;:29;10275:15;;10265:7;:25;10312:16;;10301:8;:27;10181:155;19212:166;19254:7;19275:15;19292;19311:19;:17;:19::i;:::-;19274:56;;-1:-1:-1;19274:56:0;-1:-1:-1;19350:20:0;19274:56;;19350:11;:20::i;:::-;19343:27;;;;19212:166;:::o;3987:223::-;4107:7;4142:12;4135:5;4127:28;;;;-1:-1:-1;;;4127:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4166:9:0;4178:5;4182:1;4178;:5;:::i;9864:309::-;9911:9;;:14;:30;;;;-1:-1:-1;9929:7:0;;:12;9911:30;:47;;;;-1:-1:-1;9945:8:0;;:13;9911:47;9907:60;;;9864:309::o;9907:60::-;10003:9;;;9983:17;:29;10041:7;;;10023:15;:25;10078:8;;;10059:16;:27;-1:-1:-1;10107:13:0;;;;10131:11;;;;10153:12;9864:309::o;16527:610::-;16674:15;16704:23;16742:12;16769:23;16807:12;16834:13;16861:19;16872:7;16861:10;:19::i;:::-;-1:-1:-1;;;;;16909:15:0;;;;;;:7;:15;;;;;;16659:221;;-1:-1:-1;16659:221:0;;-1:-1:-1;16659:221:0;;-1:-1:-1;16659:221:0;-1:-1:-1;16659:221:0;-1:-1:-1;16659:221:0;-1:-1:-1;16909:28:0;;16659:221;16909:19;:28::i;:::-;-1:-1:-1;;;;;16891:15:0;;;;;;;:7;:15;;;;;;:46;;;;16969:18;;;;;;;:39;;16992:15;16969:22;:39::i;:::-;-1:-1:-1;;;;;16948:18:0;;;;;;:7;:18;;;;;:60;17019:16;17029:5;17019:9;:16::i;:::-;17046:23;17058:4;17064;17046:11;:23::i;:::-;17102:9;-1:-1:-1;;;;;17085:44:0;17094:6;-1:-1:-1;;;;;17085:44:0;;17113:15;17085:44;;;;11253:25:1;;11241:2;11226:18;;11107:177;17085:44:0;;;;;;;;16648:489;;;;;;16527:610;;;:::o;19386:263::-;19484:7;;19437;;;;5712:12;19552:20;19484:7;5712:12;19552:11;:20::i;:::-;19542:7;:30;19538:61;;;-1:-1:-1;;19582:7:0;;;5712:12;;-1:-1:-1;19386:263:0;-1:-1:-1;19386:263:0:o;19538:61::-;19624:7;;19633;;-1:-1:-1;19386:263:0;-1:-1:-1;19386:263:0:o;17556:625::-;17656:7;17678;17700;17722;17744;17766;17802:23;17827:12;17841:13;17871:40;17883:7;17892:9;;17903:7;;17871:11;:40::i;:::-;17801:110;;;;;;17922:19;17944:10;:8;:10::i;:::-;17922:32;;17966:15;17983:23;18008:12;18037:46;18049:7;18058:4;18064:5;18071:11;18037;:46::i;:::-;17965:118;;-1:-1:-1;17965:118:0;-1:-1:-1;17965:118:0;-1:-1:-1;18144:15:0;;-1:-1:-1;18161:4:0;;-1:-1:-1;18167:5:0;;-1:-1:-1;;;;;17556:625:0;;;;;;;:::o;3217:136::-;3275:7;3302:43;3306:1;3309;3302:43;;;;;;;;;;;;;;;;;:3;:43::i;3030:179::-;3088:7;;3120:5;3124:1;3120;:5;:::i;:::-;3108:17;;3149:1;3144;:6;;3136:46;;;;-1:-1:-1;;;3136:46:0;;7461:2:1;3136:46:0;;;7443:21:1;7500:2;7480:18;;;7473:30;7539:29;7519:18;;;7512:57;7586:18;;3136:46:0;7259:351:1;17145:211:0;17198:19;17220:10;:8;:10::i;:::-;17198:32;-1:-1:-1;17241:13:0;17257:22;:5;17198:32;17257:9;:22::i;:::-;17331:4;17315:22;;;;:7;:22;;;;;;17241:38;;-1:-1:-1;17315:33:0;;17241:38;17315:26;:33::i;:::-;17306:4;17290:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;17145:211:0:o;17364:147::-;17442:7;;:17;;17454:4;17442:11;:17::i;:::-;17432:7;:27;17483:10;;:20;;17498:4;17483:14;:20::i;:::-;17470:10;:33;-1:-1:-1;;17364:147:0:o;18189:471::-;18358:7;;;;18452:30;18478:3;18452:21;:7;18464:8;18452:11;:21::i;:30::-;18437:45;-1:-1:-1;18493:13:0;18509:28;18533:3;18509:19;:7;18521:6;18509:11;:19::i;:28::-;18493:44;-1:-1:-1;18548:23:0;18574:28;18493:44;18574:17;:7;18586:4;18574:11;:17::i;:::-;:21;;:28::i;:::-;18548:54;18640:4;;-1:-1:-1;18646:5:0;;-1:-1:-1;18189:471:0;;-1:-1:-1;;;;;18189:471:0:o;18668:536::-;18862:7;;;;18959:24;:7;18971:11;18959;:24::i;:::-;18941:42;-1:-1:-1;18994:12:0;19009:21;:4;19018:11;19009:8;:21::i;:::-;18994:36;-1:-1:-1;19041:13:0;19057:22;:5;19067:11;19057:9;:22::i;:::-;19041:38;-1:-1:-1;19090:23:0;19116:28;19041:38;19116:17;:7;19128:4;19116:11;:17::i;:28::-;19165:7;;;;-1:-1:-1;19191:4:0;;-1:-1:-1;18668:536:0;;-1:-1:-1;;;;;;;18668:536:0:o;14:134:1:-;82:20;;111:31;82:20;111:31;:::i;:::-;14:134;;;:::o;153:247::-;212:6;265:2;253:9;244:7;240:23;236:32;233:52;;;281:1;278;271:12;233:52;320:9;307:23;339:31;364:5;339:31;:::i;405:251::-;475:6;528:2;516:9;507:7;503:23;499:32;496:52;;;544:1;541;534:12;496:52;576:9;570:16;595:31;620:5;595:31;:::i;661:388::-;729:6;737;790:2;778:9;769:7;765:23;761:32;758:52;;;806:1;803;796:12;758:52;845:9;832:23;864:31;889:5;864:31;:::i;:::-;914:5;-1:-1:-1;971:2:1;956:18;;943:32;984:33;943:32;984:33;:::i;:::-;1036:7;1026:17;;;661:388;;;;;:::o;1054:456::-;1131:6;1139;1147;1200:2;1188:9;1179:7;1175:23;1171:32;1168:52;;;1216:1;1213;1206:12;1168:52;1255:9;1242:23;1274:31;1299:5;1274:31;:::i;:::-;1324:5;-1:-1:-1;1381:2:1;1366:18;;1353:32;1394:33;1353:32;1394:33;:::i;:::-;1054:456;;1446:7;;-1:-1:-1;;;1500:2:1;1485:18;;;;1472:32;;1054:456::o;1515:315::-;1583:6;1591;1644:2;1632:9;1623:7;1619:23;1615:32;1612:52;;;1660:1;1657;1650:12;1612:52;1699:9;1686:23;1718:31;1743:5;1718:31;:::i;:::-;1768:5;1820:2;1805:18;;;;1792:32;;-1:-1:-1;;;1515:315:1:o;1835:1132::-;1919:6;1950:2;1993;1981:9;1972:7;1968:23;1964:32;1961:52;;;2009:1;2006;1999:12;1961:52;2049:9;2036:23;2078:18;2119:2;2111:6;2108:14;2105:34;;;2135:1;2132;2125:12;2105:34;2173:6;2162:9;2158:22;2148:32;;2218:7;2211:4;2207:2;2203:13;2199:27;2189:55;;2240:1;2237;2230:12;2189:55;2276:2;2263:16;2298:2;2294;2291:10;2288:36;;;2304:18;;:::i;:::-;2350:2;2347:1;2343:10;2382:2;2376:9;2445:2;2441:7;2436:2;2432;2428:11;2424:25;2416:6;2412:38;2500:6;2488:10;2485:22;2480:2;2468:10;2465:18;2462:46;2459:72;;;2511:18;;:::i;:::-;2547:2;2540:22;2597:18;;;2631:15;;;;-1:-1:-1;2666:11:1;;;2696;;;2692:20;;2689:33;-1:-1:-1;2686:53:1;;;2735:1;2732;2725:12;2686:53;2757:1;2748:10;;2767:169;2781:2;2778:1;2775:9;2767:169;;;2838:23;2857:3;2838:23;:::i;:::-;2826:36;;2799:1;2792:9;;;;;2882:12;;;;2914;;2767:169;;;-1:-1:-1;2955:6:1;1835:1132;-1:-1:-1;;;;;;;;1835:1132:1:o;2972:273::-;3028:6;3081:2;3069:9;3060:7;3056:23;3052:32;3049:52;;;3097:1;3094;3087:12;3049:52;3136:9;3123:23;3189:5;3182:13;3175:21;3168:5;3165:32;3155:60;;3211:1;3208;3201:12;3250:180;3309:6;3362:2;3350:9;3341:7;3337:23;3333:32;3330:52;;;3378:1;3375;3368:12;3330:52;-1:-1:-1;3401:23:1;;3250:180;-1:-1:-1;3250:180:1:o;3435:248::-;3503:6;3511;3564:2;3552:9;3543:7;3539:23;3535:32;3532:52;;;3580:1;3577;3570:12;3532:52;-1:-1:-1;;3603:23:1;;;3673:2;3658:18;;;3645:32;;-1:-1:-1;3435:248:1:o;4322:597::-;4434:4;4463:2;4492;4481:9;4474:21;4524:6;4518:13;4567:6;4562:2;4551:9;4547:18;4540:34;4592:1;4602:140;4616:6;4613:1;4610:13;4602:140;;;4711:14;;;4707:23;;4701:30;4677:17;;;4696:2;4673:26;4666:66;4631:10;;4602:140;;;4760:6;4757:1;4754:13;4751:91;;;4830:1;4825:2;4816:6;4805:9;4801:22;4797:31;4790:42;4751:91;-1:-1:-1;4903:2:1;4882:15;-1:-1:-1;;4878:29:1;4863:45;;;;4910:2;4859:54;;4322:597;-1:-1:-1;;;4322:597:1:o;8438:356::-;8640:2;8622:21;;;8659:18;;;8652:30;8718:34;8713:2;8698:18;;8691:62;8785:2;8770:18;;8438:356::o;10019:337::-;10221:2;10203:21;;;10260:2;10240:18;;;10233:30;-1:-1:-1;;;10294:2:1;10279:18;;10272:43;10347:2;10332:18;;10019:337::o;11289:980::-;11551:4;11599:3;11588:9;11584:19;11630:6;11619:9;11612:25;11656:2;11694:6;11689:2;11678:9;11674:18;11667:34;11737:3;11732:2;11721:9;11717:18;11710:31;11761:6;11796;11790:13;11827:6;11819;11812:22;11865:3;11854:9;11850:19;11843:26;;11904:2;11896:6;11892:15;11878:29;;11925:1;11935:195;11949:6;11946:1;11943:13;11935:195;;;12014:13;;-1:-1:-1;;;;;12010:39:1;11998:52;;12105:15;;;;12070:12;;;;12046:1;11964:9;11935:195;;;-1:-1:-1;;;;;;;12186:32:1;;;;12181:2;12166:18;;12159:60;-1:-1:-1;;;12250:3:1;12235:19;12228:35;12147:3;11289:980;-1:-1:-1;;;11289:980:1:o;12463:128::-;12503:3;12534:1;12530:6;12527:1;12524:13;12521:39;;;12540:18;;:::i;:::-;-1:-1:-1;12576:9:1;;12463:128::o;12596:217::-;12636:1;12662;12652:132;;12706:10;12701:3;12697:20;12694:1;12687:31;12741:4;12738:1;12731:15;12769:4;12766:1;12759:15;12652:132;-1:-1:-1;12798:9:1;;12596:217::o;12818:168::-;12858:7;12924:1;12920;12916:6;12912:14;12909:1;12906:21;12901:1;12894:9;12887:17;12883:45;12880:71;;;12931:18;;:::i;:::-;-1:-1:-1;12971:9:1;;12818:168::o;12991:125::-;13031:4;13059:1;13056;13053:8;13050:34;;;13064:18;;:::i;:::-;-1:-1:-1;13101:9:1;;12991:125::o;13121:135::-;13160:3;-1:-1:-1;;13181:17:1;;13178:43;;;13201:18;;:::i;:::-;-1:-1:-1;13248:1:1;13237:13;;13121:135::o;13261:127::-;13322:10;13317:3;13313:20;13310:1;13303:31;13353:4;13350:1;13343:15;13377:4;13374:1;13367:15;13393:127;13454:10;13449:3;13445:20;13442:1;13435:31;13485:4;13482:1;13475:15;13509:4;13506:1;13499:15;13525:127;13586:10;13581:3;13577:20;13574:1;13567:31;13617:4;13614:1;13607:15;13641:4;13638:1;13631:15;13657:131;-1:-1:-1;;;;;13732:31:1;;13722:42;;13712:70;;13778:1;13775;13768:12

Swarm Source

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