ETH Price: $2,522.17 (+1.99%)

Token

Moon or Morty (MORTY)
 

Overview

Max Total Supply

1,000,000,000 MORTY

Holders

32

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
0.333202332722657248 MORTY

Value
$0.00
0x1ac50a98002500bbf4364399999e08d1d18906f2
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:
MoonOrMorty

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-06-03
*/

// SPDX-License-Identifier: Unlicensed

/**
Telegram: https://t.me/MoonOrMorty_ETH
Web: https://moonormorty.com/
Twitter: https://twitter.com/MoonOrMorty_ETH
*/

pragma solidity ^0.8.19;

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

library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }
}

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _transferOwnership(_msgSender());
    }

    modifier onlyOwner() {
        _checkOwner();
        _;
    }

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

    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

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

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IERC20 {
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address from, address to, uint256 amount) external returns (bool);
}

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    function _transfer(address from, address to, uint256 amount) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by
            // decrementing then incrementing.
            _balances[to] += amount;
        }

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply += amount;
        unchecked {
            // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above.
            _balances[account] += amount;
        }
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _spendAllowance(address owner, address spender, uint256 amount) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {}

    function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {}
}

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

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

    function WETH() external pure returns (address);

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

contract MoonOrMorty is ERC20, Ownable {
    using SafeMath for uint256;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;

    string private _name = unicode"Moon or Morty";
    string private _symbol = unicode"MORTY";

    bool private swapping;
    uint256 public swapTokensAtAmount;

    bool public tradingEnabled = false;
    bool public limitsInEffect = true;

    address public marketingWallet;

    uint256 public buyFee;
    uint256 public sellFee;

    /* Max transaction amount */
    uint256 public maxTransactionAmount;
    uint256 public maxWallet;

    /* Maps */
    mapping(address => bool) private isExcludedFromFees;
    mapping(address => bool) private isExcludedMaxTransactionAmount;
    mapping(address => bool) private pairs;

    constructor(uint256 _buyFee, uint256 _sellFee) ERC20(_name, _symbol) {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Router = _uniswapV2Router;
        excludeFromMaxTransactionAmount(address(_uniswapV2Router), true);

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        pairs[address(uniswapV2Pair)] = true;
        excludeFromMaxTransactionAmount(address(uniswapV2Pair), true);

        uint256 totalSupply = 1000000000 * 10**decimals();
        maxTransactionAmount = totalSupply.mul(2).div(100);
        maxWallet = totalSupply.mul(2).div(100);
        swapTokensAtAmount = totalSupply.mul(1).div(1000);

        marketingWallet = address(0x930af686eDC51E263973ce9daaC04015Af274960);

        buyFee = _buyFee;
        sellFee = _sellFee;

        excludeFromFees(owner(), true);
        excludeFromFees(address(this), true);
        excludeFromFees(marketingWallet, true);

        excludeFromMaxTransactionAmount(owner(), true);
        excludeFromMaxTransactionAmount(address(this), true);
        excludeFromMaxTransactionAmount(address(0xdead), true);
        excludeFromMaxTransactionAmount(marketingWallet, true);

        _mint(marketingWallet, totalSupply.mul(15).div(100));
        _mint(_msgSender(), totalSupply.mul(85).div(100));
    }

    receive() external payable {}

    function openTrading() external onlyOwner {
        require(!tradingEnabled, "Trading is already open");
        tradingEnabled = true;
    }

    function removeLimits() external onlyOwner {
        require(limitsInEffect == true, "The limits has been removed.");
        limitsInEffect = false;
    }

    function setFees(uint256 _buyFee, uint256 _sellFee) external onlyOwner {
        require((_buyFee + _sellFee) <= 20, "Must keep fees at 20% or less");
        buyFee = _buyFee;
        sellFee = _sellFee;
    }

    function excludeFromMaxTransactionAmount(address _address, bool excluded) public onlyOwner {
        isExcludedMaxTransactionAmount[_address] = excluded;
    }

    function excludeFromFees(address _address, bool excluded) public onlyOwner {
        isExcludedFromFees[_address] = excluded;
    }

    function _transfer(address from, address to, uint256 amount) internal override {
        require(from != address(0), "ERC20: transfer from the zero address.");
        require(to != address(0), "ERC20: transfer to the zero address.");
        require(amount > 0, "ERC20: transfer amount must be greater than zero.");

        if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) {
            if (!tradingEnabled) {
                require(isExcludedFromFees[from] || isExcludedFromFees[to], "Trading is not active.");
            }

            if (limitsInEffect) {
                if (pairs[from] && !isExcludedMaxTransactionAmount[to]) {
                    require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the max transaction amount.");
                    require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded.");
                } else if (pairs[to] && !isExcludedMaxTransactionAmount[from]) {
                    require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the max transaction amount.");
                } else if (!isExcludedMaxTransactionAmount[to]) {
                    require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded.");
                }
            }
        }

        bool canSwap = balanceOf(address(this)) >= swapTokensAtAmount;
        if (
            canSwap &&
            !swapping &&
            !pairs[from] &&
            !isExcludedFromFees[from] &&
            !isExcludedFromFees[to]
        ) {
            swapping = true;
            swapBack();
            swapping = false;
        }

        bool takeFee = !swapping;

        if (isExcludedFromFees[from] || isExcludedFromFees[to]) {
            takeFee = false;
        }

        uint256 fees = 0;
        if (takeFee) {
            if (pairs[to] && sellFee > 0) {
                fees = amount.mul(sellFee).div(100);
            } else if (pairs[from] && buyFee > 0) {
                fees = amount.mul(buyFee).div(100);
            }

            if (fees > 0) {
                super._transfer(from, address(this), fees);
            }
            amount -= fees;
        }
        super._transfer(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function swapBack() private {
        uint256 contractBalance = balanceOf(address(this));
        bool success;

        if (contractBalance == 0) {
            return;
        }

        if (contractBalance > swapTokensAtAmount * 10) {
            contractBalance = swapTokensAtAmount * 10;
        }

        swapTokensForEth(contractBalance);
        (success, ) = address(marketingWallet).call{value: address(this).balance}("");
    }

    function manualSwap() external onlyOwner {
        swapping = true;
        uint256 contractBalance = balanceOf(address(this));
        bool success;

        if (contractBalance == 0) {
            return;
        }

        swapTokensForEth(contractBalance);
        (success, ) = address(marketingWallet).call{value: address(this).balance}("");
        swapping = false;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromMaxTransactionAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052600d60809081526c4d6f6f6e206f72204d6f72747960981b60a0526008906200002e90826200083d565b506040805180820190915260058152644d4f52545960d81b60208201526009906200005a90826200083d565b50600c805461ffff19166101001790553480156200007757600080fd5b506040516200230a3803806200230a8339810160408190526200009a9162000909565b60088054620000a990620007af565b80601f0160208091040260200160405190810160405280929190818152602001828054620000d790620007af565b8015620001285780601f10620000fc5761010080835404028352916020019162000128565b820191906000526020600020905b8154815290600101906020018083116200010a57829003601f168201915b5050505050600980546200013c90620007af565b80601f01602080910402602001604051908101604052809291908181526020018280546200016a90620007af565b8015620001bb5780601f106200018f57610100808354040283529160200191620001bb565b820191906000526020600020905b8154815290600101906020018083116200019d57829003601f168201915b50505050508160039081620001d191906200083d565b506004620001e082826200083d565b505050620001fd620001f76200058a60201b60201c565b6200058e565b600680546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915562000233816001620005e0565b600660009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000287573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ad91906200092e565b6001600160a01b031663c9c6539630600660009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000310573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033691906200092e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000384573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003aa91906200092e565b600780546001600160a01b0319166001600160a01b0392831690811782556000908152601360205260409020805460ff191660019081179091559054620003f3921690620005e0565b6000620004036012600a62000a73565b6200041390633b9aca0062000a84565b90506200042f60646200042883600262000615565b906200062c565b600f556200044560646200042883600262000615565b6010556200045c6103e86200042883600162000615565b600b55600c805462010000600160b01b03191675930af686edc51e263973ce9daac04015af2749600000179055600d849055600e839055620004b2620004aa6005546001600160a01b031690565b60016200063a565b620004bf3060016200063a565b600c54620004de906201000090046001600160a01b031660016200063a565b620004fd620004f56005546001600160a01b031690565b6001620005e0565b6200050a306001620005e0565b6200051961dead6001620005e0565b600c5462000538906201000090046001600160a01b03166001620005e0565b600c5462000568906201000090046001600160a01b03166200056260646200042885600f62000615565b6200066f565b62000580336200056260646200042885605562000615565b5050505062000ad7565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b620005ea62000736565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b600062000623828462000a84565b90505b92915050565b600062000623828462000a9e565b6200064462000736565b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b6001600160a01b038216620006cb5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b8060026000828254620006df919062000ac1565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b6005546001600160a01b03163314620007925760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620006c2565b565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620007c457607f821691505b602082108103620007e557634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200079457600081815260208120601f850160051c81016020861015620008145750805b601f850160051c820191505b81811015620008355782815560010162000820565b505050505050565b81516001600160401b0381111562000859576200085962000799565b62000871816200086a8454620007af565b84620007eb565b602080601f831160018114620008a95760008415620008905750858301515b600019600386901b1c1916600185901b17855562000835565b600085815260208120601f198616915b82811015620008da57888601518255948401946001909101908401620008b9565b5085821015620008f95787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600080604083850312156200091d57600080fd5b505080516020909101519092909150565b6000602082840312156200094157600080fd5b81516001600160a01b03811681146200095957600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620009b75781600019048211156200099b576200099b62000960565b80851615620009a957918102915b93841c93908002906200097b565b509250929050565b600082620009d05750600162000626565b81620009df5750600062000626565b8160018114620009f8576002811462000a035762000a23565b600191505062000626565b60ff84111562000a175762000a1762000960565b50506001821b62000626565b5060208310610133831016604e8410600b841016171562000a48575081810a62000626565b62000a54838362000976565b806000190482111562000a6b5762000a6b62000960565b029392505050565b60006200062360ff841683620009bf565b808202811582820484141762000626576200062662000960565b60008262000abc57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000626576200062662000960565b6118238062000ae76000396000f3fe6080604052600436106101a05760003560e01c806351bc3c85116100ec578063a9059cbb1161008a578063c9567bf911610064578063c9567bf914610485578063dd62ed3e1461049a578063e2f45605146104e0578063f8b45b05146104f657600080fd5b8063a9059cbb1461042f578063c02466681461044f578063c8c8ebe41461046f57600080fd5b8063751039fc116100c6578063751039fc146103c157806375f0a874146103d65780638da5cb5b146103fc57806395d89b411461041a57600080fd5b806351bc3c851461036157806370a0823114610376578063715018a6146103ac57600080fd5b80632ae2f12111610159578063470624021161013357806347062402146102f257806349bd5a5e146103085780634a62bb65146103285780634ada218b1461034757600080fd5b80632ae2f121146102a05780632b14ca56146102c0578063313ce567146102d657600080fd5b806306fdde03146101ac578063095ea7b3146101d75780630b78f9c0146102075780631694505e1461022957806318160ddd1461026157806323b872dd1461028057600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101c161050c565b6040516101ce919061151c565b60405180910390f35b3480156101e357600080fd5b506101f76101f2366004611582565b61059e565b60405190151581526020016101ce565b34801561021357600080fd5b506102276102223660046115ae565b6105b8565b005b34801561023557600080fd5b50600654610249906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561026d57600080fd5b506002545b6040519081526020016101ce565b34801561028c57600080fd5b506101f761029b3660046115d0565b61062a565b3480156102ac57600080fd5b506102276102bb366004611611565b61064e565b3480156102cc57600080fd5b50610272600e5481565b3480156102e257600080fd5b50604051601281526020016101ce565b3480156102fe57600080fd5b50610272600d5481565b34801561031457600080fd5b50600754610249906001600160a01b031681565b34801561033457600080fd5b50600c546101f790610100900460ff1681565b34801561035357600080fd5b50600c546101f79060ff1681565b34801561036d57600080fd5b50610227610681565b34801561038257600080fd5b5061027261039136600461164f565b6001600160a01b031660009081526020819052604090205490565b3480156103b857600080fd5b50610227610728565b3480156103cd57600080fd5b5061022761073a565b3480156103e257600080fd5b50600c54610249906201000090046001600160a01b031681565b34801561040857600080fd5b506005546001600160a01b0316610249565b34801561042657600080fd5b506101c16107ac565b34801561043b57600080fd5b506101f761044a366004611582565b6107bb565b34801561045b57600080fd5b5061022761046a366004611611565b6107c9565b34801561047b57600080fd5b50610272600f5481565b34801561049157600080fd5b506102276107fc565b3480156104a657600080fd5b506102726104b536600461166c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156104ec57600080fd5b50610272600b5481565b34801561050257600080fd5b5061027260105481565b60606003805461051b9061169a565b80601f01602080910402602001604051908101604052809291908181526020018280546105479061169a565b80156105945780601f1061056957610100808354040283529160200191610594565b820191906000526020600020905b81548152906001019060200180831161057757829003601f168201915b5050505050905090565b6000336105ac818585610866565b60019150505b92915050565b6105c061098a565b60146105cc82846116ea565b111561061f5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420323025206f72206c65737300000060448201526064015b60405180910390fd5b600d91909155600e55565b6000336106388582856109e4565b610643858585610a76565b506001949350505050565b61065661098a565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b61068961098a565b600a805460ff191660011790553060009081526020819052604081205490506000816000036106b6575050565b6106bf8261110c565b600c54604051620100009091046001600160a01b0316904790600081818185875af1925050503d8060008114610711576040519150601f19603f3d011682016040523d82523d6000602084013e610716565b606091505b5050600a805460ff191690555050505b565b61073061098a565b610726600061125e565b61074261098a565b600c5460ff61010090910416151560011461079f5760405162461bcd60e51b815260206004820152601c60248201527f546865206c696d69747320686173206265656e2072656d6f7665642e000000006044820152606401610616565b600c805461ff0019169055565b60606004805461051b9061169a565b6000336105ac818585610a76565b6107d161098a565b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b61080461098a565b600c5460ff16156108575760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610616565b600c805460ff19166001179055565b6001600160a01b0383166108c85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610616565b6001600160a01b0382166109295760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610616565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b031633146107265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610616565b6001600160a01b038381166000908152600160209081526040808320938616835292905220546000198114610a705781811015610a635760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610616565b610a708484848403610866565b50505050565b6001600160a01b038316610adb5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b6064820152608401610616565b6001600160a01b038216610b3d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b6064820152608401610616565b60008111610ba75760405162461bcd60e51b815260206004820152603160248201527f45524332303a207472616e7366657220616d6f756e74206d75737420626520676044820152703932b0ba32b9103a3430b7103d32b9379760791b6064820152608401610616565b6005546001600160a01b03848116911614801590610bd357506005546001600160a01b03838116911614155b8015610be757506001600160a01b03821615155b8015610bfe57506001600160a01b03821661dead14155b8015610c0d5750600a5460ff16155b15610f2757600c5460ff16610ca0576001600160a01b03831660009081526011602052604090205460ff1680610c5b57506001600160a01b03821660009081526011602052604090205460ff165b610ca05760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610616565b600c54610100900460ff1615610f27576001600160a01b03831660009081526013602052604090205460ff168015610cf157506001600160a01b03821660009081526012602052604090205460ff16155b15610dde57600f54811115610d6e5760405162461bcd60e51b815260206004820152603760248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d6178207472616e73616374696f6e20616d6f756e742e0000000000000000006064820152608401610616565b6010546001600160a01b038316600090815260208190526040902054610d9490836116ea565b1115610dd95760405162461bcd60e51b815260206004820152601460248201527326b0bc103bb0b63632ba1032bc31b2b2b232b21760611b6044820152606401610616565b610f27565b6001600160a01b03821660009081526013602052604090205460ff168015610e1f57506001600160a01b03831660009081526012602052604090205460ff16155b15610e9c57600f54811115610dd95760405162461bcd60e51b815260206004820152603860248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d6178207472616e73616374696f6e20616d6f756e742e00000000000000006064820152608401610616565b6001600160a01b03821660009081526012602052604090205460ff16610f27576010546001600160a01b038316600090815260208190526040902054610ee290836116ea565b1115610f275760405162461bcd60e51b815260206004820152601460248201527326b0bc103bb0b63632ba1032bc31b2b2b232b21760611b6044820152606401610616565b600b5430600090815260208190526040902054108015908190610f4d5750600a5460ff16155b8015610f7257506001600160a01b03841660009081526013602052604090205460ff16155b8015610f9757506001600160a01b03841660009081526011602052604090205460ff16155b8015610fbc57506001600160a01b03831660009081526011602052604090205460ff16155b15610fe157600a805460ff19166001179055610fd66112b0565b600a805460ff191690555b600a546001600160a01b03851660009081526011602052604090205460ff9182161591168061102857506001600160a01b03841660009081526011602052604090205460ff165b15611031575060005b600081156110f9576001600160a01b03851660009081526013602052604090205460ff16801561106357506000600e54115b1561108f576110886064611082600e548761135990919063ffffffff16565b9061136c565b90506110db565b6001600160a01b03861660009081526013602052604090205460ff1680156110b957506000600d54115b156110db576110d86064611082600d548761135990919063ffffffff16565b90505b80156110ec576110ec863083611378565b6110f681856116fd565b93505b611104868686611378565b505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061114157611141611710565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561119a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111be9190611726565b816001815181106111d1576111d1611710565b6001600160a01b0392831660209182029290920101526006546111f79130911684610866565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611230908590600090869030904290600401611743565b600060405180830381600087803b15801561124a57600080fd5b505af1158015611104573d6000803e3d6000fd5b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b30600090815260208190526040812054908181036112cc575050565b600b546112da90600a6117b4565b8211156112f257600b546112ef90600a6117b4565b91505b6112fb8261110c565b600c54604051620100009091046001600160a01b0316904790600081818185875af1925050503d806000811461134d576040519150601f19603f3d011682016040523d82523d6000602084013e611352565b606091505b5050505050565b600061136582846117b4565b9392505050565b600061136582846117cb565b6001600160a01b0383166113dc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610616565b6001600160a01b03821661143e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610616565b6001600160a01b038316600090815260208190526040902054818110156114b65760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610616565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610a70565b600060208083528351808285015260005b818110156115495785810183015185820160400152820161152d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461157f57600080fd5b50565b6000806040838503121561159557600080fd5b82356115a08161156a565b946020939093013593505050565b600080604083850312156115c157600080fd5b50508035926020909101359150565b6000806000606084860312156115e557600080fd5b83356115f08161156a565b925060208401356116008161156a565b929592945050506040919091013590565b6000806040838503121561162457600080fd5b823561162f8161156a565b91506020830135801515811461164457600080fd5b809150509250929050565b60006020828403121561166157600080fd5b81356113658161156a565b6000806040838503121561167f57600080fd5b823561168a8161156a565b915060208301356116448161156a565b600181811c908216806116ae57607f821691505b6020821081036116ce57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156105b2576105b26116d4565b818103818111156105b2576105b26116d4565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561173857600080fd5b81516113658161156a565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117935784516001600160a01b03168352938301939183019160010161176e565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176105b2576105b26116d4565b6000826117e857634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208950f2a0943ca3aa59b498bd5f50561ad5dde336f4b8aa9d02089ede084eda8764736f6c6343000813003300000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000028

Deployed Bytecode

0x6080604052600436106101a05760003560e01c806351bc3c85116100ec578063a9059cbb1161008a578063c9567bf911610064578063c9567bf914610485578063dd62ed3e1461049a578063e2f45605146104e0578063f8b45b05146104f657600080fd5b8063a9059cbb1461042f578063c02466681461044f578063c8c8ebe41461046f57600080fd5b8063751039fc116100c6578063751039fc146103c157806375f0a874146103d65780638da5cb5b146103fc57806395d89b411461041a57600080fd5b806351bc3c851461036157806370a0823114610376578063715018a6146103ac57600080fd5b80632ae2f12111610159578063470624021161013357806347062402146102f257806349bd5a5e146103085780634a62bb65146103285780634ada218b1461034757600080fd5b80632ae2f121146102a05780632b14ca56146102c0578063313ce567146102d657600080fd5b806306fdde03146101ac578063095ea7b3146101d75780630b78f9c0146102075780631694505e1461022957806318160ddd1461026157806323b872dd1461028057600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101c161050c565b6040516101ce919061151c565b60405180910390f35b3480156101e357600080fd5b506101f76101f2366004611582565b61059e565b60405190151581526020016101ce565b34801561021357600080fd5b506102276102223660046115ae565b6105b8565b005b34801561023557600080fd5b50600654610249906001600160a01b031681565b6040516001600160a01b0390911681526020016101ce565b34801561026d57600080fd5b506002545b6040519081526020016101ce565b34801561028c57600080fd5b506101f761029b3660046115d0565b61062a565b3480156102ac57600080fd5b506102276102bb366004611611565b61064e565b3480156102cc57600080fd5b50610272600e5481565b3480156102e257600080fd5b50604051601281526020016101ce565b3480156102fe57600080fd5b50610272600d5481565b34801561031457600080fd5b50600754610249906001600160a01b031681565b34801561033457600080fd5b50600c546101f790610100900460ff1681565b34801561035357600080fd5b50600c546101f79060ff1681565b34801561036d57600080fd5b50610227610681565b34801561038257600080fd5b5061027261039136600461164f565b6001600160a01b031660009081526020819052604090205490565b3480156103b857600080fd5b50610227610728565b3480156103cd57600080fd5b5061022761073a565b3480156103e257600080fd5b50600c54610249906201000090046001600160a01b031681565b34801561040857600080fd5b506005546001600160a01b0316610249565b34801561042657600080fd5b506101c16107ac565b34801561043b57600080fd5b506101f761044a366004611582565b6107bb565b34801561045b57600080fd5b5061022761046a366004611611565b6107c9565b34801561047b57600080fd5b50610272600f5481565b34801561049157600080fd5b506102276107fc565b3480156104a657600080fd5b506102726104b536600461166c565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156104ec57600080fd5b50610272600b5481565b34801561050257600080fd5b5061027260105481565b60606003805461051b9061169a565b80601f01602080910402602001604051908101604052809291908181526020018280546105479061169a565b80156105945780601f1061056957610100808354040283529160200191610594565b820191906000526020600020905b81548152906001019060200180831161057757829003601f168201915b5050505050905090565b6000336105ac818585610866565b60019150505b92915050565b6105c061098a565b60146105cc82846116ea565b111561061f5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420323025206f72206c65737300000060448201526064015b60405180910390fd5b600d91909155600e55565b6000336106388582856109e4565b610643858585610a76565b506001949350505050565b61065661098a565b6001600160a01b03919091166000908152601260205260409020805460ff1916911515919091179055565b61068961098a565b600a805460ff191660011790553060009081526020819052604081205490506000816000036106b6575050565b6106bf8261110c565b600c54604051620100009091046001600160a01b0316904790600081818185875af1925050503d8060008114610711576040519150601f19603f3d011682016040523d82523d6000602084013e610716565b606091505b5050600a805460ff191690555050505b565b61073061098a565b610726600061125e565b61074261098a565b600c5460ff61010090910416151560011461079f5760405162461bcd60e51b815260206004820152601c60248201527f546865206c696d69747320686173206265656e2072656d6f7665642e000000006044820152606401610616565b600c805461ff0019169055565b60606004805461051b9061169a565b6000336105ac818585610a76565b6107d161098a565b6001600160a01b03919091166000908152601160205260409020805460ff1916911515919091179055565b61080461098a565b600c5460ff16156108575760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610616565b600c805460ff19166001179055565b6001600160a01b0383166108c85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610616565b6001600160a01b0382166109295760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610616565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6005546001600160a01b031633146107265760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610616565b6001600160a01b038381166000908152600160209081526040808320938616835292905220546000198114610a705781811015610a635760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610616565b610a708484848403610866565b50505050565b6001600160a01b038316610adb5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b6064820152608401610616565b6001600160a01b038216610b3d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b6064820152608401610616565b60008111610ba75760405162461bcd60e51b815260206004820152603160248201527f45524332303a207472616e7366657220616d6f756e74206d75737420626520676044820152703932b0ba32b9103a3430b7103d32b9379760791b6064820152608401610616565b6005546001600160a01b03848116911614801590610bd357506005546001600160a01b03838116911614155b8015610be757506001600160a01b03821615155b8015610bfe57506001600160a01b03821661dead14155b8015610c0d5750600a5460ff16155b15610f2757600c5460ff16610ca0576001600160a01b03831660009081526011602052604090205460ff1680610c5b57506001600160a01b03821660009081526011602052604090205460ff165b610ca05760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610616565b600c54610100900460ff1615610f27576001600160a01b03831660009081526013602052604090205460ff168015610cf157506001600160a01b03821660009081526012602052604090205460ff16155b15610dde57600f54811115610d6e5760405162461bcd60e51b815260206004820152603760248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527f6d6178207472616e73616374696f6e20616d6f756e742e0000000000000000006064820152608401610616565b6010546001600160a01b038316600090815260208190526040902054610d9490836116ea565b1115610dd95760405162461bcd60e51b815260206004820152601460248201527326b0bc103bb0b63632ba1032bc31b2b2b232b21760611b6044820152606401610616565b610f27565b6001600160a01b03821660009081526013602052604090205460ff168015610e1f57506001600160a01b03831660009081526012602052604090205460ff16155b15610e9c57600f54811115610dd95760405162461bcd60e51b815260206004820152603860248201527f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560448201527f206d6178207472616e73616374696f6e20616d6f756e742e00000000000000006064820152608401610616565b6001600160a01b03821660009081526012602052604090205460ff16610f27576010546001600160a01b038316600090815260208190526040902054610ee290836116ea565b1115610f275760405162461bcd60e51b815260206004820152601460248201527326b0bc103bb0b63632ba1032bc31b2b2b232b21760611b6044820152606401610616565b600b5430600090815260208190526040902054108015908190610f4d5750600a5460ff16155b8015610f7257506001600160a01b03841660009081526013602052604090205460ff16155b8015610f9757506001600160a01b03841660009081526011602052604090205460ff16155b8015610fbc57506001600160a01b03831660009081526011602052604090205460ff16155b15610fe157600a805460ff19166001179055610fd66112b0565b600a805460ff191690555b600a546001600160a01b03851660009081526011602052604090205460ff9182161591168061102857506001600160a01b03841660009081526011602052604090205460ff165b15611031575060005b600081156110f9576001600160a01b03851660009081526013602052604090205460ff16801561106357506000600e54115b1561108f576110886064611082600e548761135990919063ffffffff16565b9061136c565b90506110db565b6001600160a01b03861660009081526013602052604090205460ff1680156110b957506000600d54115b156110db576110d86064611082600d548761135990919063ffffffff16565b90505b80156110ec576110ec863083611378565b6110f681856116fd565b93505b611104868686611378565b505050505050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061114157611141611710565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561119a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111be9190611726565b816001815181106111d1576111d1611710565b6001600160a01b0392831660209182029290920101526006546111f79130911684610866565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611230908590600090869030904290600401611743565b600060405180830381600087803b15801561124a57600080fd5b505af1158015611104573d6000803e3d6000fd5b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b30600090815260208190526040812054908181036112cc575050565b600b546112da90600a6117b4565b8211156112f257600b546112ef90600a6117b4565b91505b6112fb8261110c565b600c54604051620100009091046001600160a01b0316904790600081818185875af1925050503d806000811461134d576040519150601f19603f3d011682016040523d82523d6000602084013e611352565b606091505b5050505050565b600061136582846117b4565b9392505050565b600061136582846117cb565b6001600160a01b0383166113dc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610616565b6001600160a01b03821661143e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610616565b6001600160a01b038316600090815260208190526040902054818110156114b65760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610616565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610a70565b600060208083528351808285015260005b818110156115495785810183015185820160400152820161152d565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461157f57600080fd5b50565b6000806040838503121561159557600080fd5b82356115a08161156a565b946020939093013593505050565b600080604083850312156115c157600080fd5b50508035926020909101359150565b6000806000606084860312156115e557600080fd5b83356115f08161156a565b925060208401356116008161156a565b929592945050506040919091013590565b6000806040838503121561162457600080fd5b823561162f8161156a565b91506020830135801515811461164457600080fd5b809150509250929050565b60006020828403121561166157600080fd5b81356113658161156a565b6000806040838503121561167f57600080fd5b823561168a8161156a565b915060208301356116448161156a565b600181811c908216806116ae57607f821691505b6020821081036116ce57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156105b2576105b26116d4565b818103818111156105b2576105b26116d4565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561173857600080fd5b81516113658161156a565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156117935784516001600160a01b03168352938301939183019160010161176e565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176105b2576105b26116d4565b6000826117e857634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208950f2a0943ca3aa59b498bd5f50561ad5dde336f4b8aa9d02089ede084eda8764736f6c63430008130033

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

00000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000028

-----Decoded View---------------
Arg [0] : _buyFee (uint256): 20
Arg [1] : _sellFee (uint256): 40

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000014
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000028


Deployed Bytecode Sourcemap

7079:6782:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2822:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3754:201;;;;;;;;;;-1:-1:-1;3754:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;3754:201:0;1023:187:1;9698:214:0;;;;;;;;;;-1:-1:-1;9698:214:0;;;;;:::i;:::-;;:::i;:::-;;7160:41;;;;;;;;;;-1:-1:-1;7160:41:0;;;;-1:-1:-1;;;;;7160:41:0;;;;;;-1:-1:-1;;;;;1658:32:1;;;1640:51;;1628:2;1613:18;7160:41:0;1468:229:1;3143:108:0;;;;;;;;;;-1:-1:-1;3231:12:0;;3143:108;;;1848:25:1;;;1836:2;1821:18;3143:108:0;1702:177:1;3963:261:0;;;;;;;;;;-1:-1:-1;3963:261:0;;;;;:::i;:::-;;:::i;9920:161::-;;;;;;;;;;-1:-1:-1;9920:161:0;;;;;:::i;:::-;;:::i;7565:22::-;;;;;;;;;;;;;;;;3042:93;;;;;;;;;;-1:-1:-1;3042:93:0;;3125:2;2908:36:1;;2896:2;2881:18;3042:93:0;2766:184:1;7537:21:0;;;;;;;;;;;;;;;;7208:28;;;;;;;;;;-1:-1:-1;7208:28:0;;;;-1:-1:-1;;;;;7208:28:0;;;7456:33;;;;;;;;;;-1:-1:-1;7456:33:0;;;;;;;;;;;7415:34;;;;;;;;;;-1:-1:-1;7415:34:0;;;;;;;;13467:391;;;;;;;;;;;;;:::i;3259:127::-;;;;;;;;;;-1:-1:-1;3259:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;3360:18:0;3333:7;3360:18;;;;;;;;;;;;3259:127;1225:103;;;;;;;;;;;;;:::i;9532:158::-;;;;;;;;;;;;;:::i;7498:30::-;;;;;;;;;;-1:-1:-1;7498:30:0;;;;;;;-1:-1:-1;;;;;7498:30:0;;;990:87;;;;;;;;;;-1:-1:-1;1063:6:0;;-1:-1:-1;;;;;1063:6:0;990:87;;2930:104;;;;;;;;;;;;;:::i;3394:193::-;;;;;;;;;;-1:-1:-1;3394:193:0;;;;;:::i;:::-;;:::i;10089:133::-;;;;;;;;;;-1:-1:-1;10089:133:0;;;;;:::i;:::-;;:::i;7630:35::-;;;;;;;;;;;;;;;;9380:144;;;;;;;;;;;;;:::i;3595:151::-;;;;;;;;;;-1:-1:-1;3595:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;3711:18:0;;;3684:7;3711:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3595:151;7373:33;;;;;;;;;;;;;;;;7672:24;;;;;;;;;;;;;;;;2822:100;2876:13;2909:5;2902:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2822:100;:::o;3754:201::-;3837:4;311:10;3893:32;311:10;3909:7;3918:6;3893:8;:32::i;:::-;3943:4;3936:11;;;3754:201;;;;;:::o;9698:214::-;949:13;:11;:13::i;:::-;9812:2:::1;9789:18;9799:8:::0;9789:7;:18:::1;:::i;:::-;9788:26;;9780:68;;;::::0;-1:-1:-1;;;9780:68:0;;4657:2:1;9780:68:0::1;::::0;::::1;4639:21:1::0;4696:2;4676:18;;;4669:30;4735:31;4715:18;;;4708:59;4784:18;;9780:68:0::1;;;;;;;;;9859:6;:16:::0;;;;9886:7:::1;:18:::0;9698:214::o;3963:261::-;4060:4;311:10;4118:38;4134:4;311:10;4149:6;4118:15;:38::i;:::-;4167:27;4177:4;4183:2;4187:6;4167:9;:27::i;:::-;-1:-1:-1;4212:4:0;;3963:261;-1:-1:-1;;;;3963:261:0:o;9920:161::-;949:13;:11;:13::i;:::-;-1:-1:-1;;;;;10022:40:0;;;::::1;;::::0;;;:30:::1;:40;::::0;;;;:51;;-1:-1:-1;;10022:51:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9920:161::o;13467:391::-;949:13;:11;:13::i;:::-;13519:8:::1;:15:::0;;-1:-1:-1;;13519:15:0::1;13530:4;13519:15;::::0;;13589:4:::1;-1:-1:-1::0;3360:18:0;;;;;;;;;;;13545:50:::1;;13606:12;13635:15;13654:1;13635:20:::0;13631:59:::1;;13672:7;;13467:391::o:0;13631:59::-:1;13702:33;13719:15;13702:16;:33::i;:::-;13768:15;::::0;13760:63:::1;::::0;13768:15;;;::::1;-1:-1:-1::0;;;;;13768:15:0::1;::::0;13797:21:::1;::::0;13760:63:::1;::::0;;;13797:21;13768:15;13760:63:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;13834:8:0::1;:16:::0;;-1:-1:-1;;13834:16:0::1;::::0;;-1:-1:-1;;;973:1:0::1;13467:391::o:0;1225:103::-;949:13;:11;:13::i;:::-;1290:30:::1;1317:1;1290:18;:30::i;9532:158::-:0;949:13;:11;:13::i;:::-;9594:14:::1;::::0;::::1;;::::0;;::::1;;:22;;:14;:22;9586:63;;;::::0;-1:-1:-1;;;9586:63:0;;5225:2:1;9586:63:0::1;::::0;::::1;5207:21:1::0;5264:2;5244:18;;;5237:30;5303;5283:18;;;5276:58;5351:18;;9586:63:0::1;5023:352:1::0;9586:63:0::1;9660:14;:22:::0;;-1:-1:-1;;9660:22:0::1;::::0;;9532:158::o;2930:104::-;2986:13;3019:7;3012:14;;;;;:::i;3394:193::-;3473:4;311:10;3529:28;311:10;3546:2;3550:6;3529:9;:28::i;10089:133::-;949:13;:11;:13::i;:::-;-1:-1:-1;;;;;10175:28:0;;;::::1;;::::0;;;:18:::1;:28;::::0;;;;:39;;-1:-1:-1;;10175:39:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10089:133::o;9380:144::-;949:13;:11;:13::i;:::-;9442:14:::1;::::0;::::1;;9441:15;9433:51;;;::::0;-1:-1:-1;;;9433:51:0;;5582:2:1;9433:51:0::1;::::0;::::1;5564:21:1::0;5621:2;5601:18;;;5594:30;5660:25;5640:18;;;5633:53;5703:18;;9433:51:0::1;5380:347:1::0;9433:51:0::1;9495:14;:21:::0;;-1:-1:-1;;9495:21:0::1;9512:4;9495:21;::::0;;9380:144::o;5602:346::-;-1:-1:-1;;;;;5704:19:0;;5696:68;;;;-1:-1:-1;;;5696:68:0;;5934:2:1;5696:68:0;;;5916:21:1;5973:2;5953:18;;;5946:30;6012:34;5992:18;;;5985:62;-1:-1:-1;;;6063:18:1;;;6056:34;6107:19;;5696:68:0;5732:400:1;5696:68:0;-1:-1:-1;;;;;5783:21:0;;5775:68;;;;-1:-1:-1;;;5775:68:0;;6339:2:1;5775:68:0;;;6321:21:1;6378:2;6358:18;;;6351:30;6417:34;6397:18;;;6390:62;-1:-1:-1;;;6468:18:1;;;6461:32;6510:19;;5775:68:0;6137:398:1;5775:68:0;-1:-1:-1;;;;;5856:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5908:32;;1848:25:1;;;5908:32:0;;1821:18:1;5908:32:0;;;;;;;5602:346;;;:::o;1085:132::-;1063:6;;-1:-1:-1;;;;;1063:6:0;311:10;1149:23;1141:68;;;;-1:-1:-1;;;1141:68:0;;6742:2:1;1141:68:0;;;6724:21:1;;;6761:18;;;6754:30;6820:34;6800:18;;;6793:62;6872:18;;1141:68:0;6540:356:1;5956:419:0;-1:-1:-1;;;;;3711:18:0;;;6057:24;3711:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;6124:37:0;;6120:248;;6206:6;6186:16;:26;;6178:68;;;;-1:-1:-1;;;6178:68:0;;7103:2:1;6178:68:0;;;7085:21:1;7142:2;7122:18;;;7115:30;7181:31;7161:18;;;7154:59;7230:18;;6178:68:0;6901:353:1;6178:68:0;6290:51;6299:5;6306:7;6334:6;6315:16;:25;6290:8;:51::i;:::-;6046:329;5956:419;;;:::o;10230:2288::-;-1:-1:-1;;;;;10328:18:0;;10320:69;;;;-1:-1:-1;;;10320:69:0;;7461:2:1;10320:69:0;;;7443:21:1;7500:2;7480:18;;;7473:30;7539:34;7519:18;;;7512:62;-1:-1:-1;;;7590:18:1;;;7583:36;7636:19;;10320:69:0;7259:402:1;10320:69:0;-1:-1:-1;;;;;10408:16:0;;10400:65;;;;-1:-1:-1;;;10400:65:0;;7868:2:1;10400:65:0;;;7850:21:1;7907:2;7887:18;;;7880:30;7946:34;7926:18;;;7919:62;-1:-1:-1;;;7997:18:1;;;7990:34;8041:19;;10400:65:0;7666:400:1;10400:65:0;10493:1;10484:6;:10;10476:72;;;;-1:-1:-1;;;10476:72:0;;8273:2:1;10476:72:0;;;8255:21:1;8312:2;8292:18;;;8285:30;8351:34;8331:18;;;8324:62;-1:-1:-1;;;8402:18:1;;;8395:47;8459:19;;10476:72:0;8071:413:1;10476:72:0;1063:6;;-1:-1:-1;;;;;10565:15:0;;;1063:6;;10565:15;;;;:32;;-1:-1:-1;1063:6:0;;-1:-1:-1;;;;;10584:13:0;;;1063:6;;10584:13;;10565:32;:52;;;;-1:-1:-1;;;;;;10601:16:0;;;;10565:52;:77;;;;-1:-1:-1;;;;;;10621:21:0;;10635:6;10621:21;;10565:77;:90;;;;-1:-1:-1;10647:8:0;;;;10646:9;10565:90;10561:983;;;10677:14;;;;10672:141;;-1:-1:-1;;;;;10720:24:0;;;;;;:18;:24;;;;;;;;;:50;;-1:-1:-1;;;;;;10748:22:0;;;;;;:18;:22;;;;;;;;10720:50;10712:85;;;;-1:-1:-1;;;10712:85:0;;8691:2:1;10712:85:0;;;8673:21:1;8730:2;8710:18;;;8703:30;-1:-1:-1;;;8749:18:1;;;8742:52;8811:18;;10712:85:0;8489:346:1;10712:85:0;10833:14;;;;;;;10829:704;;;-1:-1:-1;;;;;10872:11:0;;;;;;:5;:11;;;;;;;;:50;;;;-1:-1:-1;;;;;;10888:34:0;;;;;;:30;:34;;;;;;;;10887:35;10872:50;10868:650;;;10965:20;;10955:6;:30;;10947:98;;;;-1:-1:-1;;;10947:98:0;;9042:2:1;10947:98:0;;;9024:21:1;9081:2;9061:18;;;9054:30;9120:34;9100:18;;;9093:62;9191:25;9171:18;;;9164:53;9234:19;;10947:98:0;8840:419:1;10947:98:0;11102:9;;-1:-1:-1;;;;;3360:18:0;;3333:7;3360:18;;;;;;;;;;;11076:22;;:6;:22;:::i;:::-;:35;;11068:68;;;;-1:-1:-1;;;11068:68:0;;9466:2:1;11068:68:0;;;9448:21:1;9505:2;9485:18;;;9478:30;-1:-1:-1;;;9524:18:1;;;9517:50;9584:18;;11068:68:0;9264:344:1;11068:68:0;10868:650;;;-1:-1:-1;;;;;11166:9:0;;;;;;:5;:9;;;;;;;;:50;;;;-1:-1:-1;;;;;;11180:36:0;;;;;;:30;:36;;;;;;;;11179:37;11166:50;11162:356;;;11259:20;;11249:6;:30;;11241:99;;;;-1:-1:-1;;;11241:99:0;;9815:2:1;11241:99:0;;;9797:21:1;9854:2;9834:18;;;9827:30;9893:34;9873:18;;;9866:62;9964:26;9944:18;;;9937:54;10008:19;;11241:99:0;9613:420:1;11162:356:0;-1:-1:-1;;;;;11371:34:0;;;;;;:30;:34;;;;;;;;11366:152;;11464:9;;-1:-1:-1;;;;;3360:18:0;;3333:7;3360:18;;;;;;;;;;;11438:22;;:6;:22;:::i;:::-;:35;;11430:68;;;;-1:-1:-1;;;11430:68:0;;9466:2:1;11430:68:0;;;9448:21:1;9505:2;9485:18;;;9478:30;-1:-1:-1;;;9524:18:1;;;9517:50;9584:18;;11430:68:0;9264:344:1;11430:68:0;11599:18;;11589:4;11556:12;3360:18;;;;;;;;;;;-1:-1:-1;11571:46:0;;;;;11646:33;;-1:-1:-1;11671:8:0;;;;11670:9;11646:33;:62;;;;-1:-1:-1;;;;;;11697:11:0;;;;;;:5;:11;;;;;;;;11696:12;11646:62;:104;;;;-1:-1:-1;;;;;;11726:24:0;;;;;;:18;:24;;;;;;;;11725:25;11646:104;:144;;;;-1:-1:-1;;;;;;11768:22:0;;;;;;:18;:22;;;;;;;;11767:23;11646:144;11628:272;;;11817:8;:15;;-1:-1:-1;;11817:15:0;11828:4;11817:15;;;11847:10;:8;:10::i;:::-;11872:8;:16;;-1:-1:-1;;11872:16:0;;;11628:272;11928:8;;-1:-1:-1;;;;;11953:24:0;;11912:12;11953:24;;;:18;:24;;;;;;11928:8;;;;11927:9;;11953:24;;:50;;-1:-1:-1;;;;;;11981:22:0;;;;;;:18;:22;;;;;;;;11953:50;11949:98;;;-1:-1:-1;12030:5:0;11949:98;12059:12;12090:7;12086:381;;;-1:-1:-1;;;;;12118:9:0;;;;;;:5;:9;;;;;;;;:24;;;;;12141:1;12131:7;;:11;12118:24;12114:206;;;12170:28;12194:3;12170:19;12181:7;;12170:6;:10;;:19;;;;:::i;:::-;:23;;:28::i;:::-;12163:35;;12114:206;;;-1:-1:-1;;;;;12224:11:0;;;;;;:5;:11;;;;;;;;:25;;;;;12248:1;12239:6;;:10;12224:25;12220:100;;;12277:27;12300:3;12277:18;12288:6;;12277;:10;;:18;;;;:::i;:27::-;12270:34;;12220:100;12340:8;;12336:91;;12369:42;12385:4;12399;12406;12369:15;:42::i;:::-;12441:14;12451:4;12441:14;;:::i;:::-;;;12086:381;12477:33;12493:4;12499:2;12503:6;12477:15;:33::i;:::-;10309:2209;;;10230:2288;;;:::o;12526:473::-;12616:16;;;12630:1;12616:16;;;;;;;;12592:21;;12616:16;;;;;;;;;;-1:-1:-1;12616:16:0;12592:40;;12661:4;12643;12648:1;12643:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12643:23:0;;;:7;;;;;;;;;;:23;;;;12687:15;;:22;;;-1:-1:-1;;;12687:22:0;;;;:15;;;;;:20;;:22;;;;;12643:7;;12687:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12677:4;12682:1;12677:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;12677:32:0;;;:7;;;;;;;;;:32;12754:15;;12722:62;;12739:4;;12754:15;12772:11;12722:8;:62::i;:::-;12795:15;;:196;;-1:-1:-1;;;12795:196:0;;-1:-1:-1;;;;;12795:15:0;;;;:66;;:196;;12876:11;;12795:15;;12918:4;;12945;;12965:15;;12795:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1336:191;1429:6;;;-1:-1:-1;;;;;1446:17:0;;;-1:-1:-1;;;;;;1446:17:0;;;;;;;1479:40;;1429:6;;;1446:17;1429:6;;1479:40;;1410:16;;1479:40;1399:128;1336:191;:::o;13007:452::-;13090:4;13046:23;3360:18;;;;;;;;;;;;13136:20;;;13132:59;;13173:7;;13007:452::o;13132:59::-;13225:18;;:23;;13246:2;13225:23;:::i;:::-;13207:15;:41;13203:115;;;13283:18;;:23;;13304:2;13283:23;:::i;:::-;13265:41;;13203:115;13330:33;13347:15;13330:16;:33::i;:::-;13396:15;;13388:63;;13396:15;;;;-1:-1:-1;;;;;13396:15:0;;13425:21;;13388:63;;;;13425:21;13396:15;13388:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13007:452:0:o;360:98::-;418:7;445:5;449:1;445;:5;:::i;:::-;438:12;360:98;-1:-1:-1;;;360:98:0:o;466:::-;524:7;551:5;555:1;551;:5;:::i;4232:806::-;-1:-1:-1;;;;;4329:18:0;;4321:68;;;;-1:-1:-1;;;4321:68:0;;12273:2:1;4321:68:0;;;12255:21:1;12312:2;12292:18;;;12285:30;12351:34;12331:18;;;12324:62;-1:-1:-1;;;12402:18:1;;;12395:35;12447:19;;4321:68:0;12071:401:1;4321:68:0;-1:-1:-1;;;;;4408:16:0;;4400:64;;;;-1:-1:-1;;;4400:64:0;;12679:2:1;4400:64:0;;;12661:21:1;12718:2;12698:18;;;12691:30;12757:34;12737:18;;;12730:62;-1:-1:-1;;;12808:18:1;;;12801:33;12851:19;;4400:64:0;12477:399:1;4400:64:0;-1:-1:-1;;;;;4550:15:0;;4528:19;4550:15;;;;;;;;;;;4584:21;;;;4576:72;;;;-1:-1:-1;;;4576:72:0;;13083:2:1;4576:72:0;;;13065:21:1;13122:2;13102:18;;;13095:30;13161:34;13141:18;;;13134:62;-1:-1:-1;;;13212:18:1;;;13205:36;13258:19;;4576:72:0;12881:402:1;4576:72:0;-1:-1:-1;;;;;4684:15:0;;;:9;:15;;;;;;;;;;;4702:20;;;4684:38;;4902:13;;;;;;;;;;:23;;;;;;4954:26;;1848:25:1;;;4902:13:0;;4954:26;;1821:18:1;4954:26:0;;;;;;;4993:37;6383:91;14:548:1;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1215:248::-;1283:6;1291;1344:2;1332:9;1323:7;1319:23;1315:32;1312:52;;;1360:1;1357;1350:12;1312:52;-1:-1:-1;;1383:23:1;;;1453:2;1438:18;;;1425:32;;-1:-1:-1;1215:248:1:o;1884:456::-;1961:6;1969;1977;2030:2;2018:9;2009:7;2005:23;2001:32;1998:52;;;2046:1;2043;2036:12;1998:52;2085:9;2072:23;2104:31;2129:5;2104:31;:::i;:::-;2154:5;-1:-1:-1;2211:2:1;2196:18;;2183:32;2224:33;2183:32;2224:33;:::i;:::-;1884:456;;2276:7;;-1:-1:-1;;;2330:2:1;2315:18;;;;2302:32;;1884:456::o;2345:416::-;2410:6;2418;2471:2;2459:9;2450:7;2446:23;2442:32;2439:52;;;2487:1;2484;2477:12;2439:52;2526:9;2513:23;2545:31;2570:5;2545:31;:::i;:::-;2595:5;-1:-1:-1;2652:2:1;2637:18;;2624:32;2694:15;;2687:23;2675:36;;2665:64;;2725:1;2722;2715:12;2665:64;2748:7;2738:17;;;2345:416;;;;;:::o;3163:247::-;3222:6;3275:2;3263:9;3254:7;3250:23;3246:32;3243:52;;;3291:1;3288;3281:12;3243:52;3330:9;3317:23;3349:31;3374:5;3349:31;:::i;3415:388::-;3483:6;3491;3544:2;3532:9;3523:7;3519:23;3515:32;3512:52;;;3560:1;3557;3550:12;3512:52;3599:9;3586:23;3618:31;3643:5;3618:31;:::i;:::-;3668:5;-1:-1:-1;3725:2:1;3710:18;;3697:32;3738:33;3697:32;3738:33;:::i;3808:380::-;3887:1;3883:12;;;;3930;;;3951:61;;4005:4;3997:6;3993:17;3983:27;;3951:61;4058:2;4050:6;4047:14;4027:18;4024:38;4021:161;;4104:10;4099:3;4095:20;4092:1;4085:31;4139:4;4136:1;4129:15;4167:4;4164:1;4157:15;4021:161;;3808:380;;;:::o;4193:127::-;4254:10;4249:3;4245:20;4242:1;4235:31;4285:4;4282:1;4275:15;4309:4;4306:1;4299:15;4325:125;4390:9;;;4411:10;;;4408:36;;;4424:18;;:::i;10038:128::-;10105:9;;;10126:11;;;10123:37;;;10140:18;;:::i;10303:127::-;10364:10;10359:3;10355:20;10352:1;10345:31;10395:4;10392:1;10385:15;10419:4;10416:1;10409:15;10435:251;10505:6;10558:2;10546:9;10537:7;10533:23;10529:32;10526:52;;;10574:1;10571;10564:12;10526:52;10606:9;10600:16;10625:31;10650:5;10625:31;:::i;10691:980::-;10953:4;11001:3;10990:9;10986:19;11032:6;11021:9;11014:25;11058:2;11096:6;11091:2;11080:9;11076:18;11069:34;11139:3;11134:2;11123:9;11119:18;11112:31;11163:6;11198;11192:13;11229:6;11221;11214:22;11267:3;11256:9;11252:19;11245:26;;11306:2;11298:6;11294:15;11280:29;;11327:1;11337:195;11351:6;11348:1;11345:13;11337:195;;;11416:13;;-1:-1:-1;;;;;11412:39:1;11400:52;;11507:15;;;;11472:12;;;;11448:1;11366:9;11337:195;;;-1:-1:-1;;;;;;;11588:32:1;;;;11583:2;11568:18;;11561:60;-1:-1:-1;;;11652:3:1;11637:19;11630:35;11549:3;10691:980;-1:-1:-1;;;10691:980:1:o;11676:168::-;11749:9;;;11780;;11797:15;;;11791:22;;11777:37;11767:71;;11818:18;;:::i;11849:217::-;11889:1;11915;11905:132;;11959:10;11954:3;11950:20;11947:1;11940:31;11994:4;11991:1;11984:15;12022:4;12019:1;12012:15;11905:132;-1:-1:-1;12051:9:1;;11849:217::o

Swarm Source

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