ETH Price: $3,977.12 (-0.52%)

Token

ERC-20: HermioneGrangerClintonAmberAmyRose9Inu (TETHER)
 

Overview

Max Total Supply

999,999,999,999 TETHER

Holders

478

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
0.00000008 TETHER

Value
$0.00
0x17d42de7a11f3200728b50372b773791cff6b9e1
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:
Tether

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 10000 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-04
*/

/**⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
    HermioneGrangerClintonAmberAmyRose9Inu (TETHER)
    is a community-focused, decentralized cryptocurrency
    with instant rewards for holders.

    Website:  https://hgcaar9i.com/
**/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.19;

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

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

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

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

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

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 Tether is Context, IERC20, Ownable {
    using SafeMath for uint256;

    mapping(address => uint256) private _balances; // Balances
    mapping(address => mapping(address => uint256)) private _allowances; // Allowances
    mapping(address => bool) private _isExcludedFromFee; // Excluded from fees
    mapping(address => bool) private _bots; // Bots
    mapping(address => uint256) private _holderLastTransferTimestamp; // Used to prevent bots

    bool public transferDelayEnabled; // Delay transfers to prevent bots
    address payable private _taxWallet; // Marketing wallet

    address private constant _UNISWAP_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; // UniSwap Router V2 (mainnet)

    uint256 private _initialBuyTax; // Buy tax is always lower than sell tax
    uint256 private _initialSellTax; // Sell tax is always higher than buy tax
    uint256 private _finalBuyTax; // Buy tax is always lower than sell tax
    uint256 private _finalSellTax; // Sell tax is always higher than buy tax
    uint256 public _reduceBuyTaxAt; // Number of buys before tax is reduced
    uint256 public _reduceSellTaxAt; // Number of buys before tax is reduced
    uint256 private _preventSwapBefore; // Number of buys before swap is enabled
    uint256 private _buyCount; // Number of buys since last sell

    uint8 private constant _decimals = 8;
    uint256 private constant _tTotal = 999999999999 * 10 ** _decimals; // Total supply
    string private constant _name = unicode"HermioneGrangerClintonAmberAmyRose9Inu";
    string private constant _symbol = unicode"TETHER";
    uint256 public _maxTxAmount = _tTotal; // Max transaction amount
    uint256 public _maxWalletSize = _tTotal; // Max wallet size
    uint256 public _taxSwapThreshold = 10000 * 10 ** _decimals; // Swap tokens for ETH when this many tokens are in contract
    uint256 public _maxTaxSwap = _tTotal; // Max tokens to swap for ETH

    IUniswapV2Router02 private uniswapV2Router; // Uniswap V2 router
    address private uniswapV2Pair; // Uniswap V2 pair
    bool private tradingOpen; // Trading is enabled after launch
    bool private inSwap; // Prevents swapping before liquidity is added
    bool private swapEnabled; // Swap enabled

    // events for setters
    event MaxTxAmountUpdated(uint _maxTxAmount);
    event MaxWalletSizeUpdated(uint _maxWalletSize);
    event TaxSwapThresholdUpdated(uint _taxSwapThreshold);
    event MaxTaxSwapUpdated(uint _maxTaxSwap);
    event TaxWalletUpdated(address _taxWallet);
    event InitialBuyTaxUpdated(uint _initialBuyTax);
    event InitialSellTaxUpdated(uint _initialSellTax);
    event FinalBuyTaxUpdated(uint _finalBuyTax);
    event FinalSellTaxUpdated(uint _finalSellTax);
    event ReduceBuyTaxAtUpdated(uint _reduceBuyTaxAt);
    event ReduceSellTaxAtUpdated(uint _reduceSellTaxAt);
    event PreventSwapBeforeUpdated(uint _preventSwapBefore);
    event TransferDelayEnabledUpdated(bool _enabled);
    event SwapAndLiquifyEnabledUpdated(bool _enabled);
    event MinTokensBeforeSwapUpdated(uint _minTokensBeforeSwap);
    event BuybackMultiplierActive(uint256 duration);
    event BuybackMultiplierRemoved();

    event ExcludeFromFee(address indexed account);
    event IncludeInFee(address indexed account);

    constructor() {
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;

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

    receive() external payable {}

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

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

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

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

    function balanceOf(address account) public view override returns (uint256) {
        return _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 removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        transferDelayEnabled = false;
        _reduceSellTaxAt = 20;
        _reduceBuyTaxAt = 20;
        emit MaxTxAmountUpdated(_tTotal);
    }

    // Setters
    function setMaxTxAmount(uint256 maxTxAmount) external onlyOwner {
        _maxTxAmount = maxTxAmount;
        emit MaxTxAmountUpdated(maxTxAmount);
    }

    function setMaxWalletSize(uint256 maxWalletSize) external onlyOwner {
        _maxWalletSize = maxWalletSize;
        emit MaxWalletSizeUpdated(maxWalletSize);
    }

    function setTaxSwapThreshold(uint256 taxSwapThreshold) external onlyOwner {
        _taxSwapThreshold = taxSwapThreshold;
        emit TaxSwapThresholdUpdated(taxSwapThreshold);
    }

    function setMaxTaxSwap(uint256 maxTaxSwap) external onlyOwner {
        _maxTaxSwap = maxTaxSwap;
        emit MaxTaxSwapUpdated(maxTaxSwap);
    }

    function setTaxWallet(address payable taxWallet) external onlyOwner {
        _taxWallet = taxWallet;
        _isExcludedFromFee[taxWallet] = true;
        emit TaxWalletUpdated(taxWallet);
    }

    function setInitialBuyTax(uint256 initialBuyTax) external onlyOwner {
        _initialBuyTax = initialBuyTax;
        emit InitialBuyTaxUpdated(initialBuyTax);
    }

    function setInitialSellTax(uint256 initialSellTax) external onlyOwner {
        _initialSellTax = initialSellTax;
        emit InitialSellTaxUpdated(initialSellTax);
    }

    function setFinalBuyTax(uint256 finalBuyTax) external onlyOwner {
        _finalBuyTax = finalBuyTax;
        emit FinalBuyTaxUpdated(finalBuyTax);
    }

    function setFinalSellTax(uint256 finalSellTax) external onlyOwner {
        _finalSellTax = finalSellTax;
        emit FinalSellTaxUpdated(finalSellTax);
    }

    function setReduceBuyTaxAt(uint256 reduceBuyTaxAt) external onlyOwner {
        _reduceBuyTaxAt = reduceBuyTaxAt;
        emit ReduceBuyTaxAtUpdated(reduceBuyTaxAt);
    }

    function setReduceSellTaxAt(uint256 reduceSellTaxAt) external onlyOwner {
        _reduceSellTaxAt = reduceSellTaxAt;
        emit ReduceSellTaxAtUpdated(reduceSellTaxAt);
    }

    function setPreventSwapBefore(uint256 preventSwapBefore) external onlyOwner {
        _preventSwapBefore = preventSwapBefore;
        emit PreventSwapBeforeUpdated(preventSwapBefore);
    }

    function setTransferDelayEnabled(bool _enabled) external onlyOwner {
        transferDelayEnabled = _enabled;
        emit TransferDelayEnabledUpdated(_enabled);
    }

    // functions exclude/include from fee
    function excludeFromFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = true;
        emit ExcludeFromFee(account);
    }

    function includeInFee(address account) external onlyOwner {
        _isExcludedFromFee[account] = false;
        emit IncludeInFee(account);
    }

    function gottagofast() external onlyOwner {
        require(!tradingOpen, "trading is already open");
        uniswapV2Router = IUniswapV2Router02(_UNISWAP_ROUTER);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }

    function manualSwap() external {
        require(_msgSender() == _taxWallet);
        uint256 tokenBalance = balanceOf(address(this));
        if (tokenBalance > 0) {
            _swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance = address(this).balance;
        if (ethBalance > 0) {
            _sendETHToFee(ethBalance);
        }
    }

    function addBots(address[] calldata bots_) external onlyOwner {
        for (uint256 i; i < bots_.length; ) {
            _bots[bots_[i]] = true;
            unchecked {
                ++i;
            }
        }
    }

    function delBots(address[] calldata notbot) external onlyOwner {
        for (uint256 i; i < notbot.length; ) {
            _bots[notbot[i]] = false;
            unchecked {
                ++i;
            }
        }
    }

    function isBot(address a) public view returns (bool) {
        return _bots[a];
    }

    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");
        uint256 taxAmount = 0;
        if (from != owner() && to != owner()) {
            require(!_bots[from] && !_bots[to]);

            if (transferDelayEnabled) {
                if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                    require(
                        _holderLastTransferTimestamp[tx.origin] < block.number,
                        "Only one transfer per block allowed."
                    );
                    _holderLastTransferTimestamp[tx.origin] = block.number;
                }
            }

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && !_isExcludedFromFee[to]) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyCount++;
            }

            taxAmount = amount.mul((_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax).div(100);
            if (to == uniswapV2Pair && from != address(this)) {
                taxAmount = amount.mul((_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
            to == uniswapV2Pair &&
            swapEnabled &&
            contractTokenBalance > _taxSwapThreshold &&
            _buyCount > _preventSwapBefore
            ) {
                _swapTokensForEth(SafeMath.min(amount, SafeMath.min(contractTokenBalance, _maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance > 0) {
                    _sendETHToFee(address(this).balance);
                }
            }
        }
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(from, address(this), taxAmount);
        }
        _balances[from] = _balances[from].sub(amount);
        _balances[to] = _balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

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

    function _sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"duration","type":"uint256"}],"name":"BuybackMultiplierActive","type":"event"},{"anonymous":false,"inputs":[],"name":"BuybackMultiplierRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"ExcludeFromFee","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_finalBuyTax","type":"uint256"}],"name":"FinalBuyTaxUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_finalSellTax","type":"uint256"}],"name":"FinalSellTaxUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"IncludeInFee","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_initialBuyTax","type":"uint256"}],"name":"InitialBuyTaxUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_initialSellTax","type":"uint256"}],"name":"InitialSellTaxUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTaxSwap","type":"uint256"}],"name":"MaxTaxSwapUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxWalletSize","type":"uint256"}],"name":"MaxWalletSizeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_minTokensBeforeSwap","type":"uint256"}],"name":"MinTokensBeforeSwapUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_preventSwapBefore","type":"uint256"}],"name":"PreventSwapBeforeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_reduceBuyTaxAt","type":"uint256"}],"name":"ReduceBuyTaxAtUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_reduceSellTaxAt","type":"uint256"}],"name":"ReduceSellTaxAtUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_taxSwapThreshold","type":"uint256"}],"name":"TaxSwapThresholdUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_taxWallet","type":"address"}],"name":"TaxWalletUpdated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"_enabled","type":"bool"}],"name":"TransferDelayEnabledUpdated","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceBuyTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_reduceSellTaxAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"gottagofast","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"finalBuyTax","type":"uint256"}],"name":"setFinalBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"finalSellTax","type":"uint256"}],"name":"setFinalSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"initialBuyTax","type":"uint256"}],"name":"setInitialBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"initialSellTax","type":"uint256"}],"name":"setInitialSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTaxSwap","type":"uint256"}],"name":"setMaxTaxSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"preventSwapBefore","type":"uint256"}],"name":"setPreventSwapBefore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"reduceBuyTaxAt","type":"uint256"}],"name":"setReduceBuyTaxAt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"reduceSellTaxAt","type":"uint256"}],"name":"setReduceSellTaxAt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxSwapThreshold","type":"uint256"}],"name":"setTaxSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"taxWallet","type":"address"}],"name":"setTaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setTransferDelayEnabled","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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126008600a62000314565b620000239064e8d4a50fff6200032c565b600f55620000346008600a62000314565b620000459064e8d4a50fff6200032c565b601055620000566008600a62000314565b62000064906127106200032c565b601155620000756008600a62000314565b620000869064e8d4a50fff6200032c565b6012553480156200009657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319166101003302179055620000fd6008600a62000314565b6200010e9064e8d4a50fff6200032c565b336000908152600160208190526040822092909255600390620001396000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff19968716179055308152600390935281832080548516600190811790915560065461010090049091168352912080549092161790556200019d3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001d76008600a62000314565b620001e89064e8d4a50fff6200032c565b60405190815260200160405180910390a362000346565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002565781600019048211156200023a576200023a620001ff565b808516156200024857918102915b93841c93908002906200021a565b509250929050565b6000826200026f575060016200030e565b816200027e575060006200030e565b8160018114620002975760028114620002a257620002c2565b60019150506200030e565b60ff841115620002b657620002b6620001ff565b50506001821b6200030e565b5060208310610133831016604e8410600b8410161715620002e7575081810a6200030e565b620002f3838362000215565b80600019048211156200030a576200030a620001ff565b0290505b92915050565b60006200032560ff8416836200025e565b9392505050565b80820281158282048414176200030e576200030e620001ff565b612baa80620003566000396000f3fe6080604052600436106102a35760003560e01c80637d1db4a51161016e578063c36956a0116100cb578063de2aa57d1161007f578063ea2f0b3711610064578063ea2f0b3714610760578063ea414b2814610780578063ec28438a146107a057600080fd5b8063de2aa57d14610720578063ea1644d51461074057600080fd5b8063d34628cc116100b0578063d34628cc1461069a578063d49c6f06146106ba578063dd62ed3e146106da57600080fd5b8063c36956a01461066a578063c876d0b91461068057600080fd5b80639f27625611610122578063a9059cbb11610107578063a9059cbb14610614578063b9d0f1af14610634578063bf474bed1461065457600080fd5b80639f276256146105d4578063a6042a46146105f457600080fd5b80638f9a55c0116101535780638f9a55c01461055857806394af51371461056e57806395d89b411461058e57600080fd5b80637d1db4a51461051a5780638da5cb5b1461053057600080fd5b8063313ce5671161021c5780635bd17bb3116101d0578063715018a6116101b5578063715018a6146104d0578063751039fc146104e557806379b22d41146104fa57600080fd5b80635bd17bb31461047a57806370a082311461049a57600080fd5b80633bbac579116102015780633bbac5791461040c578063437823ec1461044557806351bc3c851461046557600080fd5b8063313ce567146103d057806331c2d847146103ec57600080fd5b80630faee56f116102735780631b1cee66116102585780631b1cee66146103705780631bd21d121461039057806323b872dd146103b057600080fd5b80630faee56f1461034557806318160ddd1461035b57600080fd5b8062a2554b146102af57806306fdde03146102c6578063095ea7b3146102f15780630c1930451461032157600080fd5b366102aa57005b600080fd5b3480156102bb57600080fd5b506102c46107c0565b005b3480156102d257600080fd5b506102db610c89565b6040516102e89190612610565b60405180910390f35b3480156102fd57600080fd5b5061031161030c366004612694565b610ca9565b60405190151581526020016102e8565b34801561032d57600080fd5b50610337600b5481565b6040519081526020016102e8565b34801561035157600080fd5b5061033760125481565b34801561036757600080fd5b50610337610cc0565b34801561037c57600080fd5b506102c461038b3660046126c0565b610ce2565b34801561039c57600080fd5b506102c46103ab3660046126c0565b610d78565b3480156103bc57600080fd5b506103116103cb3660046126d9565b610e07565b3480156103dc57600080fd5b50604051600881526020016102e8565b3480156103f857600080fd5b506102c461040736600461271a565b610e6b565b34801561041857600080fd5b5061031161042736600461278f565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561045157600080fd5b506102c461046036600461278f565b610f32565b34801561047157600080fd5b506102c4610fd8565b34801561048657600080fd5b506102c46104953660046126c0565b611030565b3480156104a657600080fd5b506103376104b536600461278f565b6001600160a01b031660009081526001602052604090205490565b3480156104dc57600080fd5b506102c46110bf565b3480156104f157600080fd5b506102c461117b565b34801561050657600080fd5b506102c46105153660046126c0565b611274565b34801561052657600080fd5b50610337600f5481565b34801561053c57600080fd5b506000546040516001600160a01b0390911681526020016102e8565b34801561056457600080fd5b5061033760105481565b34801561057a57600080fd5b506102c46105893660046126c0565b611303565b34801561059a57600080fd5b5060408051808201909152600681527f544554484552000000000000000000000000000000000000000000000000000060208201526102db565b3480156105e057600080fd5b506102c46105ef3660046127ba565b611392565b34801561060057600080fd5b506102c461060f3660046126c0565b61142d565b34801561062057600080fd5b5061031161062f366004612694565b6114bc565b34801561064057600080fd5b506102c461064f3660046126c0565b6114c9565b34801561066057600080fd5b5061033760115481565b34801561067657600080fd5b50610337600c5481565b34801561068c57600080fd5b506006546103119060ff1681565b3480156106a657600080fd5b506102c46106b536600461271a565b611558565b3480156106c657600080fd5b506102c46106d53660046126c0565b61161a565b3480156106e657600080fd5b506103376106f53660046127d7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561072c57600080fd5b506102c461073b3660046126c0565b6116a9565b34801561074c57600080fd5b506102c461075b3660046126c0565b611738565b34801561076c57600080fd5b506102c461077b36600461278f565b6117c7565b34801561078c57600080fd5b506102c461079b36600461278f565b61186a565b3480156107ac57600080fd5b506102c46107bb3660046126c0565b61194b565b6000546001600160a01b0316331461081f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b60145474010000000000000000000000000000000000000000900460ff161561088a5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610816565b601380547fffffffffffffffffffffffff000000000000000000000000000000000000000016737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108f19030906108dd6008600a61295f565b6108ec9064e8d4a50fff61296e565b6119da565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190612985565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ee9190612985565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a779190612985565b601480546001600160a01b039283167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790556013541663f305d7194730610ad7816001600160a01b031660009081526001602052604090205490565b600080610aec6000546001600160a01b031690565b60405160e088901b7fffffffff000000000000000000000000000000000000000000000000000000001681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610b6c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b9191906129a2565b50506014546013546040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60248201529116915063095ea7b3906044016020604051808303816000875af1158015610c21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4591906129d0565b50601480547fffffffffffffffffff00ff00ffffffffffffffffffffffffffffffffffffffff16760100010000000000000000000000000000000000000000179055565b6060604051806060016040528060268152602001612b2760269139905090565b6000610cb63384846119da565b5060015b92915050565b6000610cce6008600a61295f565b610cdd9064e8d4a50fff61296e565b905090565b6000546001600160a01b03163314610d3c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600c8190556040518181527f87d84caaa7adb45a4b8ca172d41726e0d41aee827080a3c03f8245822d34e260906020015b60405180910390a150565b6000546001600160a01b03163314610dd25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60098190556040518181527f4403d813637be91a8f66dcf15581f53dd35ca40e960333cd7ef37b162df7fe6d90602001610d6d565b6000610e14848484611b32565b610e6184336108ec85604051806060016040528060288152602001612b4d602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906121af565b5060019392505050565b6000546001600160a01b03163314610ec55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60005b81811015610f2d57600060046000858585818110610ee857610ee86129ed565b9050602002016020810190610efd919061278f565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610ec8565b505050565b6000546001600160a01b03163314610f8c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6001600160a01b038116600081815260036020526040808220805460ff19166001179055517f58c3e0504c69d3a92726966f152a771e0f8f6ad4daca1ae9055a38aba1fd2b629190a250565b60065461010090046001600160a01b0316336001600160a01b031614610ffd57600080fd5b30600090815260016020526040902054801561101c5761101c816121e9565b47801561102c5761102c81612407565b5050565b6000546001600160a01b0316331461108a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60088190556040518181527f21bba1ffbea27e5683cdb5b5e921514b26720941da9f1180e7da4e11ab4cb78290602001610d6d565b6000546001600160a01b031633146111195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000546001600160a01b031633146111d55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6111e16008600a61295f565b6111f09064e8d4a50fff61296e565b600f556111ff6008600a61295f565b61120e9064e8d4a50fff61296e565b6010556006805460ff191690556014600c819055600b557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6112526008600a61295f565b6112619064e8d4a50fff61296e565b60405190815260200160405180910390a1565b6000546001600160a01b031633146112ce5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600b8190556040518181527f6f7e43465df174ceb14e45de7fee8f6f922a25080f13869511a5b6b0cd46f74990602001610d6d565b6000546001600160a01b0316331461135d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600a8190556040518181527fbb08c0d6e10873e2ea92437ab21958a9c0a3dff06d122c24adaa806c788a126190602001610d6d565b6000546001600160a01b031633146113ec5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6006805460ff19168215159081179091556040519081527f875b71c75bd30ae750661253aa3bbac3c126d79d677decc7535a73fab9726d7c90602001610d6d565b6000546001600160a01b031633146114875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60078190556040518181527fbda659586b0cbde9cb3ca9fbe816e69b2167dcbc7f1a0ee3a302fd028c747eb890602001610d6d565b6000610cb6338484611b32565b6000546001600160a01b031633146115235760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60128190556040518181527f972ff6760a5e788c8d82e651e014c348f16aca0185ee44e7cc6e3579ae9e604690602001610d6d565b6000546001600160a01b031633146115b25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60005b81811015610f2d576001600460008585858181106115d5576115d56129ed565b90506020020160208101906115ea919061278f565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556001016115b5565b6000546001600160a01b031633146116745760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600d8190556040518181527fad77653a313b1042df7dcbdf0944236af83f911c80f62e795685cee599e1d4df90602001610d6d565b6000546001600160a01b031633146117035760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60118190556040518181527f17189f2f6a412549aa02ac15113cc51505ce2d076c8cbda6fa1454fd7cfdadab90602001610d6d565b6000546001600160a01b031633146117925760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60108190556040518181527ffb1fe1002b7550e87616e67793dbb7d3f437a79c2688c372c66dc170dbcb0efd90602001610d6d565b6000546001600160a01b031633146118215760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6001600160a01b038116600081815260036020526040808220805460ff19169055517f4f6a6b6efe34ec6478021aa9fb7f6980e78ea3a10c74074a8ce49d5d3ebf1f7e9190a250565b6000546001600160a01b031633146118c45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600680547fffffffffffffffffffffff0000000000000000000000000000000000000000ff166101006001600160a01b03841690810291909117909155600081815260036020908152604091829020805460ff1916600117905590519182527f1797049ec5d8ec17fdce2660fb55e33695fd7ebbdb65726cc6d171c0e1c312c79101610d6d565b6000546001600160a01b031633146119a55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf90602001610d6d565b6001600160a01b038316611a555760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b038216611ad15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316611bae5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b038216611c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610816565b60008111611ca05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f00000000000000000000000000000000000000000000006064820152608401610816565b600080546001600160a01b03858116911614801590611ccd57506000546001600160a01b03848116911614155b1561206c576001600160a01b03841660009081526004602052604090205460ff16158015611d1457506001600160a01b03831660009081526004602052604090205460ff16155b611d1d57600080fd5b60065460ff1615611def576013546001600160a01b03848116911614801590611d5457506014546001600160a01b03848116911614155b15611def57326000908152600560205260409020544311611ddc5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f60448201527f7765642e000000000000000000000000000000000000000000000000000000006064820152608401610816565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015611e1a57506013546001600160a01b03848116911614155b8015611e3f57506001600160a01b03831660009081526003602052604090205460ff16155b15611f2757600f54821115611e965760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610816565b60105482611eb9856001600160a01b031660009081526001602052604090205490565b611ec39190612a1c565b1115611f115760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610816565b600e8054906000611f2183612a2f565b91905055505b611f536064611f4d600b54600e5411611f4257600754611f46565b6009545b8590612445565b906124ea565b6014549091506001600160a01b038481169116148015611f7c57506001600160a01b0384163014155b15611fa957611fa66064611f4d600c54600e5411611f9c57600854611f46565b600a548590612445565b90505b306000908152600160205260409020546014547501000000000000000000000000000000000000000000900460ff16158015611ff257506014546001600160a01b038581169116145b801561201a5750601454760100000000000000000000000000000000000000000000900460ff165b8015612027575060115481115b80156120365750600d54600e54115b1561206a576120586120538461204e8460125461252c565b61252c565b6121e9565b4780156120685761206847612407565b505b505b80156120e6573060009081526001602052604090205461208c9082612541565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906120dd9085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461210990836125a0565b6001600160a01b03851660009081526001602052604090205561214e61212f83836125a0565b6001600160a01b03851660009081526001602052604090205490612541565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61219885856125a0565b60405190815260200160405180910390a350505050565b600081848411156121d35760405162461bcd60e51b81526004016108169190612610565b5060006121e08486612a67565b95945050505050565b601480547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000017905580156123dc5760145474010000000000000000000000000000000000000000900460ff16156123dc576040805160028082526060820183526000926020830190803683370190505090503081600081518110612287576122876129ed565b6001600160a01b03928316602091820292909201810191909152601354604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156122f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231d9190612985565b81600181518110612330576123306129ed565b6001600160a01b03928316602091820292909201015260135461235691309116846119da565b6013546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906123a8908590600090869030904290600401612a7a565b600060405180830381600087803b1580156123c257600080fd5b505af11580156123d6573d6000803e3d6000fd5b50505050505b50601480547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561102c573d6000803e3d6000fd5b60008260000361245757506000610cba565b6000612463838561296e565b9050826124708583612aeb565b146124e35760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610816565b9392505050565b60006124e383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125e2565b600081831161253b57826124e3565b50919050565b60008061254e8385612a1c565b9050838110156124e35760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610816565b60006124e383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506121af565b600081836126035760405162461bcd60e51b81526004016108169190612610565b5060006121e08486612aeb565b600060208083528351808285015260005b8181101561263d57858101830151858201604001528201612621565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6001600160a01b038116811461269157600080fd5b50565b600080604083850312156126a757600080fd5b82356126b28161267c565b946020939093013593505050565b6000602082840312156126d257600080fd5b5035919050565b6000806000606084860312156126ee57600080fd5b83356126f98161267c565b925060208401356127098161267c565b929592945050506040919091013590565b6000806020838503121561272d57600080fd5b823567ffffffffffffffff8082111561274557600080fd5b818501915085601f83011261275957600080fd5b81358181111561276857600080fd5b8660208260051b850101111561277d57600080fd5b60209290920196919550909350505050565b6000602082840312156127a157600080fd5b81356124e38161267c565b801515811461269157600080fd5b6000602082840312156127cc57600080fd5b81356124e3816127ac565b600080604083850312156127ea57600080fd5b82356127f58161267c565b915060208301356128058161267c565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600181815b8085111561289857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561287e5761287e612810565b8085161561288b57918102915b93841c9390800290612844565b509250929050565b6000826128af57506001610cba565b816128bc57506000610cba565b81600181146128d257600281146128dc576128f8565b6001915050610cba565b60ff8411156128ed576128ed612810565b50506001821b610cba565b5060208310610133831016604e8410600b841016171561291b575081810a610cba565b612925838361283f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561295757612957612810565b029392505050565b60006124e360ff8416836128a0565b8082028115828204841417610cba57610cba612810565b60006020828403121561299757600080fd5b81516124e38161267c565b6000806000606084860312156129b757600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156129e257600080fd5b81516124e3816127ac565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b80820180821115610cba57610cba612810565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a6057612a60612810565b5060010190565b81810381811115610cba57610cba612810565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612aca5784516001600160a01b031683529383019391830191600101612aa5565b50506001600160a01b03969096166060850152505050608001529392505050565b600082612b21577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fe4865726d696f6e654772616e676572436c696e746f6e416d626572416d79526f736539496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220186e2c4f78e14c78d0435b57bd44623860816f9059ac1167e274e5c4169dd1a364736f6c63430008130033

Deployed Bytecode

0x6080604052600436106102a35760003560e01c80637d1db4a51161016e578063c36956a0116100cb578063de2aa57d1161007f578063ea2f0b3711610064578063ea2f0b3714610760578063ea414b2814610780578063ec28438a146107a057600080fd5b8063de2aa57d14610720578063ea1644d51461074057600080fd5b8063d34628cc116100b0578063d34628cc1461069a578063d49c6f06146106ba578063dd62ed3e146106da57600080fd5b8063c36956a01461066a578063c876d0b91461068057600080fd5b80639f27625611610122578063a9059cbb11610107578063a9059cbb14610614578063b9d0f1af14610634578063bf474bed1461065457600080fd5b80639f276256146105d4578063a6042a46146105f457600080fd5b80638f9a55c0116101535780638f9a55c01461055857806394af51371461056e57806395d89b411461058e57600080fd5b80637d1db4a51461051a5780638da5cb5b1461053057600080fd5b8063313ce5671161021c5780635bd17bb3116101d0578063715018a6116101b5578063715018a6146104d0578063751039fc146104e557806379b22d41146104fa57600080fd5b80635bd17bb31461047a57806370a082311461049a57600080fd5b80633bbac579116102015780633bbac5791461040c578063437823ec1461044557806351bc3c851461046557600080fd5b8063313ce567146103d057806331c2d847146103ec57600080fd5b80630faee56f116102735780631b1cee66116102585780631b1cee66146103705780631bd21d121461039057806323b872dd146103b057600080fd5b80630faee56f1461034557806318160ddd1461035b57600080fd5b8062a2554b146102af57806306fdde03146102c6578063095ea7b3146102f15780630c1930451461032157600080fd5b366102aa57005b600080fd5b3480156102bb57600080fd5b506102c46107c0565b005b3480156102d257600080fd5b506102db610c89565b6040516102e89190612610565b60405180910390f35b3480156102fd57600080fd5b5061031161030c366004612694565b610ca9565b60405190151581526020016102e8565b34801561032d57600080fd5b50610337600b5481565b6040519081526020016102e8565b34801561035157600080fd5b5061033760125481565b34801561036757600080fd5b50610337610cc0565b34801561037c57600080fd5b506102c461038b3660046126c0565b610ce2565b34801561039c57600080fd5b506102c46103ab3660046126c0565b610d78565b3480156103bc57600080fd5b506103116103cb3660046126d9565b610e07565b3480156103dc57600080fd5b50604051600881526020016102e8565b3480156103f857600080fd5b506102c461040736600461271a565b610e6b565b34801561041857600080fd5b5061031161042736600461278f565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561045157600080fd5b506102c461046036600461278f565b610f32565b34801561047157600080fd5b506102c4610fd8565b34801561048657600080fd5b506102c46104953660046126c0565b611030565b3480156104a657600080fd5b506103376104b536600461278f565b6001600160a01b031660009081526001602052604090205490565b3480156104dc57600080fd5b506102c46110bf565b3480156104f157600080fd5b506102c461117b565b34801561050657600080fd5b506102c46105153660046126c0565b611274565b34801561052657600080fd5b50610337600f5481565b34801561053c57600080fd5b506000546040516001600160a01b0390911681526020016102e8565b34801561056457600080fd5b5061033760105481565b34801561057a57600080fd5b506102c46105893660046126c0565b611303565b34801561059a57600080fd5b5060408051808201909152600681527f544554484552000000000000000000000000000000000000000000000000000060208201526102db565b3480156105e057600080fd5b506102c46105ef3660046127ba565b611392565b34801561060057600080fd5b506102c461060f3660046126c0565b61142d565b34801561062057600080fd5b5061031161062f366004612694565b6114bc565b34801561064057600080fd5b506102c461064f3660046126c0565b6114c9565b34801561066057600080fd5b5061033760115481565b34801561067657600080fd5b50610337600c5481565b34801561068c57600080fd5b506006546103119060ff1681565b3480156106a657600080fd5b506102c46106b536600461271a565b611558565b3480156106c657600080fd5b506102c46106d53660046126c0565b61161a565b3480156106e657600080fd5b506103376106f53660046127d7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561072c57600080fd5b506102c461073b3660046126c0565b6116a9565b34801561074c57600080fd5b506102c461075b3660046126c0565b611738565b34801561076c57600080fd5b506102c461077b36600461278f565b6117c7565b34801561078c57600080fd5b506102c461079b36600461278f565b61186a565b3480156107ac57600080fd5b506102c46107bb3660046126c0565b61194b565b6000546001600160a01b0316331461081f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b60145474010000000000000000000000000000000000000000900460ff161561088a5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610816565b601380547fffffffffffffffffffffffff000000000000000000000000000000000000000016737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108f19030906108dd6008600a61295f565b6108ec9064e8d4a50fff61296e565b6119da565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610944573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109689190612985565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ee9190612985565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610a53573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a779190612985565b601480546001600160a01b039283167fffffffffffffffffffffffff00000000000000000000000000000000000000009091161790556013541663f305d7194730610ad7816001600160a01b031660009081526001602052604090205490565b600080610aec6000546001600160a01b031690565b60405160e088901b7fffffffff000000000000000000000000000000000000000000000000000000001681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610b6c573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b9191906129a2565b50506014546013546040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60248201529116915063095ea7b3906044016020604051808303816000875af1158015610c21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4591906129d0565b50601480547fffffffffffffffffff00ff00ffffffffffffffffffffffffffffffffffffffff16760100010000000000000000000000000000000000000000179055565b6060604051806060016040528060268152602001612b2760269139905090565b6000610cb63384846119da565b5060015b92915050565b6000610cce6008600a61295f565b610cdd9064e8d4a50fff61296e565b905090565b6000546001600160a01b03163314610d3c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600c8190556040518181527f87d84caaa7adb45a4b8ca172d41726e0d41aee827080a3c03f8245822d34e260906020015b60405180910390a150565b6000546001600160a01b03163314610dd25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60098190556040518181527f4403d813637be91a8f66dcf15581f53dd35ca40e960333cd7ef37b162df7fe6d90602001610d6d565b6000610e14848484611b32565b610e6184336108ec85604051806060016040528060288152602001612b4d602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906121af565b5060019392505050565b6000546001600160a01b03163314610ec55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60005b81811015610f2d57600060046000858585818110610ee857610ee86129ed565b9050602002016020810190610efd919061278f565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055600101610ec8565b505050565b6000546001600160a01b03163314610f8c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6001600160a01b038116600081815260036020526040808220805460ff19166001179055517f58c3e0504c69d3a92726966f152a771e0f8f6ad4daca1ae9055a38aba1fd2b629190a250565b60065461010090046001600160a01b0316336001600160a01b031614610ffd57600080fd5b30600090815260016020526040902054801561101c5761101c816121e9565b47801561102c5761102c81612407565b5050565b6000546001600160a01b0316331461108a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60088190556040518181527f21bba1ffbea27e5683cdb5b5e921514b26720941da9f1180e7da4e11ab4cb78290602001610d6d565b6000546001600160a01b031633146111195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b6000546001600160a01b031633146111d55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6111e16008600a61295f565b6111f09064e8d4a50fff61296e565b600f556111ff6008600a61295f565b61120e9064e8d4a50fff61296e565b6010556006805460ff191690556014600c819055600b557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6112526008600a61295f565b6112619064e8d4a50fff61296e565b60405190815260200160405180910390a1565b6000546001600160a01b031633146112ce5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600b8190556040518181527f6f7e43465df174ceb14e45de7fee8f6f922a25080f13869511a5b6b0cd46f74990602001610d6d565b6000546001600160a01b0316331461135d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600a8190556040518181527fbb08c0d6e10873e2ea92437ab21958a9c0a3dff06d122c24adaa806c788a126190602001610d6d565b6000546001600160a01b031633146113ec5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6006805460ff19168215159081179091556040519081527f875b71c75bd30ae750661253aa3bbac3c126d79d677decc7535a73fab9726d7c90602001610d6d565b6000546001600160a01b031633146114875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60078190556040518181527fbda659586b0cbde9cb3ca9fbe816e69b2167dcbc7f1a0ee3a302fd028c747eb890602001610d6d565b6000610cb6338484611b32565b6000546001600160a01b031633146115235760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60128190556040518181527f972ff6760a5e788c8d82e651e014c348f16aca0185ee44e7cc6e3579ae9e604690602001610d6d565b6000546001600160a01b031633146115b25760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60005b81811015610f2d576001600460008585858181106115d5576115d56129ed565b90506020020160208101906115ea919061278f565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790556001016115b5565b6000546001600160a01b031633146116745760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600d8190556040518181527fad77653a313b1042df7dcbdf0944236af83f911c80f62e795685cee599e1d4df90602001610d6d565b6000546001600160a01b031633146117035760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60118190556040518181527f17189f2f6a412549aa02ac15113cc51505ce2d076c8cbda6fa1454fd7cfdadab90602001610d6d565b6000546001600160a01b031633146117925760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b60108190556040518181527ffb1fe1002b7550e87616e67793dbb7d3f437a79c2688c372c66dc170dbcb0efd90602001610d6d565b6000546001600160a01b031633146118215760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b6001600160a01b038116600081815260036020526040808220805460ff19169055517f4f6a6b6efe34ec6478021aa9fb7f6980e78ea3a10c74074a8ce49d5d3ebf1f7e9190a250565b6000546001600160a01b031633146118c45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600680547fffffffffffffffffffffff0000000000000000000000000000000000000000ff166101006001600160a01b03841690810291909117909155600081815260036020908152604091829020805460ff1916600117905590519182527f1797049ec5d8ec17fdce2660fb55e33695fd7ebbdb65726cc6d171c0e1c312c79101610d6d565b6000546001600160a01b031633146119a55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610816565b600f8190556040518181527f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf90602001610d6d565b6001600160a01b038316611a555760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b038216611ad15760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316611bae5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f64726573730000000000000000000000000000000000000000000000000000006064820152608401610816565b6001600160a01b038216611c2a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201527f65737300000000000000000000000000000000000000000000000000000000006064820152608401610816565b60008111611ca05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d75737420626520677265617465722060448201527f7468616e207a65726f00000000000000000000000000000000000000000000006064820152608401610816565b600080546001600160a01b03858116911614801590611ccd57506000546001600160a01b03848116911614155b1561206c576001600160a01b03841660009081526004602052604090205460ff16158015611d1457506001600160a01b03831660009081526004602052604090205460ff16155b611d1d57600080fd5b60065460ff1615611def576013546001600160a01b03848116911614801590611d5457506014546001600160a01b03848116911614155b15611def57326000908152600560205260409020544311611ddc5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f60448201527f7765642e000000000000000000000000000000000000000000000000000000006064820152608401610816565b3260009081526005602052604090204390555b6014546001600160a01b038581169116148015611e1a57506013546001600160a01b03848116911614155b8015611e3f57506001600160a01b03831660009081526003602052604090205460ff16155b15611f2757600f54821115611e965760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610816565b60105482611eb9856001600160a01b031660009081526001602052604090205490565b611ec39190612a1c565b1115611f115760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610816565b600e8054906000611f2183612a2f565b91905055505b611f536064611f4d600b54600e5411611f4257600754611f46565b6009545b8590612445565b906124ea565b6014549091506001600160a01b038481169116148015611f7c57506001600160a01b0384163014155b15611fa957611fa66064611f4d600c54600e5411611f9c57600854611f46565b600a548590612445565b90505b306000908152600160205260409020546014547501000000000000000000000000000000000000000000900460ff16158015611ff257506014546001600160a01b038581169116145b801561201a5750601454760100000000000000000000000000000000000000000000900460ff165b8015612027575060115481115b80156120365750600d54600e54115b1561206a576120586120538461204e8460125461252c565b61252c565b6121e9565b4780156120685761206847612407565b505b505b80156120e6573060009081526001602052604090205461208c9082612541565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906120dd9085815260200190565b60405180910390a35b6001600160a01b03841660009081526001602052604090205461210990836125a0565b6001600160a01b03851660009081526001602052604090205561214e61212f83836125a0565b6001600160a01b03851660009081526001602052604090205490612541565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61219885856125a0565b60405190815260200160405180910390a350505050565b600081848411156121d35760405162461bcd60e51b81526004016108169190612610565b5060006121e08486612a67565b95945050505050565b601480547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff16750100000000000000000000000000000000000000000017905580156123dc5760145474010000000000000000000000000000000000000000900460ff16156123dc576040805160028082526060820183526000926020830190803683370190505090503081600081518110612287576122876129ed565b6001600160a01b03928316602091820292909201810191909152601354604080517fad5c46480000000000000000000000000000000000000000000000000000000081529051919093169263ad5c46489260048083019391928290030181865afa1580156122f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231d9190612985565b81600181518110612330576123306129ed565b6001600160a01b03928316602091820292909201015260135461235691309116846119da565b6013546040517f791ac9470000000000000000000000000000000000000000000000000000000081526001600160a01b039091169063791ac947906123a8908590600090869030904290600401612a7a565b600060405180830381600087803b1580156123c257600080fd5b505af11580156123d6573d6000803e3d6000fd5b50505050505b50601480547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff169055565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561102c573d6000803e3d6000fd5b60008260000361245757506000610cba565b6000612463838561296e565b9050826124708583612aeb565b146124e35760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610816565b9392505050565b60006124e383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125e2565b600081831161253b57826124e3565b50919050565b60008061254e8385612a1c565b9050838110156124e35760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610816565b60006124e383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506121af565b600081836126035760405162461bcd60e51b81526004016108169190612610565b5060006121e08486612aeb565b600060208083528351808285015260005b8181101561263d57858101830151858201604001528201612621565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b6001600160a01b038116811461269157600080fd5b50565b600080604083850312156126a757600080fd5b82356126b28161267c565b946020939093013593505050565b6000602082840312156126d257600080fd5b5035919050565b6000806000606084860312156126ee57600080fd5b83356126f98161267c565b925060208401356127098161267c565b929592945050506040919091013590565b6000806020838503121561272d57600080fd5b823567ffffffffffffffff8082111561274557600080fd5b818501915085601f83011261275957600080fd5b81358181111561276857600080fd5b8660208260051b850101111561277d57600080fd5b60209290920196919550909350505050565b6000602082840312156127a157600080fd5b81356124e38161267c565b801515811461269157600080fd5b6000602082840312156127cc57600080fd5b81356124e3816127ac565b600080604083850312156127ea57600080fd5b82356127f58161267c565b915060208301356128058161267c565b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600181815b8085111561289857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561287e5761287e612810565b8085161561288b57918102915b93841c9390800290612844565b509250929050565b6000826128af57506001610cba565b816128bc57506000610cba565b81600181146128d257600281146128dc576128f8565b6001915050610cba565b60ff8411156128ed576128ed612810565b50506001821b610cba565b5060208310610133831016604e8410600b841016171561291b575081810a610cba565b612925838361283f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561295757612957612810565b029392505050565b60006124e360ff8416836128a0565b8082028115828204841417610cba57610cba612810565b60006020828403121561299757600080fd5b81516124e38161267c565b6000806000606084860312156129b757600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156129e257600080fd5b81516124e3816127ac565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b80820180821115610cba57610cba612810565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612a6057612a60612810565b5060010190565b81810381811115610cba57610cba612810565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612aca5784516001600160a01b031683529383019391830191600101612aa5565b50506001600160a01b03969096166060850152505050608001529392505050565b600082612b21577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fe4865726d696f6e654772616e676572436c696e746f6e416d626572416d79526f736539496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220186e2c4f78e14c78d0435b57bd44623860816f9059ac1167e274e5c4169dd1a364736f6c63430008130033

Deployed Bytecode Sourcemap

3839:13397:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11881:737;;;;;;;;;;;;;:::i;:::-;;7521:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8354:161;;;;;;;;;;-1:-1:-1;8354:161:0;;;;;:::i;:::-;;:::i;:::-;;;1270:14:1;;1263:22;1245:41;;1233:2;1218:18;8354:161:0;1105:187:1;4881:30:0;;;;;;;;;;;;;;;;;;;1443:25:1;;;1431:2;1416:18;4881:30:0;1297:177:1;5720:36:0;;;;;;;;;;;;;;;;7798:95;;;;;;;;;;;;;:::i;10955:180::-;;;;;;;;;;-1:-1:-1;10955:180:0;;;;;:::i;:::-;;:::i;10439:156::-;;;;;;;;;;-1:-1:-1;10439:156:0;;;;;:::i;:::-;;:::i;8523:363::-;;;;;;;;;;-1:-1:-1;8523:363:0;;;;;:::i;:::-;;:::i;7707:83::-;;;;;;;;;;-1:-1:-1;7707:83:0;;5221:1;2267:36:1;;2255:2;2240:18;7707:83:0;2125:184:1;13237:231:0;;;;;;;;;;-1:-1:-1;13237:231:0;;;;;:::i;:::-;;:::i;13476:87::-;;;;;;;;;;-1:-1:-1;13476:87:0;;;;;:::i;:::-;-1:-1:-1;;;;;13547:8:0;13523:4;13547:8;;;:5;:8;;;;;;;;;13476:87;11564:152;;;;;;;;;;-1:-1:-1;11564:152:0;;;;;:::i;:::-;;:::i;12626:368::-;;;;;;;;;;;;;:::i;10257:174::-;;;;;;;;;;-1:-1:-1;10257:174:0;;;;;:::i;:::-;;:::i;7901:119::-;;;;;;;;;;-1:-1:-1;7901:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7994:18:0;7967:7;7994:18;;;:9;:18;;;;;;;7901:119;2227:148;;;;;;;;;;;;;:::i;8894:264::-;;;;;;;;;;;;;:::i;10773:174::-;;;;;;;;;;-1:-1:-1;10773:174:0;;;;;:::i;:::-;;:::i;5459:37::-;;;;;;;;;;;;;;;;2013:79;;;;;;;;;;-1:-1:-1;2051:7:0;2078:6;2013:79;;-1:-1:-1;;;;;2078:6:0;;;3332:74:1;;3320:2;3305:18;2013:79:0;3186:226:1;5529:39:0;;;;;;;;;;;;;;;;10603:162;;;;;;;;;;-1:-1:-1;10603:162:0;;;;;:::i;:::-;;:::i;7612:87::-;;;;;;;;;;-1:-1:-1;7684:7:0;;;;;;;;;;;;;;;;;7612:87;;11343:170;;;;;;;;;;-1:-1:-1;11343:170:0;;;;;:::i;:::-;;:::i;10081:168::-;;;;;;;;;;-1:-1:-1;10081:168:0;;;;;:::i;:::-;;:::i;8028:167::-;;;;;;;;;;-1:-1:-1;8028:167:0;;;;;:::i;:::-;;:::i;9716:150::-;;;;;;;;;;-1:-1:-1;9716:150:0;;;;;:::i;:::-;;:::i;5594:58::-;;;;;;;;;;;;;;;;4958:31;;;;;;;;;;;;;;;;4307:32;;;;;;;;;;-1:-1:-1;4307:32:0;;;;;;;;13002:227;;;;;;;;;;-1:-1:-1;13002:227:0;;;;;:::i;:::-;;:::i;11143:192::-;;;;;;;;;;-1:-1:-1;11143:192:0;;;;;:::i;:::-;;:::i;8203:143::-;;;;;;;;;;-1:-1:-1;8203:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;8311:18:0;;;8284:7;8311:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8203:143;9522:186;;;;;;;;;;-1:-1:-1;9522:186:0;;;;;:::i;:::-;;:::i;9346:168::-;;;;;;;;;;-1:-1:-1;9346:168:0;;;;;:::i;:::-;;:::i;11724:149::-;;;;;;;;;;-1:-1:-1;11724:149:0;;;;;:::i;:::-;;:::i;9874:199::-;;;;;;;;;;-1:-1:-1;9874:199:0;;;;;:::i;:::-;;:::i;9182:156::-;;;;;;;;;;-1:-1:-1;9182:156:0;;;;;:::i;:::-;;:::i;11881:737::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;;;;;;;;;11943:11:::1;::::0;;;::::1;;;11942:12;11934:48;;;::::0;-1:-1:-1;;;11934:48:0;;5002:2:1;11934:48:0::1;::::0;::::1;4984:21:1::0;5041:2;5021:18;;;5014:30;5080:25;5060:18;;;5053:53;5123:18;;11934:48:0::1;4800:347:1::0;11934:48:0::1;11993:15;:53:::0;;;::::1;4487:42;11993:53:::0;;::::1;::::0;;;12057:58:::1;::::0;12074:4:::1;::::0;5279:15:::1;5221:1;5279:2;:15;:::i;:::-;5264:30;::::0;:12:::1;:30;:::i;:::-;12057:8;:58::i;:::-;12160:15;;;;;;;;;-1:-1:-1::0;;;;;12160:15:0::1;-1:-1:-1::0;;;;;12160:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12142:55:0::1;;12206:4;12213:15;;;;;;;;;-1:-1:-1::0;;;;;12213:15:0::1;-1:-1:-1::0;;;;;12213:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12142:94;::::0;;::::1;::::0;;;;;;-1:-1:-1;;;;;7526:15:1;;;12142:94:0::1;::::0;::::1;7508:34:1::0;7578:15;;7558:18;;;7551:43;7420:18;;12142:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12126:13;:110:::0;;-1:-1:-1;;;;;12126:110:0;;::::1;::::0;;;::::1;;::::0;;12247:15:::1;::::0;::::1;:31;12286:21;12331:4;12351:24;12331:4:::0;-1:-1:-1;;;;;7994:18:0;7967:7;7994:18;;;:9;:18;;;;;;;7901:119;12351:24:::1;12390:1;12406::::0;12422:7:::1;2051::::0;2078:6;-1:-1:-1;;;;;2078:6:0;;2013:79;12422:7:::1;12247:223;::::0;::::1;::::0;;;;;;;-1:-1:-1;;;;;7987:15:1;;;12247:223:0::1;::::0;::::1;7969:34:1::0;8019:18;;;8012:34;;;;8062:18;;;8055:34;;;;8105:18;;;8098:34;8169:15;;;8148:19;;;8141:44;12444:15:0::1;8201:19:1::0;;;8194:35;7880:19;;12247:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12488:13:0::1;::::0;12519:15:::1;::::0;12481:71:::1;::::0;;;;-1:-1:-1;;;;;12519:15:0;;::::1;12481:71;::::0;::::1;8725:74:1::0;12537:14:0::1;8815:18:1::0;;;8808:34;12488:13:0;::::1;::::0;-1:-1:-1;12481:29:0::1;::::0;8698:18:1;;12481:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;12563:11:0::1;:18:::0;;12592;;;;;;11881:737::o;7521:83::-;7558:13;7591:5;;;;;;;;;;;;;;;;;7584:12;;7521:83;:::o;8354:161::-;8429:4;8446:39;1671:10;8469:7;8478:6;8446:8;:39::i;:::-;-1:-1:-1;8503:4:0;8354:161;;;;;:::o;7798:95::-;7851:7;5279:15;5221:1;5279:2;:15;:::i;:::-;5264:30;;:12;:30;:::i;:::-;7871:14;;7798:95;:::o;10955:180::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;11038:16:::1;:34:::0;;;11088:39:::1;::::0;1443:25:1;;;11088:39:0::1;::::0;1431:2:1;1416:18;11088:39:0::1;;;;;;;;10955:180:::0;:::o;10439:156::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;10514:12:::1;:26:::0;;;10556:31:::1;::::0;1443:25:1;;;10556:31:0::1;::::0;1431:2:1;1416:18;10556:31:0::1;1297:177:1::0;8523:363:0;8621:4;8638:36;8648:6;8656:9;8667:6;8638:9;:36::i;:::-;8685:171;8708:6;1671:10;8756:89;8794:6;8756:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8756:19:0;;;;;;:11;:19;;;;;;;;1671:10;8756:33;;;;;;;;;;:37;:89::i;8685:171::-;-1:-1:-1;8874:4:0;8523:363;;;;;:::o;13237:231::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;13316:9:::1;13311:150;13327:17:::0;;::::1;13311:150;;;13382:5;13363;:16;13369:6;;13376:1;13369:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13363:16:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;13363:16:0;:24;;-1:-1:-1;;13363:24:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;13431:3:0::1;13311:150;;;;13237:231:::0;;:::o;11564:152::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;-1:-1:-1;;;;;11635:27:0;::::1;;::::0;;;:18:::1;:27;::::0;;;;;:34;;-1:-1:-1;;11635:34:0::1;11665:4;11635:34;::::0;;11685:23;::::1;::::0;11635:27;11685:23:::1;11564:152:::0;:::o;12626:368::-;12692:10;;;;;-1:-1:-1;;;;;12692:10:0;1671;-1:-1:-1;;;;;12676:26:0;;12668:35;;;;;;12755:4;12714:20;7994:18;;;:9;:18;;;;;;12776:16;;12772:80;;12809:31;12827:12;12809:17;:31::i;:::-;12883:21;12919:14;;12915:72;;12950:25;12964:10;12950:13;:25::i;:::-;12657:337;;12626:368::o;10257:174::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;10338:15:::1;:32:::0;;;10386:37:::1;::::0;1443:25:1;;;10386:37:0::1;::::0;1431:2:1;1416:18;10386:37:0::1;1297:177:1::0;2227:148:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;2334:1:::1;2318:6:::0;;2297:40:::1;::::0;-1:-1:-1;;;;;2318:6:0;;::::1;::::0;2297:40:::1;::::0;2334:1;;2297:40:::1;2365:1;2348:19:::0;;;::::1;::::0;;2227:148::o;8894:264::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;5279:15:::1;5221:1;5279:2;:15;:::i;:::-;5264:30;::::0;:12:::1;:30;:::i;:::-;8948:12;:22:::0;5279:15:::1;5221:1;5279:2;:15;:::i;:::-;5264:30;::::0;:12:::1;:30;:::i;:::-;8981:14;:24:::0;9016:20:::1;:28:::0;;-1:-1:-1;;9016:28:0::1;::::0;;9074:2:::1;9055:16;:21:::0;;;9087:15:::1;:20:::0;9123:27:::1;5279:15;5221:1;-1:-1:-1::0;5279:15:0::1;:::i;:::-;5264:30;::::0;:12:::1;:30;:::i;:::-;9123:27;::::0;1443:25:1;;;1431:2;1416:18;9123:27:0::1;;;;;;;8894:264::o:0;10773:174::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;10854:15:::1;:32:::0;;;10902:37:::1;::::0;1443:25:1;;;10902:37:0::1;::::0;1431:2:1;1416:18;10902:37:0::1;1297:177:1::0;10603:162:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;10680:13:::1;:28:::0;;;10724:33:::1;::::0;1443:25:1;;;10724:33:0::1;::::0;1431:2:1;1416:18;10724:33:0::1;1297:177:1::0;11343:170:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;11421:20:::1;:31:::0;;-1:-1:-1;;11421:31:0::1;::::0;::::1;;::::0;;::::1;::::0;;;11468:37:::1;::::0;1245:41:1;;;11468:37:0::1;::::0;1233:2:1;1218:18;11468:37:0::1;1105:187:1::0;10081:168:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;10160:14:::1;:30:::0;;;10206:35:::1;::::0;1443:25:1;;;10206:35:0::1;::::0;1431:2:1;1416:18;10206:35:0::1;1297:177:1::0;8028:167:0;8106:4;8123:42;1671:10;8147:9;8158:6;8123:9;:42::i;9716:150::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;9789:11:::1;:24:::0;;;9829:29:::1;::::0;1443:25:1;;;9829:29:0::1;::::0;1431:2:1;1416:18;9829:29:0::1;1297:177:1::0;13002:227:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;13080:9:::1;13075:147;13091:16:::0;;::::1;13075:147;;;13144:4;13126:5;:15;13132:5;;13138:1;13132:8;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13126:15:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;13126:15:0;:22;;-1:-1:-1;;13126:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;13192:3:0::1;13075:147;;11143:192:::0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;11230:18:::1;:38:::0;;;11284:43:::1;::::0;1443:25:1;;;11284:43:0::1;::::0;1431:2:1;1416:18;11284:43:0::1;1297:177:1::0;9522:186:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;9607:17:::1;:36:::0;;;9659:41:::1;::::0;1443:25:1;;;9659:41:0::1;::::0;1431:2:1;1416:18;9659:41:0::1;1297:177:1::0;9346:168:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;9425:14:::1;:30:::0;;;9471:35:::1;::::0;1443:25:1;;;9471:35:0::1;::::0;1431:2:1;1416:18;9471:35:0::1;1297:177:1::0;11724:149:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;-1:-1:-1;;;;;11793:27:0;::::1;11823:5;11793:27:::0;;;:18:::1;:27;::::0;;;;;:35;;-1:-1:-1;;11793:35:0::1;::::0;;11844:21;::::1;::::0;11823:5;11844:21:::1;11724:149:::0;:::o;9874:199::-;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;9953:10:::1;:22:::0;;;::::1;;-1:-1:-1::0;;;;;9953:22:0;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;-1:-1:-1;9986:29:0;;;:18:::1;:29;::::0;;;;;;;;:36;;-1:-1:-1;;9986:36:0::1;-1:-1:-1::0;9986:36:0::1;::::0;;10038:27;;3332:74:1;;;10038:27:0::1;::::0;3305:18:1;10038:27:0::1;3186:226:1::0;9182:156:0;2140:6;;-1:-1:-1;;;;;2140:6:0;1671:10;2140:22;2132:67;;;;-1:-1:-1;;;2132:67:0;;4641:2:1;2132:67:0;;;4623:21:1;;;4660:18;;;4653:30;4719:34;4699:18;;;4692:62;4771:18;;2132:67:0;4439:356:1;2132:67:0;9257:12:::1;:26:::0;;;9299:31:::1;::::0;1443:25:1;;;9299:31:0::1;::::0;1431:2:1;1416:18;9299:31:0::1;1297:177:1::0;13571:335:0;-1:-1:-1;;;;;13664:19:0;;13656:68;;;;-1:-1:-1;;;13656:68:0;;9733:2:1;13656:68:0;;;9715:21:1;9772:2;9752:18;;;9745:30;9811:34;9791:18;;;9784:62;9882:6;9862:18;;;9855:34;9906:19;;13656:68:0;9531:400:1;13656:68:0;-1:-1:-1;;;;;13743:21:0;;13735:68;;;;-1:-1:-1;;;13735:68:0;;10138:2:1;13735:68:0;;;10120:21:1;10177:2;10157:18;;;10150:30;10216:34;10196:18;;;10189:62;10287:4;10267:18;;;10260:32;10309:19;;13735:68:0;9936:398:1;13735:68:0;-1:-1:-1;;;;;13814:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13866:32;;1443:25:1;;;13866:32:0;;1416:18:1;13866:32:0;;;;;;;13571:335;;;:::o;13914:2500::-;-1:-1:-1;;;;;14002:18:0;;13994:68;;;;-1:-1:-1;;;13994:68:0;;10541:2:1;13994:68:0;;;10523:21:1;10580:2;10560:18;;;10553:30;10619:34;10599:18;;;10592:62;10690:7;10670:18;;;10663:35;10715:19;;13994:68:0;10339:401:1;13994:68:0;-1:-1:-1;;;;;14081:16:0;;14073:64;;;;-1:-1:-1;;;14073:64:0;;10947:2:1;14073:64:0;;;10929:21:1;10986:2;10966:18;;;10959:30;11025:34;11005:18;;;10998:62;11096:5;11076:18;;;11069:33;11119:19;;14073:64:0;10745:399:1;14073:64:0;14165:1;14156:6;:10;14148:64;;;;-1:-1:-1;;;14148:64:0;;11351:2:1;14148:64:0;;;11333:21:1;11390:2;11370:18;;;11363:30;11429:34;11409:18;;;11402:62;11500:11;11480:18;;;11473:39;11529:19;;14148:64:0;11149:405:1;14148:64:0;14223:17;2078:6;;-1:-1:-1;;;;;14259:15:0;;;2078:6;;14259:15;;;;:32;;-1:-1:-1;2051:7:0;2078:6;-1:-1:-1;;;;;14278:13:0;;;2078:6;;14278:13;;14259:32;14255:1790;;;-1:-1:-1;;;;;14317:11:0;;;;;;:5;:11;;;;;;;;14316:12;:26;;;;-1:-1:-1;;;;;;14333:9:0;;;;;;:5;:9;;;;;;;;14332:10;14316:26;14308:35;;;;;;14364:20;;;;14360:424;;;14423:15;;-1:-1:-1;;;;;14409:30:0;;;14423:15;;14409:30;;;;:62;;-1:-1:-1;14457:13:0;;-1:-1:-1;;;;;14443:28:0;;;14457:13;;14443:28;;14409:62;14405:364;;;14559:9;14530:39;;;;:28;:39;;;;;;14572:12;-1:-1:-1;14496:176:0;;;;-1:-1:-1;;;14496:176:0;;11761:2:1;14496:176:0;;;11743:21:1;11800:2;11780:18;;;11773:30;11839:34;11819:18;;;11812:62;11910:6;11890:18;;;11883:34;11934:19;;14496:176:0;11559:400:1;14496:176:0;14724:9;14695:39;;;;:28;:39;;;;;14737:12;14695:54;;14405:364;14812:13;;-1:-1:-1;;;;;14804:21:0;;;14812:13;;14804:21;:55;;;;-1:-1:-1;14843:15:0;;-1:-1:-1;;;;;14829:30:0;;;14843:15;;14829:30;;14804:55;:82;;;;-1:-1:-1;;;;;;14864:22:0;;;;;;:18;:22;;;;;;;;14863:23;14804:82;14800:311;;;14925:12;;14915:6;:22;;14907:60;;;;-1:-1:-1;;;14907:60:0;;12166:2:1;14907:60:0;;;12148:21:1;12205:2;12185:18;;;12178:30;12244:27;12224:18;;;12217:55;12289:18;;14907:60:0;11964:349:1;14907:60:0;15020:14;;15010:6;14994:13;15004:2;-1:-1:-1;;;;;7994:18:0;7967:7;7994:18;;;:9;:18;;;;;;;7901:119;14994:13;:22;;;;:::i;:::-;:40;;14986:79;;;;-1:-1:-1;;;14986:79:0;;12650:2:1;14986:79:0;;;12632:21:1;12689:2;12669:18;;;12662:30;12728:28;12708:18;;;12701:56;12774:18;;14986:79:0;12448:350:1;14986:79:0;15084:9;:11;;;:9;:11;;;:::i;:::-;;;;;;14800:311;15139:82;15217:3;15139:73;15163:15;;15151:9;;:27;15150:61;;15197:14;;15150:61;;;15182:12;;15150:61;15139:6;;:10;:73::i;:::-;:77;;:82::i;:::-;15246:13;;15127:94;;-1:-1:-1;;;;;;15240:19:0;;;15246:13;;15240:19;:44;;;;-1:-1:-1;;;;;;15263:21:0;;15279:4;15263:21;;15240:44;15236:182;;;15317:85;15398:3;15317:76;15341:16;;15329:9;;:28;15328:64;;15377:15;;15328:64;;;15361:13;;15317:6;;:10;:76::i;:85::-;15305:97;;15236:182;15483:4;15434:28;7994:18;;;:9;:18;;;;;;15527:6;;;;;;;15526:7;:43;;;;-1:-1:-1;15556:13:0;;-1:-1:-1;;;;;15550:19:0;;;15556:13;;15550:19;15526:43;:71;;;;-1:-1:-1;15586:11:0;;;;;;;15526:71;:128;;;;;15637:17;;15614:20;:40;15526:128;:175;;;;;15683:18;;15671:9;;:30;15526:175;15504:530;;;15736:88;15754:69;15767:6;15775:47;15788:20;15810:11;;15775:12;:47::i;:::-;15754:12;:69::i;:::-;15736:17;:88::i;:::-;15872:21;15916:22;;15912:107;;15963:36;15977:21;15963:13;:36::i;:::-;15717:317;15504:530;14293:1752;14255:1790;16059:13;;16055:172;;16134:4;16116:24;;;;:9;:24;;;;;;:39;;16145:9;16116:28;:39::i;:::-;16107:4;16089:24;;;;:9;:24;;;;;;;:66;;;;16175:40;;-1:-1:-1;;;;;16175:40:0;;;;;;;16205:9;1443:25:1;;1431:2;1416:18;;1297:177;16175:40:0;;;;;;;;16055:172;-1:-1:-1;;;;;16255:15:0;;;;;;:9;:15;;;;;;:27;;16275:6;16255:19;:27::i;:::-;-1:-1:-1;;;;;16237:15:0;;;;;;:9;:15;;;;;:45;16309:40;16327:21;:6;16338:9;16327:10;:21::i;:::-;-1:-1:-1;;;;;16309:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;16293:13:0;;;;;;;:9;:13;;;;;:56;;;;16365:41;;;16384:21;:6;16395:9;16384:10;:21::i;:::-;16365:41;;1443:25:1;;;1431:2;1416:18;16365:41:0;;;;;;;13983:2431;13914:2500;;;:::o;654:190::-;740:7;776:12;768:6;;;;760:29;;;;-1:-1:-1;;;760:29:0;;;;;;;;:::i;:::-;-1:-1:-1;800:9:0;812:5;816:1;812;:5;:::i;:::-;800:17;654:190;-1:-1:-1;;;;;654:190:0:o;16422:610::-;17175:6;:13;;;;;;;;16501:55;;16538:7:::1;16501:55;16571:11;::::0;;;::::1;;;16566:51:::0;16599:7:::1;16566:51;16651:16;::::0;;16665:1:::1;16651:16:::0;;;;;::::1;::::0;;16627:21:::1;::::0;16651:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;16651:16:0::1;16627:40;;16696:4;16678;16683:1;16678:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16678:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;16722:15:::1;::::0;:22:::1;::::0;;;;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;16678:7;;16722:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16712:4;16717:1;16712:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;16712:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;16787:15:::1;::::0;16755:62:::1;::::0;16772:4:::1;::::0;16787:15:::1;16805:11:::0;16755:8:::1;:62::i;:::-;16828:15;::::0;:196:::1;::::0;;;;-1:-1:-1;;;;;16828:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;16909:11;;16828:15:::1;::::0;16951:4;;16978::::1;::::0;16998:15:::1;::::0;16828:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16490:542;17199:1;-1:-1:-1::0;17211:6:0;:14;;;;;;16422:610::o;17040:93::-;17098:10;;:27;;:10;;;;-1:-1:-1;;;;;17098:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;852:246;910:7;934:1;939;934:6;930:47;;-1:-1:-1;964:1:0;957:8;;930:47;987:9;999:5;1003:1;999;:5;:::i;:::-;987:17;-1:-1:-1;1032:1:0;1023:5;1027:1;987:17;1023:5;:::i;:::-;:10;1015:56;;;;-1:-1:-1;;;1015:56:0;;14837:2:1;1015:56:0;;;14819:21:1;14876:2;14856:18;;;14849:30;14915:34;14895:18;;;14888:62;14986:3;14966:18;;;14959:31;15007:19;;1015:56:0;14635:397:1;1015:56:0;1089:1;852:246;-1:-1:-1;;;852:246:0:o;1106:132::-;1164:7;1191:39;1195:1;1198;1191:39;;;;;;;;;;;;;;;;;:3;:39::i;1443:108::-;1501:7;1533:1;1529;:5;1528:15;;1542:1;1528:15;;;-1:-1:-1;1538:1:0;1443:108;-1:-1:-1;1443:108:0:o;323:179::-;381:7;;413:5;417:1;413;:5;:::i;:::-;401:17;;442:1;437;:6;;429:46;;;;-1:-1:-1;;;429:46:0;;15239:2:1;429:46:0;;;15221:21:1;15278:2;15258:18;;;15251:30;15317:29;15297:18;;;15290:57;15364:18;;429:46:0;15037:351:1;510:136:0;568:7;595:43;599:1;602;595:43;;;;;;;;;;;;;;;;;:3;:43::i;1246:189::-;1332:7;1367:12;1360:5;1352:28;;;;-1:-1:-1;;;1352:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1391:9:0;1403:5;1407:1;1403;:5;:::i;14:607: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;612:2;542:66;537:2;529:6;525:15;521:88;510:9;506:104;502:113;494:121;;;;14:607;;;;:::o;626:154::-;-1:-1:-1;;;;;705:5:1;701:54;694:5;691:65;681:93;;770:1;767;760:12;681:93;626:154;:::o;785:315::-;853:6;861;914:2;902:9;893:7;889:23;885:32;882:52;;;930:1;927;920:12;882:52;969:9;956:23;988:31;1013:5;988:31;:::i;:::-;1038:5;1090:2;1075:18;;;;1062:32;;-1:-1:-1;;;785:315:1:o;1479:180::-;1538:6;1591:2;1579:9;1570:7;1566:23;1562:32;1559:52;;;1607:1;1604;1597:12;1559:52;-1:-1:-1;1630:23:1;;1479:180;-1:-1:-1;1479:180:1:o;1664:456::-;1741:6;1749;1757;1810:2;1798:9;1789:7;1785:23;1781:32;1778:52;;;1826:1;1823;1816:12;1778:52;1865:9;1852:23;1884:31;1909:5;1884:31;:::i;:::-;1934:5;-1:-1:-1;1991:2:1;1976:18;;1963:32;2004:33;1963:32;2004:33;:::i;:::-;1664:456;;2056:7;;-1:-1:-1;;;2110:2:1;2095:18;;;;2082:32;;1664:456::o;2314:615::-;2400:6;2408;2461:2;2449:9;2440:7;2436:23;2432:32;2429:52;;;2477:1;2474;2467:12;2429:52;2517:9;2504:23;2546:18;2587:2;2579:6;2576:14;2573:34;;;2603:1;2600;2593:12;2573:34;2641:6;2630:9;2626:22;2616:32;;2686:7;2679:4;2675:2;2671:13;2667:27;2657:55;;2708:1;2705;2698:12;2657:55;2748:2;2735:16;2774:2;2766:6;2763:14;2760:34;;;2790:1;2787;2780:12;2760:34;2843:7;2838:2;2828:6;2825:1;2821:14;2817:2;2813:23;2809:32;2806:45;2803:65;;;2864:1;2861;2854:12;2803:65;2895:2;2887:11;;;;;2917:6;;-1:-1:-1;2314:615:1;;-1:-1:-1;;;;2314:615:1:o;2934:247::-;2993:6;3046:2;3034:9;3025:7;3021:23;3017:32;3014:52;;;3062:1;3059;3052:12;3014:52;3101:9;3088:23;3120:31;3145:5;3120:31;:::i;3417:118::-;3503:5;3496:13;3489:21;3482:5;3479:32;3469:60;;3525:1;3522;3515:12;3540:241;3596:6;3649:2;3637:9;3628:7;3624:23;3620:32;3617:52;;;3665:1;3662;3655:12;3617:52;3704:9;3691:23;3723:28;3745:5;3723:28;:::i;3786:388::-;3854:6;3862;3915:2;3903:9;3894:7;3890:23;3886:32;3883:52;;;3931:1;3928;3921:12;3883:52;3970:9;3957:23;3989:31;4014:5;3989:31;:::i;:::-;4039:5;-1:-1:-1;4096:2:1;4081:18;;4068:32;4109:33;4068:32;4109:33;:::i;:::-;4161:7;4151:17;;;3786:388;;;;;:::o;5152:184::-;5204:77;5201:1;5194:88;5301:4;5298:1;5291:15;5325:4;5322:1;5315:15;5341:482;5430:1;5473:5;5430:1;5487:330;5508:7;5498:8;5495:21;5487:330;;;5627:4;5559:66;5555:77;5549:4;5546:87;5543:113;;;5636:18;;:::i;:::-;5686:7;5676:8;5672:22;5669:55;;;5706:16;;;;5669:55;5785:22;;;;5745:15;;;;5487:330;;;5491:3;5341:482;;;;;:::o;5828:866::-;5877:5;5907:8;5897:80;;-1:-1:-1;5948:1:1;5962:5;;5897:80;5996:4;5986:76;;-1:-1:-1;6033:1:1;6047:5;;5986:76;6078:4;6096:1;6091:59;;;;6164:1;6159:130;;;;6071:218;;6091:59;6121:1;6112:10;;6135:5;;;6159:130;6196:3;6186:8;6183:17;6180:43;;;6203:18;;:::i;:::-;-1:-1:-1;;6259:1:1;6245:16;;6274:5;;6071:218;;6373:2;6363:8;6360:16;6354:3;6348:4;6345:13;6341:36;6335:2;6325:8;6322:16;6317:2;6311:4;6308:12;6304:35;6301:77;6298:159;;;-1:-1:-1;6410:19:1;;;6442:5;;6298:159;6489:34;6514:8;6508:4;6489:34;:::i;:::-;6619:6;6551:66;6547:79;6538:7;6535:92;6532:118;;;6630:18;;:::i;:::-;6668:20;;5828:866;-1:-1:-1;;;5828:866:1:o;6699:140::-;6757:5;6786:47;6827:4;6817:8;6813:19;6807:4;6786:47;:::i;6844:168::-;6917:9;;;6948;;6965:15;;;6959:22;;6945:37;6935:71;;6986:18;;:::i;7017:251::-;7087:6;7140:2;7128:9;7119:7;7115:23;7111:32;7108:52;;;7156:1;7153;7146:12;7108:52;7188:9;7182:16;7207:31;7232:5;7207:31;:::i;8240:306::-;8328:6;8336;8344;8397:2;8385:9;8376:7;8372:23;8368:32;8365:52;;;8413:1;8410;8403:12;8365:52;8442:9;8436:16;8426:26;;8492:2;8481:9;8477:18;8471:25;8461:35;;8536:2;8525:9;8521:18;8515:25;8505:35;;8240:306;;;;;:::o;8853:245::-;8920:6;8973:2;8961:9;8952:7;8948:23;8944:32;8941:52;;;8989:1;8986;8979:12;8941:52;9021:9;9015:16;9040:28;9062:5;9040:28;:::i;9103:184::-;9155:77;9152:1;9145:88;9252:4;9249:1;9242:15;9276:4;9273:1;9266:15;12318:125;12383:9;;;12404:10;;;12401:36;;;12417:18;;:::i;12803:195::-;12842:3;12873:66;12866:5;12863:77;12860:103;;12943:18;;:::i;:::-;-1:-1:-1;12990:1:1;12979:13;;12803:195::o;13003:128::-;13070:9;;;13091:11;;;13088:37;;;13105:18;;:::i;13325:1026::-;13587:4;13635:3;13624:9;13620:19;13666:6;13655:9;13648:25;13692:2;13730:6;13725:2;13714:9;13710:18;13703:34;13773:3;13768:2;13757:9;13753:18;13746:31;13797:6;13832;13826:13;13863:6;13855;13848:22;13901:3;13890:9;13886:19;13879:26;;13940:2;13932:6;13928:15;13914:29;;13961:1;13971:218;13985:6;13982:1;13979:13;13971:218;;;14050:13;;-1:-1:-1;;;;;14046:62:1;14034:75;;14164:15;;;;14129:12;;;;14007:1;14000:9;13971:218;;;-1:-1:-1;;;;;;;14245:55:1;;;;14240:2;14225:18;;14218:83;-1:-1:-1;;;14332:3:1;14317:19;14310:35;14206:3;13325:1026;-1:-1:-1;;;13325:1026:1:o;14356:274::-;14396:1;14422;14412:189;;14457:77;14454:1;14447:88;14558:4;14555:1;14548:15;14586:4;14583:1;14576:15;14412:189;-1:-1:-1;14615:9:1;;14356:274::o

Swarm Source

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