ETH Price: $3,584.87 (+3.57%)
 

Overview

Max Total Supply

1,000,000,000 CZR

Holders

101

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.104935100342668054 CZR

Value
$0.00
0x8493bfda470c27d7ff95427ea0fbb656df9c1046
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:
CZR

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-11-22
*/

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

// Telegram: https://t.me/CZRCommunityERC20

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    /**
     * @dev Returns the value of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the value of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves a `value` amount of tokens from the caller's account to `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, uint256 value) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets a `value` amount of tokens as the allowance of `spender` over the
     * caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 value) external returns (bool);

    /**
     * @dev Moves a `value` amount of tokens from `from` to `to` using the
     * allowance mechanism. `value` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address from, address to, uint256 value) external returns (bool);
}

/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/Rari-Capital/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event OwnerUpdated(address indexed user, address indexed newOwner);

    /*//////////////////////////////////////////////////////////////
                            OWNERSHIP STORAGE
    //////////////////////////////////////////////////////////////*/

    address public owner;

    modifier onlyOwner() virtual {
        require(msg.sender == owner, "UNAUTHORIZED");

        _;
    }

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address _owner) {
        owner = _owner;

        emit OwnerUpdated(address(0), _owner);
    }

    /*//////////////////////////////////////////////////////////////
                             OWNERSHIP LOGIC
    //////////////////////////////////////////////////////////////*/

    function setOwner(address newOwner) public virtual onlyOwner {
        owner = newOwner;

        emit OwnerUpdated(msg.sender, newOwner);
    }
}

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

    function getPair(
        address tokenA,
        address tokenB
    ) external view returns (address pair);
}

interface IDEXRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

interface IWETH {
    function deposit() external payable;

    function withdraw(uint256) external;
}

contract DividendDistributor {
    address public _token;
    address public immutable dividendToken;

    struct Share {
        uint256 amount;
        uint256 totalExcluded;
        uint256 totalClaimed;
    }

    address[] private shareholders;
    mapping(address => uint256) private shareholderIndexes;
    mapping(address => Share) public shares;

    uint256 public totalShares;
    uint256 public totalDividends;
    uint256 public totalClaimed;
    uint256 public dividendsPerShare;
    uint256 private accuracyFactor = 10 ** 36;

    modifier onlyToken() {
        require(msg.sender == _token);
        _;
    }

    constructor(address _dividendToken) {
        _token = msg.sender;
        dividendToken = _dividendToken;
    }

    function setShare(address shareholder, uint256 amount) external onlyToken {
        if (shares[shareholder].amount != 0) {
            distributeDividend(shareholder);
        }

        if (amount != 0 && shares[shareholder].amount == 0) {
            addShareholder(shareholder);
        } else if (amount == 0 && shares[shareholder].amount != 0) {
            removeShareholder(shareholder);
        }

        totalShares = totalShares - shares[shareholder].amount + amount;
        shares[shareholder].amount = amount;
        shares[shareholder].totalExcluded = getCumulativeDividends(amount);
    }

    function deposit(uint256 amount) external onlyToken {
        if (amount != 0) {
            totalDividends += amount;
            dividendsPerShare += (accuracyFactor * amount) / totalShares;
        }
    }

    function distributeDividend(address shareholder) internal {
        if (shares[shareholder].amount == 0) {
            return;
        }

        uint256 amount = getClaimableDividendOf(shareholder);
        if (amount != 0) {
            totalClaimed += amount;
            shares[shareholder].totalClaimed += amount;
            shares[shareholder].totalExcluded = getCumulativeDividends(
                shares[shareholder].amount
            );
            IERC20(dividendToken).transfer(shareholder, amount);
        }
    }

    function claimDividend(address shareholder) external onlyToken {
        distributeDividend(shareholder);
    }

    function getClaimableDividendOf(
        address shareholder
    ) public view returns (uint256) {
        if (shares[shareholder].amount == 0) {
            return 0;
        }

        uint256 shareholderTotalDividends = getCumulativeDividends(
            shares[shareholder].amount
        );
        uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded;

        if (shareholderTotalDividends <= shareholderTotalExcluded) {
            return 0;
        }

        return shareholderTotalDividends - shareholderTotalExcluded;
    }

    function getCumulativeDividends(
        uint256 share
    ) internal view returns (uint256) {
        return (share * dividendsPerShare) / accuracyFactor;
    }

    function addShareholder(address shareholder) internal {
        shareholderIndexes[shareholder] = shareholders.length;
        shareholders.push(shareholder);
    }

    function removeShareholder(address shareholder) internal {
        shareholders[shareholderIndexes[shareholder]] = shareholders[
            shareholders.length - 1
        ];
        shareholderIndexes[
            shareholders[shareholders.length - 1]
        ] = shareholderIndexes[shareholder];
        shareholders.pop();
    }

    function getDividendsClaimedOf(
        address shareholder
    ) external view returns (uint256) {
        require(shares[shareholder].amount != 0, "Not a shareholder!");
        return shares[shareholder].totalClaimed;
    }
}

contract CZR is IERC20, Owned {
    IDEXRouter private constant router =
        IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); // Uniswap Router
    address private constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address private constant ZERO = address(0);
    address private immutable WETH;
    address public immutable dividendToken; 

    string private constant _name = "Changpeng Zhao Reflect";
    string private constant _symbol = "CZR";
    uint8 private constant _decimals = 18;

    uint256 private _totalSupply = 1_000_000_000 * (10 ** _decimals);
    uint256 public swapThreshold;
    
    uint256 public buyTax = 30;
    uint256 public sellTax = 30;

    uint256 public swapRewardPercent = 10;
    address public marketingWallet;

    bool public limit = true;
    uint256 public maxTxAmount;
    uint256 public maxWalletAmount;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    mapping(address => bool) public isFeeExempt;
    mapping(address => bool) public isDividendExempt;
    mapping(address => bool) public isBot;

    DividendDistributor public distributor;
    address public pair;

    bool public tradingOpen;
    bool public blacklistEnabled;
    bool private inSwap;

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

    constructor(
        address _owner,
        address _marketingWallet,
        address _dividendToken
    ) Owned(_owner) {
        WETH = router.WETH();
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));

        _allowances[address(this)][address(router)] = type(uint256).max;

        dividendToken = _dividendToken;
        distributor = new DividendDistributor(_dividendToken);
        marketingWallet = _marketingWallet;

        isFeeExempt[_owner] = true;
        isFeeExempt[_marketingWallet] = true;

        isDividendExempt[pair] = true;
        isDividendExempt[address(this)] = true;
        isDividendExempt[DEAD] = true;

        swapThreshold = _totalSupply * 1 / 10000; // 0.01%
        maxTxAmount = (_totalSupply * 1) / 100; // 1%
        maxWalletAmount = (_totalSupply * 2) / 100; // 2%

        _balances[_owner] = _totalSupply;
        emit Transfer(address(0), _owner, _totalSupply);

    }

    receive() external payable {}

    function totalSupply() external view override returns (uint256) {
        return _totalSupply;
    }

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

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

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

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

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

    function approve(
        address spender,
        uint256 amount
    ) external override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function transfer(
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external override returns (bool) {
        if (_allowances[sender][msg.sender] != type(uint256).max) {
            uint256 currentAllowance = _allowances[sender][msg.sender];
            require(currentAllowance >= amount, "Insufficient allowance");
            _allowances[sender][msg.sender] = currentAllowance - amount;
        }
        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        require(
            tradingOpen || sender == owner || recipient == owner,
            "Trading not yet enabled"
        ); //transfers disabled before openTrading

        if (blacklistEnabled) {
            require(!isBot[sender] && !isBot[recipient], "Bot");
        }

        if (limit) {
            if (sender != owner && recipient != owner)
                require(amount <= maxTxAmount, "You are exceeding maxTxAmount");
        }

        if (inSwap) {
            return _basicTransfer(sender, recipient, amount);
        }

        uint256 contractTokenBal = balanceOf(address(this));
        bool overMinTokenBal = contractTokenBal >= swapThreshold;

        if (
            overMinTokenBal &&
            recipient == pair &&
            balanceOf(address(this)) != 0
        ) {
            swapBack();
        }

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "Insufficient Balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }

        uint256 amountReceived = shouldTakeFee(sender, recipient)
            ? takeFee(sender, recipient, amount)
            : amount;

        _balances[recipient] += amountReceived;

        if (sender != pair && !isDividendExempt[sender]) {
            try distributor.setShare(sender, _balances[sender]) {} catch {}
        }
        if (recipient != pair && !isDividendExempt[recipient]) {
            try
                distributor.setShare(recipient, _balances[recipient])
            {} catch {}
        }

        emit Transfer(sender, recipient, amountReceived);
        return true;
    }

    function _basicTransfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (bool) {
        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "Insufficient Balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
            _balances[recipient] += amount;
        }
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function shouldTakeFee(
        address sender,
        address recipient
    ) internal view returns (bool) {
        return (!(isFeeExempt[sender] || isFeeExempt[recipient]) &&
            (sender == pair || recipient == pair));
    }

    function takeFee(
        address sender,
        address recipient,
        uint256 amount
    ) internal returns (uint256) {
        uint256 feeAmount;

        if (recipient == pair) {
            feeAmount = (amount * sellTax) / 100;
        } else {
            feeAmount = (amount * buyTax) / 100;
        }

        _balances[address(this)] += feeAmount;

        emit Transfer(sender, address(this), feeAmount);
        return amount - feeAmount;
    }

    function swapBack() internal swapping {
        uint256 tokenBal = balanceOf(address(this));
        uint256 tokenForDividends = (tokenBal * swapRewardPercent) / 100;

        if (tokenForDividends != 0) {
            uint256 balBefore = IERC20(dividendToken).balanceOf(address(distributor));
            swapTokensForDividend(tokenForDividends, address(distributor));
            uint256 balAfter = IERC20(dividendToken).balanceOf(address(distributor));
            distributor.deposit(balAfter - balBefore);
        }

        if (tokenBal - tokenForDividends != 0) {
            swapTokensForETH(tokenBal - tokenForDividends, marketingWallet);
        }
    }

    function swapTokensForDividend(uint256 tokenAmount, address to) private {
        address[] memory path = new address[](3);
        path[0] = address(this);
        path[1] = WETH;
        path[2] = dividendToken;

        // make the swap
        router.swapExactTokensForTokensSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            to,
            block.timestamp
        );
    }

    function swapTokensForETH(uint256 tokenAmount, address to) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WETH;

        // make the swap
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            to,
            block.timestamp
        );
    }

    function _setIsDividendExempt(address holder, bool exempt) internal {
        require(holder != address(this) && holder != pair);
        isDividendExempt[holder] = exempt;
        if (exempt) {
            distributor.setShare(holder, 0);
        } else {
            distributor.setShare(holder, _balances[holder]);
        }
    }

    function claimDividend() external {
        distributor.claimDividend(msg.sender);
    }

    function getClaimableDividendOf(
        address shareholder
    ) public view returns (uint256) {
        return distributor.getClaimableDividendOf(shareholder);
    }

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply - balanceOf(DEAD) - balanceOf(ZERO);
    }

    function getTotalDividends() external view returns (uint256) {
        return distributor.totalDividends();
    }

    function getTotalClaimed() external view returns (uint256) {
        return distributor.totalClaimed();
    }

    function getDividendsClaimedOf(
        address shareholder
    ) external view returns (uint256) {
        return distributor.getDividendsClaimedOf(shareholder);
    }

    function checkBot(address account) external view returns (bool) {
        return isBot[account];
    }

    function openTrading() external onlyOwner {
        tradingOpen = true;
    }

    function setBot(address _address, bool toggle) external onlyOwner {
        isBot[_address] = toggle;
        _setIsDividendExempt(_address, toggle);
    }

    function setIsDividendExempt(
        address holder,
        bool exempt
    ) external onlyOwner {
        _setIsDividendExempt(holder, exempt);
    }

    function setIsFeeExempt(address holder, bool exempt) external onlyOwner {
        isFeeExempt[holder] = exempt;
    }

    function manualSendToMarketingWallet() external onlyOwner {
        payable(marketingWallet).transfer(address(this).balance);
    }

    function claimDividendOf(address holder) external onlyOwner {
        distributor.claimDividend(holder);
    }

    function manualBurn(uint256 amount) external onlyOwner returns (bool) {
        return _basicTransfer(address(this), DEAD, amount);
    }

    function setMarketingWallet(address _marketingWallet) external onlyOwner {
        marketingWallet = _marketingWallet;
    }

    function removeLimit() external onlyOwner {
        limit = false;
    }

    function updateMaxTxAmount(uint256 _percen) external onlyOwner{
        maxTxAmount = _totalSupply * _percen / 100;
    }
    
    function updateMaxWalletAmount(uint256 _percen) external onlyOwner{
        maxWalletAmount = _totalSupply * _percen / 100;
    }

    function setBlacklistEnabled() external onlyOwner {
        require(blacklistEnabled == false, "can only be called once");
        blacklistEnabled = true;
    }

    function setSwapRewardPercent(uint256 percent) external onlyOwner {
        require(percent <= 100, "Can not exceed 100%");
        swapRewardPercent = percent;
    }

    function setSwapThreshold(uint256 amount) external onlyOwner {
        swapThreshold = amount;
    }

    // must be in percentage (less than 100)
    function setBuyTax(uint256 _tax) external onlyOwner{
        buyTax = _tax;
    }

    // must be in percentage (less than 100)
    function setSellTax(uint256 _tax) external onlyOwner{
        sellTax = _tax;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_marketingWallet","type":"address"},{"internalType":"address","name":"_dividendToken","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnerUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"holder","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":"blacklistEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"checkBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"claimDividendOf","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"distributor","outputs":[{"internalType":"contract DividendDistributor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dividendToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getClaimableDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getDividendsClaimedOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"limit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualBurn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSendToMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"setBlacklistEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tax","type":"uint256"}],"name":"setBuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"setOwner","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_tax","type":"uint256"}],"name":"setSellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setSwapRewardPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapRewardPercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_percen","type":"uint256"}],"name":"updateMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_percen","type":"uint256"}],"name":"updateMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052620000126012600a62000548565b6200002290633b9aca006200055f565b600155601e6003819055600455600a6005556006805460ff60a01b1916600160a01b17905534801562000053575f80fd5b50604051620030ad380380620030ad833981016040819052620000769162000595565b5f80546001600160a01b0319166001600160a01b03851690811782556040518592907f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d76908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200010f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001359190620005dc565b6001600160a01b03166080526040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9163c45a01559160048083019260209291908290030181865afa15801562000190573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001b69190620005dc565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303815f875af115801562000205573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200022b9190620005dc565b600f80546001600160a01b0319166001600160a01b03928316179055305f908152600a60209081526040808320737a250d5630b4cf539739df2c5dacb4c659f2488d8452909152908190205f19905590821660a0525181906200028e906200042b565b6001600160a01b039091168152602001604051809103905ff080158015620002b8573d5f803e3d5ffd5b50600e80546001600160a01b039283166001600160a01b031991821617909155600680548584169216821790558482165f908152600b60209081526040808320805460ff1990811660019081179092559484528184208054861682179055600f549095168352600c90915280822080548416851790553082528120805483168417905561dead90527f45117a726ea4f344045dc210793664a28d2d320b7e03f6bffdae553d24c3586c8054909116821790558054612710916200037c91906200055f565b620003889190620005f8565b600255600180546064916200039e91906200055f565b620003aa9190620005f8565b600755600154606490620003c09060026200055f565b620003cc9190620005f8565b6008556001546001600160a01b0384165f81815260096020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505062000618565b610968806200274583390190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200048d57815f190482111562000471576200047162000439565b808516156200047f57918102915b93841c939080029062000452565b509250929050565b5f82620004a55750600162000542565b81620004b357505f62000542565b8160018114620004cc5760028114620004d757620004f7565b600191505062000542565b60ff841115620004eb57620004eb62000439565b50506001821b62000542565b5060208310610133831016604e8410600b84101617156200051c575081810a62000542565b6200052883836200044d565b805f19048211156200053e576200053e62000439565b0290505b92915050565b5f6200055860ff84168362000495565b9392505050565b808202811582820484141762000542576200054262000439565b80516001600160a01b038116811462000590575f80fd5b919050565b5f805f60608486031215620005a8575f80fd5b620005b38462000579565b9250620005c36020850162000579565b9150620005d36040850162000579565b90509250925092565b5f60208284031215620005ed575f80fd5b620005588262000579565b5f826200061357634e487b7160e01b5f52601260045260245ffd5b500490565b60805160a0516120ef620006565f395f818161039d015281816118eb015281816119920152611c9101525f8181611c3d0152611da101526120ef5ff3fe6080604052600436106102c2575f3560e01c8063764ca5121161016f578063bfe10928116100d8578063dd62ed3e11610092578063f52dd8281161006d578063f52dd828146108cc578063f685d7d8146108e0578063f708a64f146108ff578063ffb54a991461091e575f80fd5b8063dd62ed3e1461085f578063f0fc6bca146108a3578063f283c4ba146108b7575f80fd5b8063bfe10928146107b9578063bffb691d146107d8578063c18bc195146107f8578063c9567bf914610817578063cc1776d31461082b578063dc1052e214610840575f80fd5b80639d0014b1116101295780639d0014b1146106f0578063a4d66daf1461070f578063a8aa1b311461072f578063a9059cbb1461074e578063aa4bde281461076d578063b1a4e0dc14610782575f80fd5b8063764ca512146106405780638c0b5e22146106545780638cd09d50146106695780638da5cb5b146106885780638ecc37fb146106a657806395d89b41146106c5575f80fd5b80633f4218e01161022b57806362256589116101e557806367ee5f09116101c057806367ee5f09146105c557806370a08231146105d9578063736a83a11461060d57806375f0a87414610621575f80fd5b806362256589146105735780636256d18114610587578063658d4b7f146105a6575f80fd5b80633f4218e0146104a55780634355855a146104d35780634d31d2c7146105015780634f7041a5146105205780635cc33f74146105355780635d098b3814610554575f80fd5b806323b635851161027c57806323b63585146103eb57806323b872dd1461040a5780632b112e4914610429578063313ce5671461043d578063342aa8b5146104585780633bbac57914610477575f80fd5b80630445b667146102cd57806306fdde03146102f5578063095ea7b31461033c57806313af40351461036b5780631582358e1461038c57806318160ddd146103d7575f80fd5b366102c957005b5f80fd5b3480156102d8575f80fd5b506102e260025481565b6040519081526020015b60405180910390f35b348015610300575f80fd5b5060408051808201909152601681527510da185b99dc195b99c8169a185bc81499599b1958dd60521b60208201525b6040516102ec9190611e2a565b348015610347575f80fd5b5061035b610356366004611e8c565b61093e565b60405190151581526020016102ec565b348015610376575f80fd5b5061038a610385366004611eb4565b6109aa565b005b348015610397575f80fd5b506103bf7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016102ec565b3480156103e2575f80fd5b506001546102e2565b3480156103f6575f80fd5b5061035b610405366004611ecd565b610a26565b348015610415575f80fd5b5061035b610424366004611ee4565b610a65565b348015610434575f80fd5b506102e2610b3f565b348015610448575f80fd5b50604051601281526020016102ec565b348015610463575f80fd5b5061038a610472366004611f1d565b610bae565b348015610482575f80fd5b5061035b610491366004611eb4565b600d6020525f908152604090205460ff1681565b3480156104b0575f80fd5b5061035b6104bf366004611eb4565b600b6020525f908152604090205460ff1681565b3480156104de575f80fd5b5061035b6104ed366004611eb4565b600c6020525f908152604090205460ff1681565b34801561050c575f80fd5b5061038a61051b366004611eb4565b610c08565b34801561052b575f80fd5b506102e260035481565b348015610540575f80fd5b506102e261054f366004611eb4565b610c8e565b34801561055f575f80fd5b5061038a61056e366004611eb4565b610cfb565b34801561057e575f80fd5b5061038a610d46565b348015610592575f80fd5b5061038a6105a1366004611ecd565b610d7e565b3480156105b1575f80fd5b5061038a6105c0366004611f1d565b610dc7565b3480156105d0575f80fd5b506102e2610e1a565b3480156105e4575f80fd5b506102e26105f3366004611eb4565b6001600160a01b03165f9081526009602052604090205490565b348015610618575f80fd5b506102e2610e85565b34801561062c575f80fd5b506006546103bf906001600160a01b031681565b34801561064b575f80fd5b5061038a610ecc565b34801561065f575f80fd5b506102e260075481565b348015610674575f80fd5b5061038a610683366004611ecd565b610f64565b348015610693575f80fd5b505f546103bf906001600160a01b031681565b3480156106b1575f80fd5b506102e26106c0366004611eb4565b610f92565b3480156106d0575f80fd5b5060408051808201909152600381526221ad2960e91b602082015261032f565b3480156106fb575f80fd5b5061038a61070a366004611ecd565b610fc4565b34801561071a575f80fd5b5060065461035b90600160a01b900460ff1681565b34801561073a575f80fd5b50600f546103bf906001600160a01b031681565b348015610759575f80fd5b5061035b610768366004611e8c565b610ff2565b348015610778575f80fd5b506102e260085481565b34801561078d575f80fd5b5061035b61079c366004611eb4565b6001600160a01b03165f908152600d602052604090205460ff1690565b3480156107c4575f80fd5b50600e546103bf906001600160a01b031681565b3480156107e3575f80fd5b50600f5461035b90600160a81b900460ff1681565b348015610803575f80fd5b5061038a610812366004611ecd565b610ffe565b348015610822575f80fd5b5061038a611047565b348015610836575f80fd5b506102e260045481565b34801561084b575f80fd5b5061038a61085a366004611ecd565b611085565b34801561086a575f80fd5b506102e2610879366004611f56565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b3480156108ae575f80fd5b5061038a6110b3565b3480156108c2575f80fd5b506102e260055481565b3480156108d7575f80fd5b5061038a61110d565b3480156108eb575f80fd5b5061038a6108fa366004611ecd565b61116f565b34801561090a575f80fd5b5061038a610919366004611f1d565b6111e4565b348015610929575f80fd5b50600f5461035b90600160a01b900460ff1681565b335f818152600a602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109989086815260200190565b60405180910390a35060015b92915050565b5f546001600160a01b031633146109dc5760405162461bcd60e51b81526004016109d390611f87565b60405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b5f80546001600160a01b03163314610a505760405162461bcd60e51b81526004016109d390611f87565b610a5d3061dead84611217565b90505b919050565b6001600160a01b0383165f908152600a602090815260408083203384529091528120545f1914610b2a576001600160a01b0384165f908152600a6020908152604080832033845290915290205482811015610afb5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016109d3565b610b058382611fc1565b6001600160a01b0386165f908152600a60209081526040808320338452909152902055505b610b358484846112e8565b90505b9392505050565b60096020527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b5461dead5f9081527f960b1051749987b45b5679007fff577a1c2f763ec21c15a6c5eb19307500378554600154919291610b9f9190611fc1565b610ba99190611fc1565b905090565b5f546001600160a01b03163314610bd75760405162461bcd60e51b81526004016109d390611f87565b6001600160a01b0382165f908152600d60205260409020805460ff1916821515179055610c048282611778565b5050565b5f546001600160a01b03163314610c315760405162461bcd60e51b81526004016109d390611f87565b600e54604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e906024015f604051808303815f87803b158015610c75575f80fd5b505af1158015610c87573d5f803e3d5ffd5b5050505050565b600e54604051631730cfdd60e21b81526001600160a01b0383811660048301525f921690635cc33f74906024015b602060405180830381865afa158015610cd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5d9190611fd4565b5f546001600160a01b03163314610d245760405162461bcd60e51b81526004016109d390611f87565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b03163314610d6f5760405162461bcd60e51b81526004016109d390611f87565b6006805460ff60a01b19169055565b5f546001600160a01b03163314610da75760405162461bcd60e51b81526004016109d390611f87565b606481600154610db79190611feb565b610dc19190612002565b60075550565b5f546001600160a01b03163314610df05760405162461bcd60e51b81526004016109d390611f87565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b600e546040805163997664d760e01b815290515f926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610e61573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba99190611fd4565b600e546040805163d54ad2a160e01b815290515f926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610e61573d5f803e3d5ffd5b5f546001600160a01b03163314610ef55760405162461bcd60e51b81526004016109d390611f87565b600f54600160a81b900460ff1615610f4f5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e636500000000000000000060448201526064016109d3565b600f805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610f8d5760405162461bcd60e51b81526004016109d390611f87565b600455565b600e54604051638ecc37fb60e01b81526001600160a01b0383811660048301525f921690638ecc37fb90602401610cbc565b5f546001600160a01b03163314610fed5760405162461bcd60e51b81526004016109d390611f87565b600255565b5f610b383384846112e8565b5f546001600160a01b031633146110275760405162461bcd60e51b81526004016109d390611f87565b6064816001546110379190611feb565b6110419190612002565b60085550565b5f546001600160a01b031633146110705760405162461bcd60e51b81526004016109d390611f87565b600f805460ff60a01b1916600160a01b179055565b5f546001600160a01b031633146110ae5760405162461bcd60e51b81526004016109d390611f87565b600355565b600e54604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e906024015f604051808303815f87803b1580156110f5575f80fd5b505af1158015611107573d5f803e3d5ffd5b50505050565b5f546001600160a01b031633146111365760405162461bcd60e51b81526004016109d390611f87565b6006546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561116c573d5f803e3d5ffd5b50565b5f546001600160a01b031633146111985760405162461bcd60e51b81526004016109d390611f87565b60648111156111df5760405162461bcd60e51b815260206004820152601360248201527243616e206e6f7420657863656564203130302560681b60448201526064016109d3565b600555565b5f546001600160a01b0316331461120d5760405162461bcd60e51b81526004016109d390611f87565b610c048282611778565b6001600160a01b0383165f90815260096020526040812054828110156112765760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b60448201526064016109d3565b6001600160a01b038086165f8181526009602052604080822087860390559287168082529083902080548701905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112d59087815260200190565b60405180910390a3506001949350505050565b600f545f90600160a01b900460ff168061130e57505f546001600160a01b038581169116145b8061132557505f546001600160a01b038481169116145b6113715760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742079657420656e61626c656400000000000000000060448201526064016109d3565b600f54600160a81b900460ff16156113f5576001600160a01b0384165f908152600d602052604090205460ff161580156113c357506001600160a01b0383165f908152600d602052604090205460ff16155b6113f55760405162461bcd60e51b8152602060048201526003602482015262109bdd60ea1b60448201526064016109d3565b600654600160a01b900460ff1615611488575f546001600160a01b0385811691161480159061143157505f546001600160a01b03848116911614155b15611488576007548211156114885760405162461bcd60e51b815260206004820152601d60248201527f596f752061726520657863656564696e67206d61785478416d6f756e7400000060448201526064016109d3565b600f54600160b01b900460ff16156114ac576114a5848484611217565b9050610b38565b305f90815260096020526040902054600254811080159081906114dc5750600f546001600160a01b038681169116145b80156114f55750305f9081526009602052604090205415155b1561150257611502611880565b6001600160a01b0386165f90815260096020526040902054848110156115615760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b60448201526064016109d3565b6001600160a01b0387165f90815260096020526040812086830390556115878888611aa5565b611591578561159c565b61159c888888611b18565b6001600160a01b0388165f908152600960205260408120805492935083929091906115c8908490612021565b9091555050600f546001600160a01b0389811691161480159061160357506001600160a01b0388165f908152600c602052604090205460ff16155b1561167557600e546001600160a01b038981165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044015f604051808303815f87803b158015611662575f80fd5b505af1925050508015611673575060015b505b600f546001600160a01b038881169116148015906116ab57506001600160a01b0387165f908152600c602052604090205460ff16155b1561171d57600e546001600160a01b038881165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044015f604051808303815f87803b15801561170a575f80fd5b505af192505050801561171b575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161176291815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b038216301480159061179f5750600f546001600160a01b03838116911614155b6117a7575f80fd5b6001600160a01b0382165f908152600c60205260409020805460ff1916821580159190911790915561183857600e54604051630a5b654b60e11b81526001600160a01b0384811660048301525f6024830152909116906314b6ca96906044015b5f604051808303815f87803b15801561181e575f80fd5b505af1158015611830573d5f803e3d5ffd5b505050505050565b600e546001600160a01b038381165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611807565b600f805460ff60b01b1916600160b01b179055305f9081526009602052604081205490505f6064600554836118b59190611feb565b6118bf9190612002565b90508015611a6757600e546040516370a0823160e01b81526001600160a01b0391821660048201525f917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015611930573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119549190611fd4565b600e5490915061196e9083906001600160a01b0316611be6565b600e546040516370a0823160e01b81526001600160a01b0391821660048201525f917f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156119d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119fb9190611fd4565b600e549091506001600160a01b031663b6b55f25611a198484611fc1565b6040518263ffffffff1660e01b8152600401611a3791815260200190565b5f604051808303815f87803b158015611a4e575f80fd5b505af1158015611a60573d5f803e3d5ffd5b5050505050505b611a718183611fc1565b15611a9457611a94611a838284611fc1565b6006546001600160a01b0316611d4c565b5050600f805460ff60b01b19169055565b6001600160a01b0382165f908152600b602052604081205460ff1680611ae257506001600160a01b0382165f908152600b602052604090205460ff165b158015610b385750600f546001600160a01b0384811691161480610b38575050600f546001600160a01b03908116911614919050565b600f545f9081906001600160a01b0390811690851603611b5357606460045484611b429190611feb565b611b4c9190612002565b9050611b70565b606460035484611b639190611feb565b611b6d9190612002565b90505b305f9081526009602052604081208054839290611b8e908490612021565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3611bdd8184611fc1565b95945050505050565b604080516003808252608082019092525f916020820160608036833701905050905030815f81518110611c1b57611c1b612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611c6f57611c6f612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600281518110611cc357611cc3612034565b6001600160a01b0390921660209283029190910190910152604051635c11d79560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d79590611d1a9086905f90869088904290600401612048565b5f604051808303815f87803b158015611d31575f80fd5b505af1158015611d43573d5f803e3d5ffd5b50505050505050565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611d7f57611d7f612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611dd357611dd3612034565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac94790611d1a9086905f90869088904290600401612048565b5f602080835283518060208501525f5b81811015611e5657858101830151858201604001528201611e3a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a60575f80fd5b5f8060408385031215611e9d575f80fd5b611ea683611e76565b946020939093013593505050565b5f60208284031215611ec4575f80fd5b610b3882611e76565b5f60208284031215611edd575f80fd5b5035919050565b5f805f60608486031215611ef6575f80fd5b611eff84611e76565b9250611f0d60208501611e76565b9150604084013590509250925092565b5f8060408385031215611f2e575f80fd5b611f3783611e76565b915060208301358015158114611f4b575f80fd5b809150509250929050565b5f8060408385031215611f67575f80fd5b611f7083611e76565b9150611f7e60208401611e76565b90509250929050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156109a4576109a4611fad565b5f60208284031215611fe4575f80fd5b5051919050565b80820281158282048414176109a4576109a4611fad565b5f8261201c57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156109a4576109a4611fad565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120985784516001600160a01b031683529383019391830191600101612073565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220df4cb920440b82df07c1f4d68340d9683c143237b93c6a3b4505c1f15f9d097d64736f6c6343000817003360a06040526ec097ce7bc90715b34b9f1000000000600855348015610022575f80fd5b5060405161096838038061096883398101604081905261004191610063565b5f80546001600160a01b031916331790556001600160a01b0316608052610090565b5f60208284031215610073575f80fd5b81516001600160a01b0381168114610089575f80fd5b9392505050565b6080516108ba6100ae5f395f818160cf01526105b301526108ba5ff3fe608060405234801561000f575f80fd5b50600436106100b1575f3560e01c8063997664d71161006e578063997664d71461015e578063b6b55f2514610167578063ce7c2ac21461017a578063d54ad2a1146101c3578063e2d2e219146101cc578063ecd0c0c3146101d5575f80fd5b806314b6ca96146100b55780631582358e146100ca57806315f7e05e1461010e5780633a98ef39146101215780635cc33f74146101385780638ecc37fb1461014b575b5f80fd5b6100c86100c336600461076e565b6101e7565b005b6100f17f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100c861011c366004610796565b610354565b61012a60045481565b604051908152602001610105565b61012a610146366004610796565b610375565b61012a610159366004610796565b6103f2565b61012a60055481565b6100c86101753660046107b6565b610478565b6101a8610188366004610796565b60036020525f908152604090208054600182015460029092015490919083565b60408051938452602084019290925290820152606001610105565b61012a60065481565b61012a60075481565b5f546100f1906001600160a01b031681565b5f546001600160a01b031633146101fc575f80fd5b6001600160a01b0382165f908152600360205260409020541561022257610222826104dc565b801580159061024657506001600160a01b0382165f90815260036020526040902054155b156102aa57600180546001600160a01b0384165f8181526002602052604081208390558284018455929092527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b03191690911790556102dc565b801580156102ce57506001600160a01b0382165f9081526003602052604090205415155b156102dc576102dc82610623565b6001600160a01b0382165f908152600360205260409020546004548291610302916107e1565b61030c91906107f4565b6004556001600160a01b0382165f90815260036020526040902081905561033281610731565b6001600160a01b039092165f9081526003602052604090206001019190915550565b5f546001600160a01b03163314610369575f80fd5b610372816104dc565b50565b6001600160a01b0381165f9081526003602052604081205481036103d45760405162461bcd60e51b81526020600482015260126024820152714e6f742061207368617265686f6c6465722160701b604482015260640160405180910390fd5b506001600160a01b03165f9081526003602052604090206002015490565b6001600160a01b0381165f90815260036020526040812054810361041757505f919050565b6001600160a01b0382165f9081526003602052604081205461043890610731565b6001600160a01b0384165f9081526003602052604090206001015490915080821161046657505f9392505050565b61047081836107e1565b949350505050565b5f546001600160a01b0316331461048d575f80fd5b8015610372578060055f8282546104a491906107f4565b90915550506004546008546104ba908390610807565b6104c4919061081e565b60075f8282546104d491906107f4565b909155505050565b6001600160a01b0381165f9081526003602052604081205490036104fd5750565b5f610507826103f2565b9050801561061f578060065f82825461052091906107f4565b90915550506001600160a01b0382165f908152600360205260408120600201805483929061054f9084906107f4565b90915550506001600160a01b0382165f9081526003602052604090205461057590610731565b6001600160a01b038381165f818152600360205260409081902060010193909355915163a9059cbb60e01b81526004810192909252602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303815f875af11580156105f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061061d919061083d565b505b5050565b600180546106329082906107e1565b815481106106425761064261085c565b5f9182526020808320909101546001600160a01b038481168452600290925260409092205460018054929093169291811061067f5761067f61085c565b5f91825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152600291829052604081205460018054919392916106c99082906107e1565b815481106106d9576106d961085c565b5f9182526020808320909101546001600160a01b03168352820192909252604001902055600180548061070e5761070e610870565b5f8281526020902081015f1990810180546001600160a01b031916905501905550565b5f600854600754836107439190610807565b61074d919061081e565b92915050565b80356001600160a01b0381168114610769575f80fd5b919050565b5f806040838503121561077f575f80fd5b61078883610753565b946020939093013593505050565b5f602082840312156107a6575f80fd5b6107af82610753565b9392505050565b5f602082840312156107c6575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561074d5761074d6107cd565b8082018082111561074d5761074d6107cd565b808202811582820484141761074d5761074d6107cd565b5f8261083857634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121561084d575f80fd5b815180151581146107af575f80fd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52603160045260245ffdfea264697066735822122076d18395ece4856f576f4c782fa478b79fca2bfd68cafceede386981ad88f2f664736f6c634300081700330000000000000000000000005acd22b956fa437e246997b477f446391277bbda00000000000000000000000066ed7b11d157adf79056b9f6b5547ae43cbed33b000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c34

Deployed Bytecode

0x6080604052600436106102c2575f3560e01c8063764ca5121161016f578063bfe10928116100d8578063dd62ed3e11610092578063f52dd8281161006d578063f52dd828146108cc578063f685d7d8146108e0578063f708a64f146108ff578063ffb54a991461091e575f80fd5b8063dd62ed3e1461085f578063f0fc6bca146108a3578063f283c4ba146108b7575f80fd5b8063bfe10928146107b9578063bffb691d146107d8578063c18bc195146107f8578063c9567bf914610817578063cc1776d31461082b578063dc1052e214610840575f80fd5b80639d0014b1116101295780639d0014b1146106f0578063a4d66daf1461070f578063a8aa1b311461072f578063a9059cbb1461074e578063aa4bde281461076d578063b1a4e0dc14610782575f80fd5b8063764ca512146106405780638c0b5e22146106545780638cd09d50146106695780638da5cb5b146106885780638ecc37fb146106a657806395d89b41146106c5575f80fd5b80633f4218e01161022b57806362256589116101e557806367ee5f09116101c057806367ee5f09146105c557806370a08231146105d9578063736a83a11461060d57806375f0a87414610621575f80fd5b806362256589146105735780636256d18114610587578063658d4b7f146105a6575f80fd5b80633f4218e0146104a55780634355855a146104d35780634d31d2c7146105015780634f7041a5146105205780635cc33f74146105355780635d098b3814610554575f80fd5b806323b635851161027c57806323b63585146103eb57806323b872dd1461040a5780632b112e4914610429578063313ce5671461043d578063342aa8b5146104585780633bbac57914610477575f80fd5b80630445b667146102cd57806306fdde03146102f5578063095ea7b31461033c57806313af40351461036b5780631582358e1461038c57806318160ddd146103d7575f80fd5b366102c957005b5f80fd5b3480156102d8575f80fd5b506102e260025481565b6040519081526020015b60405180910390f35b348015610300575f80fd5b5060408051808201909152601681527510da185b99dc195b99c8169a185bc81499599b1958dd60521b60208201525b6040516102ec9190611e2a565b348015610347575f80fd5b5061035b610356366004611e8c565b61093e565b60405190151581526020016102ec565b348015610376575f80fd5b5061038a610385366004611eb4565b6109aa565b005b348015610397575f80fd5b506103bf7f000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c3481565b6040516001600160a01b0390911681526020016102ec565b3480156103e2575f80fd5b506001546102e2565b3480156103f6575f80fd5b5061035b610405366004611ecd565b610a26565b348015610415575f80fd5b5061035b610424366004611ee4565b610a65565b348015610434575f80fd5b506102e2610b3f565b348015610448575f80fd5b50604051601281526020016102ec565b348015610463575f80fd5b5061038a610472366004611f1d565b610bae565b348015610482575f80fd5b5061035b610491366004611eb4565b600d6020525f908152604090205460ff1681565b3480156104b0575f80fd5b5061035b6104bf366004611eb4565b600b6020525f908152604090205460ff1681565b3480156104de575f80fd5b5061035b6104ed366004611eb4565b600c6020525f908152604090205460ff1681565b34801561050c575f80fd5b5061038a61051b366004611eb4565b610c08565b34801561052b575f80fd5b506102e260035481565b348015610540575f80fd5b506102e261054f366004611eb4565b610c8e565b34801561055f575f80fd5b5061038a61056e366004611eb4565b610cfb565b34801561057e575f80fd5b5061038a610d46565b348015610592575f80fd5b5061038a6105a1366004611ecd565b610d7e565b3480156105b1575f80fd5b5061038a6105c0366004611f1d565b610dc7565b3480156105d0575f80fd5b506102e2610e1a565b3480156105e4575f80fd5b506102e26105f3366004611eb4565b6001600160a01b03165f9081526009602052604090205490565b348015610618575f80fd5b506102e2610e85565b34801561062c575f80fd5b506006546103bf906001600160a01b031681565b34801561064b575f80fd5b5061038a610ecc565b34801561065f575f80fd5b506102e260075481565b348015610674575f80fd5b5061038a610683366004611ecd565b610f64565b348015610693575f80fd5b505f546103bf906001600160a01b031681565b3480156106b1575f80fd5b506102e26106c0366004611eb4565b610f92565b3480156106d0575f80fd5b5060408051808201909152600381526221ad2960e91b602082015261032f565b3480156106fb575f80fd5b5061038a61070a366004611ecd565b610fc4565b34801561071a575f80fd5b5060065461035b90600160a01b900460ff1681565b34801561073a575f80fd5b50600f546103bf906001600160a01b031681565b348015610759575f80fd5b5061035b610768366004611e8c565b610ff2565b348015610778575f80fd5b506102e260085481565b34801561078d575f80fd5b5061035b61079c366004611eb4565b6001600160a01b03165f908152600d602052604090205460ff1690565b3480156107c4575f80fd5b50600e546103bf906001600160a01b031681565b3480156107e3575f80fd5b50600f5461035b90600160a81b900460ff1681565b348015610803575f80fd5b5061038a610812366004611ecd565b610ffe565b348015610822575f80fd5b5061038a611047565b348015610836575f80fd5b506102e260045481565b34801561084b575f80fd5b5061038a61085a366004611ecd565b611085565b34801561086a575f80fd5b506102e2610879366004611f56565b6001600160a01b039182165f908152600a6020908152604080832093909416825291909152205490565b3480156108ae575f80fd5b5061038a6110b3565b3480156108c2575f80fd5b506102e260055481565b3480156108d7575f80fd5b5061038a61110d565b3480156108eb575f80fd5b5061038a6108fa366004611ecd565b61116f565b34801561090a575f80fd5b5061038a610919366004611f1d565b6111e4565b348015610929575f80fd5b50600f5461035b90600160a01b900460ff1681565b335f818152600a602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109989086815260200190565b60405180910390a35060015b92915050565b5f546001600160a01b031633146109dc5760405162461bcd60e51b81526004016109d390611f87565b60405180910390fd5b5f80546001600160a01b0319166001600160a01b0383169081178255604051909133917f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d769190a350565b5f80546001600160a01b03163314610a505760405162461bcd60e51b81526004016109d390611f87565b610a5d3061dead84611217565b90505b919050565b6001600160a01b0383165f908152600a602090815260408083203384529091528120545f1914610b2a576001600160a01b0384165f908152600a6020908152604080832033845290915290205482811015610afb5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b60448201526064016109d3565b610b058382611fc1565b6001600160a01b0386165f908152600a60209081526040808320338452909152902055505b610b358484846112e8565b90505b9392505050565b60096020527fec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b5461dead5f9081527f960b1051749987b45b5679007fff577a1c2f763ec21c15a6c5eb19307500378554600154919291610b9f9190611fc1565b610ba99190611fc1565b905090565b5f546001600160a01b03163314610bd75760405162461bcd60e51b81526004016109d390611f87565b6001600160a01b0382165f908152600d60205260409020805460ff1916821515179055610c048282611778565b5050565b5f546001600160a01b03163314610c315760405162461bcd60e51b81526004016109d390611f87565b600e54604051630afbf02f60e11b81526001600160a01b038381166004830152909116906315f7e05e906024015f604051808303815f87803b158015610c75575f80fd5b505af1158015610c87573d5f803e3d5ffd5b5050505050565b600e54604051631730cfdd60e21b81526001600160a01b0383811660048301525f921690635cc33f74906024015b602060405180830381865afa158015610cd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5d9190611fd4565b5f546001600160a01b03163314610d245760405162461bcd60e51b81526004016109d390611f87565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b03163314610d6f5760405162461bcd60e51b81526004016109d390611f87565b6006805460ff60a01b19169055565b5f546001600160a01b03163314610da75760405162461bcd60e51b81526004016109d390611f87565b606481600154610db79190611feb565b610dc19190612002565b60075550565b5f546001600160a01b03163314610df05760405162461bcd60e51b81526004016109d390611f87565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b600e546040805163997664d760e01b815290515f926001600160a01b03169163997664d79160048083019260209291908290030181865afa158015610e61573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba99190611fd4565b600e546040805163d54ad2a160e01b815290515f926001600160a01b03169163d54ad2a19160048083019260209291908290030181865afa158015610e61573d5f803e3d5ffd5b5f546001600160a01b03163314610ef55760405162461bcd60e51b81526004016109d390611f87565b600f54600160a81b900460ff1615610f4f5760405162461bcd60e51b815260206004820152601760248201527f63616e206f6e6c792062652063616c6c6564206f6e636500000000000000000060448201526064016109d3565b600f805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610f8d5760405162461bcd60e51b81526004016109d390611f87565b600455565b600e54604051638ecc37fb60e01b81526001600160a01b0383811660048301525f921690638ecc37fb90602401610cbc565b5f546001600160a01b03163314610fed5760405162461bcd60e51b81526004016109d390611f87565b600255565b5f610b383384846112e8565b5f546001600160a01b031633146110275760405162461bcd60e51b81526004016109d390611f87565b6064816001546110379190611feb565b6110419190612002565b60085550565b5f546001600160a01b031633146110705760405162461bcd60e51b81526004016109d390611f87565b600f805460ff60a01b1916600160a01b179055565b5f546001600160a01b031633146110ae5760405162461bcd60e51b81526004016109d390611f87565b600355565b600e54604051630afbf02f60e11b81523360048201526001600160a01b03909116906315f7e05e906024015f604051808303815f87803b1580156110f5575f80fd5b505af1158015611107573d5f803e3d5ffd5b50505050565b5f546001600160a01b031633146111365760405162461bcd60e51b81526004016109d390611f87565b6006546040516001600160a01b03909116904780156108fc02915f818181858888f1935050505015801561116c573d5f803e3d5ffd5b50565b5f546001600160a01b031633146111985760405162461bcd60e51b81526004016109d390611f87565b60648111156111df5760405162461bcd60e51b815260206004820152601360248201527243616e206e6f7420657863656564203130302560681b60448201526064016109d3565b600555565b5f546001600160a01b0316331461120d5760405162461bcd60e51b81526004016109d390611f87565b610c048282611778565b6001600160a01b0383165f90815260096020526040812054828110156112765760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b60448201526064016109d3565b6001600160a01b038086165f8181526009602052604080822087860390559287168082529083902080548701905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112d59087815260200190565b60405180910390a3506001949350505050565b600f545f90600160a01b900460ff168061130e57505f546001600160a01b038581169116145b8061132557505f546001600160a01b038481169116145b6113715760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f742079657420656e61626c656400000000000000000060448201526064016109d3565b600f54600160a81b900460ff16156113f5576001600160a01b0384165f908152600d602052604090205460ff161580156113c357506001600160a01b0383165f908152600d602052604090205460ff16155b6113f55760405162461bcd60e51b8152602060048201526003602482015262109bdd60ea1b60448201526064016109d3565b600654600160a01b900460ff1615611488575f546001600160a01b0385811691161480159061143157505f546001600160a01b03848116911614155b15611488576007548211156114885760405162461bcd60e51b815260206004820152601d60248201527f596f752061726520657863656564696e67206d61785478416d6f756e7400000060448201526064016109d3565b600f54600160b01b900460ff16156114ac576114a5848484611217565b9050610b38565b305f90815260096020526040902054600254811080159081906114dc5750600f546001600160a01b038681169116145b80156114f55750305f9081526009602052604090205415155b1561150257611502611880565b6001600160a01b0386165f90815260096020526040902054848110156115615760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742042616c616e636560601b60448201526064016109d3565b6001600160a01b0387165f90815260096020526040812086830390556115878888611aa5565b611591578561159c565b61159c888888611b18565b6001600160a01b0388165f908152600960205260408120805492935083929091906115c8908490612021565b9091555050600f546001600160a01b0389811691161480159061160357506001600160a01b0388165f908152600c602052604090205460ff16155b1561167557600e546001600160a01b038981165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044015f604051808303815f87803b158015611662575f80fd5b505af1925050508015611673575060015b505b600f546001600160a01b038881169116148015906116ab57506001600160a01b0387165f908152600c602052604090205460ff16155b1561171d57600e546001600160a01b038881165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca96906044015f604051808303815f87803b15801561170a575f80fd5b505af192505050801561171b575060015b505b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161176291815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b038216301480159061179f5750600f546001600160a01b03838116911614155b6117a7575f80fd5b6001600160a01b0382165f908152600c60205260409020805460ff1916821580159190911790915561183857600e54604051630a5b654b60e11b81526001600160a01b0384811660048301525f6024830152909116906314b6ca96906044015b5f604051808303815f87803b15801561181e575f80fd5b505af1158015611830573d5f803e3d5ffd5b505050505050565b600e546001600160a01b038381165f8181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611807565b600f805460ff60b01b1916600160b01b179055305f9081526009602052604081205490505f6064600554836118b59190611feb565b6118bf9190612002565b90508015611a6757600e546040516370a0823160e01b81526001600160a01b0391821660048201525f917f000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c3416906370a0823190602401602060405180830381865afa158015611930573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119549190611fd4565b600e5490915061196e9083906001600160a01b0316611be6565b600e546040516370a0823160e01b81526001600160a01b0391821660048201525f917f000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c3416906370a0823190602401602060405180830381865afa1580156119d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119fb9190611fd4565b600e549091506001600160a01b031663b6b55f25611a198484611fc1565b6040518263ffffffff1660e01b8152600401611a3791815260200190565b5f604051808303815f87803b158015611a4e575f80fd5b505af1158015611a60573d5f803e3d5ffd5b5050505050505b611a718183611fc1565b15611a9457611a94611a838284611fc1565b6006546001600160a01b0316611d4c565b5050600f805460ff60b01b19169055565b6001600160a01b0382165f908152600b602052604081205460ff1680611ae257506001600160a01b0382165f908152600b602052604090205460ff165b158015610b385750600f546001600160a01b0384811691161480610b38575050600f546001600160a01b03908116911614919050565b600f545f9081906001600160a01b0390811690851603611b5357606460045484611b429190611feb565b611b4c9190612002565b9050611b70565b606460035484611b639190611feb565b611b6d9190612002565b90505b305f9081526009602052604081208054839290611b8e908490612021565b909155505060405181815230906001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3611bdd8184611fc1565b95945050505050565b604080516003808252608082019092525f916020820160608036833701905050905030815f81518110611c1b57611c1b612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611c6f57611c6f612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c3481600281518110611cc357611cc3612034565b6001600160a01b0390921660209283029190910190910152604051635c11d79560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d90635c11d79590611d1a9086905f90869088904290600401612048565b5f604051808303815f87803b158015611d31575f80fd5b505af1158015611d43573d5f803e3d5ffd5b50505050505050565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611d7f57611d7f612034565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611dd357611dd3612034565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac94790611d1a9086905f90869088904290600401612048565b5f602080835283518060208501525f5b81811015611e5657858101830151858201604001528201611e3a565b505f604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610a60575f80fd5b5f8060408385031215611e9d575f80fd5b611ea683611e76565b946020939093013593505050565b5f60208284031215611ec4575f80fd5b610b3882611e76565b5f60208284031215611edd575f80fd5b5035919050565b5f805f60608486031215611ef6575f80fd5b611eff84611e76565b9250611f0d60208501611e76565b9150604084013590509250925092565b5f8060408385031215611f2e575f80fd5b611f3783611e76565b915060208301358015158114611f4b575f80fd5b809150509250929050565b5f8060408385031215611f67575f80fd5b611f7083611e76565b9150611f7e60208401611e76565b90509250929050565b6020808252600c908201526b15539055551213d49256915160a21b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b818103818111156109a4576109a4611fad565b5f60208284031215611fe4575f80fd5b5051919050565b80820281158282048414176109a4576109a4611fad565b5f8261201c57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156109a4576109a4611fad565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156120985784516001600160a01b031683529383019391830191600101612073565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220df4cb920440b82df07c1f4d68340d9683c143237b93c6a3b4505c1f15f9d097d64736f6c63430008170033

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

0000000000000000000000005acd22b956fa437e246997b477f446391277bbda00000000000000000000000066ed7b11d157adf79056b9f6b5547ae43cbed33b000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c34

-----Decoded View---------------
Arg [0] : _owner (address): 0x5ACd22b956fa437e246997B477F446391277bbDA
Arg [1] : _marketingWallet (address): 0x66Ed7B11d157ADF79056B9F6B5547aE43cbeD33B
Arg [2] : _dividendToken (address): 0xc3960227e41c3F54E9b399cE216149dEa5315c34

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000005acd22b956fa437e246997b477f446391277bbda
Arg [1] : 00000000000000000000000066ed7b11d157adf79056b9f6b5547ae43cbed33b
Arg [2] : 000000000000000000000000c3960227e41c3f54e9b399ce216149dea5315c34


Deployed Bytecode Sourcemap

9513:12182:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10116:28;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;10116:28:0;;;;;;;;12269:85;;;;;;;;;;-1:-1:-1;12341:5:0;;;;;;;;;;;;-1:-1:-1;;;12341:5:0;;;;12269:85;;;;;;;:::i;12669:243::-;;;;;;;;;;-1:-1:-1;12669:243:0;;;;;:::i;:::-;;:::i;:::-;;;1351:14:1;;1344:22;1326:41;;1314:2;1299:18;12669:243:0;1186:187:1;4097:148:0;;;;;;;;;;-1:-1:-1;4097:148:0;;;;;:::i;:::-;;:::i;:::-;;9842:38;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1733:32:1;;;1715:51;;1703:2;1688:18;9842:38:0;1569:203:1;11969:102:0;;;;;;;;;;-1:-1:-1;12051:12:0;;11969:102;;20328:139;;;;;;;;;;-1:-1:-1;20328:139:0;;;;;:::i;:::-;;:::i;13109:509::-;;;;;;;;;;-1:-1:-1;13109:509:0;;;;;:::i;:::-;;:::i;18844:136::-;;;;;;;;;;;;;:::i;12079:85::-;;;;;;;;;;-1:-1:-1;12079:85:0;;10034:2;2437:36:1;;2425:2;2410:18;12079:85:0;2295:184:1;19609:158:0;;;;;;;;;;-1:-1:-1;19609:158:0;;;;;:::i;:::-;;:::i;10645:37::-;;;;;;;;;;-1:-1:-1;10645:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;10540:43;;;;;;;;;;-1:-1:-1;10540:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;10590:48;;;;;;;;;;-1:-1:-1;10590:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;20208:112;;;;;;;;;;-1:-1:-1;20208:112:0;;;;;:::i;:::-;;:::i;10157:26::-;;;;;;;;;;;;;;;;19230:172;;;;;;;;;;-1:-1:-1;19230:172:0;;;;;:::i;:::-;;:::i;20475:126::-;;;;;;;;;;-1:-1:-1;20475:126:0;;;;;:::i;:::-;;:::i;20609:74::-;;;;;;;;;;;;;:::i;20691:123::-;;;;;;;;;;-1:-1:-1;20691:123:0;;;;;:::i;:::-;;:::i;19940:119::-;;;;;;;;;;-1:-1:-1;19940:119:0;;;;;:::i;:::-;;:::i;18988:115::-;;;;;;;;;;;;;:::i;12362:119::-;;;;;;;;;;-1:-1:-1;12362:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;12455:18:0;12428:7;12455:18;;;:9;:18;;;;;;;12362:119;19111:111;;;;;;;;;;;;;:::i;10270:30::-;;;;;;;;;;-1:-1:-1;10270:30:0;;;;-1:-1:-1;;;;;10270:30:0;;;20965:164;;;;;;;;;;;;;:::i;10340:26::-;;;;;;;;;;;;;;;;21607:85;;;;;;;;;;-1:-1:-1;21607:85:0;;;;;:::i;:::-;;:::i;3461:20::-;;;;;;;;;;-1:-1:-1;3461:20:0;;;;-1:-1:-1;;;;;3461:20:0;;;18664:172;;;;;;;;;;-1:-1:-1;18664:172:0;;;;;:::i;:::-;;:::i;12172:89::-;;;;;;;;;;-1:-1:-1;12246:7:0;;;;;;;;;;;;-1:-1:-1;;;12246:7:0;;;;12172:89;;21314:102;;;;;;;;;;-1:-1:-1;21314:102:0;;;;;:::i;:::-;;:::i;10309:24::-;;;;;;;;;;-1:-1:-1;10309:24:0;;;;-1:-1:-1;;;10309:24:0;;;;;;10736:19;;;;;;;;;;-1:-1:-1;10736:19:0;;;;-1:-1:-1;;;;;10736:19:0;;;12920:181;;;;;;;;;;-1:-1:-1;12920:181:0;;;;;:::i;:::-;;:::i;10373:30::-;;;;;;;;;;;;;;;;19410:104;;;;;;;;;;-1:-1:-1;19410:104:0;;;;;:::i;:::-;-1:-1:-1;;;;;19492:14:0;19468:4;19492:14;;;:5;:14;;;;;;;;;19410:104;10691:38;;;;;;;;;;-1:-1:-1;10691:38:0;;;;-1:-1:-1;;;;;10691:38:0;;;10794:28;;;;;;;;;;-1:-1:-1;10794:28:0;;;;-1:-1:-1;;;10794:28:0;;;;;;20826:131;;;;;;;;;;-1:-1:-1;20826:131:0;;;;;:::i;:::-;;:::i;19522:79::-;;;;;;;;;;;;;:::i;10190:27::-;;;;;;;;;;;;;;;;21470:83;;;;;;;;;;-1:-1:-1;21470:83:0;;;;;:::i;:::-;;:::i;12489:172::-;;;;;;;;;;-1:-1:-1;12489:172:0;;;;;:::i;:::-;-1:-1:-1;;;;;12625:19:0;;;12598:7;12625:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;12489:172;18566:90;;;;;;;;;;;;;:::i;10226:37::-;;;;;;;;;;;;;;;;20067:133;;;;;;;;;;;;;:::i;21137:169::-;;;;;;;;;;-1:-1:-1;21137:169:0;;;;;:::i;:::-;;:::i;19775:157::-;;;;;;;;;;-1:-1:-1;19775:157:0;;;;;:::i;:::-;;:::i;10764:23::-;;;;;;;;;;-1:-1:-1;10764:23:0;;;;-1:-1:-1;;;10764:23:0;;;;;;12669:243;12800:10;12771:4;12788:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;12788:32:0;;;;;;;;;;:41;;;12845:37;12771:4;;12788:32;;12845:37;;;;12823:6;160:25:1;;148:2;133:18;;14:177;12845:37:0;;;;;;;;-1:-1:-1;12900:4:0;12669:243;;;;;:::o;4097:148::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;;;;;;;;;4169:5:::1;:16:::0;;-1:-1:-1;;;;;;4169:16:0::1;-1:-1:-1::0;;;;;4169:16:0;::::1;::::0;;::::1;::::0;;4203:34:::1;::::0;4169:16;;4216:10:::1;::::0;4203:34:::1;::::0;4169:5;4203:34:::1;4097:148:::0;:::o;20328:139::-;20392:4;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20416:43:::1;20439:4;9707:42;20452:6;20416:14;:43::i;:::-;20409:50;;3587:1;20328:139:::0;;;:::o;13109:509::-;-1:-1:-1;;;;;13264:19:0;;13243:4;13264:19;;;:11;:19;;;;;;;;13284:10;13264:31;;;;;;;;-1:-1:-1;;13264:52:0;13260:293;;-1:-1:-1;;;;;13360:19:0;;13333:24;13360:19;;;:11;:19;;;;;;;;13380:10;13360:31;;;;;;;;13414:26;;;;13406:61;;;;-1:-1:-1;;;13406:61:0;;3879:2:1;13406:61:0;;;3861:21:1;3918:2;3898:18;;;3891:30;-1:-1:-1;;;3937:18:1;;;3930:52;3999:18;;13406:61:0;3677:346:1;13406:61:0;13516:25;13535:6;13516:16;:25;:::i;:::-;-1:-1:-1;;;;;13482:19:0;;;;;;:11;:19;;;;;;;;13502:10;13482:31;;;;;;;:59;-1:-1:-1;13260:293:0;13570:40;13584:6;13592:9;13603:6;13570:13;:40::i;:::-;13563:47;;13109:509;;;;;;:::o;18844:136::-;12455:9;:18;;;;9707:42;18897:7;12455:18;;;;;18924:12;;18897:7;;12455:18;18924:30;;12455:18;18924:30;:::i;:::-;:48;;;;:::i;:::-;18917:55;;18844:136;:::o;19609:158::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19686:15:0;::::1;;::::0;;;:5:::1;:15;::::0;;;;:24;;-1:-1:-1;;19686:24:0::1;::::0;::::1;;;::::0;;19721:38:::1;19686:15:::0;:24;19721:20:::1;:38::i;:::-;19609:158:::0;;:::o;20208:112::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20279:11:::1;::::0;:33:::1;::::0;-1:-1:-1;;;20279:33:0;;-1:-1:-1;;;;;1733:32:1;;;20279:33:0::1;::::0;::::1;1715:51:1::0;20279:11:0;;::::1;::::0;:25:::1;::::0;1688:18:1;;20279:33:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;20208:112:::0;:::o;19230:172::-;19348:11;;:46;;-1:-1:-1;;;19348:46:0;;-1:-1:-1;;;;;1733:32:1;;;19348:46:0;;;1715:51:1;19321:7:0;;19348:11;;:33;;1688:18:1;;19348:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;20475:126::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20559:15:::1;:34:::0;;-1:-1:-1;;;;;;20559:34:0::1;-1:-1:-1::0;;;;;20559:34:0;;;::::1;::::0;;;::::1;::::0;;20475:126::o;20609:74::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20662:5:::1;:13:::0;;-1:-1:-1;;;;20662:13:0::1;::::0;;20609:74::o;20691:123::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20803:3:::1;20793:7;20778:12;;:22;;;;:::i;:::-;:28;;;;:::i;:::-;20764:11;:42:::0;-1:-1:-1;20691:123:0:o;19940:119::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20023:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;20023:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19940:119::o;18988:115::-;19067:11;;:28;;;-1:-1:-1;;;19067:28:0;;;;19040:7;;-1:-1:-1;;;;;19067:11:0;;:26;;:28;;;;;;;;;;;;;;:11;:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19111:111::-;19188:11;;:26;;;-1:-1:-1;;;19188:26:0;;;;19161:7;;-1:-1:-1;;;;;19188:11:0;;:24;;:26;;;;;;;;;;;;;;:11;:26;;;;;;;;;;;;;;20965:164;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;21034:16:::1;::::0;-1:-1:-1;;;21034:16:0;::::1;;;:25;21026:61;;;::::0;-1:-1:-1;;;21026:61:0;;5079:2:1;21026:61:0::1;::::0;::::1;5061:21:1::0;5118:2;5098:18;;;5091:30;5157:25;5137:18;;;5130:53;5200:18;;21026:61:0::1;4877:347:1::0;21026:61:0::1;21098:16;:23:::0;;-1:-1:-1;;;;21098:23:0::1;-1:-1:-1::0;;;21098:23:0::1;::::0;;20965:164::o;21607:85::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;21670:7:::1;:14:::0;21607:85::o;18664:172::-;18781:11;;:47;;-1:-1:-1;;;18781:47:0;;-1:-1:-1;;;;;1733:32:1;;;18781:47:0;;;1715:51:1;18754:7:0;;18781:11;;:34;;1688:18:1;;18781:47:0;1569:203:1;21314:102:0;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;21386:13:::1;:22:::0;21314:102::o;12920:181::-;13025:4;13049:44;13063:10;13075:9;13086:6;13049:13;:44::i;20826:131::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20946:3:::1;20936:7;20921:12;;:22;;;;:::i;:::-;:28;;;;:::i;:::-;20903:15;:46:::0;-1:-1:-1;20826:131:0:o;19522:79::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;19575:11:::1;:18:::0;;-1:-1:-1;;;;19575:18:0::1;-1:-1:-1::0;;;19575:18:0::1;::::0;;19522:79::o;21470:83::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;21532:6:::1;:13:::0;21470:83::o;18566:90::-;18611:11;;:37;;-1:-1:-1;;;18611:37:0;;18637:10;18611:37;;;1715:51:1;-1:-1:-1;;;;;18611:11:0;;;;:25;;1688:18:1;;18611:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18566:90::o;20067:133::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;20144:15:::1;::::0;20136:56:::1;::::0;-1:-1:-1;;;;;20144:15:0;;::::1;::::0;20170:21:::1;20136:56:::0;::::1;;;::::0;20144:15:::1;20136:56:::0;20144:15;20136:56;20170:21;20144:15;20136:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;20067:133::o:0;21137:169::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;21233:3:::1;21222:7;:14;;21214:46;;;::::0;-1:-1:-1;;;21214:46:0;;5431:2:1;21214:46:0::1;::::0;::::1;5413:21:1::0;5470:2;5450:18;;;5443:30;-1:-1:-1;;;5489:18:1;;;5482:49;5548:18;;21214:46:0::1;5229:343:1::0;21214:46:0::1;21271:17;:27:::0;21137:169::o;19775:157::-;3552:5;;-1:-1:-1;;;;;3552:5:0;3538:10;:19;3530:44;;;;-1:-1:-1;;;3530:44:0;;;;;;;:::i;:::-;19888:36:::1;19909:6;19917;19888:20;:36::i;15465:467::-:0;-1:-1:-1;;;;;15633:17:0;;15592:4;15633:17;;;:9;:17;;;;;;15669:23;;;;15661:56;;;;-1:-1:-1;;;15661:56:0;;5779:2:1;15661:56:0;;;5761:21:1;5818:2;5798:18;;;5791:30;-1:-1:-1;;;5837:18:1;;;5830:50;5897:18;;15661:56:0;5577:344:1;15661:56:0;-1:-1:-1;;;;;15753:17:0;;;;;;;:9;:17;;;;;;15773:22;;;15753:42;;15810:20;;;;;;;;;;:30;;;;;;15867:35;;;;;;15789:6;160:25:1;;148:2;133:18;;14:177;15867:35:0;;;;;;;;-1:-1:-1;15920:4:0;;15465:467;-1:-1:-1;;;;15465:467:0:o;13626:1831::-;13791:11;;13752:4;;-1:-1:-1;;;13791:11:0;;;;;:30;;-1:-1:-1;13816:5:0;;-1:-1:-1;;;;;13806:15:0;;;13816:5;;13806:15;13791:30;:52;;;-1:-1:-1;13838:5:0;;-1:-1:-1;;;;;13825:18:0;;;13838:5;;13825:18;13791:52;13769:125;;;;-1:-1:-1;;;13769:125:0;;6128:2:1;13769:125:0;;;6110:21:1;6167:2;6147:18;;;6140:30;6206:25;6186:18;;;6179:53;6249:18;;13769:125:0;5926:347:1;13769:125:0;13951:16;;-1:-1:-1;;;13951:16:0;;;;13947:100;;;-1:-1:-1;;;;;13993:13:0;;;;;;:5;:13;;;;;;;;13992:14;:35;;;;-1:-1:-1;;;;;;14011:16:0;;;;;;:5;:16;;;;;;;;14010:17;13992:35;13984:51;;;;-1:-1:-1;;;13984:51:0;;6480:2:1;13984:51:0;;;6462:21:1;6519:1;6499:18;;;6492:29;-1:-1:-1;;;6537:18:1;;;6530:33;6580:18;;13984:51:0;6278:326:1;13984:51:0;14063:5;;-1:-1:-1;;;14063:5:0;;;;14059:161;;;14099:5;;-1:-1:-1;;;;;14089:15:0;;;14099:5;;14089:15;;;;:37;;-1:-1:-1;14121:5:0;;-1:-1:-1;;;;;14108:18:0;;;14121:5;;14108:18;;14089:37;14085:123;;;14163:11;;14153:6;:21;;14145:63;;;;-1:-1:-1;;;14145:63:0;;6811:2:1;14145:63:0;;;6793:21:1;6850:2;6830:18;;;6823:30;6889:31;6869:18;;;6862:59;6938:18;;14145:63:0;6609:353:1;14145:63:0;14236:6;;-1:-1:-1;;;14236:6:0;;;;14232:87;;;14266:41;14281:6;14289:9;14300:6;14266:14;:41::i;:::-;14259:48;;;;14232:87;14376:4;14331:24;12455:18;;;:9;:18;;;;;;14436:13;;14416:33;;;;;;;14480:49;;-1:-1:-1;14525:4:0;;-1:-1:-1;;;;;14512:17:0;;;14525:4;;14512:17;14480:49;:95;;;;-1:-1:-1;14564:4:0;12428:7;12455:18;;;:9;:18;;;;;;14546:29;;14480:95;14462:162;;;14602:10;:8;:10::i;:::-;-1:-1:-1;;;;;14660:17:0;;14636:21;14660:17;;;:9;:17;;;;;;14696:23;;;;14688:56;;;;-1:-1:-1;;;14688:56:0;;5779:2:1;14688:56:0;;;5761:21:1;5818:2;5798:18;;;5791:30;-1:-1:-1;;;5837:18:1;;;5830:50;5897:18;;14688:56:0;5577:344:1;14688:56:0;-1:-1:-1;;;;;14780:17:0;;;;;;:9;:17;;;;;14800:22;;;14780:42;;14871:32;14790:6;14893:9;14871:13;:32::i;:::-;:104;;14969:6;14871:104;;;14919:34;14927:6;14935:9;14946:6;14919:7;:34::i;:::-;-1:-1:-1;;;;;14988:20:0;;;;;;:9;:20;;;;;:38;;14846:129;;-1:-1:-1;14846:129:0;;14988:20;;;:38;;14846:129;;14988:38;:::i;:::-;;;;-1:-1:-1;;15053:4:0;;-1:-1:-1;;;;;15043:14:0;;;15053:4;;15043:14;;;;:43;;-1:-1:-1;;;;;;15062:24:0;;;;;;:16;:24;;;;;;;;15061:25;15043:43;15039:138;;;15107:11;;-1:-1:-1;;;;;15136:17:0;;;15107:11;15136:17;;;:9;:17;;;;;;;;15107:47;;-1:-1:-1;;;15107:47:0;;;;;7271:51:1;;;;7338:18;;;7331:34;15107:11:0;;;:20;;7244:18:1;;15107:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15103:63;;15204:4;;-1:-1:-1;;;;;15191:17:0;;;15204:4;;15191:17;;;;:49;;-1:-1:-1;;;;;;15213:27:0;;;;;;:16;:27;;;;;;;;15212:28;15191:49;15187:180;;;15278:11;;-1:-1:-1;;;;;15310:20:0;;;15278:11;15310:20;;;:9;:20;;;;;;;;15278:53;;-1:-1:-1;;;15278:53:0;;;;;7271:51:1;;;;7338:18;;;7331:34;15278:11:0;;;:20;;7244:18:1;;15278:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15257:99;;15401:9;-1:-1:-1;;;;;15384:43:0;15393:6;-1:-1:-1;;;;;15384:43:0;;15412:14;15384:43;;;;160:25:1;;148:2;133:18;;14:177;15384:43:0;;;;;;;;-1:-1:-1;15445:4:0;;13626:1831;-1:-1:-1;;;;;;;13626:1831:0:o;18217:341::-;-1:-1:-1;;;;;18304:23:0;;18322:4;18304:23;;;;:41;;-1:-1:-1;18341:4:0;;-1:-1:-1;;;;;18331:14:0;;;18341:4;;18331:14;;18304:41;18296:50;;;;;;-1:-1:-1;;;;;18357:24:0;;;;;;:16;:24;;;;;:33;;-1:-1:-1;;18357:33:0;;;;;;;;;;;;18401:150;;18428:11;;:31;;-1:-1:-1;;;18428:31:0;;-1:-1:-1;;;;;7289:32:1;;;18428:31:0;;;7271:51:1;18428:11:0;7338:18:1;;;7331:34;18428:11:0;;;;:20;;7244:18:1;;18428:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19609:158;;:::o;18401:150::-;18492:11;;-1:-1:-1;;;;;18521:17:0;;;18492:11;18521:17;;;:9;:17;;;;;;;;18492:47;;-1:-1:-1;;;18492:47:0;;;;;7271:51:1;;;;7338:18;;;7331:34;18492:11:0;;;:20;;7244:18:1;;18492:47:0;7097:274:1;16675:676:0;10888:6;:13;;-1:-1:-1;;;;10888:13:0;-1:-1:-1;;;10888:13:0;;;16761:4:::1;-1:-1:-1::0;12455:18:0;;;:9;:18;;;;;;16724:43:::1;;16778:25;16839:3;16818:17;;16807:8;:28;;;;:::i;:::-;16806:36;;;;:::i;:::-;16778:64:::0;-1:-1:-1;16859:22:0;;16855:348:::1;;16958:11;::::0;16918:53:::1;::::0;-1:-1:-1;;;16918:53:0;;-1:-1:-1;;;;;16958:11:0;;::::1;16918:53;::::0;::::1;1715:51:1::0;16898:17:0::1;::::0;16925:13:::1;16918:31;::::0;::::1;::::0;1688:18:1;;16918:53:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17035:11;::::0;16898:73;;-1:-1:-1;16986:62:0::1;::::0;17008:17;;-1:-1:-1;;;;;17035:11:0::1;16986:21;:62::i;:::-;17122:11;::::0;17082:53:::1;::::0;-1:-1:-1;;;17082:53:0;;-1:-1:-1;;;;;17122:11:0;;::::1;17082:53;::::0;::::1;1715:51:1::0;17063:16:0::1;::::0;17089:13:::1;17082:31;::::0;::::1;::::0;1688:18:1;;17082:53:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17150:11;::::0;17063:72;;-1:-1:-1;;;;;;17150:11:0::1;:19;17170:20;17181:9:::0;17063:72;17170:20:::1;:::i;:::-;17150:41;;;;;;;;;;;;;160:25:1::0;;148:2;133:18;;14:177;17150:41:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16883:320;;16855:348;17219:28;17230:17:::0;17219:8;:28:::1;:::i;:::-;:33:::0;17215:129:::1;;17269:63;17286:28;17297:17:::0;17286:8;:28:::1;:::i;:::-;17316:15;::::0;-1:-1:-1;;;;;17316:15:0::1;17269:16;:63::i;:::-;-1:-1:-1::0;;10924:6:0;:14;;-1:-1:-1;;;;10924:14:0;;;16675:676::o;15940:242::-;-1:-1:-1;;;;;16073:19:0;;16046:4;16073:19;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;16096:22:0;;;;;;:11;:22;;;;;;;;16073:45;16071:48;:102;;;;-1:-1:-1;16147:4:0;;-1:-1:-1;;;;;16137:14:0;;;16147:4;;16137:14;;:35;;-1:-1:-1;;16168:4:0;;-1:-1:-1;;;;;16168:4:0;;;16155:17;;;;15940:242;-1:-1:-1;15940:242:0:o;16190:477::-;16377:4;;16310:7;;;;-1:-1:-1;;;;;16377:4:0;;;16364:17;;;;16360:154;;16431:3;16420:7;;16411:6;:16;;;;:::i;:::-;16410:24;;;;:::i;:::-;16398:36;;16360:154;;;16499:3;16489:6;;16480;:15;;;;:::i;:::-;16479:23;;;;:::i;:::-;16467:35;;16360:154;16544:4;16526:24;;;;:9;:24;;;;;:37;;16554:9;;16526:24;:37;;16554:9;;16526:37;:::i;:::-;;;;-1:-1:-1;;16581:42:0;;160:25:1;;;16606:4:0;;-1:-1:-1;;;;;16581:42:0;;;;;148:2:1;133:18;16581:42:0;;;;;;;16641:18;16650:9;16641:6;:18;:::i;:::-;16634:25;16190:477;-1:-1:-1;;;;;16190:477:0:o;17359:442::-;17466:16;;;17480:1;17466:16;;;;;;;;;17442:21;;17466:16;;;;;;;;;;-1:-1:-1;17466:16:0;17442:40;;17511:4;17493;17498:1;17493:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;17493:23:0;;;-1:-1:-1;;;;;17493:23:0;;;;;17537:4;17527;17532:1;17527:7;;;;;;;;:::i;:::-;;;;;;:14;-1:-1:-1;;;;;17527:14:0;;;-1:-1:-1;;;;;17527:14:0;;;;;17562:13;17552:4;17557:1;17552:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17552:23:0;;;:7;;;;;;;;;;;:23;17614:179;;-1:-1:-1;;;17614:179:0;;9607:42;;17614:60;;:179;;17689:11;;17715:1;;17731:4;;17750:2;;17767:15;;17614:179;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17431:370;17359:442;;:::o;17809:400::-;17911:16;;;17925:1;17911:16;;;;;;;;17887:21;;17911:16;;;;;;;;;;-1:-1:-1;17911:16:0;17887:40;;17956:4;17938;17943:1;17938:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;17938:23:0;;;-1:-1:-1;;;;;17938:23:0;;;;;17982:4;17972;17977:1;17972:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17972:14:0;;;:7;;;;;;;;;;;:14;18025:176;;-1:-1:-1;;;18025:176:0;;9607:42;;18025:57;;:176;;18097:11;;18123:1;;18139:4;;18158:2;;18175:15;;18025:176;;;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:173::-;817:20;;-1:-1:-1;;;;;866:31:1;;856:42;;846:70;;912:1;909;902:12;927:254;995:6;1003;1056:2;1044:9;1035:7;1031:23;1027:32;1024:52;;;1072:1;1069;1062:12;1024:52;1095:29;1114:9;1095:29;:::i;:::-;1085:39;1171:2;1156:18;;;;1143:32;;-1:-1:-1;;;927:254:1:o;1378:186::-;1437:6;1490:2;1478:9;1469:7;1465:23;1461:32;1458:52;;;1506:1;1503;1496:12;1458:52;1529:29;1548:9;1529:29;:::i;1777:180::-;1836:6;1889:2;1877:9;1868:7;1864:23;1860:32;1857:52;;;1905:1;1902;1895:12;1857:52;-1:-1:-1;1928:23:1;;1777:180;-1:-1:-1;1777:180:1:o;1962:328::-;2039:6;2047;2055;2108:2;2096:9;2087:7;2083:23;2079:32;2076:52;;;2124:1;2121;2114:12;2076:52;2147:29;2166:9;2147:29;:::i;:::-;2137:39;;2195:38;2229:2;2218:9;2214:18;2195:38;:::i;:::-;2185:48;;2280:2;2269:9;2265:18;2252:32;2242:42;;1962:328;;;;;:::o;2484:347::-;2549:6;2557;2610:2;2598:9;2589:7;2585:23;2581:32;2578:52;;;2626:1;2623;2616:12;2578:52;2649:29;2668:9;2649:29;:::i;:::-;2639:39;;2728:2;2717:9;2713:18;2700:32;2775:5;2768:13;2761:21;2754:5;2751:32;2741:60;;2797:1;2794;2787:12;2741:60;2820:5;2810:15;;;2484:347;;;;;:::o;3071:260::-;3139:6;3147;3200:2;3188:9;3179:7;3175:23;3171:32;3168:52;;;3216:1;3213;3206:12;3168:52;3239:29;3258:9;3239:29;:::i;:::-;3229:39;;3287:38;3321:2;3310:9;3306:18;3287:38;:::i;:::-;3277:48;;3071:260;;;;;:::o;3336:336::-;3538:2;3520:21;;;3577:2;3557:18;;;3550:30;-1:-1:-1;;;3611:2:1;3596:18;;3589:42;3663:2;3648:18;;3336:336::o;4028:127::-;4089:10;4084:3;4080:20;4077:1;4070:31;4120:4;4117:1;4110:15;4144:4;4141:1;4134:15;4160:128;4227:9;;;4248:11;;;4245:37;;;4262:18;;:::i;4293:184::-;4363:6;4416:2;4404:9;4395:7;4391:23;4387:32;4384:52;;;4432:1;4429;4422:12;4384:52;-1:-1:-1;4455:16:1;;4293:184;-1:-1:-1;4293:184:1:o;4482:168::-;4555:9;;;4586;;4603:15;;;4597:22;;4583:37;4573:71;;4624:18;;:::i;4655:217::-;4695:1;4721;4711:132;;4765:10;4760:3;4756:20;4753:1;4746:31;4800:4;4797:1;4790:15;4828:4;4825:1;4818:15;4711:132;-1:-1:-1;4857:9:1;;4655:217::o;6967:125::-;7032:9;;;7053:10;;;7050:36;;;7066:18;;:::i;7795:127::-;7856:10;7851:3;7847:20;7844:1;7837:31;7887:4;7884:1;7877:15;7911:4;7908:1;7901:15;7927:980;8189:4;8237:3;8226:9;8222:19;8268:6;8257:9;8250:25;8294:2;8332:6;8327:2;8316:9;8312:18;8305:34;8375:3;8370:2;8359:9;8355:18;8348:31;8399:6;8434;8428:13;8465:6;8457;8450:22;8503:3;8492:9;8488:19;8481:26;;8542:2;8534:6;8530:15;8516:29;;8563:1;8573:195;8587:6;8584:1;8581:13;8573:195;;;8652:13;;-1:-1:-1;;;;;8648:39:1;8636:52;;8743:15;;;;8708:12;;;;8684:1;8602:9;8573:195;;;-1:-1:-1;;;;;;;8824:32:1;;;;8819:2;8804:18;;8797:60;-1:-1:-1;;;8888:3:1;8873:19;8866:35;8785:3;7927:980;-1:-1:-1;;;7927:980:1:o

Swarm Source

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