ETH Price: $1,840.67 (-1.19%)
 

More Info

Private Name Tags

TokenTracker

Catcoin (CAT) ($0.00)

Multichain Info

Transaction Hash
Method
Block
From
To
Approve245219802026-02-23 20:29:115 hrs ago1771878551IN
CatCoin: CAT Token
0 ETH0.000025221.03885323
Transfer245196572026-02-23 12:41:5913 hrs ago1771850519IN
CatCoin: CAT Token
0 ETH0.000005360.07927324
Transfer245196502026-02-23 12:40:3513 hrs ago1771850435IN
CatCoin: CAT Token
0 ETH0.000003580.05511636
Approve245187532026-02-23 9:40:2316 hrs ago1771839623IN
CatCoin: CAT Token
0 ETH0.000096972.08258043
Transfer245116782026-02-22 10:01:3540 hrs ago1771754495IN
CatCoin: CAT Token
0 ETH0.000015360.22710129
Approve245010912026-02-20 22:35:473 days ago1771626947IN
CatCoin: CAT Token
0 ETH0.000002260.0487431
Transfer244835762026-02-18 11:59:355 days ago1771415975IN
CatCoin: CAT Token
0 ETH0.000004150.05731238
Approve244682752026-02-16 8:46:117 days ago1771231571IN
CatCoin: CAT Token
0 ETH0.000048231.03576617
Transfer244682532026-02-16 8:41:477 days ago1771231307IN
CatCoin: CAT Token
0 ETH0.00000290.040054
Approve244667992026-02-16 3:49:597 days ago1771213799IN
CatCoin: CAT Token
0 ETH0.000025091.03103726
Approve244631862026-02-15 15:45:238 days ago1771170323IN
CatCoin: CAT Token
0 ETH0.000094322.03546244
Approve244574802026-02-14 20:40:239 days ago1771101623IN
CatCoin: CAT Token
0 ETH0.000001410.05798448
Approve244562792026-02-14 16:38:599 days ago1771087139IN
CatCoin: CAT Token
0 ETH0.000095262.05529816
Approve244431622026-02-12 20:44:4711 days ago1770929087IN
CatCoin: CAT Token
0 ETH0.000095742.06556137
Approve244320462026-02-11 7:30:1112 days ago1770795011IN
CatCoin: CAT Token
0 ETH0.000001780.07340102
Approve244118022026-02-08 11:34:3515 days ago1770550475IN
CatCoin: CAT Token
0 ETH0.000421449.05028853
Approve244101712026-02-08 6:04:3515 days ago1770530675IN
CatCoin: CAT Token
0 ETH0.000006570.14193944
Approve244054802026-02-07 14:15:5916 days ago1770473759IN
CatCoin: CAT Token
0 ETH0.000052561.12875422
Transfer244000752026-02-06 20:09:3517 days ago1770408575IN
CatCoin: CAT Token
0 ETH0.000087521.29372531
Approve243961002026-02-06 6:49:5917 days ago1770360599IN
CatCoin: CAT Token
0 ETH0.000027131.11485554
Transfer243918902026-02-05 16:42:2318 days ago1770309743IN
CatCoin: CAT Token
0 ETH0.000265813.92902585
Approve243837822026-02-04 13:26:5919 days ago1770211619IN
CatCoin: CAT Token
0 ETH0.000104972.26481841
Approve243803702026-02-04 2:01:4720 days ago1770170507IN
CatCoin: CAT Token
0 ETH0.00003511.20055793
Approve243769302026-02-03 14:28:4720 days ago1770128927IN
CatCoin: CAT Token
0 ETH0.00010272.2157519
Transfer243745042026-02-03 6:20:4720 days ago1770099647IN
CatCoin: CAT Token
0 ETH0.000080241.10794914
View all transactions

Latest 1 internal transaction

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer219444602025-02-28 11:11:11360 days ago1740741071
CatCoin: CAT Token
0.0142946 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Catcoin

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2023-06-07
*/

// SPDX-License-Identifier: NOLICENSE
pragma solidity ^0.8.0;

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

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _setOwner(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

interface IRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline) external;
}

contract Catcoin is Context, IERC20, Ownable {

    mapping (address => uint256) private _balance;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private _isBot;

    bool public swapEnabled;
    bool private swapping;

    IRouter private router;
    address private pair;

    uint8 private constant DECIMALS = 9;
    uint256 private constant MAX = ~uint256(0);

    uint256 private constant T_TOTAL = 5e16 * 10**DECIMALS;

    uint256 public swapTokensAtAmount = 10_000_000_000_000 * 10**DECIMALS;

    
    address public constant ZERO_ADDRESS = address(0);
    address public marketingAddress = ZERO_ADDRESS;

    string private constant NAME = "Catcoin";
    string private constant SYMBOL = "CAT";


    enum ETransferType {
        Sell,
        Buy,
        Transfer
    }

    struct Taxes {
        uint16 marketing;
        uint16 liquidity;
    }

    uint8 public transferTaxesTier;
    Taxes public transferTaxes = Taxes(0,0);
    uint8 public buyTaxesTier;
    Taxes public buyTaxes;
    uint8 public sellTaxesTier;
    Taxes public sellTaxes;

    struct TotFeesPaidStruct{
        uint256 marketing;
        uint256 liquidity;
    }
    TotFeesPaidStruct public totFeesPaid;

    modifier lockTheSwap {
        swapping = true;
        _;
        swapping = false;
    }

    constructor (address routerAddress) {
        IRouter _router = IRouter(routerAddress);
        address _pair = IFactory(_router.factory())
            .createPair(address(this), _router.WETH());

        router = _router;
        pair = _pair;
        
        _balance[owner()] = T_TOTAL;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[marketingAddress]=true;
        etx(2);

        emit Transfer(address(0), owner(), T_TOTAL);
    }

    //std ERC20:
    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;
    }

    //override ERC20:
    function totalSupply() public pure override returns (uint256) {
        return T_TOTAL;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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 virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
            _approve(sender, _msgSender(), currentAllowance - amount);
        }

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    function excludeFromFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = true;
    }

    function includeInFee(address account) public onlyOwner {
        _isExcludedFromFee[account] = false;
    }


    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");
        require(amount <= balanceOf(from),"You are trying to transfer more than your balance");
        require(!_isBot[from] && !_isBot[to], "You are a bot");

        ETransferType transferType = ETransferType.Transfer;
        address trader = address(0);
        Taxes memory usedTaxes = transferTaxes;
        bool excludedFromFee = false;
        if (to == pair) {
            transferType = ETransferType.Sell;
            trader = from;
            usedTaxes = sellTaxes;
            excludedFromFee = _isExcludedFromFee[trader];
        } else if (from == pair) {
            transferType = ETransferType.Buy;
            trader = to;
            usedTaxes = buyTaxes;
            excludedFromFee = _isExcludedFromFee[trader];
        } else {
            usedTaxes = transferTaxes;
            excludedFromFee = _isExcludedFromFee[from] || _isExcludedFromFee[to];
        }

        bool canSwap = balanceOf(address(this)) >= swapTokensAtAmount;
        if(transferType != ETransferType.Buy && !swapping && swapEnabled && canSwap && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]){
            swapAndLiquify(swapTokensAtAmount);
        }

        if (excludedFromFee || usedTaxes.marketing + usedTaxes.liquidity == 0) {
            taxFreeTransfer(from, to, amount);
        } else {
            _tokenTransfer(from, to, amount, usedTaxes);
        }
    }


    // this method is responsible for taking all fee
    function _tokenTransfer(address sender, address recipient, uint256 tAmount, Taxes memory usedTaxes) private {

        uint256 tTransferAmount = tAmount;
        
        if(usedTaxes.liquidity != 0) {
            uint256 tLiquidity = tAmount * usedTaxes.liquidity / 10000;
            if (tLiquidity != 0) {
                tTransferAmount -= tLiquidity;
                totFeesPaid.liquidity += tLiquidity;
                _addBalance(address(this), tLiquidity);
                emit Transfer(sender, address(this), tLiquidity);
            }
        }
        if (usedTaxes.marketing != 0) {
            uint256 tMarketing = tAmount * usedTaxes.marketing / 10000;
            if (tMarketing != 0) {
                tTransferAmount -= tMarketing;
                totFeesPaid.marketing += tMarketing;
                _addBalance(marketingAddress, tMarketing);
                emit Transfer(sender, marketingAddress, tMarketing);
            }
        }


        _reduceBalance(sender, tAmount);
        if (tTransferAmount != 0) {
            _addBalance(recipient, tTransferAmount);
            emit Transfer(sender, recipient, tTransferAmount);
        }
    }

    function swapAndLiquify(uint256 contractTokenBalance) private lockTheSwap{
         //calculate how many tokens we need to exchange
        uint256 tokensToSwap = contractTokenBalance / 2;
        uint256 otherHalfOfTokens = tokensToSwap;
        uint256 initialBalance = address(this).balance;
        swapTokensForBNB(tokensToSwap, address(this));
        uint256 newBalance = address(this).balance - (initialBalance);
        addLiquidity(otherHalfOfTokens, newBalance);
    }

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

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

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

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

        // make the swap
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            payable(recipient),
            block.timestamp
        );
    }

    function getTaxesValueByTier(uint8 tier) private view returns(uint16, uint16) {
        if (tier == 0) {
            return (0, 0);
        }
        if (tier == 1) {
            if (marketingAddress == ZERO_ADDRESS) {
                return (0, 60);
            }
            return (30, 30);
        }
        
        if (marketingAddress == ZERO_ADDRESS) {
            return (0, 500);
        }
        return (200, 300);
    }

    function getTransferTaxesValueByTier(uint8 tier) private view returns(uint16, uint16) {
        if (tier == 0) {
            return (0, 0);
        }
        if (tier == 1) {
            if (marketingAddress == ZERO_ADDRESS) {
                return (0, 0);
            }
            return (30, 0);
        }
        
        if (marketingAddress == ZERO_ADDRESS) {
            return (0, 0);
        }
        return (30, 0);
    }

    function checkAndUpdateTaxes(bool buyChanged, bool sellChanged, bool transferChanged) private {
        if (buyChanged) {
            (uint16 v1, uint16 v2) = getTaxesValueByTier(buyTaxesTier);
            buyTaxes = Taxes(v1, v2);
        }
        if (sellChanged) {
            (uint16 v1, uint16 v2) = getTaxesValueByTier(sellTaxesTier);
            sellTaxes = Taxes(v1, v2);
        }
        if (transferChanged) {
            (uint16 v1, uint16 v2) = getTransferTaxesValueByTier(transferTaxesTier);
            transferTaxes = Taxes(v1, v2);
        }
    }

    function updateMarketingWallet(address newWallet) external onlyOwner{
        require(marketingAddress != newWallet, "Wallet already set");
        marketingAddress = newWallet;
        _isExcludedFromFee[marketingAddress] = true;
        checkAndUpdateTaxes(true, true, true);
    }

    function updateSwapTokensAtAmount(uint256 amount) external onlyOwner{
        swapTokensAtAmount = amount * 10**DECIMALS;
    }

    function updateSwapEnabled(bool _enabled) external onlyOwner{
        swapEnabled = _enabled;
    }
    
    function setAntibot(address account, bool state) external onlyOwner{
        require(_isBot[account] != state, "Value already set");
        _isBot[account] = state;
    }
    
    function bulkAntiBot(address[] memory accounts, bool state) external onlyOwner{
        for(uint256 i = 0; i < accounts.length; i++){
            _isBot[accounts[i]] = state;
        }
    }
    
    function isBot(address account) public view returns(bool){
        return _isBot[account];
    }
    
    function updateRouterAndPair(address newRouter, address newPair) external onlyOwner{
        router = IRouter(newRouter);
        pair = newPair;
    }
    
    function taxFreeTransfer(address sender, address recipient, uint256 tAmount) internal {
        _reduceBalance(sender, tAmount);
        _addBalance(recipient, tAmount);

        emit Transfer(sender, recipient, tAmount);
    }

    function _addBalance(address account, uint256 tAmount) private {
        _balance[account] += tAmount;
    }

    function _reduceBalance(address account, uint256 tAmount) private {
        _balance[account] -= tAmount;
    }
    
    function airdropTokens(address[] memory accounts, uint256[] memory amounts) external onlyOwner{
        require(accounts.length == amounts.length, "Arrays must have the same size");
        for(uint256 i= 0; i < accounts.length; i++){
            taxFreeTransfer(msg.sender, accounts[i], amounts[i] * 10**DECIMALS);
        }
    }
    

    function dtx() public onlyOwner{
        buyTaxesTier = 0;
        sellTaxesTier = 0;
        transferTaxesTier = 0;
        checkAndUpdateTaxes(true, true, true);
    }

    function etx(uint8 taxesTier) public onlyOwner{
        require(taxesTier > 0 && taxesTier <=2);
        buyTaxesTier = taxesTier;
        sellTaxesTier = taxesTier;
        transferTaxesTier = taxesTier;
        checkAndUpdateTaxes(true, true, true);
    }

    function etxBuy(uint8 taxesTier) public onlyOwner{
        require(taxesTier > 0 && taxesTier <=2);
        buyTaxesTier = taxesTier;
        checkAndUpdateTaxes(true, false, false);
    }

    function etxSell(uint8 taxesTier) public onlyOwner{
        require(taxesTier > 0 && taxesTier <=2);
        sellTaxesTier = taxesTier;
        checkAndUpdateTaxes(false, true, false);
    }

    function etxTransfer(uint8 taxesTier) public onlyOwner{
        require(taxesTier > 0 && taxesTier <=2);
        transferTaxesTier = taxesTier;
        checkAndUpdateTaxes(false, false, true);
    }

    function dtxBuy() public onlyOwner{
        buyTaxesTier = 0;
        checkAndUpdateTaxes(true, false, false);
    }

    function dtxSell() public onlyOwner{
        sellTaxesTier = 0;
        checkAndUpdateTaxes(false, true, false);
    }

    function dtxTransfer() public onlyOwner{
        transferTaxesTier = 0;
        checkAndUpdateTaxes(false, false, true);
    }

    //Use this in case BNB are sent to the contract by mistake
    function rescueBNB(uint256 weiAmount) external onlyOwner{
        require(address(this).balance >= weiAmount, "insufficient BNB balance");
        payable(msg.sender).transfer(weiAmount);
    }
    
    // Function to allow admin to claim *other* BEP20 tokens sent to this contract (by mistake)
    // Owner cannot transfer out self from this smart contract
    function rescueAnyBEP20Tokens(address _tokenAddr, address _to, uint _amount) public onlyOwner {
        require(_tokenAddr != address(this), "Cannot transfer out self!");
        IERC20(_tokenAddr).transfer(_to, _amount);
    }

    receive() external payable{
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"routerAddress","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":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":"ZERO_ADDRESS","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"}],"name":"airdropTokens","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":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"bulkAntiBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyTaxes","outputs":[{"internalType":"uint16","name":"marketing","type":"uint16"},{"internalType":"uint16","name":"liquidity","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTaxesTier","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":[],"name":"dtx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dtxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dtxSell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dtxTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"taxesTier","type":"uint8"}],"name":"etx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"taxesTier","type":"uint8"}],"name":"etxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"taxesTier","type":"uint8"}],"name":"etxSell","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"taxesTier","type":"uint8"}],"name":"etxTransfer","outputs":[],"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":"includeInFee","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":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddr","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"rescueAnyBEP20Tokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"rescueBNB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTaxes","outputs":[{"internalType":"uint16","name":"marketing","type":"uint16"},{"internalType":"uint16","name":"liquidity","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"sellTaxesTier","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"setAntibot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totFeesPaid","outputs":[{"internalType":"uint256","name":"marketing","type":"uint256"},{"internalType":"uint256","name":"liquidity","type":"uint256"}],"stateMutability":"view","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":"transferTaxes","outputs":[{"internalType":"uint16","name":"marketing","type":"uint16"},{"internalType":"uint16","name":"liquidity","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transferTaxesTier","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRouter","type":"address"},{"internalType":"address","name":"newPair","type":"address"}],"name":"updateRouterAndPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"updateSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000792565b62000024906509184e72a000620007aa565b600755600880546001600160a01b03191690556040805180820190915260008082526020909101526009805463ffffffff191690553480156200006657600080fd5b5060405162003050380380620030508339810160408190526200008991620007c4565b62000094336200035a565b60008190506000816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000da573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001009190620007c4565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200014e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001749190620007c4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620001c2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e89190620007c4565b6005805462010000600160b01b031916620100006001600160a01b038681169190910291909117909155600680546001600160a01b0319169183169190911790559050620002396009600a62000792565b6200024c9066b1a2bc2ec50000620007aa565b60016000620002636000546001600160a01b031690565b6001600160a01b03166001600160a01b03168152602001908152602001600020819055506001600360006200029d620003aa60201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905560085490911681526003909252902080549091166001179055620002f06002620003b9565b600080546001600160a01b0316907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200032d6009600a62000792565b620003409066b1a2bc2ec50000620007aa565b60405190815260200160405180910390a3505050620007ef565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000546001600160a01b031690565b6000546001600160a01b03163314620004185760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640160405180910390fd5b60008160ff1611801562000430575060028160ff1611155b6200043a57600080fd5b600a805460ff1990811660ff8416908117909255600c8054909116821790556008805460ff60a01b1916600160a01b909202919091179055620004806001808062000483565b50565b8215620004dc57600a546000908190620004a09060ff166200059a565b6040805180820190915261ffff928316808252929091166020909101819052600b80546201000090920263ffffffff1990921690921717905550505b81156200053557600c546000908190620004f99060ff166200059a565b6040805180820190915261ffff928316808252929091166020909101819052600d80546201000090920263ffffffff1990921690921717905550505b8015620005955760085460009081906200055990600160a01b900460ff1662000613565b6040805180820190915261ffff928316808252929091166020909101819052600980546201000090920263ffffffff1990921690921717905550505b505050565b6000808260ff16600003620005b457506000928392509050565b8260ff16600103620005e8576008546001600160a01b0316620005dd5750600092603c92509050565b50601e928392509050565b6008546001600160a01b03166200060657506000926101f492509050565b5060c89261012c92509050565b6000808260ff166000036200062d57506000928392509050565b8260ff1660010362000661576008546001600160a01b03166200065557506000928392509050565b50601e92600092509050565b6008546001600160a01b03166200065557506000928392509050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620006d4578160001904821115620006b857620006b86200067d565b80851615620006c657918102915b93841c939080029062000698565b509250929050565b600082620006ed575060016200078c565b81620006fc575060006200078c565b8160018114620007155760028114620007205762000740565b60019150506200078c565b60ff8411156200073457620007346200067d565b50506001821b6200078c565b5060208310610133831016604e8410600b841016171562000765575081810a6200078c565b62000771838362000693565b80600019048211156200078857620007886200067d565b0290505b92915050565b6000620007a360ff841683620006dc565b9392505050565b80820281158282048414176200078c576200078c6200067d565b600060208284031215620007d757600080fd5b81516001600160a01b0381168114620007a357600080fd5b61285180620007ff6000396000f3fe6080604052600436106102815760003560e01c8063715018a61161014f578063b2ca2f06116100c1578063e11655451161007a578063e116554514610847578063e2f4560514610867578063ea2f0b371461087d578063f2fde38b1461089d578063f66895a3146108bd578063f90dfee5146108e257600080fd5b8063b2ca2f0614610777578063b31470a41461078c578063cd4c7d90146107ac578063d257b34f146107c1578063d54adc84146107e1578063dd62ed3e1461080157600080fd5b80639ba5e4d5116101135780639ba5e4d5146106ad5780639dbcb1d6146106dd578063a457c2d7146106f7578063a5ece94114610717578063a9059cbb14610737578063aacebbe31461075757600080fd5b8063715018a614610609578063864701a51461061e5780638da5cb5b14610643578063924de9b71461066157806395d89b411461068157600080fd5b806340b28c2f116101f35780635331803c116101ac5780635331803c146104f35780635342acb414610533578063538ba4f91461056c5780636ddd171314610599578063706f6937146105b357806370a08231146105d357600080fd5b806340b28c2f1461043e57806342b36ed01461045e578063437823ec14610473578063441b1d301461049357806347c23092146104b35780634ac92b27146104d357600080fd5b80632427b7c3116102455780632427b7c3146103645780632dfb2cbc14610397578063313ce567146103b757806339420731146103cb57806339509351146103e55780633bbac5791461040557600080fd5b80630444a3731461028d57806306fdde03146102af578063095ea7b3146102f157806318160ddd1461032157806323b872dd1461034457600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102ad6102a836600461217b565b6108f7565b005b3480156102bb57600080fd5b5060408051808201909152600781526621b0ba31b7b4b760c91b60208201525b6040516102e891906121a5565b60405180910390f35b3480156102fd57600080fd5b5061031161030c366004612208565b610969565b60405190151581526020016102e8565b34801561032d57600080fd5b50610336610980565b6040519081526020016102e8565b34801561035057600080fd5b5061031161035f366004612234565b6109a4565b34801561037057600080fd5b5060085461038590600160a01b900460ff1681565b60405160ff90911681526020016102e8565b3480156103a357600080fd5b506102ad6103b236600461217b565b610a5e565b3480156103c357600080fd5b506009610385565b3480156103d757600080fd5b50600c546103859060ff1681565b3480156103f157600080fd5b50610311610400366004612208565b610acd565b34801561041157600080fd5b50610311610420366004612275565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561044a57600080fd5b506102ad610459366004612292565b610b04565b34801561046a57600080fd5b506102ad610b68565b34801561047f57600080fd5b506102ad61048e366004612275565b610bae565b34801561049f57600080fd5b506102ad6104ae3660046122cb565b610bfc565b3480156104bf57600080fd5b506102ad6104ce366004612234565b610ca7565b3480156104df57600080fd5b506102ad6104ee36600461217b565b610da2565b3480156104ff57600080fd5b506009546105189061ffff808216916201000090041682565b6040805161ffff9384168152929091166020830152016102e8565b34801561053f57600080fd5b5061031161054e366004612275565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561057857600080fd5b50610581600081565b6040516001600160a01b0390911681526020016102e8565b3480156105a557600080fd5b506005546103119060ff1681565b3480156105bf57600080fd5b506102ad6105ce3660046123c3565b610e30565b3480156105df57600080fd5b506103366105ee366004612275565b6001600160a01b031660009081526001602052604090205490565b34801561061557600080fd5b506102ad610f23565b34801561062a57600080fd5b50600b546105189061ffff808216916201000090041682565b34801561064f57600080fd5b506000546001600160a01b0316610581565b34801561066d57600080fd5b506102ad61067c36600461248c565b610f57565b34801561068d57600080fd5b5060408051808201909152600381526210d05560ea1b60208201526102db565b3480156106b957600080fd5b50600e54600f546106c8919082565b604080519283526020830191909152016102e8565b3480156106e957600080fd5b50600a546103859060ff1681565b34801561070357600080fd5b50610311610712366004612208565b610f94565b34801561072357600080fd5b50600854610581906001600160a01b031681565b34801561074357600080fd5b50610311610752366004612208565b61102f565b34801561076357600080fd5b506102ad610772366004612275565b61103c565b34801561078357600080fd5b506102ad6110fd565b34801561079857600080fd5b506102ad6107a73660046124a9565b611156565b3480156107b857600080fd5b506102ad6111e7565b3480156107cd57600080fd5b506102ad6107dc3660046122cb565b611228565b3480156107ed57600080fd5b506102ad6107fc36600461217b565b61126e565b34801561080d57600080fd5b5061033661081c366004612292565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561085357600080fd5b506102ad6108623660046124f0565b6112d4565b34801561087357600080fd5b5061033660075481565b34801561088957600080fd5b506102ad610898366004612275565b61138d565b3480156108a957600080fd5b506102ad6108b8366004612275565b6113d8565b3480156108c957600080fd5b50600d546105189061ffff808216916201000090041682565b3480156108ee57600080fd5b506102ad611470565b6000546001600160a01b0316331461092a5760405162461bcd60e51b81526004016109219061251e565b60405180910390fd5b60008160ff16118015610941575060028160ff1611155b61094a57600080fd5b600a805460ff191660ff831617905561096660016000806114ad565b50565b60006109763384846115ba565b5060015b92915050565b600061098e6009600a61264d565b61099f9066b1a2bc2ec5000061265c565b905090565b60006109b18484846116df565b6001600160a01b03841660009081526002602090815260408083203384529091529020546000198114610a535782811015610a3f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610921565b610a538533610a4e8685612673565b6115ba565b506001949350505050565b6000546001600160a01b03163314610a885760405162461bcd60e51b81526004016109219061251e565b60008160ff16118015610a9f575060028160ff1611155b610aa857600080fd5b6008805460ff60a01b1916600160a01b60ff84160217905561096660008060016114ad565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610976918590610a4e908690612686565b6000546001600160a01b03163314610b2e5760405162461bcd60e51b81526004016109219061251e565b6005805462010000600160b01b031916620100006001600160a01b0394851602179055600680546001600160a01b03191691909216179055565b6000546001600160a01b03163314610b925760405162461bcd60e51b81526004016109219061251e565b6008805460ff60a01b19169055610bac60008060016114ad565b565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610c265760405162461bcd60e51b81526004016109219061251e565b80471015610c765760405162461bcd60e51b815260206004820152601860248201527f696e73756666696369656e7420424e422062616c616e636500000000000000006044820152606401610921565b604051339082156108fc029083906000818181858888f19350505050158015610ca3573d6000803e3d6000fd5b5050565b6000546001600160a01b03163314610cd15760405162461bcd60e51b81526004016109219061251e565b306001600160a01b03841603610d295760405162461bcd60e51b815260206004820152601960248201527f43616e6e6f74207472616e73666572206f75742073656c6621000000000000006044820152606401610921565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190612699565b50505050565b6000546001600160a01b03163314610dcc5760405162461bcd60e51b81526004016109219061251e565b60008160ff16118015610de3575060028160ff1611155b610dec57600080fd5b600a805460ff1990811660ff8416908117909255600c8054909116821790556008805460ff60a01b1916600160a01b909202919091179055610966600180806114ad565b6000546001600160a01b03163314610e5a5760405162461bcd60e51b81526004016109219061251e565b8051825114610eab5760405162461bcd60e51b815260206004820152601e60248201527f417272617973206d7573742068617665207468652073616d652073697a6500006044820152606401610921565b60005b8251811015610f1e57610f0c33848381518110610ecd57610ecd6126b6565b60200260200101516009600a610ee3919061264d565b858581518110610ef557610ef56126b6565b6020026020010151610f07919061265c565b611b61565b80610f16816126cc565b915050610eae565b505050565b6000546001600160a01b03163314610f4d5760405162461bcd60e51b81526004016109219061251e565b610bac6000611ba8565b6000546001600160a01b03163314610f815760405162461bcd60e51b81526004016109219061251e565b6005805460ff1916911515919091179055565b3360009081526002602090815260408083206001600160a01b0386168452909152812054828110156110165760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610921565b6110253385610a4e8685612673565b5060019392505050565b60006109763384846116df565b6000546001600160a01b031633146110665760405162461bcd60e51b81526004016109219061251e565b6008546001600160a01b038083169116036110b85760405162461bcd60e51b815260206004820152601260248201527115d85b1b195d08185b1c9958591e481cd95d60721b6044820152606401610921565b600880546001600160a01b0319166001600160a01b0383169081179091556000908152600360205260409020805460ff191660019081179091556109669080806114ad565b6000546001600160a01b031633146111275760405162461bcd60e51b81526004016109219061251e565b600a805460ff19908116909155600c805490911690556008805460ff60a01b19169055610bac600180806114ad565b6000546001600160a01b031633146111805760405162461bcd60e51b81526004016109219061251e565b60005b8251811015610f1e5781600460008584815181106111a3576111a36126b6565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806111df816126cc565b915050611183565b6000546001600160a01b031633146112115760405162461bcd60e51b81526004016109219061251e565b600c805460ff19169055610bac60006001816114ad565b6000546001600160a01b031633146112525760405162461bcd60e51b81526004016109219061251e565b61125e6009600a61264d565b611268908261265c565b60075550565b6000546001600160a01b031633146112985760405162461bcd60e51b81526004016109219061251e565b60008160ff161180156112af575060028160ff1611155b6112b857600080fd5b600c805460ff191660ff831617905561096660006001816114ad565b6000546001600160a01b031633146112fe5760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03821660009081526004602052604090205481151560ff9091161515036113625760405162461bcd60e51b815260206004820152601160248201527015985b1d5948185b1c9958591e481cd95d607a1b6044820152606401610921565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146113b75760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b031633146114025760405162461bcd60e51b81526004016109219061251e565b6001600160a01b0381166114675760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610921565b61096681611ba8565b6000546001600160a01b0316331461149a5760405162461bcd60e51b81526004016109219061251e565b600a805460ff19169055610bac60016000805b821561150357600a5460009081906114c79060ff16611bf8565b6040805180820190915261ffff928316808252929091166020909101819052600b80546201000090920263ffffffff1990921690921717905550505b811561155957600c54600090819061151d9060ff16611bf8565b6040805180820190915261ffff928316808252929091166020909101819052600d80546201000090920263ffffffff1990921690921717905550505b8015610f1e5760008061157a600860149054906101000a900460ff16611c6d565b6040805180820190915261ffff928316808252929091166020909101819052600980546201000090920263ffffffff199092169092171790555050505050565b6001600160a01b03831661161c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610921565b6001600160a01b03821661167d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610921565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166117435760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610921565b6001600160a01b0382166117a55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610921565b600081116118075760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610921565b6001600160a01b0383166000908152600160205260409020548111156118895760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b6064820152608401610921565b6001600160a01b03831660009081526004602052604090205460ff161580156118cb57506001600160a01b03821660009081526004602052604090205460ff16155b6119075760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b6044820152606401610921565b6040805180820190915260095461ffff80821683526201000090910416602082015260065460029160009182906001600160a01b0390811690871603611995575050604080518082018252600d5461ffff808216835262010000909104166020808301919091526001600160a01b03881660009081526003909152918220549193508692509060ff16611a64565b6006546001600160a01b03908116908816036119fa575050604080518082018252600b5461ffff808216835262010000909104166020808301919091526001600160a01b0387166000908152600390915291909120546001935085925060ff16611a64565b60408051808201825260095461ffff808216835262010000909104166020808301919091526001600160a01b038a1660009081526003909152919091205490925060ff1680611a6157506001600160a01b03861660009081526003602052604090205460ff165b90505b600754306000908152600160205260408120549091111590506001856002811115611a9157611a916126e5565b14158015611aa75750600554610100900460ff16155b8015611ab5575060055460ff165b8015611abe5750805b8015611ae357506001600160a01b03881660009081526003602052604090205460ff16155b8015611b0857506001600160a01b03871660009081526003602052604090205460ff16155b15611b1857611b18600754611cd3565b8180611b36575060208301518351611b3091906126fb565b61ffff16155b15611b4b57611b46888888611b61565b611b57565b611b5788888886611d27565b5050505050505050565b611b6b8382611ec7565b611b758282611ef8565b816001600160a01b0316836001600160a01b03166000805160206127fc833981519152836040516116d291815260200190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000808260ff16600003611c1157506000928392509050565b8260ff16600103611c43576008546001600160a01b0316611c385750600092603c92509050565b50601e928392509050565b6008546001600160a01b0316611c6057506000926101f492509050565b5060c89261012c92509050565b6000808260ff16600003611c8657506000928392509050565b8260ff16600103611cb8576008546001600160a01b0316611cac57506000928392509050565b50601e92600092509050565b6008546001600160a01b0316611cac57506000928392509050565b6005805461ff0019166101001790556000611cef60028361271d565b90508047611cfd8230611f20565b6000611d098247612673565b9050611d1583826120a0565b50506005805461ff0019169055505050565b6020810151829061ffff1615611dc4576000612710836020015161ffff1685611d50919061265c565b611d5a919061271d565b90508015611dc257611d6c8183612673565b915080600e6001016000828254611d839190612686565b90915550611d9390503082611ef8565b60405181815230906001600160a01b038816906000805160206127fc8339815191529060200160405180910390a35b505b815161ffff1615611e6a57815160009061271090611de69061ffff168661265c565b611df0919061271d565b90508015611e6857611e028183612673565b915080600e6000016000828254611e199190612686565b9091555050600854611e34906001600160a01b031682611ef8565b6008546040518281526001600160a01b03918216918816906000805160206127fc8339815191529060200160405180910390a35b505b611e748584611ec7565b8015611ec057611e848482611ef8565b836001600160a01b0316856001600160a01b03166000805160206127fc83398151915283604051611eb791815260200190565b60405180910390a35b5050505050565b6001600160a01b03821660009081526001602052604081208054839290611eef908490612673565b90915550505050565b6001600160a01b03821660009081526001602052604081208054839290611eef908490612686565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f5557611f556126b6565b60200260200101906001600160a01b031690816001600160a01b031681525050600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fec919061273f565b81600181518110611fff57611fff6126b6565b6001600160a01b03928316602091820292909201015260055461202b91309162010000900416856115ba565b60055460405163791ac94760e01b8152620100009091046001600160a01b03169063791ac9479061206990869060009086908890429060040161275c565b600060405180830381600087803b15801561208357600080fd5b505af1158015612097573d6000803e3d6000fd5b50505050505050565b6005546120be9030906201000090046001600160a01b0316846115ba565b6005546001600160a01b03620100009091041663f305d7198230856000806120ee6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015612156573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611ec091906127cd565b60006020828403121561218d57600080fd5b813560ff8116811461219e57600080fd5b9392505050565b600060208083528351808285015260005b818110156121d2578581018301518582016040015282016121b6565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461096657600080fd5b6000806040838503121561221b57600080fd5b8235612226816121f3565b946020939093013593505050565b60008060006060848603121561224957600080fd5b8335612254816121f3565b92506020840135612264816121f3565b929592945050506040919091013590565b60006020828403121561228757600080fd5b813561219e816121f3565b600080604083850312156122a557600080fd5b82356122b0816121f3565b915060208301356122c0816121f3565b809150509250929050565b6000602082840312156122dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612323576123236122e4565b604052919050565b600067ffffffffffffffff821115612345576123456122e4565b5060051b60200190565b600082601f83011261236057600080fd5b813560206123756123708361232b565b6122fa565b82815260059290921b8401810191818101908684111561239457600080fd5b8286015b848110156123b85780356123ab816121f3565b8352918301918301612398565b509695505050505050565b600080604083850312156123d657600080fd5b823567ffffffffffffffff808211156123ee57600080fd5b6123fa8683870161234f565b935060209150818501358181111561241157600080fd5b85019050601f8101861361242457600080fd5b80356124326123708261232b565b81815260059190911b8201830190838101908883111561245157600080fd5b928401925b8284101561246f57833582529284019290840190612456565b80955050505050509250929050565b801515811461096657600080fd5b60006020828403121561249e57600080fd5b813561219e8161247e565b600080604083850312156124bc57600080fd5b823567ffffffffffffffff8111156124d357600080fd5b6124df8582860161234f565b92505060208301356122c08161247e565b6000806040838503121561250357600080fd5b823561250e816121f3565b915060208301356122c08161247e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156125a457816000190482111561258a5761258a612553565b8085161561259757918102915b93841c939080029061256e565b509250929050565b6000826125bb5750600161097a565b816125c85750600061097a565b81600181146125de57600281146125e857612604565b600191505061097a565b60ff8411156125f9576125f9612553565b50506001821b61097a565b5060208310610133831016604e8410600b8410161715612627575081810a61097a565b6126318383612569565b806000190482111561264557612645612553565b029392505050565b600061219e60ff8416836125ac565b808202811582820484141761097a5761097a612553565b8181038181111561097a5761097a612553565b8082018082111561097a5761097a612553565b6000602082840312156126ab57600080fd5b815161219e8161247e565b634e487b7160e01b600052603260045260246000fd5b6000600182016126de576126de612553565b5060010190565b634e487b7160e01b600052602160045260246000fd5b61ffff81811683821601908082111561271657612716612553565b5092915050565b60008261273a57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561275157600080fd5b815161219e816121f3565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156127ac5784516001600160a01b031683529383019391830191600101612787565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156127e257600080fd5b835192506020840151915060408401519050925092509256feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220cca24b2d0ce0a4f88248219abfcac54b604da7d146e368879ac0c05131ebe69264736f6c634300081200330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x6080604052600436106102815760003560e01c8063715018a61161014f578063b2ca2f06116100c1578063e11655451161007a578063e116554514610847578063e2f4560514610867578063ea2f0b371461087d578063f2fde38b1461089d578063f66895a3146108bd578063f90dfee5146108e257600080fd5b8063b2ca2f0614610777578063b31470a41461078c578063cd4c7d90146107ac578063d257b34f146107c1578063d54adc84146107e1578063dd62ed3e1461080157600080fd5b80639ba5e4d5116101135780639ba5e4d5146106ad5780639dbcb1d6146106dd578063a457c2d7146106f7578063a5ece94114610717578063a9059cbb14610737578063aacebbe31461075757600080fd5b8063715018a614610609578063864701a51461061e5780638da5cb5b14610643578063924de9b71461066157806395d89b411461068157600080fd5b806340b28c2f116101f35780635331803c116101ac5780635331803c146104f35780635342acb414610533578063538ba4f91461056c5780636ddd171314610599578063706f6937146105b357806370a08231146105d357600080fd5b806340b28c2f1461043e57806342b36ed01461045e578063437823ec14610473578063441b1d301461049357806347c23092146104b35780634ac92b27146104d357600080fd5b80632427b7c3116102455780632427b7c3146103645780632dfb2cbc14610397578063313ce567146103b757806339420731146103cb57806339509351146103e55780633bbac5791461040557600080fd5b80630444a3731461028d57806306fdde03146102af578063095ea7b3146102f157806318160ddd1461032157806323b872dd1461034457600080fd5b3661028857005b600080fd5b34801561029957600080fd5b506102ad6102a836600461217b565b6108f7565b005b3480156102bb57600080fd5b5060408051808201909152600781526621b0ba31b7b4b760c91b60208201525b6040516102e891906121a5565b60405180910390f35b3480156102fd57600080fd5b5061031161030c366004612208565b610969565b60405190151581526020016102e8565b34801561032d57600080fd5b50610336610980565b6040519081526020016102e8565b34801561035057600080fd5b5061031161035f366004612234565b6109a4565b34801561037057600080fd5b5060085461038590600160a01b900460ff1681565b60405160ff90911681526020016102e8565b3480156103a357600080fd5b506102ad6103b236600461217b565b610a5e565b3480156103c357600080fd5b506009610385565b3480156103d757600080fd5b50600c546103859060ff1681565b3480156103f157600080fd5b50610311610400366004612208565b610acd565b34801561041157600080fd5b50610311610420366004612275565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561044a57600080fd5b506102ad610459366004612292565b610b04565b34801561046a57600080fd5b506102ad610b68565b34801561047f57600080fd5b506102ad61048e366004612275565b610bae565b34801561049f57600080fd5b506102ad6104ae3660046122cb565b610bfc565b3480156104bf57600080fd5b506102ad6104ce366004612234565b610ca7565b3480156104df57600080fd5b506102ad6104ee36600461217b565b610da2565b3480156104ff57600080fd5b506009546105189061ffff808216916201000090041682565b6040805161ffff9384168152929091166020830152016102e8565b34801561053f57600080fd5b5061031161054e366004612275565b6001600160a01b031660009081526003602052604090205460ff1690565b34801561057857600080fd5b50610581600081565b6040516001600160a01b0390911681526020016102e8565b3480156105a557600080fd5b506005546103119060ff1681565b3480156105bf57600080fd5b506102ad6105ce3660046123c3565b610e30565b3480156105df57600080fd5b506103366105ee366004612275565b6001600160a01b031660009081526001602052604090205490565b34801561061557600080fd5b506102ad610f23565b34801561062a57600080fd5b50600b546105189061ffff808216916201000090041682565b34801561064f57600080fd5b506000546001600160a01b0316610581565b34801561066d57600080fd5b506102ad61067c36600461248c565b610f57565b34801561068d57600080fd5b5060408051808201909152600381526210d05560ea1b60208201526102db565b3480156106b957600080fd5b50600e54600f546106c8919082565b604080519283526020830191909152016102e8565b3480156106e957600080fd5b50600a546103859060ff1681565b34801561070357600080fd5b50610311610712366004612208565b610f94565b34801561072357600080fd5b50600854610581906001600160a01b031681565b34801561074357600080fd5b50610311610752366004612208565b61102f565b34801561076357600080fd5b506102ad610772366004612275565b61103c565b34801561078357600080fd5b506102ad6110fd565b34801561079857600080fd5b506102ad6107a73660046124a9565b611156565b3480156107b857600080fd5b506102ad6111e7565b3480156107cd57600080fd5b506102ad6107dc3660046122cb565b611228565b3480156107ed57600080fd5b506102ad6107fc36600461217b565b61126e565b34801561080d57600080fd5b5061033661081c366004612292565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561085357600080fd5b506102ad6108623660046124f0565b6112d4565b34801561087357600080fd5b5061033660075481565b34801561088957600080fd5b506102ad610898366004612275565b61138d565b3480156108a957600080fd5b506102ad6108b8366004612275565b6113d8565b3480156108c957600080fd5b50600d546105189061ffff808216916201000090041682565b3480156108ee57600080fd5b506102ad611470565b6000546001600160a01b0316331461092a5760405162461bcd60e51b81526004016109219061251e565b60405180910390fd5b60008160ff16118015610941575060028160ff1611155b61094a57600080fd5b600a805460ff191660ff831617905561096660016000806114ad565b50565b60006109763384846115ba565b5060015b92915050565b600061098e6009600a61264d565b61099f9066b1a2bc2ec5000061265c565b905090565b60006109b18484846116df565b6001600160a01b03841660009081526002602090815260408083203384529091529020546000198114610a535782811015610a3f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610921565b610a538533610a4e8685612673565b6115ba565b506001949350505050565b6000546001600160a01b03163314610a885760405162461bcd60e51b81526004016109219061251e565b60008160ff16118015610a9f575060028160ff1611155b610aa857600080fd5b6008805460ff60a01b1916600160a01b60ff84160217905561096660008060016114ad565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610976918590610a4e908690612686565b6000546001600160a01b03163314610b2e5760405162461bcd60e51b81526004016109219061251e565b6005805462010000600160b01b031916620100006001600160a01b0394851602179055600680546001600160a01b03191691909216179055565b6000546001600160a01b03163314610b925760405162461bcd60e51b81526004016109219061251e565b6008805460ff60a01b19169055610bac60008060016114ad565b565b6000546001600160a01b03163314610bd85760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b03163314610c265760405162461bcd60e51b81526004016109219061251e565b80471015610c765760405162461bcd60e51b815260206004820152601860248201527f696e73756666696369656e7420424e422062616c616e636500000000000000006044820152606401610921565b604051339082156108fc029083906000818181858888f19350505050158015610ca3573d6000803e3d6000fd5b5050565b6000546001600160a01b03163314610cd15760405162461bcd60e51b81526004016109219061251e565b306001600160a01b03841603610d295760405162461bcd60e51b815260206004820152601960248201527f43616e6e6f74207472616e73666572206f75742073656c6621000000000000006044820152606401610921565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303816000875af1158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190612699565b50505050565b6000546001600160a01b03163314610dcc5760405162461bcd60e51b81526004016109219061251e565b60008160ff16118015610de3575060028160ff1611155b610dec57600080fd5b600a805460ff1990811660ff8416908117909255600c8054909116821790556008805460ff60a01b1916600160a01b909202919091179055610966600180806114ad565b6000546001600160a01b03163314610e5a5760405162461bcd60e51b81526004016109219061251e565b8051825114610eab5760405162461bcd60e51b815260206004820152601e60248201527f417272617973206d7573742068617665207468652073616d652073697a6500006044820152606401610921565b60005b8251811015610f1e57610f0c33848381518110610ecd57610ecd6126b6565b60200260200101516009600a610ee3919061264d565b858581518110610ef557610ef56126b6565b6020026020010151610f07919061265c565b611b61565b80610f16816126cc565b915050610eae565b505050565b6000546001600160a01b03163314610f4d5760405162461bcd60e51b81526004016109219061251e565b610bac6000611ba8565b6000546001600160a01b03163314610f815760405162461bcd60e51b81526004016109219061251e565b6005805460ff1916911515919091179055565b3360009081526002602090815260408083206001600160a01b0386168452909152812054828110156110165760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610921565b6110253385610a4e8685612673565b5060019392505050565b60006109763384846116df565b6000546001600160a01b031633146110665760405162461bcd60e51b81526004016109219061251e565b6008546001600160a01b038083169116036110b85760405162461bcd60e51b815260206004820152601260248201527115d85b1b195d08185b1c9958591e481cd95d60721b6044820152606401610921565b600880546001600160a01b0319166001600160a01b0383169081179091556000908152600360205260409020805460ff191660019081179091556109669080806114ad565b6000546001600160a01b031633146111275760405162461bcd60e51b81526004016109219061251e565b600a805460ff19908116909155600c805490911690556008805460ff60a01b19169055610bac600180806114ad565b6000546001600160a01b031633146111805760405162461bcd60e51b81526004016109219061251e565b60005b8251811015610f1e5781600460008584815181106111a3576111a36126b6565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806111df816126cc565b915050611183565b6000546001600160a01b031633146112115760405162461bcd60e51b81526004016109219061251e565b600c805460ff19169055610bac60006001816114ad565b6000546001600160a01b031633146112525760405162461bcd60e51b81526004016109219061251e565b61125e6009600a61264d565b611268908261265c565b60075550565b6000546001600160a01b031633146112985760405162461bcd60e51b81526004016109219061251e565b60008160ff161180156112af575060028160ff1611155b6112b857600080fd5b600c805460ff191660ff831617905561096660006001816114ad565b6000546001600160a01b031633146112fe5760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03821660009081526004602052604090205481151560ff9091161515036113625760405162461bcd60e51b815260206004820152601160248201527015985b1d5948185b1c9958591e481cd95d607a1b6044820152606401610921565b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b031633146113b75760405162461bcd60e51b81526004016109219061251e565b6001600160a01b03166000908152600360205260409020805460ff19169055565b6000546001600160a01b031633146114025760405162461bcd60e51b81526004016109219061251e565b6001600160a01b0381166114675760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610921565b61096681611ba8565b6000546001600160a01b0316331461149a5760405162461bcd60e51b81526004016109219061251e565b600a805460ff19169055610bac60016000805b821561150357600a5460009081906114c79060ff16611bf8565b6040805180820190915261ffff928316808252929091166020909101819052600b80546201000090920263ffffffff1990921690921717905550505b811561155957600c54600090819061151d9060ff16611bf8565b6040805180820190915261ffff928316808252929091166020909101819052600d80546201000090920263ffffffff1990921690921717905550505b8015610f1e5760008061157a600860149054906101000a900460ff16611c6d565b6040805180820190915261ffff928316808252929091166020909101819052600980546201000090920263ffffffff199092169092171790555050505050565b6001600160a01b03831661161c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610921565b6001600160a01b03821661167d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610921565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166117435760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610921565b6001600160a01b0382166117a55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610921565b600081116118075760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610921565b6001600160a01b0383166000908152600160205260409020548111156118895760405162461bcd60e51b815260206004820152603160248201527f596f752061726520747279696e6720746f207472616e73666572206d6f7265206044820152707468616e20796f75722062616c616e636560781b6064820152608401610921565b6001600160a01b03831660009081526004602052604090205460ff161580156118cb57506001600160a01b03821660009081526004602052604090205460ff16155b6119075760405162461bcd60e51b815260206004820152600d60248201526c165bdd48185c99481848189bdd609a1b6044820152606401610921565b6040805180820190915260095461ffff80821683526201000090910416602082015260065460029160009182906001600160a01b0390811690871603611995575050604080518082018252600d5461ffff808216835262010000909104166020808301919091526001600160a01b03881660009081526003909152918220549193508692509060ff16611a64565b6006546001600160a01b03908116908816036119fa575050604080518082018252600b5461ffff808216835262010000909104166020808301919091526001600160a01b0387166000908152600390915291909120546001935085925060ff16611a64565b60408051808201825260095461ffff808216835262010000909104166020808301919091526001600160a01b038a1660009081526003909152919091205490925060ff1680611a6157506001600160a01b03861660009081526003602052604090205460ff165b90505b600754306000908152600160205260408120549091111590506001856002811115611a9157611a916126e5565b14158015611aa75750600554610100900460ff16155b8015611ab5575060055460ff165b8015611abe5750805b8015611ae357506001600160a01b03881660009081526003602052604090205460ff16155b8015611b0857506001600160a01b03871660009081526003602052604090205460ff16155b15611b1857611b18600754611cd3565b8180611b36575060208301518351611b3091906126fb565b61ffff16155b15611b4b57611b46888888611b61565b611b57565b611b5788888886611d27565b5050505050505050565b611b6b8382611ec7565b611b758282611ef8565b816001600160a01b0316836001600160a01b03166000805160206127fc833981519152836040516116d291815260200190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000808260ff16600003611c1157506000928392509050565b8260ff16600103611c43576008546001600160a01b0316611c385750600092603c92509050565b50601e928392509050565b6008546001600160a01b0316611c6057506000926101f492509050565b5060c89261012c92509050565b6000808260ff16600003611c8657506000928392509050565b8260ff16600103611cb8576008546001600160a01b0316611cac57506000928392509050565b50601e92600092509050565b6008546001600160a01b0316611cac57506000928392509050565b6005805461ff0019166101001790556000611cef60028361271d565b90508047611cfd8230611f20565b6000611d098247612673565b9050611d1583826120a0565b50506005805461ff0019169055505050565b6020810151829061ffff1615611dc4576000612710836020015161ffff1685611d50919061265c565b611d5a919061271d565b90508015611dc257611d6c8183612673565b915080600e6001016000828254611d839190612686565b90915550611d9390503082611ef8565b60405181815230906001600160a01b038816906000805160206127fc8339815191529060200160405180910390a35b505b815161ffff1615611e6a57815160009061271090611de69061ffff168661265c565b611df0919061271d565b90508015611e6857611e028183612673565b915080600e6000016000828254611e199190612686565b9091555050600854611e34906001600160a01b031682611ef8565b6008546040518281526001600160a01b03918216918816906000805160206127fc8339815191529060200160405180910390a35b505b611e748584611ec7565b8015611ec057611e848482611ef8565b836001600160a01b0316856001600160a01b03166000805160206127fc83398151915283604051611eb791815260200190565b60405180910390a35b5050505050565b6001600160a01b03821660009081526001602052604081208054839290611eef908490612673565b90915550505050565b6001600160a01b03821660009081526001602052604081208054839290611eef908490612686565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f5557611f556126b6565b60200260200101906001600160a01b031690816001600160a01b031681525050600560029054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fc8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fec919061273f565b81600181518110611fff57611fff6126b6565b6001600160a01b03928316602091820292909201015260055461202b91309162010000900416856115ba565b60055460405163791ac94760e01b8152620100009091046001600160a01b03169063791ac9479061206990869060009086908890429060040161275c565b600060405180830381600087803b15801561208357600080fd5b505af1158015612097573d6000803e3d6000fd5b50505050505050565b6005546120be9030906201000090046001600160a01b0316846115ba565b6005546001600160a01b03620100009091041663f305d7198230856000806120ee6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015612156573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611ec091906127cd565b60006020828403121561218d57600080fd5b813560ff8116811461219e57600080fd5b9392505050565b600060208083528351808285015260005b818110156121d2578581018301518582016040015282016121b6565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461096657600080fd5b6000806040838503121561221b57600080fd5b8235612226816121f3565b946020939093013593505050565b60008060006060848603121561224957600080fd5b8335612254816121f3565b92506020840135612264816121f3565b929592945050506040919091013590565b60006020828403121561228757600080fd5b813561219e816121f3565b600080604083850312156122a557600080fd5b82356122b0816121f3565b915060208301356122c0816121f3565b809150509250929050565b6000602082840312156122dd57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612323576123236122e4565b604052919050565b600067ffffffffffffffff821115612345576123456122e4565b5060051b60200190565b600082601f83011261236057600080fd5b813560206123756123708361232b565b6122fa565b82815260059290921b8401810191818101908684111561239457600080fd5b8286015b848110156123b85780356123ab816121f3565b8352918301918301612398565b509695505050505050565b600080604083850312156123d657600080fd5b823567ffffffffffffffff808211156123ee57600080fd5b6123fa8683870161234f565b935060209150818501358181111561241157600080fd5b85019050601f8101861361242457600080fd5b80356124326123708261232b565b81815260059190911b8201830190838101908883111561245157600080fd5b928401925b8284101561246f57833582529284019290840190612456565b80955050505050509250929050565b801515811461096657600080fd5b60006020828403121561249e57600080fd5b813561219e8161247e565b600080604083850312156124bc57600080fd5b823567ffffffffffffffff8111156124d357600080fd5b6124df8582860161234f565b92505060208301356122c08161247e565b6000806040838503121561250357600080fd5b823561250e816121f3565b915060208301356122c08161247e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156125a457816000190482111561258a5761258a612553565b8085161561259757918102915b93841c939080029061256e565b509250929050565b6000826125bb5750600161097a565b816125c85750600061097a565b81600181146125de57600281146125e857612604565b600191505061097a565b60ff8411156125f9576125f9612553565b50506001821b61097a565b5060208310610133831016604e8410600b8410161715612627575081810a61097a565b6126318383612569565b806000190482111561264557612645612553565b029392505050565b600061219e60ff8416836125ac565b808202811582820484141761097a5761097a612553565b8181038181111561097a5761097a612553565b8082018082111561097a5761097a612553565b6000602082840312156126ab57600080fd5b815161219e8161247e565b634e487b7160e01b600052603260045260246000fd5b6000600182016126de576126de612553565b5060010190565b634e487b7160e01b600052602160045260246000fd5b61ffff81811683821601908082111561271657612716612553565b5092915050565b60008261273a57634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561275157600080fd5b815161219e816121f3565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156127ac5784516001600160a01b031683529383019391830191600101612787565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156127e257600080fd5b835192506020840151915060408401519050925092509256feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220cca24b2d0ce0a4f88248219abfcac54b604da7d146e368879ac0c05131ebe69264736f6c63430008120033

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

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : routerAddress (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

2849:15090:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16226:192;;;;;;;;;;-1:-1:-1;16226:192:0;;;;;:::i;:::-;;:::i;:::-;;4818:82;;;;;;;;;;-1:-1:-1;4888:4:0;;;;;;;;;;;;-1:-1:-1;;;4888:4:0;;;;4818:82;;;;;;;:::i;:::-;;;;;;;;5666:161;;;;;;;;;;-1:-1:-1;5666:161:0;;;;;:::i;:::-;;:::i;:::-;;;1462:14:1;;1455:22;1437:41;;1425:2;1410:18;5666:161:0;1297:187:1;5111:95:0;;;;;;;;;;;;;:::i;:::-;;;1635:25:1;;;1623:2;1608:18;5111:95:0;1489:177:1;5835:495:0;;;;;;;;;;-1:-1:-1;5835:495:0;;;;;:::i;:::-;;:::i;3869:30::-;;;;;;;;;;-1:-1:-1;3869:30:0;;;;-1:-1:-1;;;3869:30:0;;;;;;;;;2304:4:1;2292:17;;;2274:36;;2262:2;2247:18;3869:30:0;2132:184:1;16628:202:0;;;;;;;;;;-1:-1:-1;16628:202:0;;;;;:::i;:::-;;:::i;4998:82::-;;;;;;;;;;-1:-1:-1;3291:1:0;4998:82;;4012:26;;;;;;;;;;-1:-1:-1;4012:26:0;;;;;;;;6338:215;;;;;;;;;;-1:-1:-1;6338:215:0;;;;;:::i;:::-;;:::i;14664:98::-;;;;;;;;;;-1:-1:-1;14664:98:0;;;;;:::i;:::-;-1:-1:-1;;;;;14739:15:0;14716:4;14739:15;;;:6;:15;;;;;;;;;14664:98;14774:154;;;;;;;;;;-1:-1:-1;14774:154:0;;;;;:::i;:::-;;:::i;17094:129::-;;;;;;;;;;;;;:::i;6946:111::-;;;;;;;;;;-1:-1:-1;6946:111:0;;;;;:::i;:::-;;:::i;17295:196::-;;;;;;;;;;-1:-1:-1;17295:196:0;;;;;:::i;:::-;;:::i;17664:230::-;;;;;;;;;;-1:-1:-1;17664:230:0;;;;;:::i;:::-;;:::i;15955:263::-;;;;;;;;;;-1:-1:-1;15955:263:0;;;;;:::i;:::-;;:::i;3906:39::-;;;;;;;;;;-1:-1:-1;3906:39:0;;;;;;;;;;;;;;;;;;;3331:6:1;3364:15;;;3346:34;;3416:15;;;;3411:2;3396:18;;3389:43;3294:18;3906:39:0;3151:287:1;7185:123:0;;;;;;;;;;-1:-1:-1;7185:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;7273:27:0;7249:4;7273:27;;;:18;:27;;;;;;;;;7185:123;3497:49;;;;;;;;;;;;3544:1;3497:49;;;;;-1:-1:-1;;;;;3607:32:1;;;3589:51;;3577:2;3562:18;3497:49:0;3443:203:1;3139:23:0;;;;;;;;;;-1:-1:-1;3139:23:0;;;;;;;;15423:336;;;;;;;;;;-1:-1:-1;15423:336:0;;;;;:::i;:::-;;:::i;5214:118::-;;;;;;;;;;-1:-1:-1;5214:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5307:17:0;5280:7;5307:17;;;:8;:17;;;;;;;5214:118;1626:94;;;;;;;;;;;;;:::i;3984:21::-;;;;;;;;;;-1:-1:-1;3984:21:0;;;;;;;;;;;;;;;1403:87;;;;;;;;;;-1:-1:-1;1449:7:0;1476:6;-1:-1:-1;;;;;1476:6:0;1403:87;;14159:101;;;;;;;;;;-1:-1:-1;14159:101:0;;;;;:::i;:::-;;:::i;4906:86::-;;;;;;;;;;-1:-1:-1;4978:6:0;;;;;;;;;;;;-1:-1:-1;;;4978:6:0;;;;4906:86;;4170:36;;;;;;;;;;-1:-1:-1;4170:36:0;;;;;;;;;;;;;6679:25:1;;;6735:2;6720:18;;6713:34;;;;6652:18;4170:36:0;6505:248:1;3952:25:0;;;;;;;;;;-1:-1:-1;3952:25:0;;;;;;;;6561:377;;;;;;;;;;-1:-1:-1;6561:377:0;;;;;:::i;:::-;;:::i;3553:46::-;;;;;;;;;;-1:-1:-1;3553:46:0;;;;-1:-1:-1;;;;;3553:46:0;;;5340:167;;;;;;;;;;-1:-1:-1;5340:167:0;;;;;:::i;:::-;;:::i;13726:288::-;;;;;;;;;;-1:-1:-1;13726:288:0;;;;;:::i;:::-;;:::i;15773:174::-;;;;;;;;;;;;;:::i;14458:194::-;;;;;;;;;;-1:-1:-1;14458:194:0;;;;;:::i;:::-;;:::i;16965:121::-;;;;;;;;;;;;;:::i;14022:129::-;;;;;;;;;;-1:-1:-1;14022:129:0;;;;;:::i;:::-;;:::i;16426:194::-;;;;;;;;;;-1:-1:-1;16426:194:0;;;;;:::i;:::-;;:::i;5515:143::-;;;;;;;;;;-1:-1:-1;5515:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5623:18:0;;;5596:7;5623:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5515:143;14272:174;;;;;;;;;;-1:-1:-1;14272:174:0;;;;;:::i;:::-;;:::i;3413:69::-;;;;;;;;;;;;;;;;7065:110;;;;;;;;;;-1:-1:-1;7065:110:0;;;;;:::i;:::-;;:::i;1728:192::-;;;;;;;;;;-1:-1:-1;1728:192:0;;;;;:::i;:::-;;:::i;4045:22::-;;;;;;;;;;-1:-1:-1;4045:22:0;;;;;;;;;;;;;;;16838:119;;;;;;;;;;;;;:::i;16226:192::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;;;;;;;;;16306:1:::1;16294:9;:13;;;:30;;;;;16323:1;16311:9;:13;;;;16294:30;16286:39;;;::::0;::::1;;16336:12;:24:::0;;-1:-1:-1;;16336:24:0::1;;::::0;::::1;;::::0;;16371:39:::1;-1:-1:-1::0;;;16371:19:0::1;:39::i;:::-;16226:192:::0;:::o;5666:161::-;5741:4;5758:39;904:10;5781:7;5790:6;5758:8;:39::i;:::-;-1:-1:-1;5815:4:0;5666:161;;;;;:::o;5111:95::-;5164:7;3392:12;3291:1;3392:2;:12;:::i;:::-;3385:19;;:4;:19;:::i;:::-;5184:14;;5111:95;:::o;5835:495::-;5941:4;5958:36;5968:6;5976:9;5987:6;5958:9;:36::i;:::-;-1:-1:-1;;;;;6034:19:0;;6007:24;6034:19;;;:11;:19;;;;;;;;904:10;6034:33;;;;;;;;-1:-1:-1;;6082:37:0;;6078:221;;6164:6;6144:16;:26;;6136:79;;;;-1:-1:-1;;;6136:79:0;;9878:2:1;6136:79:0;;;9860:21:1;9917:2;9897:18;;;9890:30;9956:34;9936:18;;;9929:62;-1:-1:-1;;;10007:18:1;;;10000:38;10055:19;;6136:79:0;9676:404:1;6136:79:0;6230:57;6239:6;904:10;6261:25;6280:6;6261:16;:25;:::i;:::-;6230:8;:57::i;:::-;-1:-1:-1;6318:4:0;;5835:495;-1:-1:-1;;;;5835:495:0:o;16628:202::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;16713:1:::1;16701:9;:13;;;:30;;;;;16730:1;16718:9;:13;;;;16701:30;16693:39;;;::::0;::::1;;16743:17;:29:::0;;-1:-1:-1;;;;16743:29:0::1;-1:-1:-1::0;;;16743:29:0::1;::::0;::::1;;;::::0;;16783:39:::1;-1:-1:-1::0;;;16783:19:0::1;:39::i;6338:215::-:0;904:10;6426:4;6475:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;6475:34:0;;;;;;;;;;6426:4;;6443:80;;6466:7;;6475:47;;6512:10;;6475:47;:::i;14774:154::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;14868:6:::1;:27:::0;;-1:-1:-1;;;;;;14868:27:0::1;::::0;-1:-1:-1;;;;;14868:27:0;;::::1;;;::::0;;14906:4:::1;:14:::0;;-1:-1:-1;;;;;;14906:14:0::1;::::0;;;::::1;;::::0;;14774:154::o;17094:129::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;17144:17:::1;:21:::0;;-1:-1:-1;;;;17144:21:0::1;::::0;;17176:39:::1;17164:1;::::0;-1:-1:-1;17176:19:0::1;:39::i;:::-;17094:129::o:0;6946:111::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7015:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;7015:34:0::1;7045:4;7015:34;::::0;;6946:111::o;17295:196::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;17395:9:::1;17370:21;:34;;17362:71;;;::::0;-1:-1:-1;;;17362:71:0;;10550:2:1;17362:71:0::1;::::0;::::1;10532:21:1::0;10589:2;10569:18;;;10562:30;10628:26;10608:18;;;10601:54;10672:18;;17362:71:0::1;10348:348:1::0;17362:71:0::1;17444:39;::::0;17452:10:::1;::::0;17444:39;::::1;;;::::0;17473:9;;17444:39:::1;::::0;;;17473:9;17452:10;17444:39;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;17295:196:::0;:::o;17664:230::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;17799:4:::1;-1:-1:-1::0;;;;;17777:27:0;::::1;::::0;17769:65:::1;;;::::0;-1:-1:-1;;;17769:65:0;;10903:2:1;17769:65:0::1;::::0;::::1;10885:21:1::0;10942:2;10922:18;;;10915:30;10981:27;10961:18;;;10954:55;11026:18;;17769:65:0::1;10701:349:1::0;17769:65:0::1;17845:41;::::0;-1:-1:-1;;;17845:41:0;;-1:-1:-1;;;;;11247:32:1;;;17845:41:0::1;::::0;::::1;11229:51:1::0;11296:18;;;11289:34;;;17845:27:0;::::1;::::0;::::1;::::0;11202:18:1;;17845:41:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17664:230:::0;;;:::o;15955:263::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;16032:1:::1;16020:9;:13;;;:30;;;;;16049:1;16037:9;:13;;;;16020:30;16012:39;;;::::0;::::1;;16062:12;:24:::0;;-1:-1:-1;;16062:24:0;;::::1;;::::0;::::1;::::0;;::::1;::::0;;;16097:13:::1;:25:::0;;;;::::1;::::0;::::1;::::0;;16133:17:::1;:29:::0;;-1:-1:-1;;;;16133:29:0::1;-1:-1:-1::0;;;16133:29:0;;::::1;::::0;;;::::1;::::0;;16173:37:::1;-1:-1:-1::0;;;16173:19:0::1;:37::i;15423:336::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;15555:7:::1;:14;15536:8;:15;:33;15528:76;;;::::0;-1:-1:-1;;;15528:76:0;;11786:2:1;15528:76:0::1;::::0;::::1;11768:21:1::0;11825:2;11805:18;;;11798:30;11864:32;11844:18;;;11837:60;11914:18;;15528:76:0::1;11584:354:1::0;15528:76:0::1;15619:9;15615:137;15637:8;:15;15633:1;:19;15615:137;;;15673:67;15689:10;15701:8;15710:1;15701:11;;;;;;;;:::i;:::-;;;;;;;3291:1;15727:2;:12;;;;:::i;:::-;15714:7;15722:1;15714:10;;;;;;;;:::i;:::-;;;;;;;:25;;;;:::i;:::-;15673:15;:67::i;:::-;15654:3:::0;::::1;::::0;::::1;:::i;:::-;;;;15615:137;;;;15423:336:::0;;:::o;1626:94::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;1691:21:::1;1709:1;1691:9;:21::i;14159:101::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;14230:11:::1;:22:::0;;-1:-1:-1;;14230:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14159:101::o;6561:377::-;904:10;6654:4;6698:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;6698:34:0;;;;;;;;;;6751:35;;;;6743:85;;;;-1:-1:-1;;;6743:85:0;;12417:2:1;6743:85:0;;;12399:21:1;12456:2;12436:18;;;12429:30;12495:34;12475:18;;;12468:62;-1:-1:-1;;;12546:18:1;;;12539:35;12591:19;;6743:85:0;12215:401:1;6743:85:0;6839:67;904:10;6862:7;6871:34;6890:15;6871:16;:34;:::i;6839:67::-;-1:-1:-1;6926:4:0;;6561:377;-1:-1:-1;;;6561:377:0:o;5340:167::-;5418:4;5435:42;904:10;5459:9;5470:6;5435:9;:42::i;13726:288::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;13813:16:::1;::::0;-1:-1:-1;;;;;13813:29:0;;::::1;:16:::0;::::1;:29:::0;13805:60:::1;;;::::0;-1:-1:-1;;;13805:60:0;;12823:2:1;13805:60:0::1;::::0;::::1;12805:21:1::0;12862:2;12842:18;;;12835:30;-1:-1:-1;;;12881:18:1;;;12874:48;12939:18;;13805:60:0::1;12621:342:1::0;13805:60:0::1;13876:16;:28:::0;;-1:-1:-1;;;;;;13876:28:0::1;-1:-1:-1::0;;;;;13876:28:0;::::1;::::0;;::::1;::::0;;;-1:-1:-1;13915:36:0;;;:18:::1;:36;::::0;;;;:43;;-1:-1:-1;;13915:43:0::1;-1:-1:-1::0;13915:43:0;;::::1;::::0;;;13969:37:::1;::::0;-1:-1:-1;;13969:19:0::1;:37::i;15773:174::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;15815:12:::1;:16:::0;;-1:-1:-1;;15815:16:0;;::::1;::::0;;;15842:13:::1;:17:::0;;;;::::1;::::0;;15870::::1;:21:::0;;-1:-1:-1;;;;15870:21:0::1;::::0;;15902:37:::1;15815:16:::0;;;15902:19:::1;:37::i;14458:194::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;14551:9:::1;14547:98;14570:8;:15;14566:1;:19;14547:98;;;14628:5;14606:6;:19;14613:8;14622:1;14613:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;14606:19:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;14606:19:0;:27;;-1:-1:-1;;14606:27:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14587:3;::::1;::::0;::::1;:::i;:::-;;;;14547:98;;16965:121:::0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;17011:13:::1;:17:::0;;-1:-1:-1;;17011:17:0::1;::::0;;17039:39:::1;17027:1;17011:17:::0;17027:1;17039:19:::1;:39::i;14022:129::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;14131:12:::1;3291:1;14131:2;:12;:::i;:::-;14122:21;::::0;:6;:21:::1;:::i;:::-;14101:18;:42:::0;-1:-1:-1;14022:129:0:o;16426:194::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;16507:1:::1;16495:9;:13;;;:30;;;;;16524:1;16512:9;:13;;;;16495:30;16487:39;;;::::0;::::1;;16537:13;:25:::0;;-1:-1:-1;;16537:25:0::1;;::::0;::::1;;::::0;;16573:39:::1;-1:-1:-1::0;;;16573:19:0::1;:39::i;14272:174::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14358:15:0;::::1;;::::0;;;:6:::1;:15;::::0;;;;;:24;::::1;;:15;::::0;;::::1;:24;;::::0;14350:54:::1;;;::::0;-1:-1:-1;;;14350:54:0;;13170:2:1;14350:54:0::1;::::0;::::1;13152:21:1::0;13209:2;13189:18;;;13182:30;-1:-1:-1;;;13228:18:1;;;13221:47;13285:18;;14350:54:0::1;12968:341:1::0;14350:54:0::1;-1:-1:-1::0;;;;;14415:15:0;;;::::1;;::::0;;;:6:::1;:15;::::0;;;;:23;;-1:-1:-1;;14415:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14272:174::o;7065:110::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7132:27:0::1;7162:5;7132:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;7132:35:0::1;::::0;;7065:110::o;1728:192::-;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1817:22:0;::::1;1809:73;;;::::0;-1:-1:-1;;;1809:73:0;;13516:2:1;1809:73:0::1;::::0;::::1;13498:21:1::0;13555:2;13535:18;;;13528:30;13594:34;13574:18;;;13567:62;-1:-1:-1;;;13645:18:1;;;13638:36;13691:19;;1809:73:0::1;13314:402:1::0;1809:73:0::1;1893:19;1903:8;1893:9;:19::i;16838:119::-:0;1449:7;1476:6;-1:-1:-1;;;;;1476:6:0;904:10;1538:23;1530:68;;;;-1:-1:-1;;;1530:68:0;;;;;;;:::i;:::-;16883:12:::1;:16:::0;;-1:-1:-1;;16883:16:0::1;::::0;;16910:39:::1;16883:16:::0;16898:1:::1;::::0;13140:578;13249:10;13245:140;;;13321:12;;13277:9;;;;13301:33;;13321:12;;13301:19;:33::i;:::-;13360:13;;;;;;;;;;;;;;;;;;;;;;;;;;;13349:8;:24;;;;;;-1:-1:-1;;13349:24:0;;;;;;;;;-1:-1:-1;;13245:140:0;13399:11;13395:143;;;13472:13;;13428:9;;;;13452:34;;13472:13;;13452:19;:34::i;:::-;13513:13;;;;;;;;;;;;;;;;;;;;;;;;;;;13501:9;:25;;;;;;-1:-1:-1;;13501:25:0;;;;;;;;;-1:-1:-1;;13395:143:0;13552:15;13548:163;;;13585:9;13596;13609:46;13637:17;;;;;;;;;;;13609:27;:46::i;:::-;13686:13;;;;;;;;;;;;;;;;;;;;;;;;;;;13670;:29;;;;;;-1:-1:-1;;13670:29:0;;;;;;;;;-1:-1:-1;;13140:578:0;;;:::o;7322:335::-;-1:-1:-1;;;;;7415:19:0;;7407:68;;;;-1:-1:-1;;;7407:68:0;;13923:2:1;7407:68:0;;;13905:21:1;13962:2;13942:18;;;13935:30;14001:34;13981:18;;;13974:62;-1:-1:-1;;;14052:18:1;;;14045:34;14096:19;;7407:68:0;13721:400:1;7407:68:0;-1:-1:-1;;;;;7494:21:0;;7486:68;;;;-1:-1:-1;;;7486:68:0;;14328:2:1;7486:68:0;;;14310:21:1;14367:2;14347:18;;;14340:30;14406:34;14386:18;;;14379:62;-1:-1:-1;;;14457:18:1;;;14450:32;14499:19;;7486:68:0;14126:398:1;7486:68:0;-1:-1:-1;;;;;7565:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7617:32;;1635:25:1;;;7617:32:0;;1608:18:1;7617:32:0;;;;;;;;7322:335;;;:::o;7665:1707::-;-1:-1:-1;;;;;7753:18:0;;7745:68;;;;-1:-1:-1;;;7745:68:0;;14731:2:1;7745:68:0;;;14713:21:1;14770:2;14750:18;;;14743:30;14809:34;14789:18;;;14782:62;-1:-1:-1;;;14860:18:1;;;14853:35;14905:19;;7745:68:0;14529:401:1;7745:68:0;-1:-1:-1;;;;;7832:16:0;;7824:64;;;;-1:-1:-1;;;7824:64:0;;15137:2:1;7824:64:0;;;15119:21:1;15176:2;15156:18;;;15149:30;15215:34;15195:18;;;15188:62;-1:-1:-1;;;15266:18:1;;;15259:33;15309:19;;7824:64:0;14935:399:1;7824:64:0;7916:1;7907:6;:10;7899:64;;;;-1:-1:-1;;;7899:64:0;;15541:2:1;7899:64:0;;;15523:21:1;15580:2;15560:18;;;15553:30;15619:34;15599:18;;;15592:62;-1:-1:-1;;;15670:18:1;;;15663:39;15719:19;;7899:64:0;15339:405:1;7899:64:0;-1:-1:-1;;;;;5307:17:0;;5280:7;5307:17;;;:8;:17;;;;;;7982:6;:25;;7974:86;;;;-1:-1:-1;;;7974:86:0;;15951:2:1;7974:86:0;;;15933:21:1;15990:2;15970:18;;;15963:30;16029:34;16009:18;;;16002:62;-1:-1:-1;;;16080:18:1;;;16073:47;16137:19;;7974:86:0;15749:413:1;7974:86:0;-1:-1:-1;;;;;8080:12:0;;;;;;:6;:12;;;;;;;;8079:13;:28;;;;-1:-1:-1;;;;;;8097:10:0;;;;;;:6;:10;;;;;;;;8096:11;8079:28;8071:54;;;;-1:-1:-1;;;8071:54:0;;16369:2:1;8071:54:0;;;16351:21:1;16408:2;16388:18;;;16381:30;-1:-1:-1;;;16427:18:1;;;16420:43;16480:18;;8071:54:0;16167:337:1;8071:54:0;8238:38;;;;;;;;;8263:13;8238:38;;;;;;;;;;;;;;;;8336:4;;8167:22;;8138:26;;;;-1:-1:-1;;;;;8336:4:0;;;8330:10;;;;8326:543;;-1:-1:-1;;8433:21:0;;;;;;;;8445:9;8433:21;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8487:26:0;;8372:18;8487:26;;;:18;:26;;;;;;;8372:18;;-1:-1:-1;8414:4:0;;-1:-1:-1;8433:21:0;8487:26;;8326:543;;;8543:4;;-1:-1:-1;;;;;8543:4:0;;;8535:12;;;;8531:338;;-1:-1:-1;;8637:20:0;;;;;;;;8649:8;8637:20;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8690:26:0;;-1:-1:-1;8690:26:0;;;:18;:26;;;;;;;;8579:17;;-1:-1:-1;8620:2:0;;-1:-1:-1;8690:26:0;;8531:338;;;8749:25;;;;;;;;8761:13;8749:25;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8807:24:0;;-1:-1:-1;8807:24:0;;;:18;:24;;;;;;;;8749:25;;-1:-1:-1;8807:24:0;;;:50;;-1:-1:-1;;;;;;8835:22:0;;;;;;:18;:22;;;;;;;;8807:50;8789:68;;8531:338;8924:18;;8914:4;8881:12;5307:17;;;:8;:17;;;;;;8881:12;;-1:-1:-1;8896:46:0;;-1:-1:-1;8972:17:0;8956:12;:33;;;;;;;;:::i;:::-;;;:46;;;;-1:-1:-1;8994:8:0;;;;;;;8993:9;8956:46;:61;;;;-1:-1:-1;9006:11:0;;;;8956:61;:72;;;;;9021:7;8956:72;:101;;;;-1:-1:-1;;;;;;9033:24:0;;;;;;:18;:24;;;;;;;;9032:25;8956:101;:128;;;;-1:-1:-1;;;;;;9062:22:0;;;;;;:18;:22;;;;;;;;9061:23;8956:128;8953:193;;;9100:34;9115:18;;9100:14;:34::i;:::-;9162:15;:65;;;-1:-1:-1;9203:19:0;;;;9181;;:41;;9203:19;9181:41;:::i;:::-;:46;;;9162:65;9158:207;;;9244:33;9260:4;9266:2;9270:6;9244:15;:33::i;:::-;9158:207;;;9310:43;9325:4;9331:2;9335:6;9343:9;9310:14;:43::i;:::-;7734:1638;;;;;7665:1707;;;:::o;14940:232::-;15037:31;15052:6;15060:7;15037:14;:31::i;:::-;15079;15091:9;15102:7;15079:11;:31::i;:::-;15145:9;-1:-1:-1;;;;;15128:36:0;15137:6;-1:-1:-1;;;;;15128:36:0;-1:-1:-1;;;;;;;;;;;15156:7:0;15128:36;;;;1635:25:1;;1623:2;1608:18;;1489:177;1928:173:0;1984:16;2003:6;;-1:-1:-1;;;;;2020:17:0;;;-1:-1:-1;;;;;;2020:17:0;;;;;;2053:40;;2003:6;;;;;;;2053:40;;1984:16;2053:40;1973:128;1928:173;:::o;12229:447::-;12291:6;12299;12322:4;:9;;12330:1;12322:9;12318:55;;-1:-1:-1;12356:1:0;;;;-1:-1:-1;12229:447:0;-1:-1:-1;12229:447:0:o;12318:55::-;12387:4;:9;;12395:1;12387:9;12383:158;;12417:16;;-1:-1:-1;;;;;12417:16:0;12413:87;;-1:-1:-1;12478:1:0;;12481:2;;-1:-1:-1;12229:447:0;-1:-1:-1;12229:447:0:o;12413:87::-;-1:-1:-1;12522:2:0;;;;-1:-1:-1;12229:447:0;-1:-1:-1;12229:447:0:o;12383:158::-;12565:16;;-1:-1:-1;;;;;12565:16:0;12561:80;;-1:-1:-1;12622:1:0;;12625:3;;-1:-1:-1;12229:447:0;-1:-1:-1;12229:447:0:o;12561:80::-;-1:-1:-1;12659:3:0;;12664;;-1:-1:-1;12229:447:0;-1:-1:-1;12229:447:0:o;12684:448::-;12754:6;12762;12785:4;:9;;12793:1;12785:9;12781:55;;-1:-1:-1;12819:1:0;;;;-1:-1:-1;12684:448:0;-1:-1:-1;12684:448:0:o;12781:55::-;12850:4;:9;;12858:1;12850:9;12846:156;;12880:16;;-1:-1:-1;;;;;12880:16:0;12876:86;;-1:-1:-1;12941:1:0;;;;-1:-1:-1;12684:448:0;-1:-1:-1;12684:448:0:o;12876:86::-;-1:-1:-1;12984:2:0;;12988:1;;-1:-1:-1;12684:448:0;-1:-1:-1;12684:448:0:o;12846:156::-;13026:16;;-1:-1:-1;;;;;13026:16:0;13022:78;;-1:-1:-1;13083:1:0;;;;-1:-1:-1;12684:448:0;-1:-1:-1;12684:448:0:o;10637:487::-;4247:8;:15;;-1:-1:-1;;4247:15:0;;;;;;10802:24:::1;10825:1;10802:20:::0;:24:::1;:::i;:::-;10779:47:::0;-1:-1:-1;10779:47:0;10913:21:::1;10945:45;10779:47:::0;10984:4:::1;10945:16;:45::i;:::-;11001:18;11022:40;11047:14:::0;11022:21:::1;:40;:::i;:::-;11001:61;;11073:43;11086:17;11105:10;11073:12;:43::i;:::-;-1:-1:-1::0;;4285:8:0;:16;;-1:-1:-1;;4285:16:0;;;-1:-1:-1;;;10637:487:0:o;9436:1193::-;9614:19;;;;9583:7;;9614:24;;;9611:391;;9655:18;9708:5;9686:9;:19;;;9676:29;;:7;:29;;;;:::i;:::-;:37;;;;:::i;:::-;9655:58;-1:-1:-1;9732:15:0;;9728:263;;9768:29;9787:10;9768:29;;:::i;:::-;;;9841:10;9816:11;:21;;;:35;;;;;;;:::i;:::-;;;;-1:-1:-1;9870:38:0;;-1:-1:-1;9890:4:0;9897:10;9870:11;:38::i;:::-;9932:43;;1635:25:1;;;9957:4:0;;-1:-1:-1;;;;;9932:43:0;;;-1:-1:-1;;;;;;;;;;;9932:43:0;1623:2:1;1608:18;9932:43:0;;;;;;;9728:263;9640:362;9611:391;10016:19;;:24;;;10012:398;;10088:19;;10057:18;;10110:5;;10078:29;;;;:7;:29;:::i;:::-;:37;;;;:::i;:::-;10057:58;-1:-1:-1;10134:15:0;;10130:269;;10170:29;10189:10;10170:29;;:::i;:::-;;;10243:10;10218:11;:21;;;:35;;;;;;;:::i;:::-;;;;-1:-1:-1;;10284:16:0;;10272:41;;-1:-1:-1;;;;;10284:16:0;10302:10;10272:11;:41::i;:::-;10354:16;;10337:46;;1635:25:1;;;-1:-1:-1;;;;;10354:16:0;;;;10337:46;;;-1:-1:-1;;;;;;;;;;;10337:46:0;1623:2:1;1608:18;10337:46:0;;;;;;;10130:269;10042:368;10012:398;10424:31;10439:6;10447:7;10424:14;:31::i;:::-;10470:20;;10466:156;;10507:39;10519:9;10530:15;10507:11;:39::i;:::-;10583:9;-1:-1:-1;;;;;10566:44:0;10575:6;-1:-1:-1;;;;;10566:44:0;-1:-1:-1;;;;;;;;;;;10594:15:0;10566:44;;;;1635:25:1;;1623:2;1608:18;;1489:177;10566:44:0;;;;;;;;10466:156;9544:1085;9436:1193;;;;:::o;15298:113::-;-1:-1:-1;;;;;15375:17:0;;;;;;:8;:17;;;;;:28;;15396:7;;15375:17;:28;;15396:7;;15375:28;:::i;:::-;;;;-1:-1:-1;;;;15298:113:0:o;15180:110::-;-1:-1:-1;;;;;15254:17:0;;;;;;:8;:17;;;;;:28;;15275:7;;15254:17;:28;;15275:7;;15254:28;:::i;11635:586::-;11804:16;;;11818:1;11804:16;;;;;;;;11780:21;;11804:16;;;;;;;;;;-1:-1:-1;11804:16:0;11780:40;;11849:4;11831;11836:1;11831:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;11831:23:0;;;-1:-1:-1;;;;;11831:23:0;;;;;11875:6;;;;;;;;;-1:-1:-1;;;;;11875:6:0;-1:-1:-1;;;;;11875:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11865:4;11870:1;11865:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;11865:23:0;;;:7;;;;;;;;;:23;11933:6;;11901:53;;11918:4;;11933:6;;;;11942:11;11901:8;:53::i;:::-;11993:6;;:220;;-1:-1:-1;;;11993:220:0;;:6;;;;-1:-1:-1;;;;;11993:6:0;;:57;;:220;;12065:11;;12091:1;;12135:4;;12162:9;;12187:15;;11993:220;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11709:512;11635:586;;:::o;11132:495::-;11312:6;;11280:53;;11297:4;;11312:6;;;-1:-1:-1;;;;;11312:6:0;11321:11;11280:8;:53::i;:::-;11376:6;;-1:-1:-1;;;;;11376:6:0;;;;;:22;11406:9;11439:4;11459:11;11485:1;;11571:7;1449;1476:6;-1:-1:-1;;;;;1476:6:0;;1403:87;11571:7;11376:243;;;;;;-1:-1:-1;;;;;;11376:243:0;;;-1:-1:-1;;;;;18644:15:1;;;11376:243:0;;;18626:34:1;18676:18;;;18669:34;;;;18719:18;;;18712:34;;;;18762:18;;;18755:34;18826:15;;;18805:19;;;18798:44;11593:15:0;18858:19:1;;;18851:35;18560:19;;11376:243:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14:269:1:-;71:6;124:2;112:9;103:7;99:23;95:32;92:52;;;140:1;137;130:12;92:52;179:9;166:23;229:4;222:5;218:16;211:5;208:27;198:55;;249:1;246;239:12;198:55;272:5;14:269;-1:-1:-1;;;14:269:1:o;288:548::-;400:4;429:2;458;447:9;440:21;490:6;484:13;533:6;528:2;517:9;513:18;506:34;558:1;568:140;582:6;579:1;576:13;568:140;;;677:14;;;673:23;;667:30;643:17;;;662:2;639:26;632:66;597:10;;568:140;;;572:3;757:1;752:2;743:6;732:9;728:22;724:31;717:42;827:2;820;816:7;811:2;803:6;799:15;795:29;784:9;780:45;776:54;768:62;;;;288:548;;;;:::o;841:131::-;-1:-1:-1;;;;;916:31:1;;906:42;;896:70;;962:1;959;952:12;977:315;1045:6;1053;1106:2;1094:9;1085:7;1081:23;1077:32;1074:52;;;1122:1;1119;1112:12;1074:52;1161:9;1148:23;1180:31;1205:5;1180:31;:::i;:::-;1230:5;1282:2;1267:18;;;;1254:32;;-1:-1:-1;;;977:315:1:o;1671:456::-;1748:6;1756;1764;1817:2;1805:9;1796:7;1792:23;1788:32;1785:52;;;1833:1;1830;1823:12;1785:52;1872:9;1859:23;1891:31;1916:5;1891:31;:::i;:::-;1941:5;-1:-1:-1;1998:2:1;1983:18;;1970:32;2011:33;1970:32;2011:33;:::i;:::-;1671:456;;2063:7;;-1:-1:-1;;;2117:2:1;2102:18;;;;2089:32;;1671:456::o;2321:247::-;2380:6;2433:2;2421:9;2412:7;2408:23;2404:32;2401:52;;;2449:1;2446;2439:12;2401:52;2488:9;2475:23;2507:31;2532:5;2507:31;:::i;2573:388::-;2641:6;2649;2702:2;2690:9;2681:7;2677:23;2673:32;2670:52;;;2718:1;2715;2708:12;2670:52;2757:9;2744:23;2776:31;2801:5;2776:31;:::i;:::-;2826:5;-1:-1:-1;2883:2:1;2868:18;;2855:32;2896:33;2855:32;2896:33;:::i;:::-;2948:7;2938:17;;;2573:388;;;;;:::o;2966:180::-;3025:6;3078:2;3066:9;3057:7;3053:23;3049:32;3046:52;;;3094:1;3091;3084:12;3046:52;-1:-1:-1;3117:23:1;;2966:180;-1:-1:-1;2966:180:1:o;3651:127::-;3712:10;3707:3;3703:20;3700:1;3693:31;3743:4;3740:1;3733:15;3767:4;3764:1;3757:15;3783:275;3854:2;3848:9;3919:2;3900:13;;-1:-1:-1;;3896:27:1;3884:40;;3954:18;3939:34;;3975:22;;;3936:62;3933:88;;;4001:18;;:::i;:::-;4037:2;4030:22;3783:275;;-1:-1:-1;3783:275:1:o;4063:183::-;4123:4;4156:18;4148:6;4145:30;4142:56;;;4178:18;;:::i;:::-;-1:-1:-1;4223:1:1;4219:14;4235:4;4215:25;;4063:183::o;4251:737::-;4305:5;4358:3;4351:4;4343:6;4339:17;4335:27;4325:55;;4376:1;4373;4366:12;4325:55;4412:6;4399:20;4438:4;4462:60;4478:43;4518:2;4478:43;:::i;:::-;4462:60;:::i;:::-;4556:15;;;4642:1;4638:10;;;;4626:23;;4622:32;;;4587:12;;;;4666:15;;;4663:35;;;4694:1;4691;4684:12;4663:35;4730:2;4722:6;4718:15;4742:217;4758:6;4753:3;4750:15;4742:217;;;4838:3;4825:17;4855:31;4880:5;4855:31;:::i;:::-;4899:18;;4937:12;;;;4775;;4742:217;;;-1:-1:-1;4977:5:1;4251:737;-1:-1:-1;;;;;;4251:737:1:o;4993:1138::-;5111:6;5119;5172:2;5160:9;5151:7;5147:23;5143:32;5140:52;;;5188:1;5185;5178:12;5140:52;5228:9;5215:23;5257:18;5298:2;5290:6;5287:14;5284:34;;;5314:1;5311;5304:12;5284:34;5337:61;5390:7;5381:6;5370:9;5366:22;5337:61;:::i;:::-;5327:71;;5417:2;5407:12;;5472:2;5461:9;5457:18;5444:32;5501:2;5491:8;5488:16;5485:36;;;5517:1;5514;5507:12;5485:36;5540:24;;;-1:-1:-1;5595:4:1;5587:13;;5583:27;-1:-1:-1;5573:55:1;;5624:1;5621;5614:12;5573:55;5660:2;5647:16;5683:60;5699:43;5739:2;5699:43;:::i;5683:60::-;5777:15;;;5859:1;5855:10;;;;5847:19;;5843:28;;;5808:12;;;;5883:19;;;5880:39;;;5915:1;5912;5905:12;5880:39;5939:11;;;;5959:142;5975:6;5970:3;5967:15;5959:142;;;6041:17;;6029:30;;5992:12;;;;6079;;;;5959:142;;;6120:5;6110:15;;;;;;;4993:1138;;;;;:::o;6136:118::-;6222:5;6215:13;6208:21;6201:5;6198:32;6188:60;;6244:1;6241;6234:12;6259:241;6315:6;6368:2;6356:9;6347:7;6343:23;6339:32;6336:52;;;6384:1;6381;6374:12;6336:52;6423:9;6410:23;6442:28;6464:5;6442:28;:::i;6758:477::-;6848:6;6856;6909:2;6897:9;6888:7;6884:23;6880:32;6877:52;;;6925:1;6922;6915:12;6877:52;6965:9;6952:23;6998:18;6990:6;6987:30;6984:50;;;7030:1;7027;7020:12;6984:50;7053:61;7106:7;7097:6;7086:9;7082:22;7053:61;:::i;:::-;7043:71;;;7164:2;7153:9;7149:18;7136:32;7177:28;7199:5;7177:28;:::i;7240:382::-;7305:6;7313;7366:2;7354:9;7345:7;7341:23;7337:32;7334:52;;;7382:1;7379;7372:12;7334:52;7421:9;7408:23;7440:31;7465:5;7440:31;:::i;:::-;7490:5;-1:-1:-1;7547:2:1;7532:18;;7519:32;7560:30;7519:32;7560:30;:::i;7627:356::-;7829:2;7811:21;;;7848:18;;;7841:30;7907:34;7902:2;7887:18;;7880:62;7974:2;7959:18;;7627:356::o;7988:127::-;8049:10;8044:3;8040:20;8037:1;8030:31;8080:4;8077:1;8070:15;8104:4;8101:1;8094:15;8120:422;8209:1;8252:5;8209:1;8266:270;8287:7;8277:8;8274:21;8266:270;;;8346:4;8342:1;8338:6;8334:17;8328:4;8325:27;8322:53;;;8355:18;;:::i;:::-;8405:7;8395:8;8391:22;8388:55;;;8425:16;;;;8388:55;8504:22;;;;8464:15;;;;8266:270;;;8270:3;8120:422;;;;;:::o;8547:806::-;8596:5;8626:8;8616:80;;-1:-1:-1;8667:1:1;8681:5;;8616:80;8715:4;8705:76;;-1:-1:-1;8752:1:1;8766:5;;8705:76;8797:4;8815:1;8810:59;;;;8883:1;8878:130;;;;8790:218;;8810:59;8840:1;8831:10;;8854:5;;;8878:130;8915:3;8905:8;8902:17;8899:43;;;8922:18;;:::i;:::-;-1:-1:-1;;8978:1:1;8964:16;;8993:5;;8790:218;;9092:2;9082:8;9079:16;9073:3;9067:4;9064:13;9060:36;9054:2;9044:8;9041:16;9036:2;9030:4;9027:12;9023:35;9020:77;9017:159;;;-1:-1:-1;9129:19:1;;;9161:5;;9017:159;9208:34;9233:8;9227:4;9208:34;:::i;:::-;9278:6;9274:1;9270:6;9266:19;9257:7;9254:32;9251:58;;;9289:18;;:::i;:::-;9327:20;;8547:806;-1:-1:-1;;;8547:806:1:o;9358:140::-;9416:5;9445:47;9486:4;9476:8;9472:19;9466:4;9445:47;:::i;9503:168::-;9576:9;;;9607;;9624:15;;;9618:22;;9604:37;9594:71;;9645:18;;:::i;10085:128::-;10152:9;;;10173:11;;;10170:37;;;10187:18;;:::i;10218:125::-;10283:9;;;10304:10;;;10301:36;;;10317:18;;:::i;11334:245::-;11401:6;11454:2;11442:9;11433:7;11429:23;11425:32;11422:52;;;11470:1;11467;11460:12;11422:52;11502:9;11496:16;11521:28;11543:5;11521:28;:::i;11943:127::-;12004:10;11999:3;11995:20;11992:1;11985:31;12035:4;12032:1;12025:15;12059:4;12056:1;12049:15;12075:135;12114:3;12135:17;;;12132:43;;12155:18;;:::i;:::-;-1:-1:-1;12202:1:1;12191:13;;12075:135::o;16509:127::-;16570:10;16565:3;16561:20;16558:1;16551:31;16601:4;16598:1;16591:15;16625:4;16622:1;16615:15;16641:168;16708:6;16734:10;;;16746;;;16730:27;;16769:11;;;16766:37;;;16783:18;;:::i;:::-;16766:37;16641:168;;;;:::o;16814:217::-;16854:1;16880;16870:132;;16924:10;16919:3;16915:20;16912:1;16905:31;16959:4;16956:1;16949:15;16987:4;16984:1;16977:15;16870:132;-1:-1:-1;17016:9:1;;16814:217::o;17036:251::-;17106:6;17159:2;17147:9;17138:7;17134:23;17130:32;17127:52;;;17175:1;17172;17165:12;17127:52;17207:9;17201:16;17226:31;17251:5;17226:31;:::i;17292:988::-;17562:4;17610:3;17599:9;17595:19;17641:6;17630:9;17623:25;17667:2;17705:6;17700:2;17689:9;17685:18;17678:34;17748:3;17743:2;17732:9;17728:18;17721:31;17772:6;17807;17801:13;17838:6;17830;17823:22;17876:3;17865:9;17861:19;17854:26;;17915:2;17907:6;17903:15;17889:29;;17936:1;17946:195;17960:6;17957:1;17954:13;17946:195;;;18025:13;;-1:-1:-1;;;;;18021:39:1;18009:52;;18116:15;;;;18081:12;;;;18057:1;17975:9;17946:195;;;-1:-1:-1;;;;;;;18197:32:1;;;;18192:2;18177:18;;18170:60;-1:-1:-1;;;18261:3:1;18246:19;18239:35;18158:3;17292:988;-1:-1:-1;;;17292:988:1:o;18897:306::-;18985:6;18993;19001;19054:2;19042:9;19033:7;19029:23;19025:32;19022:52;;;19070:1;19067;19060:12;19022:52;19099:9;19093:16;19083:26;;19149:2;19138:9;19134:18;19128:25;19118:35;;19193:2;19182:9;19178:18;19172:25;19162:35;;18897:306;;;;;:::o

Swarm Source

ipfs://cca24b2d0ce0a4f88248219abfcac54b604da7d146e368879ac0c05131ebe692

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

CATCOIN is a deflationary community project that will be managed by DAO.

0x59F4F336Bf3D0C49dBfbA4A74eBD2a6aCE40539A
Net Worth in USD
$169,178.19

Net Worth in ETH
91.911073

Token Allocations
SPONGS 82.89%
BSC-USD 9.08%
CAT 3.72%
Others 4.30%
Chain Token Portfolio % Price Amount Value
BSC82.89%$0.000316443,918,808.0573$140,237.59
BSC9.08%$0.9996515,369.7798$15,364.4
BSC3.55%<$0.000001184,012,234,344,309.53$6,003.77
BSC3.00%$597.718.5037$5,082.73
BSC0.06%$991.051$104.05
BSC0.02%$1,841.920.0189$34.78
BSC0.02%$1.2224.1572$29.47
BSC0.01%<$0.000001450,973,784.5984$23.69
BSC<0.01%<$0.00000133,223,825,138.5242$12.33
BSC<0.01%$0.0000024,208,179.2165$7.07
BSC<0.01%$0.000006489,641.574$2.71
BSC<0.01%$0.000006446,856.6491$2.68
BSC<0.01%<$0.0000013,000,000,000,000$2.56
BSC<0.01%$0.00002838,902.6708$1.09
BSC<0.01%$0.0090,902.5936$0.00
BSC<0.01%<$0.0000011,869,553,889.278$0.2847
BSC<0.01%<$0.00000118,035,469,874$0.1573
ETH
Ether (ETH)
0.77%$1,843.440.7025$1,295.06
ETH0.39%$0.999646655.0856$654.85
ETH0.17%<$0.0000018,748,716,276,552.082$285.44
ETH<0.01%$598.640.00129777$0.7768
BASE0.01%$0.99997421.3565$21.36
POL<0.01%$0.10588546.773$4.95
AVAX<0.01%$0.004.9129$0.00
OPBNB<0.01%$597.810.00199395$1.19
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.