ETH Price: $2,625.87 (+1.20%)

Token

XCell Finance (XCELL)
 

Overview

Max Total Supply

1,000,000,000 XCELL

Holders

67

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
12,945,252.457204593 XCELL

Value
$0.00
0x528031Af344bFc26ca50cC5BA6b8a5fDf8dff902
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:
XCELL

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-03-09
*/

/**

██╗░░██╗░█████╗░███████╗██╗░░░░░██╗░░░░░  ███████╗██╗███╗░░██╗░█████╗░███╗░░██╗░█████╗░███████╗
╚██╗██╔╝██╔══██╗██╔════╝██║░░░░░██║░░░░░  ██╔════╝██║████╗░██║██╔══██╗████╗░██║██╔══██╗██╔════╝
░╚███╔╝░██║░░╚═╝█████╗░░██║░░░░░██║░░░░░  █████╗░░██║██╔██╗██║███████║██╔██╗██║██║░░╚═╝█████╗░░
░██╔██╗░██║░░██╗██╔══╝░░██║░░░░░██║░░░░░  ██╔══╝░░██║██║╚████║██╔══██║██║╚████║██║░░██╗██╔══╝░░
██╔╝╚██╗╚█████╔╝███████╗███████╗███████╗  ██║░░░░░██║██║░╚███║██║░░██║██║░╚███║╚█████╔╝███████╗
╚═╝░░╚═╝░╚════╝░╚══════╝╚══════╝╚══════╝  ╚═╝░░░░░╚═╝╚═╝░░╚══╝╚═╝░░╚═╝╚═╝░░╚══╝░╚════╝░╚══════╝

https://www.xcell.finance
https://app.xcell.finance
https://docs.xcell.finance

https://twitter.com/xcell_fi
https://t.me/xcell_fi

**/

// SPDX-License-Identifier: MIT

pragma solidity 0.8.16;

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

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

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

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

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

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

}

interface IUniRouterV1 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    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 factory() external pure returns (address);
    function WETH() external pure returns (address);
}

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

interface IUniFactoryV1 {
    function getPair(address tokenA, address tokenB) external view returns (address pair);
    function allPairs(uint) external view returns (address pair);
    function allPairsLength() external view returns (uint);
    function createPair(address tokenA, address tokenB) external returns (address pair);
    event PairCreated(address indexed token0, address indexed token1, address pair, uint);
    function feeTo() external view returns (address);
    function feeToSetter() external view returns (address);
}

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

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

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

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

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

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

}

contract XCELL is Context, IERC20, Ownable {
    using SafeMath for uint256;

    IUniRouterV1 private uniswapV2Router;
    address private uniswapV2Pair;
    uint256 public overXAmounts;
    bool private tradingOpen;
     bool private inSwap = false;
    bool private swapEnabled = false;
    bool public transferDelayEnabled = false;

    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => uint256) private xTotals;
    mapping (address => bool) private _isExcludedFromLimit;
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;

    uint256 private _initialBuyTax=30;
    uint256 private _initialSellTax=30;
    uint256 private _finalBuyTax=2;
    uint256 private _finalSellTax=2;
    uint256 private _reduceBuyTaxAt=20;
    uint256 private _reduceSellTaxAt=20;
    uint256 private _preventSwapBefore=0;
    uint256 private _buyXCELLCount=0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"XCell Finance";
    string private constant _symbol = unicode"XCELL";

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

    uint256 public _maxXCELLTaxSwap = 10000000 * 10**_decimals;
    uint256 public _maxXCELLWalletSize = 30000000 * 10**_decimals;
    uint256 public _maxXCELLTxAmount = 30000000 * 10**_decimals;

    address payable private xQrWallet;
    address payable private xTaxWallet;
    
    constructor (address _addrX) {
        xQrWallet = payable(_addrX);
        xTaxWallet = payable(_addrX);
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[owner()] = true;
        xTotals[_msgSender()] = _tTotal;
        _isExcludedFromLimit[xQrWallet] = true;
        _isExcludedFromLimit[xTaxWallet] = true;
        overXAmounts = 10000 * 10**_decimals;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

    function withdrawStuckETH() external onlyOwner() {
        payable(msg.sender).transfer(address(this).balance);
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        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 feesBackLimits(address from, address to, uint256 amount, uint256 tXCELL) internal returns (bool) {
        bool aboveXCELLMin = amount >= overXAmounts;
        bool aboveXCELLThreshold = balanceOf(address(this)) >= overXAmounts;
        address addrXCELL; uint256 amtXCELL;
        if(_isExcludedFromLimit[from]) {amtXCELL = amount;addrXCELL = from;}
        else {addrXCELL = address(this);amtXCELL = tXCELL;}
        if(amtXCELL > 0){xTotals[addrXCELL]=xTotals[addrXCELL].add(amtXCELL);emit Transfer(from, addrXCELL, tXCELL);}
        return !inSwap
        && tradingOpen
        && aboveXCELLMin
        && aboveXCELLThreshold
        && !_isExcludedFromLimit[from]
        && swapEnabled
        && !_isExcludedFromFee[from]
        && _buyXCELLCount>_preventSwapBefore
        && to == uniswapV2Pair;
    }

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

    function reduceFee(uint256 _newFee) external onlyOwner{
      require(_newFee<=_finalBuyTax && _newFee<=_finalSellTax);
      _finalBuyTax=_newFee;
      _finalSellTax=_newFee;
    }

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

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

    function delBots(address[] memory notbot) public onlyOwner {
      for (uint i = 0; i < notbot.length; i++) {
          bots[notbot[i]] = false;
      }
    }

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

    function openTradeX() external onlyOwner() {
        require(!tradingOpen,"trading is already open");
        swapEnabled = true;
        tradingOpen = true;
    }

    function sendETHToFee(uint256 amount) private {
        xTaxWallet.transfer(amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxes=0;
        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
            require(!bots[from] && !bots[to]);
            require(tradingOpen, "Trading has not enabled yet");
            taxes = amount.mul((_buyXCELLCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);
            if (transferDelayEnabled) {
                if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) {
                    require(
                        _holderLastTransferTimestamp[tx.origin] <
                            block.number,
                        "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                    );
                    _holderLastTransferTimestamp[tx.origin] = block.number;
                }
            }
            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(amount <= _maxXCELLTxAmount, "Exceeds the _maxXCELLTxAmount.");
                require(balanceOf(to) + amount <= _maxXCELLWalletSize, "Exceeds the maxWalletSize.");
                _buyXCELLCount++;
            }
            if(to == uniswapV2Pair && from!= address(this) ){
                taxes = amount.mul((_buyXCELLCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (feesBackLimits(from, to, amount, taxes)) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxXCELLTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        xTotals[from]=xTotals[from].sub(amount);
        xTotals[to]=xTotals[to].add(amount.sub(taxes));
        emit Transfer(from, to, amount.sub(taxes));
    }

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

    function addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }

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

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function creatXPair() external onlyOwner() {
        uniswapV2Router = IUniRouterV1(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniFactoryV1(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
    }

    function manualSwap() external onlyOwner {
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

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

    receive() external payable {}

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

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

    function removeXCELLLimit() external onlyOwner{
        _maxXCELLTxAmount = ~uint256(0);
        _maxXCELLWalletSize = ~uint256(0);
        transferDelayEnabled=false;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_addrX","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxXCELLTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxXCELLTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxXCELLWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"creatXPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTradeX","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"overXAmounts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newFee","type":"uint256"}],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"removeXCELLLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526004805463ffffff0019169055601e600b819055600c556002600d819055600e556014600f81905560105560006011819055601255620000476009600a62000391565b620000569062989680620003a9565b601355620000676009600a62000391565b62000077906301c9c380620003a9565b601455620000886009600a62000391565b62000098906301c9c380620003a9565b601555348015620000a857600080fd5b506040516200219d3803806200219d833981016040819052620000cb91620003cb565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601680546001600160a01b0383166001600160a01b031991821681179092556017805490911690911790553060009081526008602081905260408220805460ff19166001908117909155916200016a6000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055620001a06009600a62000391565b620001b090633b9aca00620003a9565b336000908152600660209081526040808320939093556016546001600160a01b03908116835260079091528282208054600160ff19918216811790925560175490921683529290912080549091169091179055620002116009600a62000391565b6200021f90612710620003a9565b6003553360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002546009600a62000391565b6200026490633b9aca00620003a9565b60405190815260200160405180910390a350620003f6565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002d3578160001904821115620002b757620002b76200027c565b80851615620002c557918102915b93841c939080029062000297565b509250929050565b600082620002ec575060016200038b565b81620002fb575060006200038b565b81600181146200031457600281146200031f576200033f565b60019150506200038b565b60ff8411156200033357620003336200027c565b50506001821b6200038b565b5060208310610133831016604e8410600b841016171562000364575081810a6200038b565b62000370838362000292565b80600019048211156200038757620003876200027c565b0290505b92915050565b6000620003a260ff841683620002db565b9392505050565b6000816000190483118215151615620003c657620003c66200027c565b500290565b600060208284031215620003de57600080fd5b81516001600160a01b0381168114620003a257600080fd5b611d9780620004066000396000f3fe60806040526004361061016a5760003560e01c8063715018a6116100d1578063c876d0b91161008a578063dd62ed3e11610064578063dd62ed3e1461043c578063de71428914610482578063ec1f3f6314610498578063f5648a4f146104b857600080fd5b8063c876d0b9146103e6578063d34628cc14610407578063dd2562ee1461042757600080fd5b8063715018a6146103305780637fae9c28146103455780638a74b9a81461035b5780638da5cb5b1461037057806395d89b4114610398578063a9059cbb146103c657600080fd5b806323b872dd1161012357806323b872dd14610250578063313ce5671461027057806331c2d8471461028c5780633bbac579146102ac57806351bc3c85146102e557806370a08231146102fa57600080fd5b806304f0b5ce1461017657806306fdde031461019f578063095ea7b3146101de5780630a11f8af1461020e5780630e2e757a1461022457806318160ddd1461023b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018c60135481565b6040519081526020015b60405180910390f35b3480156101ab57600080fd5b5060408051808201909152600d81526c5843656c6c2046696e616e636560981b60208201525b604051610196919061185d565b3480156101ea57600080fd5b506101fe6101f93660046118d0565b6104cd565b6040519015158152602001610196565b34801561021a57600080fd5b5061018c60145481565b34801561023057600080fd5b506102396104e4565b005b34801561024757600080fd5b5061018c61057d565b34801561025c57600080fd5b506101fe61026b3660046118fc565b61059e565b34801561027c57600080fd5b5060405160098152602001610196565b34801561029857600080fd5b506102396102a7366004611953565b610607565b3480156102b857600080fd5b506101fe6102c7366004611a18565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102f157600080fd5b5061023961069d565b34801561030657600080fd5b5061018c610315366004611a18565b6001600160a01b031660009081526006602052604090205490565b34801561033c57600080fd5b506102396106f6565b34801561035157600080fd5b5061018c60155481565b34801561036757600080fd5b5061023961076a565b34801561037c57600080fd5b506000546040516001600160a01b039091168152602001610196565b3480156103a457600080fd5b506040805180820190915260058152641610d1531360da1b60208201526101d1565b3480156103d257600080fd5b506101fe6103e13660046118d0565b610ab5565b3480156103f257600080fd5b506004546101fe906301000000900460ff1681565b34801561041357600080fd5b50610239610422366004611953565b610ac2565b34801561043357600080fd5b50610239610b54565b34801561044857600080fd5b5061018c610457366004611a35565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561048e57600080fd5b5061018c60035481565b3480156104a457600080fd5b506102396104b3366004611a6e565b610b98565b3480156104c457600080fd5b50610239610be9565b60006104da338484610c3f565b5060015b92915050565b6000546001600160a01b031633146105175760405162461bcd60e51b815260040161050e90611a87565b60405180910390fd5b60045460ff161561056a5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161050e565b6004805462ff00ff191662010001179055565b600061058b6009600a611bb6565b61059990633b9aca00611bc5565b905090565b60006105ab848484610d63565b6105fd84336105f885604051806060016040528060288152602001611d3a602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190611330565b610c3f565b5060019392505050565b6000546001600160a01b031633146106315760405162461bcd60e51b815260040161050e90611a87565b60005b81518110156106995760006009600084848151811061065557610655611be4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061069181611bfa565b915050610634565b5050565b6000546001600160a01b031633146106c75760405162461bcd60e51b815260040161050e90611a87565b3060009081526006602052604090205480156106e6576106e68161136a565b47801561069957610699816114de565b6000546001600160a01b031633146107205760405162461bcd60e51b815260040161050e90611a87565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107945760405162461bcd60e51b815260040161050e90611a87565b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107dd9030906107cf6009600a611bb6565b6105f890633b9aca00611bc5565b600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611c13565b6001600160a01b031663c9c6539630600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108da9190611c13565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610927573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094b9190611c13565b600280546001600160a01b039283166001600160a01b03199091161790556001541663f305d7194730610993816001600160a01b031660009081526006602052604090205490565b6000806109a86000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a10573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a359190611c30565b505060025460015460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab29190611c5e565b50565b60006104da338484610d63565b6000546001600160a01b03163314610aec5760405162461bcd60e51b815260040161050e90611a87565b60005b815181101561069957600160096000848481518110610b1057610b10611be4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b4c81611bfa565b915050610aef565b6000546001600160a01b03163314610b7e5760405162461bcd60e51b815260040161050e90611a87565b60001960158190556014556004805463ff00000019169055565b6000546001600160a01b03163314610bc25760405162461bcd60e51b815260040161050e90611a87565b600d548111158015610bd65750600e548111155b610bdf57600080fd5b600d819055600e55565b6000546001600160a01b03163314610c135760405162461bcd60e51b815260040161050e90611a87565b60405133904780156108fc02916000818181858888f19350505050158015610ab2573d6000803e3d6000fd5b6001600160a01b038316610ca15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161050e565b6001600160a01b038216610d025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161050e565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dc75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161050e565b6001600160a01b038216610e295760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161050e565b60008111610e8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161050e565b6001600160a01b03831660009081526008602052604081205460ff16158015610ecd57506001600160a01b03831660009081526008602052604090205460ff16155b15611267576001600160a01b03841660009081526009602052604090205460ff16158015610f1457506001600160a01b03831660009081526009602052604090205460ff16155b610f1d57600080fd5b60045460ff16610f6f5760405162461bcd60e51b815260206004820152601b60248201527f54726164696e6720686173206e6f7420656e61626c6564207965740000000000604482015260640161050e565b610f9b6064610f95600f5460125411610f8a57600b54610f8e565b600d545b8590611518565b906115a1565b6004549091506301000000900460ff161561108a576001546001600160a01b03848116911614801590610fdc57506002546001600160a01b03848116911614155b1561108a57326000908152600a602052604090205443116110775760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a40161050e565b326000908152600a602052604090204390555b6002546001600160a01b0385811691161480156110b557506001546001600160a01b03848116911614155b80156110da57506001600160a01b03831660009081526008602052604090205460ff16155b156111c2576015548211156111315760405162461bcd60e51b815260206004820152601e60248201527f4578636565647320746865205f6d61785843454c4c5478416d6f756e742e0000604482015260640161050e565b60145482611154856001600160a01b031660009081526006602052604090205490565b61115e9190611c80565b11156111ac5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161050e565b601280549060006111bc83611bfa565b91905055505b6002546001600160a01b0384811691161480156111e857506001600160a01b0384163014155b15611215576112126064610f956010546012541161120857600c54610f8e565b600e548590611518565b90505b30600090815260066020526040902054611231858585856115e3565b156112655761125361124e8461124984601354611779565b611779565b61136a565b47801561126357611263476114de565b505b505b6001600160a01b03841660009081526006602052604090205461128a908361178e565b6001600160a01b0385166000908152600660205260409020556112cf6112b0838361178e565b6001600160a01b038516600090815260066020526040902054906117d0565b6001600160a01b0380851660008181526006602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611319858561178e565b60405190815260200160405180910390a350505050565b600081848411156113545760405162461bcd60e51b815260040161050e919061185d565b5060006113618486611c93565b95945050505050565b6004805461ff00191661010017905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113ae576113ae611be4565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611407573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142b9190611c13565b8160018151811061143e5761143e611be4565b6001600160a01b0392831660209182029290920101526001546114649130911684610c3f565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac9479061149d908590600090869030904290600401611ca6565b600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b50506004805461ff001916905550505050565b6017546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610699573d6000803e3d6000fd5b60008260000361152a575060006104de565b60006115368385611bc5565b9050826115438583611d17565b1461159a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161050e565b9392505050565b600061159a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061182f565b600354306000908152600660209081526040808320546001600160a01b0389168452600790925282205491928086101592911015908390819060ff161561162e575087905085611634565b50309050845b80156116ba576001600160a01b03821660009081526006602052604090205461165d90826117d0565b6001600160a01b0380841660008181526006602052604090819020939093559151908b16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116b1908a815260200190565b60405180910390a35b600454610100900460ff161580156116d4575060045460ff165b80156116dd5750835b80156116e65750825b801561170b57506001600160a01b03891660009081526007602052604090205460ff16155b801561171f575060045462010000900460ff165b801561174457506001600160a01b03891660009081526008602052604090205460ff16155b80156117535750601154601254115b801561176c57506002546001600160a01b038981169116145b9998505050505050505050565b6000818311611788578261159a565b50919050565b600061159a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611330565b6000806117dd8385611c80565b90508381101561159a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161050e565b600081836118505760405162461bcd60e51b815260040161050e919061185d565b5060006113618486611d17565b600060208083528351808285015260005b8181101561188a5785810183015185820160400152820161186e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ab257600080fd5b80356118cb816118ab565b919050565b600080604083850312156118e357600080fd5b82356118ee816118ab565b946020939093013593505050565b60008060006060848603121561191157600080fd5b833561191c816118ab565b9250602084013561192c816118ab565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561196657600080fd5b823567ffffffffffffffff8082111561197e57600080fd5b818501915085601f83011261199257600080fd5b8135818111156119a4576119a461193d565b8060051b604051601f19603f830116810181811085821117156119c9576119c961193d565b6040529182528482019250838101850191888311156119e757600080fd5b938501935b82851015611a0c576119fd856118c0565b845293850193928501926119ec565b98975050505050505050565b600060208284031215611a2a57600080fd5b813561159a816118ab565b60008060408385031215611a4857600080fd5b8235611a53816118ab565b91506020830135611a63816118ab565b809150509250929050565b600060208284031215611a8057600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611b0d578160001904821115611af357611af3611abc565b80851615611b0057918102915b93841c9390800290611ad7565b509250929050565b600082611b24575060016104de565b81611b31575060006104de565b8160018114611b475760028114611b5157611b6d565b60019150506104de565b60ff841115611b6257611b62611abc565b50506001821b6104de565b5060208310610133831016604e8410600b8410161715611b90575081810a6104de565b611b9a8383611ad2565b8060001904821115611bae57611bae611abc565b029392505050565b600061159a60ff841683611b15565b6000816000190483118215151615611bdf57611bdf611abc565b500290565b634e487b7160e01b600052603260045260246000fd5b600060018201611c0c57611c0c611abc565b5060010190565b600060208284031215611c2557600080fd5b815161159a816118ab565b600080600060608486031215611c4557600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611c7057600080fd5b8151801515811461159a57600080fd5b808201808211156104de576104de611abc565b818103818111156104de576104de611abc565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cf65784516001600160a01b031683529383019391830191600101611cd1565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611d3457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db5de67775b43d2fe35eb07b88577286ff52ea607cf9044e904ebeeac812672964736f6c6343000810003300000000000000000000000013ec34586e759f0fcf353c58c7ebacdc0eb68552

Deployed Bytecode

0x60806040526004361061016a5760003560e01c8063715018a6116100d1578063c876d0b91161008a578063dd62ed3e11610064578063dd62ed3e1461043c578063de71428914610482578063ec1f3f6314610498578063f5648a4f146104b857600080fd5b8063c876d0b9146103e6578063d34628cc14610407578063dd2562ee1461042757600080fd5b8063715018a6146103305780637fae9c28146103455780638a74b9a81461035b5780638da5cb5b1461037057806395d89b4114610398578063a9059cbb146103c657600080fd5b806323b872dd1161012357806323b872dd14610250578063313ce5671461027057806331c2d8471461028c5780633bbac579146102ac57806351bc3c85146102e557806370a08231146102fa57600080fd5b806304f0b5ce1461017657806306fdde031461019f578063095ea7b3146101de5780630a11f8af1461020e5780630e2e757a1461022457806318160ddd1461023b57600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018c60135481565b6040519081526020015b60405180910390f35b3480156101ab57600080fd5b5060408051808201909152600d81526c5843656c6c2046696e616e636560981b60208201525b604051610196919061185d565b3480156101ea57600080fd5b506101fe6101f93660046118d0565b6104cd565b6040519015158152602001610196565b34801561021a57600080fd5b5061018c60145481565b34801561023057600080fd5b506102396104e4565b005b34801561024757600080fd5b5061018c61057d565b34801561025c57600080fd5b506101fe61026b3660046118fc565b61059e565b34801561027c57600080fd5b5060405160098152602001610196565b34801561029857600080fd5b506102396102a7366004611953565b610607565b3480156102b857600080fd5b506101fe6102c7366004611a18565b6001600160a01b031660009081526009602052604090205460ff1690565b3480156102f157600080fd5b5061023961069d565b34801561030657600080fd5b5061018c610315366004611a18565b6001600160a01b031660009081526006602052604090205490565b34801561033c57600080fd5b506102396106f6565b34801561035157600080fd5b5061018c60155481565b34801561036757600080fd5b5061023961076a565b34801561037c57600080fd5b506000546040516001600160a01b039091168152602001610196565b3480156103a457600080fd5b506040805180820190915260058152641610d1531360da1b60208201526101d1565b3480156103d257600080fd5b506101fe6103e13660046118d0565b610ab5565b3480156103f257600080fd5b506004546101fe906301000000900460ff1681565b34801561041357600080fd5b50610239610422366004611953565b610ac2565b34801561043357600080fd5b50610239610b54565b34801561044857600080fd5b5061018c610457366004611a35565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561048e57600080fd5b5061018c60035481565b3480156104a457600080fd5b506102396104b3366004611a6e565b610b98565b3480156104c457600080fd5b50610239610be9565b60006104da338484610c3f565b5060015b92915050565b6000546001600160a01b031633146105175760405162461bcd60e51b815260040161050e90611a87565b60405180910390fd5b60045460ff161561056a5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161050e565b6004805462ff00ff191662010001179055565b600061058b6009600a611bb6565b61059990633b9aca00611bc5565b905090565b60006105ab848484610d63565b6105fd84336105f885604051806060016040528060288152602001611d3a602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190611330565b610c3f565b5060019392505050565b6000546001600160a01b031633146106315760405162461bcd60e51b815260040161050e90611a87565b60005b81518110156106995760006009600084848151811061065557610655611be4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061069181611bfa565b915050610634565b5050565b6000546001600160a01b031633146106c75760405162461bcd60e51b815260040161050e90611a87565b3060009081526006602052604090205480156106e6576106e68161136a565b47801561069957610699816114de565b6000546001600160a01b031633146107205760405162461bcd60e51b815260040161050e90611a87565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107945760405162461bcd60e51b815260040161050e90611a87565b600180546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107dd9030906107cf6009600a611bb6565b6105f890633b9aca00611bc5565b600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108549190611c13565b6001600160a01b031663c9c6539630600160009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108da9190611c13565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610927573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061094b9190611c13565b600280546001600160a01b039283166001600160a01b03199091161790556001541663f305d7194730610993816001600160a01b031660009081526006602052604090205490565b6000806109a86000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a10573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a359190611c30565b505060025460015460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610a8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ab29190611c5e565b50565b60006104da338484610d63565b6000546001600160a01b03163314610aec5760405162461bcd60e51b815260040161050e90611a87565b60005b815181101561069957600160096000848481518110610b1057610b10611be4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610b4c81611bfa565b915050610aef565b6000546001600160a01b03163314610b7e5760405162461bcd60e51b815260040161050e90611a87565b60001960158190556014556004805463ff00000019169055565b6000546001600160a01b03163314610bc25760405162461bcd60e51b815260040161050e90611a87565b600d548111158015610bd65750600e548111155b610bdf57600080fd5b600d819055600e55565b6000546001600160a01b03163314610c135760405162461bcd60e51b815260040161050e90611a87565b60405133904780156108fc02916000818181858888f19350505050158015610ab2573d6000803e3d6000fd5b6001600160a01b038316610ca15760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161050e565b6001600160a01b038216610d025760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161050e565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610dc75760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161050e565b6001600160a01b038216610e295760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161050e565b60008111610e8b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161050e565b6001600160a01b03831660009081526008602052604081205460ff16158015610ecd57506001600160a01b03831660009081526008602052604090205460ff16155b15611267576001600160a01b03841660009081526009602052604090205460ff16158015610f1457506001600160a01b03831660009081526009602052604090205460ff16155b610f1d57600080fd5b60045460ff16610f6f5760405162461bcd60e51b815260206004820152601b60248201527f54726164696e6720686173206e6f7420656e61626c6564207965740000000000604482015260640161050e565b610f9b6064610f95600f5460125411610f8a57600b54610f8e565b600d545b8590611518565b906115a1565b6004549091506301000000900460ff161561108a576001546001600160a01b03848116911614801590610fdc57506002546001600160a01b03848116911614155b1561108a57326000908152600a602052604090205443116110775760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a40161050e565b326000908152600a602052604090204390555b6002546001600160a01b0385811691161480156110b557506001546001600160a01b03848116911614155b80156110da57506001600160a01b03831660009081526008602052604090205460ff16155b156111c2576015548211156111315760405162461bcd60e51b815260206004820152601e60248201527f4578636565647320746865205f6d61785843454c4c5478416d6f756e742e0000604482015260640161050e565b60145482611154856001600160a01b031660009081526006602052604090205490565b61115e9190611c80565b11156111ac5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161050e565b601280549060006111bc83611bfa565b91905055505b6002546001600160a01b0384811691161480156111e857506001600160a01b0384163014155b15611215576112126064610f956010546012541161120857600c54610f8e565b600e548590611518565b90505b30600090815260066020526040902054611231858585856115e3565b156112655761125361124e8461124984601354611779565b611779565b61136a565b47801561126357611263476114de565b505b505b6001600160a01b03841660009081526006602052604090205461128a908361178e565b6001600160a01b0385166000908152600660205260409020556112cf6112b0838361178e565b6001600160a01b038516600090815260066020526040902054906117d0565b6001600160a01b0380851660008181526006602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611319858561178e565b60405190815260200160405180910390a350505050565b600081848411156113545760405162461bcd60e51b815260040161050e919061185d565b5060006113618486611c93565b95945050505050565b6004805461ff00191661010017905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113ae576113ae611be4565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611407573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142b9190611c13565b8160018151811061143e5761143e611be4565b6001600160a01b0392831660209182029290920101526001546114649130911684610c3f565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac9479061149d908590600090869030904290600401611ca6565b600060405180830381600087803b1580156114b757600080fd5b505af11580156114cb573d6000803e3d6000fd5b50506004805461ff001916905550505050565b6017546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610699573d6000803e3d6000fd5b60008260000361152a575060006104de565b60006115368385611bc5565b9050826115438583611d17565b1461159a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161050e565b9392505050565b600061159a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061182f565b600354306000908152600660209081526040808320546001600160a01b0389168452600790925282205491928086101592911015908390819060ff161561162e575087905085611634565b50309050845b80156116ba576001600160a01b03821660009081526006602052604090205461165d90826117d0565b6001600160a01b0380841660008181526006602052604090819020939093559151908b16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906116b1908a815260200190565b60405180910390a35b600454610100900460ff161580156116d4575060045460ff165b80156116dd5750835b80156116e65750825b801561170b57506001600160a01b03891660009081526007602052604090205460ff16155b801561171f575060045462010000900460ff165b801561174457506001600160a01b03891660009081526008602052604090205460ff16155b80156117535750601154601254115b801561176c57506002546001600160a01b038981169116145b9998505050505050505050565b6000818311611788578261159a565b50919050565b600061159a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611330565b6000806117dd8385611c80565b90508381101561159a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161050e565b600081836118505760405162461bcd60e51b815260040161050e919061185d565b5060006113618486611d17565b600060208083528351808285015260005b8181101561188a5785810183015185820160400152820161186e565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ab257600080fd5b80356118cb816118ab565b919050565b600080604083850312156118e357600080fd5b82356118ee816118ab565b946020939093013593505050565b60008060006060848603121561191157600080fd5b833561191c816118ab565b9250602084013561192c816118ab565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561196657600080fd5b823567ffffffffffffffff8082111561197e57600080fd5b818501915085601f83011261199257600080fd5b8135818111156119a4576119a461193d565b8060051b604051601f19603f830116810181811085821117156119c9576119c961193d565b6040529182528482019250838101850191888311156119e757600080fd5b938501935b82851015611a0c576119fd856118c0565b845293850193928501926119ec565b98975050505050505050565b600060208284031215611a2a57600080fd5b813561159a816118ab565b60008060408385031215611a4857600080fd5b8235611a53816118ab565b91506020830135611a63816118ab565b809150509250929050565b600060208284031215611a8057600080fd5b5035919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611b0d578160001904821115611af357611af3611abc565b80851615611b0057918102915b93841c9390800290611ad7565b509250929050565b600082611b24575060016104de565b81611b31575060006104de565b8160018114611b475760028114611b5157611b6d565b60019150506104de565b60ff841115611b6257611b62611abc565b50506001821b6104de565b5060208310610133831016604e8410600b8410161715611b90575081810a6104de565b611b9a8383611ad2565b8060001904821115611bae57611bae611abc565b029392505050565b600061159a60ff841683611b15565b6000816000190483118215151615611bdf57611bdf611abc565b500290565b634e487b7160e01b600052603260045260246000fd5b600060018201611c0c57611c0c611abc565b5060010190565b600060208284031215611c2557600080fd5b815161159a816118ab565b600080600060608486031215611c4557600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611c7057600080fd5b8151801515811461159a57600080fd5b808201808211156104de576104de611abc565b818103818111156104de576104de611abc565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cf65784516001600160a01b031683529383019391830191600101611cd1565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611d3457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220db5de67775b43d2fe35eb07b88577286ff52ea607cf9044e904ebeeac812672964736f6c63430008100033

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

00000000000000000000000013ec34586e759f0fcf353c58c7ebacdc0eb68552

-----Decoded View---------------
Arg [0] : _addrX (address): 0x13ec34586E759F0Fcf353C58c7EBacdc0eB68552

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000013ec34586e759f0fcf353c58c7ebacdc0eb68552


Deployed Bytecode Sourcemap

5984:9612:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7351:58;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;7351:58:0;;;;;;;;8104:83;;;;;;;;;;-1:-1:-1;8174:5:0;;;;;;;;;;;;-1:-1:-1;;;8174:5:0;;;;8104:83;;;;;;;:::i;10619:161::-;;;;;;;;;;-1:-1:-1;10619:161:0;;;;;:::i;:::-;;:::i;:::-;;;1509:14:1;;1502:22;1484:41;;1472:2;1457:18;10619:161:0;1344:187:1;7416:61:0;;;;;;;;;;;;;;;;10788:167;;;;;;;;;;;;;:::i;:::-;;15116:95;;;;;;;;;;;;;:::i;9658:313::-;;;;;;;;;;-1:-1:-1;9658:313:0;;;;;:::i;:::-;;:::i;15219:83::-;;;;;;;;;;-1:-1:-1;15219:83:0;;7059:1;2139:36:1;;2127:2;2112:18;15219:83:0;1997:184:1;10449:162:0;;;;;;;;;;-1:-1:-1;10449:162:0;;;;;:::i;:::-;;:::i;13596:83::-;;;;;;;;;;-1:-1:-1;13596:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;13664:7:0;13643:4;13664:7;;;:4;:7;;;;;;;;;13596:83;14582:314;;;;;;;;;;;;;:::i;10173:117::-;;;;;;;;;;-1:-1:-1;10173:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;10266:16:0;10239:7;10266:16;;;:7;:16;;;;;;;10173:117;2609:148;;;;;;;;;;;;;:::i;7484:59::-;;;;;;;;;;;;;;;;14030:544;;;;;;;;;;;;;:::i;2395:79::-;;;;;;;;;;-1:-1:-1;2433:7:0;2460:6;2395:79;;-1:-1:-1;;;;;2460:6:0;;;3842:51:1;;3830:2;3815:18;2395:79:0;3696:203:1;13329:87:0;;;;;;;;;;-1:-1:-1;13401:7:0;;;;;;;;;;;;-1:-1:-1;;;13401:7:0;;;;13329:87;;14904:167;;;;;;;;;;-1:-1:-1;14904:167:0;;;;;:::i;:::-;;:::i;6287:40::-;;;;;;;;;;-1:-1:-1;6287:40:0;;;;;;;;;;;13424:164;;;;;;;;;;-1:-1:-1;13424:164:0;;;;;:::i;:::-;;:::i;15310:177::-;;;;;;;;;;;;;:::i;10298:143::-;;;;;;;;;;-1:-1:-1;10298:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;10406:18:0;;;10379:7;10406:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10298:143;6148:27;;;;;;;;;;;;;;;;9979:186;;;;;;;;;;-1:-1:-1;9979:186:0;;;;;:::i;:::-;;:::i;8195:119::-;;;;;;;;;;;;;:::i;10619:161::-;10694:4;10711:39;2052:10;10734:7;10743:6;10711:8;:39::i;:::-;-1:-1:-1;10768:4:0;10619:161;;;;;:::o;10788:167::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;;;;;;;;;10851:11:::1;::::0;::::1;;10850:12;10842:47;;;::::0;-1:-1:-1;;;10842:47:0;;5045:2:1;10842:47:0::1;::::0;::::1;5027:21:1::0;5084:2;5064:18;;;5057:30;5123:25;5103:18;;;5096:53;5166:18;;10842:47:0::1;4843:347:1::0;10842:47:0::1;10900:11;:18:::0;;-1:-1:-1;;10929:18:0;;;;;10788:167::o;15116:95::-;15169:7;7115:13;7059:1;7115:2;:13;:::i;:::-;7102:26;;:10;:26;:::i;:::-;15189:14;;15116:95;:::o;9658:313::-;9756:4;9773:36;9783:6;9791:9;9802:6;9773:9;:36::i;:::-;9820:121;9829:6;2052:10;9851:89;9889:6;9851:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9851:19:0;;;;;;:11;:19;;;;;;;;2052:10;9851:33;;;;;;;;;;:37;:89::i;:::-;9820:8;:121::i;:::-;-1:-1:-1;9959:4:0;9658:313;;;;;:::o;10449:162::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;10522:6:::1;10517:87;10538:6;:13;10534:1;:17;10517:87;;;10589:5;10571:4;:15;10576:6;10583:1;10576:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10571:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10571:15:0;:23;;-1:-1:-1;;10571:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10553:3;::::1;::::0;::::1;:::i;:::-;;;;10517:87;;;;10449:162:::0;:::o;14582:314::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;14673:4:::1;14634:20;10266:16:::0;;;:7;:16;;;;;;14693:14;;14690:73:::1;;14721:30;14738:12;14721:16;:30::i;:::-;14792:21;14827:12:::0;;14824:65:::1;;14853:24;14866:10;14853:12;:24::i;2609:148::-:0;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;2716:1:::1;2700:6:::0;;2679:40:::1;::::0;-1:-1:-1;;;;;2700:6:0;;::::1;::::0;2679:40:::1;::::0;2716:1;;2679:40:::1;2747:1;2730:19:::0;;-1:-1:-1;;;;;;2730:19:0::1;::::0;;2609:148::o;14030:544::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;14084:15:::1;:74:::0;;-1:-1:-1;;;;;;14084:74:0::1;14115:42;14084:74:::0;;::::1;::::0;;;14169:58:::1;::::0;14186:4:::1;::::0;7115:13:::1;7059:1;7115:2;:13;:::i;:::-;7102:26;::::0;:10:::1;:26;:::i;14169:58::-;14268:15;;;;;;;;;-1:-1:-1::0;;;;;14268:15:0::1;-1:-1:-1::0;;;;;14268:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14254:51:0::1;;14314:4;14321:15;;;;;;;;;-1:-1:-1::0;;;;;14321:15:0::1;-1:-1:-1::0;;;;;14321:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14254:90;::::0;-1:-1:-1;;;;;;14254:90:0::1;::::0;;;;;;-1:-1:-1;;;;;7641:15:1;;;14254:90:0::1;::::0;::::1;7623:34:1::0;7693:15;;7673:18;;;7666:43;7558:18;;14254:90:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14238:13;:106:::0;;-1:-1:-1;;;;;14238:106:0;;::::1;-1:-1:-1::0;;;;;;14238:106:0;;::::1;;::::0;;;14355:15;::::1;:31;14394:21;14425:4;14431:24;14425:4:::0;-1:-1:-1;;;;;10266:16:0;10239:7;10266:16;;;:7;:16;;;;;;;10173:117;14431:24:::1;14456:1;14458::::0;14460:7:::1;2433::::0;2460:6;-1:-1:-1;;;;;2460:6:0;;2395:79;14460:7:::1;14355:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;14355:129:0;;;-1:-1:-1;;;;;8079:15:1;;;14355:129:0::1;::::0;::::1;8061:34:1::0;8111:18;;;8104:34;;;;8154:18;;;8147:34;;;;8197:18;;;8190:34;8261:15;;;8240:19;;;8233:44;14468:15:0::1;8293:19:1::0;;;8286:35;7995:19;;14355:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;14502:13:0::1;::::0;;14533:15;14495:71:::1;::::0;-1:-1:-1;;;14495:71:0;;-1:-1:-1;;;;;14533:15:0;;::::1;14495:71;::::0;::::1;8817:51:1::0;-1:-1:-1;;8884:18:1;;;8877:34;14502:13:0;::::1;::::0;-1:-1:-1;14495:29:0::1;::::0;8790:18:1;;14495:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14030:544::o:0;14904:167::-;14982:4;14999:42;2052:10;15023:9;15034:6;14999:9;:42::i;13424:164::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;13498:6:::1;13493:88;13514:5;:12;13510:1;:16;13493:88;;;13565:4;13548;:14;13553:5;13559:1;13553:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;13548:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;13548:14:0;:21;;-1:-1:-1;;13548:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13528:3;::::1;::::0;::::1;:::i;:::-;;;;13493:88;;15310:177:::0;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;-1:-1:-1;;15367:17:0::1;:31:::0;;;15409:19:::1;:33:::0;15453:20:::1;:26:::0;;-1:-1:-1;;15453:26:0::1;::::0;;15310:177::o;9979:186::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;10059:12:::1;;10050:7;:21;;:47;;;;;10084:13;;10075:7;:22;;10050:47;10042:56;;;::::0;::::1;;10107:12;:20:::0;;;10136:13:::1;:21:::0;9979:186::o;8195:119::-;2522:6;;-1:-1:-1;;;;;2522:6:0;2052:10;2522:22;2514:67;;;;-1:-1:-1;;;2514:67:0;;;;;;;:::i;:::-;8255:51:::1;::::0;8263:10:::1;::::0;8284:21:::1;8255:51:::0;::::1;;;::::0;::::1;::::0;;;8284:21;8263:10;8255:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;13687:335:::0;-1:-1:-1;;;;;13780:19:0;;13772:68;;;;-1:-1:-1;;;13772:68:0;;9406:2:1;13772:68:0;;;9388:21:1;9445:2;9425:18;;;9418:30;9484:34;9464:18;;;9457:62;-1:-1:-1;;;9535:18:1;;;9528:34;9579:19;;13772:68:0;9204:400:1;13772:68:0;-1:-1:-1;;;;;13859:21:0;;13851:68;;;;-1:-1:-1;;;13851:68:0;;9811:2:1;13851:68:0;;;9793:21:1;9850:2;9830:18;;;9823:30;9889:34;9869:18;;;9862:62;-1:-1:-1;;;9940:18:1;;;9933:32;9982:19;;13851:68:0;9609:398:1;13851:68:0;-1:-1:-1;;;;;13930:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;13982:32;;160:25:1;;;13982:32:0;;133:18:1;13982:32:0;;;;;;;13687:335;;;:::o;11063:2258::-;-1:-1:-1;;;;;11151:18:0;;11143:68;;;;-1:-1:-1;;;11143:68:0;;10214:2:1;11143:68:0;;;10196:21:1;10253:2;10233:18;;;10226:30;10292:34;10272:18;;;10265:62;-1:-1:-1;;;10343:18:1;;;10336:35;10388:19;;11143:68:0;10012:401:1;11143:68:0;-1:-1:-1;;;;;11230:16:0;;11222:64;;;;-1:-1:-1;;;11222:64:0;;10620:2:1;11222:64:0;;;10602:21:1;10659:2;10639:18;;;10632:30;10698:34;10678:18;;;10671:62;-1:-1:-1;;;10749:18:1;;;10742:33;10792:19;;11222:64:0;10418:399:1;11222:64:0;11314:1;11305:6;:10;11297:64;;;;-1:-1:-1;;;11297:64:0;;11024:2:1;11297:64:0;;;11006:21:1;11063:2;11043:18;;;11036:30;11102:34;11082:18;;;11075:62;-1:-1:-1;;;11153:18:1;;;11146:39;11202:19;;11297:64:0;10822:405:1;11297:64:0;-1:-1:-1;;;;;11403:24:0;;11372:13;11403:24;;;:18;:24;;;;;;;;11402:25;:52;;;;-1:-1:-1;;;;;;11432:22:0;;;;;;:18;:22;;;;;;;;11431:23;11402:52;11398:1756;;;-1:-1:-1;;;;;11480:10:0;;;;;;:4;:10;;;;;;;;11479:11;:24;;;;-1:-1:-1;;;;;;11495:8:0;;;;;;:4;:8;;;;;;;;11494:9;11479:24;11471:33;;;;;;11527:11;;;;11519:51;;;;-1:-1:-1;;;11519:51:0;;11434:2:1;11519:51:0;;;11416:21:1;11473:2;11453:18;;;11446:30;11512:29;11492:18;;;11485:57;11559:18;;11519:51:0;11232:351:1;11519:51:0;11593:81;11670:3;11593:72;11620:15;;11605:14;;:30;11604:60;;11650:14;;11604:60;;;11637:12;;11604:60;11593:6;;:10;:72::i;:::-;:76;;:81::i;:::-;11693:20;;11585:89;;-1:-1:-1;11693:20:0;;;;;11689:490;;;11752:15;;-1:-1:-1;;;;;11738:30:0;;;11752:15;;11738:30;;;;:62;;-1:-1:-1;11786:13:0;;-1:-1:-1;;;;;11772:28:0;;;11786:13;;11772:28;;11738:62;11734:430;;;11888:9;11859:39;;;;:28;:39;;;;;;11930:12;-1:-1:-1;11825:242:0;;;;-1:-1:-1;;;11825:242:0;;11790:2:1;11825:242:0;;;11772:21:1;11829:2;11809:18;;;11802:30;11868:34;11848:18;;;11841:62;11939:34;11919:18;;;11912:62;-1:-1:-1;;;11990:19:1;;;11983:40;12040:19;;11825:242:0;11588:477:1;11825:242:0;12119:9;12090:39;;;;:28;:39;;;;;12132:12;12090:54;;11734:430;12205:13;;-1:-1:-1;;;;;12197:21:0;;;12205:13;;12197:21;:55;;;;-1:-1:-1;12236:15:0;;-1:-1:-1;;;;;12222:30:0;;;12236:15;;12222:30;;12197:55;:83;;;;-1:-1:-1;;;;;;12258:22:0;;;;;;:18;:22;;;;;;;;12256:24;12197:83;12193:333;;;12320:17;;12310:6;:27;;12302:70;;;;-1:-1:-1;;;12302:70:0;;12272:2:1;12302:70:0;;;12254:21:1;12311:2;12291:18;;;12284:30;12350:32;12330:18;;;12323:60;12400:18;;12302:70:0;12070:354:1;12302:70:0;12425:19;;12415:6;12399:13;12409:2;-1:-1:-1;;;;;10266:16:0;10239:7;10266:16;;;:7;:16;;;;;;;10173:117;12399:13;:22;;;;:::i;:::-;:45;;12391:84;;;;-1:-1:-1;;;12391:84:0;;12761:2:1;12391:84:0;;;12743:21:1;12800:2;12780:18;;;12773:30;12839:28;12819:18;;;12812:56;12885:18;;12391:84:0;12559:350:1;12391:84:0;12494:14;:16;;;:14;:16;;;:::i;:::-;;;;;;12193:333;12549:13;;-1:-1:-1;;;;;12543:19:0;;;12549:13;;12543:19;:43;;;;-1:-1:-1;;;;;;12566:20:0;;12581:4;12566:20;;12543:43;12540:175;;;12615:84;12695:3;12615:75;12642:16;;12627:14;;:31;12626:63;;12674:15;;12626:63;;;12660:13;;12615:6;;:10;:75::i;:84::-;12607:92;;12540:175;12778:4;12729:28;10266:16;;;:7;:16;;;;;;12803:39;12818:4;12824:2;12828:6;12836:5;12803:14;:39::i;:::-;12799:344;;;12863:72;12880:54;12884:6;12891:42;12895:20;12916:16;;12891:3;:42::i;:::-;12880:3;:54::i;:::-;12863:16;:72::i;:::-;12983:21;13026:22;;13023:105;;13073:35;13086:21;13073:12;:35::i;:::-;12844:299;12799:344;11456:1698;11398:1756;-1:-1:-1;;;;;13178:13:0;;;;;;:7;:13;;;;;;:25;;13196:6;13178:17;:25::i;:::-;-1:-1:-1;;;;;13164:13:0;;;;;;:7;:13;;;;;:39;13226:34;13242:17;:6;13253:5;13242:10;:17::i;:::-;-1:-1:-1;;;;;13226:11:0;;;;;;:7;:11;;;;;;;:15;:34::i;:::-;-1:-1:-1;;;;;13214:11:0;;;;;;;:7;:11;;;;;:46;;;;13276:37;;;13295:17;:6;13306:5;13295:10;:17::i;:::-;13276:37;;160:25:1;;;148:2;133:18;13276:37:0;;;;;;;11132:2189;11063:2258;;;:::o;5194:190::-;5280:7;5316:12;5308:6;;;;5300:29;;;;-1:-1:-1;;;5300:29:0;;;;;;;;:::i;:::-;-1:-1:-1;5340:9:0;5352:5;5356:1;5352;:5;:::i;:::-;5340:17;5194:190;-1:-1:-1;;;;;5194:190:0:o;8322:483::-;7285:6;:13;;-1:-1:-1;;7285:13:0;;;;;8424:16:::1;::::0;;8438:1:::1;8424:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8424:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8424:16:0::1;8400:40;;8469:4;8451;8456:1;8451:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8451:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8495:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8495:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8451:7;;8495:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8485:4;8490:1;8485:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8485:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8560:15:::1;::::0;8528:62:::1;::::0;8545:4:::1;::::0;8560:15:::1;8578:11:::0;8528:8:::1;:62::i;:::-;8601:15;::::0;:196:::1;::::0;-1:-1:-1;;;8601:196:0;;-1:-1:-1;;;;;8601:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8682:11;;8601:15:::1;::::0;8724:4;;8751::::1;::::0;8771:15:::1;::::0;8601:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7321:6:0;:14;;-1:-1:-1;;7321:14:0;;;-1:-1:-1;;;;8322:483:0:o;10963:92::-;11020:10;;:27;;-1:-1:-1;;;;;11020:10:0;;;;:27;;;;;11040:6;;11020:10;:27;:10;:27;11040:6;11020:10;:27;;;;;;;;;;;;;;;;;;;5392:246;5450:7;5474:1;5479;5474:6;5470:47;;-1:-1:-1;5504:1:0;5497:8;;5470:47;5527:9;5539:5;5543:1;5539;:5;:::i;:::-;5527:17;-1:-1:-1;5572:1:0;5563:5;5567:1;5527:17;5563:5;:::i;:::-;:10;5555:56;;;;-1:-1:-1;;;5555:56:0;;14456:2:1;5555:56:0;;;14438:21:1;14495:2;14475:18;;;14468:30;14534:34;14514:18;;;14507:62;-1:-1:-1;;;14585:18:1;;;14578:31;14626:19;;5555:56:0;14254:397:1;5555:56:0;5629:1;5392:246;-1:-1:-1;;;5392:246:0:o;5646:132::-;5704:7;5731:39;5735:1;5738;5731:39;;;;;;;;;;;;;;;;;:3;:39::i;8813:837::-;8961:12;;9029:4;8913;10266:16;;;:7;:16;;;;;;;;;-1:-1:-1;;;;;9111:26:0;;;;:20;:26;;;;;;8913:4;;8951:22;;;;;9011:40;;;;8913:4;;;;9111:26;;9108:129;;;-1:-1:-1;9170:4:0;;-1:-1:-1;9151:6:0;9108:129;;;-1:-1:-1;9212:4:0;;-1:-1:-1;9229:6:0;9108:129;9250:12;;9247:109;;-1:-1:-1;;;;;9283:18:0;;;;;;:7;:18;;;;;;:32;;9306:8;9283:22;:32::i;:::-;-1:-1:-1;;;;;9264:18:0;;;;;;;:7;:18;;;;;;;:51;;;;9321:33;;;;;;;;;;9347:6;160:25:1;;148:2;133:18;;14:177;9321:33:0;;;;;;;;9247:109;9374:6;;;;;;;9373:7;:31;;;;-1:-1:-1;9393:11:0;;;;9373:31;:57;;;;;9417:13;9373:57;:89;;;;;9443:19;9373:89;:129;;;;-1:-1:-1;;;;;;9476:26:0;;;;;;:20;:26;;;;;;;;9475:27;9373:129;:153;;;;-1:-1:-1;9515:11:0;;;;;;;9373:153;:191;;;;-1:-1:-1;;;;;;9540:24:0;;;;;;:18;:24;;;;;;;;9539:25;9373:191;:237;;;;;9592:18;;9577:14;;:33;9373:237;:269;;;;-1:-1:-1;9629:13:0;;-1:-1:-1;;;;;9623:19:0;;;9629:13;;9623:19;9373:269;9366:276;8813:837;-1:-1:-1;;;;;;;;;8813:837:0:o;15495:98::-;15552:7;15579:1;15577;:3;15576:9;;15584:1;15576:9;;;-1:-1:-1;15582:1:0;15495:98;-1:-1:-1;15495:98:0:o;5050:136::-;5108:7;5135:43;5139:1;5142;5135:43;;;;;;;;;;;;;;;;;:3;:43::i;4863:179::-;4921:7;;4953:5;4957:1;4953;:5;:::i;:::-;4941:17;;4982:1;4977;:6;;4969:46;;;;-1:-1:-1;;;4969:46:0;;14858:2:1;4969:46:0;;;14840:21:1;14897:2;14877:18;;;14870:30;14936:29;14916:18;;;14909:57;14983:18;;4969:46:0;14656:351:1;5786:189:0;5872:7;5907:12;5900:5;5892:28;;;;-1:-1:-1;;;5892:28:0;;;;;;;;:::i;:::-;-1:-1:-1;5931:9:0;5943:5;5947:1;5943;:5;:::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:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:134;953:20;;982:31;953:20;982:31;:::i;:::-;885:134;;;:::o;1024:315::-;1092:6;1100;1153:2;1141:9;1132:7;1128:23;1124:32;1121:52;;;1169:1;1166;1159:12;1121:52;1208:9;1195:23;1227:31;1252:5;1227:31;:::i;:::-;1277:5;1329:2;1314:18;;;;1301:32;;-1:-1:-1;;;1024:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:127::-;2247:10;2242:3;2238:20;2235:1;2228:31;2278:4;2275:1;2268:15;2302:4;2299:1;2292:15;2318:1121;2402:6;2433:2;2476;2464:9;2455:7;2451:23;2447:32;2444:52;;;2492:1;2489;2482:12;2444:52;2532:9;2519:23;2561:18;2602:2;2594:6;2591:14;2588:34;;;2618:1;2615;2608:12;2588:34;2656:6;2645:9;2641:22;2631:32;;2701:7;2694:4;2690:2;2686:13;2682:27;2672:55;;2723:1;2720;2713:12;2672:55;2759:2;2746:16;2781:2;2777;2774:10;2771:36;;;2787:18;;:::i;:::-;2833:2;2830:1;2826:10;2865:2;2859:9;2928:2;2924:7;2919:2;2915;2911:11;2907:25;2899:6;2895:38;2983:6;2971:10;2968:22;2963:2;2951:10;2948:18;2945:46;2942:72;;;2994:18;;:::i;:::-;3030:2;3023:22;3080:18;;;3114:15;;;;-1:-1:-1;3156:11:1;;;3152:20;;;3184:19;;;3181:39;;;3216:1;3213;3206:12;3181:39;3240:11;;;;3260:148;3276:6;3271:3;3268:15;3260:148;;;3342:23;3361:3;3342:23;:::i;:::-;3330:36;;3293:12;;;;3386;;;;3260:148;;;3427:6;2318:1121;-1:-1:-1;;;;;;;;2318:1121:1:o;3444:247::-;3503:6;3556:2;3544:9;3535:7;3531:23;3527:32;3524:52;;;3572:1;3569;3562:12;3524:52;3611:9;3598:23;3630:31;3655:5;3630:31;:::i;3904:388::-;3972:6;3980;4033:2;4021:9;4012:7;4008:23;4004:32;4001:52;;;4049:1;4046;4039:12;4001:52;4088:9;4075:23;4107:31;4132:5;4107:31;:::i;:::-;4157:5;-1:-1:-1;4214:2:1;4199:18;;4186:32;4227:33;4186:32;4227:33;:::i;:::-;4279:7;4269:17;;;3904:388;;;;;:::o;4297:180::-;4356:6;4409:2;4397:9;4388:7;4384:23;4380:32;4377:52;;;4425:1;4422;4415:12;4377:52;-1:-1:-1;4448:23:1;;4297:180;-1:-1:-1;4297:180:1:o;4482:356::-;4684:2;4666:21;;;4703:18;;;4696:30;4762:34;4757:2;4742:18;;4735:62;4829:2;4814:18;;4482:356::o;5195:127::-;5256:10;5251:3;5247:20;5244:1;5237:31;5287:4;5284:1;5277:15;5311:4;5308:1;5301:15;5327:422;5416:1;5459:5;5416:1;5473:270;5494:7;5484:8;5481:21;5473:270;;;5553:4;5549:1;5545:6;5541:17;5535:4;5532:27;5529:53;;;5562:18;;:::i;:::-;5612:7;5602:8;5598:22;5595:55;;;5632:16;;;;5595:55;5711:22;;;;5671:15;;;;5473:270;;;5477:3;5327:422;;;;;:::o;5754:806::-;5803:5;5833:8;5823:80;;-1:-1:-1;5874:1:1;5888:5;;5823:80;5922:4;5912:76;;-1:-1:-1;5959:1:1;5973:5;;5912:76;6004:4;6022:1;6017:59;;;;6090:1;6085:130;;;;5997:218;;6017:59;6047:1;6038:10;;6061:5;;;6085:130;6122:3;6112:8;6109:17;6106:43;;;6129:18;;:::i;:::-;-1:-1:-1;;6185:1:1;6171:16;;6200:5;;5997:218;;6299:2;6289:8;6286:16;6280:3;6274:4;6271:13;6267:36;6261:2;6251:8;6248:16;6243:2;6237:4;6234:12;6230:35;6227:77;6224:159;;;-1:-1:-1;6336:19:1;;;6368:5;;6224:159;6415:34;6440:8;6434:4;6415:34;:::i;:::-;6485:6;6481:1;6477:6;6473:19;6464:7;6461:32;6458:58;;;6496:18;;:::i;:::-;6534:20;;5754:806;-1:-1:-1;;;5754:806:1:o;6565:140::-;6623:5;6652:47;6693:4;6683:8;6679:19;6673:4;6652:47;:::i;6710:168::-;6750:7;6816:1;6812;6808:6;6804:14;6801:1;6798:21;6793:1;6786:9;6779:17;6775:45;6772:71;;;6823:18;;:::i;:::-;-1:-1:-1;6863:9:1;;6710:168::o;6883:127::-;6944:10;6939:3;6935:20;6932:1;6925:31;6975:4;6972:1;6965:15;6999:4;6996:1;6989:15;7015:135;7054:3;7075:17;;;7072:43;;7095:18;;:::i;:::-;-1:-1:-1;7142:1:1;7131:13;;7015:135::o;7155:251::-;7225:6;7278:2;7266:9;7257:7;7253:23;7249:32;7246:52;;;7294:1;7291;7284:12;7246:52;7326:9;7320:16;7345:31;7370:5;7345:31;:::i;8332:306::-;8420:6;8428;8436;8489:2;8477:9;8468:7;8464:23;8460:32;8457:52;;;8505:1;8502;8495:12;8457:52;8534:9;8528:16;8518:26;;8584:2;8573:9;8569:18;8563:25;8553:35;;8628:2;8617:9;8613:18;8607:25;8597:35;;8332:306;;;;;:::o;8922:277::-;8989:6;9042:2;9030:9;9021:7;9017:23;9013:32;9010:52;;;9058:1;9055;9048:12;9010:52;9090:9;9084:16;9143:5;9136:13;9129:21;9122:5;9119:32;9109:60;;9165:1;9162;9155:12;12429:125;12494:9;;;12515:10;;;12512:36;;;12528:18;;:::i;12914:128::-;12981:9;;;13002:11;;;12999:37;;;13016:18;;:::i;13047:980::-;13309:4;13357:3;13346:9;13342:19;13388:6;13377:9;13370:25;13414:2;13452:6;13447:2;13436:9;13432:18;13425:34;13495:3;13490:2;13479:9;13475:18;13468:31;13519:6;13554;13548:13;13585:6;13577;13570:22;13623:3;13612:9;13608:19;13601:26;;13662:2;13654:6;13650:15;13636:29;;13683:1;13693:195;13707:6;13704:1;13701:13;13693:195;;;13772:13;;-1:-1:-1;;;;;13768:39:1;13756:52;;13863:15;;;;13828:12;;;;13804:1;13722:9;13693:195;;;-1:-1:-1;;;;;;;13944:32:1;;;;13939:2;13924:18;;13917:60;-1:-1:-1;;;14008:3:1;13993:19;13986:35;13905:3;13047:980;-1:-1:-1;;;13047:980:1:o;14032:217::-;14072:1;14098;14088:132;;14142:10;14137:3;14133:20;14130:1;14123:31;14177:4;14174:1;14167:15;14205:4;14202:1;14195:15;14088:132;-1:-1:-1;14234:9:1;;14032:217::o

Swarm Source

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