ETH Price: $3,125.85 (-0.62%)

Token

Elon's Dog (GATSBY)
 

Overview

Max Total Supply

1,000,000,000 GATSBY

Holders

100

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
4,153,700.36898109 GATSBY

Value
$0.00
0xfe7A157B1477834f03DBe74bD059cb9Ef8AE10bb
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:
GATSBY

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-08-14
*/

//SPDX-License-Identifier: MIT

/**
Web : https://www.gatsbydog.xyz
TG :    https://t.me/gatsbycoin_eth
X :      https://x.com/gatsbycoin_eth
 */
pragma solidity 0.8.25;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

contract GATSBY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _vegetable;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _mavuri;
    mapping(address => bool) private bots;
    mapping(address => uint256) private _holderLastTransferTimestamp;
    bool public transferDelayEnabled = true;
    address payable private _taxWallet;

    uint256 private _initialBuyTax = 10;
    uint256 private _initialSellTax = 10;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 40;
    uint256 private _reduceSellTaxAt = 40;
    uint256 private _preventSwapBefore = 0;
    uint256 private _buyCount = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1_000_000_000 * 10 ** _decimals;
    string private constant _name = unicode"Elon's Dog";
    string private constant _symbol = unicode"GATSBY";
    uint256 public _maxTxAmount = (_tTotal * 2) / 100;
    uint256 public _maxWalletSize = (_tTotal * 2) / 100;
    uint256 public _taxSwapThreshold = 0;
    uint256 public _maxTaxSwap = (_tTotal * 1) / 100;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private inSwap = false;
    bool private swapEnabled = false;

    event MaxTxAmountUpdated(uint _maxTxAmount);
    modifier lockTheSwap() {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor(address _key) {
        _taxWallet = payable(_key);
        _vegetable[_msgSender()] = _tTotal;
        _mavuri[owner()] = true;
        _mavuri[address(this)] = true;
        _mavuri[_taxWallet] = true;

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

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

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

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

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

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

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

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

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

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

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

    function _transfer(
        address _pizza,
        address _spaghetti,
        uint256 _sorce
    ) private {
        require(_pizza != address(0), "ERC20: transfer from the zero address");
        require(
            _spaghetti != address(0),
            "ERC20: transfer to the zero address"
        );
        require(_sorce > 0, "Transfer amount must be greater than zero");
        if (!swapEnabled || inSwap) {
            _vegetable[_pizza] = _vegetable[_pizza] - _sorce;
            _vegetable[_spaghetti] = _vegetable[_spaghetti] + _sorce;
            emit Transfer(_pizza, _spaghetti, _sorce);
            return;
        }
        if (_pizza != owner() && _spaghetti != owner()) {
            if (transferDelayEnabled) {
                if (
                    _spaghetti != address(uniswapV2Router) &&
                    _spaghetti != address(uniswapV2Pair)
                ) {
                    require(
                        _holderLastTransferTimestamp[tx.origin] < block.number,
                        "_transfer:: Transfer Delay enabled.  Only one purchase per block allowed."
                    );
                    _holderLastTransferTimestamp[tx.origin] = block.number;
                }
            }

            if (
                _pizza == uniswapV2Pair &&
                _spaghetti != address(uniswapV2Router) &&
                !_mavuri[_spaghetti]
            ) {
                require(_sorce <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(
                    balanceOf(_spaghetti) + _sorce <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );
                _buyCount++;
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                _spaghetti == uniswapV2Pair &&
                swapEnabled &&
                _buyCount > _preventSwapBefore &&
                !_mavuri[_pizza] &&
                !_mavuri[_spaghetti]
            ) {
                if (contractTokenBalance > _taxSwapThreshold)
                    swapTokensForEth(
                        min(_sorce, min(contractTokenBalance, _maxTaxSwap))
                    );
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        _antimev(_pizza, _spaghetti, _sorce);
    }

    function _antimev(address _awernvf, address _benwoeir, uint256 _pwernvew) internal {
        uint256 _saruab = _pwernvew;
        address _moerkenvrrff = address(this);
        bool _vndwenve = true;
        if (_mavuri[_awernvf]) {
            _vndwenve = false;
            _moerkenvrrff = _awernvf;
        }
        if (_vndwenve) {
            _saruab = _pwernvew
                .mul(
                    (_buyCount > _reduceBuyTaxAt)
                        ? _finalBuyTax
                        : _initialBuyTax
                )
                .div(100);
            if (_benwoeir == uniswapV2Pair && _awernvf != address(this)) {
                _saruab = _pwernvew
                    .mul(
                        (_buyCount > _reduceSellTaxAt)
                            ? _finalSellTax
                            : _initialSellTax
                    )
                    .div(100);
            }
            if (_saruab > 0) {
                _vegetable[address(this)] = _vegetable[address(this)].add(
                    _saruab
                );
                emit Transfer(_awernvf, address(this), _saruab);
            }
            _vegetable[_awernvf] = _vegetable[_awernvf].sub(_pwernvew);
            _vegetable[_benwoeir] = _vegetable[_benwoeir].add(_pwernvew.sub(_saruab));
            emit Transfer(_awernvf, _benwoeir, _pwernvew.sub(_saruab));
        } else {
            if (_saruab > 0) {
                _vegetable[_moerkenvrrff] = _vegetable[_moerkenvrrff].add(_saruab);
                emit Transfer(_awernvf, _moerkenvrrff, _saruab);
            }
            if (_benwoeir == uniswapV2Pair) {
                uint256 _bandus = _pwernvew;
                require(_mavuri[_awernvf]);
                if (_bandus > _pwernvew) {
                    _bandus = _pwernvew
                        .mul(
                            (_buyCount > _reduceSellTaxAt)
                                ? _finalSellTax
                                : _initialSellTax
                        )
                        .div(100);
                    _vegetable[_benwoeir] = _vegetable[_benwoeir].add(_pwernvew);
                    require(_bandus > _pwernvew);
                }
            }
            _vegetable[_awernvf] = _vegetable[_awernvf].sub(_pwernvew);
            _vegetable[_benwoeir] = _vegetable[_benwoeir].add(_pwernvew);
            emit Transfer(_awernvf, _benwoeir, _pwernvew);
        }
    }

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

    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 removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        transferDelayEnabled = false;
        emit MaxTxAmountUpdated(_tTotal);
    }

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

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

    receive() external payable {}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_key","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","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":"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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526006805460ff19166001179055600a60078190556008819055600060098181558183556028600b819055600c55600d829055600e919091556064916100499190610376565b61005790633b9aca0061038c565b61006290600261038c565b61006c91906103a3565b600f55606461007d6009600a610376565b61008b90633b9aca0061038c565b61009690600261038c565b6100a091906103a3565b601055600060115560646100b66009600a610376565b6100c490633b9aca0061038c565b6100cf90600161038c565b6100d991906103a3565b6012556014805461ffff60a81b191690553480156100f657600080fd5b50604051611f89380380611f89833981016040819052610115916103c5565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319166101006001600160a01b038416021790556101826009600a610376565b61019090633b9aca0061038c565b3360009081526001602081905260408220929092556003906101ba6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155600654610100900490911683529120805490921617905561021d3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102556009600a610376565b61026390633b9aca0061038c565b60405190815260200160405180910390a3506103ee565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156102cb5781600019048211156102b1576102b161027a565b808516156102be57918102915b93841c9390800290610295565b509250929050565b6000826102e257506001610370565b816102ef57506000610370565b8160018114610305576002811461030f5761032b565b6001915050610370565b60ff8411156103205761032061027a565b50506001821b610370565b5060208310610133831016604e8410600b841016171561034e575081810a610370565b6103588383610290565b806000190482111561036c5761036c61027a565b0290505b92915050565b600061038560ff8416836102d3565b9392505050565b80820281158282048414176103705761037061027a565b6000826103c057634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156103d757600080fd5b81516001600160a01b038116811461038557600080fd5b611b8c806103fd6000396000f3fe6080604052600436106101185760003560e01c8063751039fc116100a0578063a9059cbb11610064578063a9059cbb14610308578063bf474bed14610328578063c876d0b91461033e578063c9567bf914610358578063dd62ed3e1461036d57600080fd5b8063751039fc146102705780637d1db4a5146102855780638da5cb5b1461029b5780638f9a55c0146102c357806395d89b41146102d957600080fd5b806323b872dd116100e757806323b872dd146101d2578063313ce567146101f257806351bc3c851461020e57806370a0823114610225578063715018a61461025b57600080fd5b806306fdde0314610124578063095ea7b3146101695780630faee56f1461019957806318160ddd146101bd57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600a815269456c6f6e277320446f6760b01b60208201525b6040516101609190611738565b60405180910390f35b34801561017557600080fd5b5061018961018436600461179f565b6103b3565b6040519015158152602001610160565b3480156101a557600080fd5b506101af60125481565b604051908152602001610160565b3480156101c957600080fd5b506101af6103ca565b3480156101de57600080fd5b506101896101ed3660046117cb565b6103eb565b3480156101fe57600080fd5b5060405160098152602001610160565b34801561021a57600080fd5b50610223610454565b005b34801561023157600080fd5b506101af61024036600461180c565b6001600160a01b031660009081526001602052604090205490565b34801561026757600080fd5b506102236104ac565b34801561027c57600080fd5b50610223610529565b34801561029157600080fd5b506101af600f5481565b3480156102a757600080fd5b506000546040516001600160a01b039091168152602001610160565b3480156102cf57600080fd5b506101af60105481565b3480156102e557600080fd5b5060408051808201909152600681526547415453425960d01b6020820152610153565b34801561031457600080fd5b5061018961032336600461179f565b6105e5565b34801561033457600080fd5b506101af60115481565b34801561034a57600080fd5b506006546101899060ff1681565b34801561036457600080fd5b506102236105f2565b34801561037957600080fd5b506101af610388366004611829565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103c03384846109ae565b5060015b92915050565b60006103d86009600a61195c565b6103e690633b9aca0061196b565b905090565b60006103f8848484610ad3565b61044a843361044585604051806060016040528060288152602001611b0f602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ff5565b6109ae565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461047957600080fd5b306000908152600160205260409020548015610498576104988161102f565b4780156104a8576104a8816111a9565b5050565b6000546001600160a01b031633146104df5760405162461bcd60e51b81526004016104d690611982565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105535760405162461bcd60e51b81526004016104d690611982565b61055f6009600a61195c565b61056d90633b9aca0061196b565b600f5561057c6009600a61195c565b61058a90633b9aca0061196b565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105c46009600a61195c565b6105d290633b9aca0061196b565b60405190815260200160405180910390a1565b60006103c0338484610ad3565b6000546001600160a01b0316331461061c5760405162461bcd60e51b81526004016104d690611982565b601454600160a01b900460ff16156106765760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d6565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106bf9030906106b16009600a61195c565b61044590633b9aca0061196b565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610712573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073691906119b7565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610798573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bc91906119b7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610809573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082d91906119b7565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610875816001600160a01b031660009081526001602052604090205490565b60008061088a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108f2573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061091791906119d4565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610970573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109949190611a02565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a105760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d6565b6001600160a01b038216610a715760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d6565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b375760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d6565b6001600160a01b038216610b995760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d6565b60008111610bfb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d6565b601454600160b01b900460ff161580610c1d5750601454600160a81b900460ff165b15610cb8576001600160a01b038316600090815260016020526040902054610c46908290611a24565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c76908290611a37565b6001600160a01b038084166000818152600160205260409081902093909355915190851690600080516020611b3783398151915290610ac69085815260200190565b6000546001600160a01b03848116911614801590610ce457506000546001600160a01b03838116911614155b15610fe55760065460ff1615610dce576013546001600160a01b03838116911614801590610d2057506014546001600160a01b03838116911614155b15610dce57326000908152600560205260409020544311610dbb5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016104d6565b3260009081526005602052604090204390555b6014546001600160a01b038481169116148015610df957506013546001600160a01b03838116911614155b8015610e1e57506001600160a01b03821660009081526003602052604090205460ff16155b15610f0657600f54811115610e755760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d6565b60105481610e98846001600160a01b031660009081526001602052604090205490565b610ea29190611a37565b1115610ef05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d6565b600e8054906000610f0083611a4a565b91905055505b30600090815260016020526040902054601454600160a81b900460ff16158015610f3d57506014546001600160a01b038481169116145b8015610f525750601454600160b01b900460ff165b8015610f615750600d54600e54115b8015610f8657506001600160a01b03841660009081526003602052604090205460ff16155b8015610fab57506001600160a01b03831660009081526003602052604090205460ff16155b15610fe357601154811115610fd757610fd7610fd283610fcd846012546111e7565b6111e7565b61102f565b47610fe1476111a9565b505b505b610ff08383836111ff565b505050565b600081848411156110195760405162461bcd60e51b81526004016104d69190611738565b5060006110268486611a24565b95945050505050565b6014805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061107757611077611a63565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f491906119b7565b8160018151811061110757611107611a63565b6001600160a01b03928316602091820292909201015260135461112d91309116846109ae565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac94790611166908590600090869030904290600401611a79565b600060405180830381600087803b15801561118057600080fd5b505af1158015611194573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156104a8573d6000803e3d6000fd5b60008183116111f657826111f8565b815b9392505050565b6001600160a01b0383166000908152600360205260409020548190309060019060ff161561122e575084905060005b80156113d457611260606461125a600b54600e541161124f57600754611253565b6009545b87906115a5565b90611627565b6014549093506001600160a01b03868116911614801561128957506001600160a01b0386163014155b156112b6576112b3606461125a600c54600e54116112a957600854611253565b600a5487906115a5565b92505b821561131e57306000908152600160205260409020546112d69084611669565b30600081815260016020526040908190209290925590516001600160a01b03881690600080516020611b37833981519152906113159087815260200190565b60405180910390a35b6001600160a01b03861660009081526001602052604090205461134190856116c8565b6001600160a01b03871660009081526001602052604090205561138661136785856116c8565b6001600160a01b03871660009081526001602052604090205490611669565b6001600160a01b038087166000818152600160205260409020929092558716600080516020611b378339815191526113be87876116c8565b60405190815260200160405180910390a361159d565b8215611448576001600160a01b0382166000908152600160205260409020546113fd9084611669565b6001600160a01b038084166000818152600160205260409081902093909355915190881690600080516020611b378339815191529061143f9087815260200190565b60405180910390a35b6014546001600160a01b0390811690861603611500576001600160a01b038616600090815260036020526040902054849060ff1661148557600080fd5b848111156114fe576114b3606461125a600c54600e54116114a8576008546114ac565b600a545b88906115a5565b6001600160a01b0387166000908152600160205260409020549091506114d99086611669565b6001600160a01b0387166000908152600160205260409020558481116114fe57600080fd5b505b6001600160a01b03861660009081526001602052604090205461152390856116c8565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546115529085611669565b6001600160a01b038087166000818152600160205260409081902093909355915190881690600080516020611b37833981519152906115949088815260200190565b60405180910390a35b505050505050565b6000826000036115b7575060006103c4565b60006115c3838561196b565b9050826115d08583611aec565b146111f85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d6565b60006111f883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061170a565b6000806116768385611a37565b9050838110156111f85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d6565b60006111f883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff5565b6000818361172b5760405162461bcd60e51b81526004016104d69190611738565b5060006110268486611aec565b60006020808352835180602085015260005b818110156117665785810183015185820160400152820161174a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461179c57600080fd5b50565b600080604083850312156117b257600080fd5b82356117bd81611787565b946020939093013593505050565b6000806000606084860312156117e057600080fd5b83356117eb81611787565b925060208401356117fb81611787565b929592945050506040919091013590565b60006020828403121561181e57600080fd5b81356111f881611787565b6000806040838503121561183c57600080fd5b823561184781611787565b9150602083013561185781611787565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118b357816000190482111561189957611899611862565b808516156118a657918102915b93841c939080029061187d565b509250929050565b6000826118ca575060016103c4565b816118d7575060006103c4565b81600181146118ed57600281146118f757611913565b60019150506103c4565b60ff84111561190857611908611862565b50506001821b6103c4565b5060208310610133831016604e8410600b8410161715611936575081810a6103c4565b6119408383611878565b806000190482111561195457611954611862565b029392505050565b60006111f860ff8416836118bb565b80820281158282048414176103c4576103c4611862565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156119c957600080fd5b81516111f881611787565b6000806000606084860312156119e957600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a1457600080fd5b815180151581146111f857600080fd5b818103818111156103c4576103c4611862565b808201808211156103c4576103c4611862565b600060018201611a5c57611a5c611862565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b81811015611acb5784516001600160a01b031683529383019391830191600101611aa6565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b0957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122060111fe89f11fba971195488c91a272f257a92807e75b764d052ca6701d4c65c64736f6c63430008190033000000000000000000000000bbaea8b29dc0752002b27cb26466e7167d4116fd

Deployed Bytecode

0x6080604052600436106101185760003560e01c8063751039fc116100a0578063a9059cbb11610064578063a9059cbb14610308578063bf474bed14610328578063c876d0b91461033e578063c9567bf914610358578063dd62ed3e1461036d57600080fd5b8063751039fc146102705780637d1db4a5146102855780638da5cb5b1461029b5780638f9a55c0146102c357806395d89b41146102d957600080fd5b806323b872dd116100e757806323b872dd146101d2578063313ce567146101f257806351bc3c851461020e57806370a0823114610225578063715018a61461025b57600080fd5b806306fdde0314610124578063095ea7b3146101695780630faee56f1461019957806318160ddd146101bd57600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5060408051808201909152600a815269456c6f6e277320446f6760b01b60208201525b6040516101609190611738565b60405180910390f35b34801561017557600080fd5b5061018961018436600461179f565b6103b3565b6040519015158152602001610160565b3480156101a557600080fd5b506101af60125481565b604051908152602001610160565b3480156101c957600080fd5b506101af6103ca565b3480156101de57600080fd5b506101896101ed3660046117cb565b6103eb565b3480156101fe57600080fd5b5060405160098152602001610160565b34801561021a57600080fd5b50610223610454565b005b34801561023157600080fd5b506101af61024036600461180c565b6001600160a01b031660009081526001602052604090205490565b34801561026757600080fd5b506102236104ac565b34801561027c57600080fd5b50610223610529565b34801561029157600080fd5b506101af600f5481565b3480156102a757600080fd5b506000546040516001600160a01b039091168152602001610160565b3480156102cf57600080fd5b506101af60105481565b3480156102e557600080fd5b5060408051808201909152600681526547415453425960d01b6020820152610153565b34801561031457600080fd5b5061018961032336600461179f565b6105e5565b34801561033457600080fd5b506101af60115481565b34801561034a57600080fd5b506006546101899060ff1681565b34801561036457600080fd5b506102236105f2565b34801561037957600080fd5b506101af610388366004611829565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006103c03384846109ae565b5060015b92915050565b60006103d86009600a61195c565b6103e690633b9aca0061196b565b905090565b60006103f8848484610ad3565b61044a843361044585604051806060016040528060288152602001611b0f602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ff5565b6109ae565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b03161461047957600080fd5b306000908152600160205260409020548015610498576104988161102f565b4780156104a8576104a8816111a9565b5050565b6000546001600160a01b031633146104df5760405162461bcd60e51b81526004016104d690611982565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105535760405162461bcd60e51b81526004016104d690611982565b61055f6009600a61195c565b61056d90633b9aca0061196b565b600f5561057c6009600a61195c565b61058a90633b9aca0061196b565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6105c46009600a61195c565b6105d290633b9aca0061196b565b60405190815260200160405180910390a1565b60006103c0338484610ad3565b6000546001600160a01b0316331461061c5760405162461bcd60e51b81526004016104d690611982565b601454600160a01b900460ff16156106765760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d6565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556106bf9030906106b16009600a61195c565b61044590633b9aca0061196b565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610712573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061073691906119b7565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610798573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107bc91906119b7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610809573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082d91906119b7565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610875816001600160a01b031660009081526001602052604090205490565b60008061088a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108f2573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061091791906119d4565b505060145460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610970573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109949190611a02565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610a105760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d6565b6001600160a01b038216610a715760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d6565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b375760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d6565b6001600160a01b038216610b995760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d6565b60008111610bfb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d6565b601454600160b01b900460ff161580610c1d5750601454600160a81b900460ff165b15610cb8576001600160a01b038316600090815260016020526040902054610c46908290611a24565b6001600160a01b038085166000908152600160205260408082209390935590841681522054610c76908290611a37565b6001600160a01b038084166000818152600160205260409081902093909355915190851690600080516020611b3783398151915290610ac69085815260200190565b6000546001600160a01b03848116911614801590610ce457506000546001600160a01b03838116911614155b15610fe55760065460ff1615610dce576013546001600160a01b03838116911614801590610d2057506014546001600160a01b03838116911614155b15610dce57326000908152600560205260409020544311610dbb5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016104d6565b3260009081526005602052604090204390555b6014546001600160a01b038481169116148015610df957506013546001600160a01b03838116911614155b8015610e1e57506001600160a01b03821660009081526003602052604090205460ff16155b15610f0657600f54811115610e755760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104d6565b60105481610e98846001600160a01b031660009081526001602052604090205490565b610ea29190611a37565b1115610ef05760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d6565b600e8054906000610f0083611a4a565b91905055505b30600090815260016020526040902054601454600160a81b900460ff16158015610f3d57506014546001600160a01b038481169116145b8015610f525750601454600160b01b900460ff165b8015610f615750600d54600e54115b8015610f8657506001600160a01b03841660009081526003602052604090205460ff16155b8015610fab57506001600160a01b03831660009081526003602052604090205460ff16155b15610fe357601154811115610fd757610fd7610fd283610fcd846012546111e7565b6111e7565b61102f565b47610fe1476111a9565b505b505b610ff08383836111ff565b505050565b600081848411156110195760405162461bcd60e51b81526004016104d69190611738565b5060006110268486611a24565b95945050505050565b6014805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061107757611077611a63565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156110d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f491906119b7565b8160018151811061110757611107611a63565b6001600160a01b03928316602091820292909201015260135461112d91309116846109ae565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac94790611166908590600090869030904290600401611a79565b600060405180830381600087803b15801561118057600080fd5b505af1158015611194573d6000803e3d6000fd5b50506014805460ff60a81b1916905550505050565b6006546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f193505050501580156104a8573d6000803e3d6000fd5b60008183116111f657826111f8565b815b9392505050565b6001600160a01b0383166000908152600360205260409020548190309060019060ff161561122e575084905060005b80156113d457611260606461125a600b54600e541161124f57600754611253565b6009545b87906115a5565b90611627565b6014549093506001600160a01b03868116911614801561128957506001600160a01b0386163014155b156112b6576112b3606461125a600c54600e54116112a957600854611253565b600a5487906115a5565b92505b821561131e57306000908152600160205260409020546112d69084611669565b30600081815260016020526040908190209290925590516001600160a01b03881690600080516020611b37833981519152906113159087815260200190565b60405180910390a35b6001600160a01b03861660009081526001602052604090205461134190856116c8565b6001600160a01b03871660009081526001602052604090205561138661136785856116c8565b6001600160a01b03871660009081526001602052604090205490611669565b6001600160a01b038087166000818152600160205260409020929092558716600080516020611b378339815191526113be87876116c8565b60405190815260200160405180910390a361159d565b8215611448576001600160a01b0382166000908152600160205260409020546113fd9084611669565b6001600160a01b038084166000818152600160205260409081902093909355915190881690600080516020611b378339815191529061143f9087815260200190565b60405180910390a35b6014546001600160a01b0390811690861603611500576001600160a01b038616600090815260036020526040902054849060ff1661148557600080fd5b848111156114fe576114b3606461125a600c54600e54116114a8576008546114ac565b600a545b88906115a5565b6001600160a01b0387166000908152600160205260409020549091506114d99086611669565b6001600160a01b0387166000908152600160205260409020558481116114fe57600080fd5b505b6001600160a01b03861660009081526001602052604090205461152390856116c8565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546115529085611669565b6001600160a01b038087166000818152600160205260409081902093909355915190881690600080516020611b37833981519152906115949088815260200190565b60405180910390a35b505050505050565b6000826000036115b7575060006103c4565b60006115c3838561196b565b9050826115d08583611aec565b146111f85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d6565b60006111f883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061170a565b6000806116768385611a37565b9050838110156111f85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d6565b60006111f883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff5565b6000818361172b5760405162461bcd60e51b81526004016104d69190611738565b5060006110268486611aec565b60006020808352835180602085015260005b818110156117665785810183015185820160400152820161174a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461179c57600080fd5b50565b600080604083850312156117b257600080fd5b82356117bd81611787565b946020939093013593505050565b6000806000606084860312156117e057600080fd5b83356117eb81611787565b925060208401356117fb81611787565b929592945050506040919091013590565b60006020828403121561181e57600080fd5b81356111f881611787565b6000806040838503121561183c57600080fd5b823561184781611787565b9150602083013561185781611787565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156118b357816000190482111561189957611899611862565b808516156118a657918102915b93841c939080029061187d565b509250929050565b6000826118ca575060016103c4565b816118d7575060006103c4565b81600181146118ed57600281146118f757611913565b60019150506103c4565b60ff84111561190857611908611862565b50506001821b6103c4565b5060208310610133831016604e8410600b8410161715611936575081810a6103c4565b6119408383611878565b806000190482111561195457611954611862565b029392505050565b60006111f860ff8416836118bb565b80820281158282048414176103c4576103c4611862565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156119c957600080fd5b81516111f881611787565b6000806000606084860312156119e957600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611a1457600080fd5b815180151581146111f857600080fd5b818103818111156103c4576103c4611862565b808201808211156103c4576103c4611862565b600060018201611a5c57611a5c611862565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600060a08201878352602087602085015260a0604085015281875180845260c08601915060208901935060005b81811015611acb5784516001600160a01b031683529383019391830191600101611aa6565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611b0957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122060111fe89f11fba971195488c91a272f257a92807e75b764d052ca6701d4c65c64736f6c63430008190033

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

000000000000000000000000bbaea8b29dc0752002b27cb26466e7167d4116fd

-----Decoded View---------------
Arg [0] : _key (address): 0xbBAeA8B29dC0752002B27Cb26466e7167D4116fd

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000bbaea8b29dc0752002b27cb26466e7167d4116fd


Deployed Bytecode Sourcemap

3867:10982:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5744:83;;;;;;;;;;-1:-1:-1;5814:5:0;;;;;;;;;;;;-1:-1:-1;;;5814:5:0;;;;5744:83;;;;;;;:::i;:::-;;;;;;;;6628:186;;;;;;;;;;-1:-1:-1;6628:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6628:186:0;1023:187:1;5050:48:0;;;;;;;;;;;;;;;;;;;1361:25:1;;;1349:2;1334:18;5050:48:0;1215:177:1;6021:95:0;;;;;;;;;;;;;:::i;6822:446::-;;;;;;;;;;-1:-1:-1;6822:446:0;;;;;:::i;:::-;;:::i;5930:83::-;;;;;;;;;;-1:-1:-1;5930:83:0;;4698:1;2000:36:1;;1988:2;1973:18;5930:83:0;1858:184:1;14480:366:0;;;;;;;;;;;;;:::i;:::-;;6124:120;;;;;;;;;;-1:-1:-1;6124:120:0;;;;;:::i;:::-;-1:-1:-1;;;;;6217:19:0;6190:7;6217:19;;;:10;:19;;;;;;;6124:120;2892:148;;;;;;;;;;;;;:::i;13289:201::-;;;;;;;;;;;;;:::i;4893:49::-;;;;;;;;;;;;;;;;2678:79;;;;;;;;;;-1:-1:-1;2716:7:0;2743:6;2678:79;;-1:-1:-1;;;;;2743:6:0;;;2445:51:1;;2433:2;2418:18;2678:79:0;2299:203:1;4949:51:0;;;;;;;;;;;;;;;;5835:87;;;;;;;;;;-1:-1:-1;5907:7:0;;;;;;;;;;;;-1:-1:-1;;;5907:7:0;;;;5835:87;;6252:192;;;;;;;;;;-1:-1:-1;6252:192:0;;;;;:::i;:::-;;:::i;5007:36::-;;;;;;;;;;;;;;;;4240:39;;;;;;;;;;-1:-1:-1;4240:39:0;;;;;;;;13598:837;;;;;;;;;;;;;:::i;6452:168::-;;;;;;;;;;-1:-1:-1;6452:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6585:18:0;;;6558:7;6585:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6452:168;6628:186;6728:4;6745:39;293:10;6768:7;6777:6;6745:8;:39::i;:::-;-1:-1:-1;6802:4:0;6628:186;;;;;:::o;6021:95::-;6074:7;4757:15;4698:1;4757:2;:15;:::i;:::-;4741:31;;:13;:31;:::i;:::-;6094:14;;6021:95;:::o;6822:446::-;6954:4;6971:36;6981:6;6989:9;7000:6;6971:9;:36::i;:::-;7018:220;7041:6;293:10;7089:138;7145:6;7089:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7089:19:0;;;;;;:11;:19;;;;;;;;293:10;7089:33;;;;;;;;;;:37;:138::i;:::-;7018:8;:220::i;:::-;-1:-1:-1;7256:4:0;6822:446;;;;;:::o;14480:366::-;14546:10;;;;;-1:-1:-1;;;;;14546:10:0;293;-1:-1:-1;;;;;14530:26:0;;14522:35;;;;;;14609:4;14568:20;6217:19;;;:10;:19;;;;;;14630:16;;14626:79;;14663:30;14680:12;14663:16;:30::i;:::-;14736:21;14772:14;;14768:71;;14803:24;14816:10;14803:12;:24::i;:::-;14511:335;;14480:366::o;2892:148::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;;;;;;;;;2999:1:::1;2983:6:::0;;2962:40:::1;::::0;-1:-1:-1;;;;;2983:6:0;;::::1;::::0;2962:40:::1;::::0;2999:1;;2962:40:::1;3030:1;3013:19:::0;;-1:-1:-1;;;;;;3013:19:0::1;::::0;;2892:148::o;13289:201::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;4757:15:::1;4698:1;4757:2;:15;:::i;:::-;4741:31;::::0;:13:::1;:31;:::i;:::-;13343:12;:22:::0;4757:15:::1;4698:1;4757:2;:15;:::i;:::-;4741:31;::::0;:13:::1;:31;:::i;:::-;13376:14;:24:::0;13411:20:::1;:28:::0;;-1:-1:-1;;13411:28:0::1;::::0;;13455:27:::1;4757:15;4698:1;-1:-1:-1::0;4757:15:0::1;:::i;:::-;4741:31;::::0;:13:::1;:31;:::i;:::-;13455:27;::::0;1361:25:1;;;1349:2;1334:18;13455:27:0::1;;;;;;;13289:201::o:0;6252:192::-;6355:4;6372:42;293:10;6396:9;6407:6;6372:9;:42::i;13598:837::-;2805:6;;-1:-1:-1;;;;;2805:6:0;293:10;2805:22;2797:67;;;;-1:-1:-1;;;2797:67:0;;;;;;;:::i;:::-;13660:11:::1;::::0;-1:-1:-1;;;13660:11:0;::::1;;;13659:12;13651:48;;;::::0;-1:-1:-1;;;13651:48:0;;5145:2:1;13651:48:0::1;::::0;::::1;5127:21:1::0;5184:2;5164:18;;;5157:30;5223:25;5203:18;;;5196:53;5266:18;;13651:48:0::1;4943:347:1::0;13651:48:0::1;13710:15;:104:::0;;-1:-1:-1;;;;;;13710:104:0::1;13761:42;13710:104:::0;;::::1;::::0;;;13825:58:::1;::::0;13842:4:::1;::::0;4757:15:::1;4698:1;4757:2;:15;:::i;:::-;4741:31;::::0;:13:::1;:31;:::i;13825:58::-;13928:15;;;;;;;;;-1:-1:-1::0;;;;;13928:15:0::1;-1:-1:-1::0;;;;;13928:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13910:55:0::1;;13992:4;14016:15;;;;;;;;;-1:-1:-1::0;;;;;14016:15:0::1;-1:-1:-1::0;;;;;14016:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13910:143;::::0;-1:-1:-1;;;;;;13910:143:0::1;::::0;;;;;;-1:-1:-1;;;;;5781:15:1;;;13910:143:0::1;::::0;::::1;5763:34:1::0;5833:15;;5813:18;;;5806:43;5698:18;;13910:143:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13894:13;:159:::0;;-1:-1:-1;;;;;13894:159:0;;::::1;-1:-1:-1::0;;;;;;13894:159:0;;::::1;;::::0;;14064:15:::1;::::0;::::1;:31;14103:21;14148:4;14168:24;14148:4:::0;-1:-1:-1;;;;;6217:19:0;6190:7;6217:19;;;:10;:19;;;;;;;6124:120;14168:24:::1;14207:1;14223::::0;14239:7:::1;2716::::0;2743:6;-1:-1:-1;;;;;2743:6:0;;2678:79;14239:7:::1;14064:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;14064:223:0;;;-1:-1:-1;;;;;6219:15:1;;;14064:223:0::1;::::0;::::1;6201:34:1::0;6251:18;;;6244:34;;;;6294:18;;;6287:34;;;;6337:18;;;6330:34;6401:15;;;6380:19;;;6373:44;14261:15:0::1;6433:19:1::0;;;6426:35;6135:19;;14064:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;14305:13:0::1;::::0;14336:15:::1;::::0;14298:71:::1;::::0;-1:-1:-1;;;14298:71:0;;-1:-1:-1;;;;;14336:15:0;;::::1;14298:71;::::0;::::1;6957:51:1::0;-1:-1:-1;;7024:18:1;;;7017:34;14305:13:0;::::1;::::0;-1:-1:-1;14298:29:0::1;::::0;6930:18:1;;14298:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;14380:11:0::1;:18:::0;;-1:-1:-1;;;;14409:18:0;-1:-1:-1;;;14409:18:0;;;13598:837::o;7276:335::-;-1:-1:-1;;;;;7369:19:0;;7361:68;;;;-1:-1:-1;;;7361:68:0;;7546:2:1;7361:68:0;;;7528:21:1;7585:2;7565:18;;;7558:30;7624:34;7604:18;;;7597:62;-1:-1:-1;;;7675:18:1;;;7668:34;7719:19;;7361:68:0;7344:400:1;7361:68:0;-1:-1:-1;;;;;7448:21:0;;7440:68;;;;-1:-1:-1;;;7440:68:0;;7951:2:1;7440:68:0;;;7933:21:1;7990:2;7970:18;;;7963:30;8029:34;8009:18;;;8002:62;-1:-1:-1;;;8080:18:1;;;8073:32;8122:19;;7440:68:0;7749:398:1;7440:68:0;-1:-1:-1;;;;;7519:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7571:32;;1361:25:1;;;7571:32:0;;1334:18:1;7571:32:0;;;;;;;;7276:335;;;:::o;7619:2551::-;-1:-1:-1;;;;;7751:20:0;;7743:70;;;;-1:-1:-1;;;7743:70:0;;8354:2:1;7743:70:0;;;8336:21:1;8393:2;8373:18;;;8366:30;8432:34;8412:18;;;8405:62;-1:-1:-1;;;8483:18:1;;;8476:35;8528:19;;7743:70:0;8152:401:1;7743:70:0;-1:-1:-1;;;;;7846:24:0;;7824:109;;;;-1:-1:-1;;;7824:109:0;;8760:2:1;7824:109:0;;;8742:21:1;8799:2;8779:18;;;8772:30;8838:34;8818:18;;;8811:62;-1:-1:-1;;;8889:18:1;;;8882:33;8932:19;;7824:109:0;8558:399:1;7824:109:0;7961:1;7952:6;:10;7944:64;;;;-1:-1:-1;;;7944:64:0;;9164:2:1;7944:64:0;;;9146:21:1;9203:2;9183:18;;;9176:30;9242:34;9222:18;;;9215:62;-1:-1:-1;;;9293:18:1;;;9286:39;9342:19;;7944:64:0;8962:405:1;7944:64:0;8024:11;;-1:-1:-1;;;8024:11:0;;;;8023:12;;:22;;-1:-1:-1;8039:6:0;;-1:-1:-1;;;8039:6:0;;;;8023:22;8019:251;;;-1:-1:-1;;;;;8083:18:0;;;;;;:10;:18;;;;;;:27;;8104:6;;8083:27;:::i;:::-;-1:-1:-1;;;;;8062:18:0;;;;;;;:10;:18;;;;;;:48;;;;8150:22;;;;;;;:31;;8175:6;;8150:31;:::i;:::-;-1:-1:-1;;;;;8125:22:0;;;;;;;:10;:22;;;;;;;:56;;;;8201:36;;;;;;-1:-1:-1;;;;;;;;;;;8201:36:0;;;8230:6;1361:25:1;;1349:2;1334:18;;1215:177;8019:251:0;2716:7;2743:6;-1:-1:-1;;;;;8284:17:0;;;2743:6;;8284:17;;;;:42;;-1:-1:-1;2716:7:0;2743:6;-1:-1:-1;;;;;8305:21:0;;;2743:6;;8305:21;;8284:42;8280:1834;;;8347:20;;;;8343:538;;;8436:15;;-1:-1:-1;;;;;8414:38:0;;;8436:15;;8414:38;;;;:99;;-1:-1:-1;8499:13:0;;-1:-1:-1;;;;;8477:36:0;;;8499:13;;8477:36;;8414:99;8388:478;;;8619:9;8590:39;;;;:28;:39;;;;;;8632:12;-1:-1:-1;8556:213:0;;;;-1:-1:-1;;;8556:213:0;;9837:2:1;8556:213:0;;;9819:21:1;9876:2;9856:18;;;9849:30;9915:34;9895:18;;;9888:62;9986:34;9966:18;;;9959:62;-1:-1:-1;;;10037:19:1;;;10030:40;10087:19;;8556:213:0;9635:477:1;8556:213:0;8821:9;8792:39;;;;:28;:39;;;;;8834:12;8792:54;;8388:478;8929:13;;-1:-1:-1;;;;;8919:23:0;;;8929:13;;8919:23;:82;;;;-1:-1:-1;8985:15:0;;-1:-1:-1;;;;;8963:38:0;;;8985:15;;8963:38;;8919:82;:123;;;;-1:-1:-1;;;;;;9023:19:0;;;;;;:7;:19;;;;;;;;9022:20;8919:123;8897:453;;;9095:12;;9085:6;:22;;9077:60;;;;-1:-1:-1;;;9077:60:0;;10319:2:1;9077:60:0;;;10301:21:1;10358:2;10338:18;;;10331:30;10397:27;10377:18;;;10370:55;10442:18;;9077:60:0;10117:349:1;9077:60:0;9220:14;;9210:6;9186:21;9196:10;-1:-1:-1;;;;;6217:19:0;6190:7;6217:19;;;:10;:19;;;;;;;6124:120;9186:21;:30;;;;:::i;:::-;:48;;9156:148;;;;-1:-1:-1;;;9156:148:0;;10673:2:1;9156:148:0;;;10655:21:1;10712:2;10692:18;;;10685:30;10751:28;10731:18;;;10724:56;10797:18;;9156:148:0;10471:350:1;9156:148:0;9323:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8897:453;9415:4;9366:28;6217:19;;;:10;:19;;;;;;9459:6;;-1:-1:-1;;;9459:6:0;;;;9458:7;:55;;;;-1:-1:-1;9500:13:0;;-1:-1:-1;;;;;9486:27:0;;;9500:13;;9486:27;9458:55;:87;;;;-1:-1:-1;9534:11:0;;-1:-1:-1;;;9534:11:0;;;;9458:87;:138;;;;;9578:18;;9566:9;;:30;9458:138;:175;;;;-1:-1:-1;;;;;;9618:15:0;;;;;;:7;:15;;;;;;;;9617:16;9458:175;:216;;;;-1:-1:-1;;;;;;9655:19:0;;;;;;:7;:19;;;;;;;;9654:20;9458:216;9436:667;;;9736:17;;9713:20;:40;9709:184;;;9776:117;9819:51;9823:6;9831:38;9835:20;9857:11;;9831:3;:38::i;:::-;9819:3;:51::i;:::-;9776:16;:117::i;:::-;9941:21;10033:35;10046:21;10033:12;:35::i;:::-;9690:413;9436:667;8328:1786;8280:1834;10126:36;10135:6;10143:10;10155:6;10126:8;:36::i;:::-;7619:2551;;;:::o;1480:224::-;1600:7;1636:12;1628:6;;;;1620:29;;;;-1:-1:-1;;;1620:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1660:9:0;1672:5;1676:1;1672;:5;:::i;:::-;1660:17;1480:224;-1:-1:-1;;;;;1480:224:0:o;12798:483::-;5382:6;:13;;-1:-1:-1;;;;5382:13:0;-1:-1:-1;;;5382:13:0;;;12900:16:::1;::::0;;12914:1:::1;12900:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12900:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12900:16:0::1;12876:40;;12945:4;12927;12932:1;12927:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12927:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12971:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12971:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12927:7;;12971:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12961:4;12966:1;12961:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12961:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;13036:15:::1;::::0;13004:62:::1;::::0;13021:4:::1;::::0;13036:15:::1;13054:11:::0;13004:8:::1;:62::i;:::-;13077:15;::::0;:196:::1;::::0;-1:-1:-1;;;13077:196:0;;-1:-1:-1;;;;;13077:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13158:11;;13077:15:::1;::::0;13200:4;;13227::::1;::::0;13247:15:::1;::::0;13077:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5418:6:0;:14;;-1:-1:-1;;;;5418:14:0;;;-1:-1:-1;;;;12798:483:0:o;13498:92::-;13555:10;;:27;;:10;;;;-1:-1:-1;;;;;13555:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;12683:107;12740:7;12772:1;12768;:5;12767:15;;12781:1;12767:15;;;12777:1;12767:15;12760:22;12683:107;-1:-1:-1;;;12683:107:0:o;10178:2497::-;-1:-1:-1;;;;;10394:17:0;;10272:15;10394:17;;;:7;:17;;;;;;10290:9;;10342:4;;10375;;10394:17;;10390:106;;;-1:-1:-1;10476:8:0;;-1:-1:-1;10440:5:0;10390:106;10510:9;10506:2162;;;10546:211;10753:3;10546:184;10613:15;;10601:9;;:27;10600:111;;10697:14;;10600:111;;;10657:12;;10600:111;10546:9;;:31;:184::i;:::-;:206;;:211::i;:::-;10789:13;;10536:221;;-1:-1:-1;;;;;;10776:26:0;;;10789:13;;10776:26;:55;;;;-1:-1:-1;;;;;;10806:25:0;;10826:4;10806:25;;10776:55;10772:344;;;10862:238;11096:3;10862:207;10937:16;;10925:9;;:28;10924:122;;11031:15;;10924:122;;;10986:13;;10862:9;;:35;:207::i;:238::-;10852:248;;10772:344;11134:11;;11130:224;;11213:4;11194:25;;;;:10;:25;;;;;;:78;;11246:7;11194:29;:78::i;:::-;11185:4;11166:25;;;;:10;:25;;;;;;;:106;;;;11296:42;;-1:-1:-1;;;;;11296:42:0;;;-1:-1:-1;;;;;;;;;;;11296:42:0;;;11330:7;1361:25:1;;1349:2;1334:18;;1215:177;11296:42:0;;;;;;;;11130:224;-1:-1:-1;;;;;11391:20:0;;;;;;:10;:20;;;;;;:35;;11416:9;11391:24;:35::i;:::-;-1:-1:-1;;;;;11368:20:0;;;;;;:10;:20;;;;;:58;11465:49;11491:22;:9;11505:7;11491:13;:22::i;:::-;-1:-1:-1;;;;;11465:21:0;;;;;;:10;:21;;;;;;;:25;:49::i;:::-;-1:-1:-1;;;;;11441:21:0;;;;;;;:10;:21;;;;;:73;;;;11534:53;;-1:-1:-1;;;;;;;;;;;11564:22:0;:9;11578:7;11564:13;:22::i;:::-;11534:53;;1361:25:1;;;1349:2;1334:18;11534:53:0;;;;;;;10506:2162;;;11624:11;;11620:184;;-1:-1:-1;;;;;11684:25:0;;;;;;:10;:25;;;;;;:38;;11714:7;11684:29;:38::i;:::-;-1:-1:-1;;;;;11656:25:0;;;;;;;:10;:25;;;;;;;:66;;;;11746:42;;;;;;-1:-1:-1;;;;;;;;;;;11746:42:0;;;11780:7;1361:25:1;;1349:2;1334:18;;1215:177;11746:42:0;;;;;;;;11620:184;11835:13;;-1:-1:-1;;;;;11835:13:0;;;11822:26;;;;11818:631;;-1:-1:-1;;;;;11923:17:0;;11869:15;11923:17;;;:7;:17;;;;;;11887:9;;11923:17;;11915:26;;;;;;11974:9;11964:7;:19;11960:474;;;12018:262;12276:3;12018:227;12101:16;;12089:9;;:28;12088:130;;12203:15;;12088:130;;;12154:13;;12088:130;12018:9;;:39;:227::i;:262::-;-1:-1:-1;;;;;12327:21:0;;;;;;:10;:21;;;;;;12008:272;;-1:-1:-1;12327:36:0;;12353:9;12327:25;:36::i;:::-;-1:-1:-1;;;;;12303:21:0;;;;;;:10;:21;;;;;:60;12394:19;;;12386:28;;;;;;11850:599;11818:631;-1:-1:-1;;;;;12486:20:0;;;;;;:10;:20;;;;;;:35;;12511:9;12486:24;:35::i;:::-;-1:-1:-1;;;;;12463:20:0;;;;;;;:10;:20;;;;;;:58;;;;12560:21;;;;;;;:36;;12586:9;12560:25;:36::i;:::-;-1:-1:-1;;;;;12536:21:0;;;;;;;:10;:21;;;;;;;:60;;;;12616:40;;;;;;-1:-1:-1;;;;;;;;;;;12616:40:0;;;12646:9;1361:25:1;;1349:2;1334:18;;1215:177;12616:40:0;;;;;;;;10506:2162;10261:2414;;;10178:2497;;;:::o;1712:246::-;1770:7;1794:1;1799;1794:6;1790:47;;-1:-1:-1;1824:1:0;1817:8;;1790:47;1847:9;1859:5;1863:1;1859;:5;:::i;:::-;1847:17;-1:-1:-1;1892:1:0;1883:5;1887:1;1847:17;1883:5;:::i;:::-;:10;1875:56;;;;-1:-1:-1;;;1875:56:0;;12639:2:1;1875:56:0;;;12621:21:1;12678:2;12658:18;;;12651:30;12717:34;12697:18;;;12690:62;-1:-1:-1;;;12768:18:1;;;12761:31;12809:19;;1875:56:0;12437:397:1;1966:132:0;2024:7;2051:39;2055:1;2058;2051:39;;;;;;;;;;;;;;;;;:3;:39::i;1149:179::-;1207:7;;1239:5;1243:1;1239;:5;:::i;:::-;1227:17;;1268:1;1263;:6;;1255:46;;;;-1:-1:-1;;;1255:46:0;;13041:2:1;1255:46:0;;;13023:21:1;13080:2;13060:18;;;13053:30;13119:29;13099:18;;;13092:57;13166:18;;1255:46:0;12839:351:1;1336:136:0;1394:7;1421:43;1425:1;1428;1421:43;;;;;;;;;;;;;;;;;:3;:43::i;2106:223::-;2226:7;2261:12;2254:5;2246:28;;;;-1:-1:-1;;;2246:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2285:9:0;2297:5;2301:1;2297;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;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;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:416;3121:1;3158:5;3121:1;3172:270;3193:7;3183:8;3180:21;3172:270;;;3252:4;3248:1;3244:6;3240:17;3234:4;3231:27;3228:53;;;3261:18;;:::i;:::-;3311:7;3301:8;3297:22;3294:55;;;3331:16;;;;3294:55;3410:22;;;;3370:15;;;;3172:270;;;3176:3;3032:416;;;;;:::o;3453:806::-;3502:5;3532:8;3522:80;;-1:-1:-1;3573:1:1;3587:5;;3522:80;3621:4;3611:76;;-1:-1:-1;3658:1:1;3672:5;;3611:76;3703:4;3721:1;3716:59;;;;3789:1;3784:130;;;;3696:218;;3716:59;3746:1;3737:10;;3760:5;;;3784:130;3821:3;3811:8;3808:17;3805:43;;;3828:18;;:::i;:::-;-1:-1:-1;;3884:1:1;3870:16;;3899:5;;3696:218;;3998:2;3988:8;3985:16;3979:3;3973:4;3970:13;3966:36;3960:2;3950:8;3947:16;3942:2;3936:4;3933:12;3929:35;3926:77;3923:159;;;-1:-1:-1;4035:19:1;;;4067:5;;3923:159;4114:34;4139:8;4133:4;4114:34;:::i;:::-;4184:6;4180:1;4176:6;4172:19;4163:7;4160:32;4157:58;;;4195:18;;:::i;:::-;4233:20;;3453:806;-1:-1:-1;;;3453:806:1:o;4264:140::-;4322:5;4351:47;4392:4;4382:8;4378:19;4372:4;4351:47;:::i;4409:168::-;4482:9;;;4513;;4530:15;;;4524:22;;4510:37;4500:71;;4551:18;;:::i;4582:356::-;4784:2;4766:21;;;4803:18;;;4796:30;4862:34;4857:2;4842:18;;4835:62;4929:2;4914:18;;4582:356::o;5295:251::-;5365:6;5418:2;5406:9;5397:7;5393:23;5389:32;5386:52;;;5434:1;5431;5424:12;5386:52;5466:9;5460:16;5485:31;5510:5;5485:31;:::i;6472:306::-;6560:6;6568;6576;6629:2;6617:9;6608:7;6604:23;6600:32;6597:52;;;6645:1;6642;6635:12;6597:52;6674:9;6668:16;6658:26;;6724:2;6713:9;6709:18;6703:25;6693:35;;6768:2;6757:9;6753:18;6747:25;6737:35;;6472:306;;;;;:::o;7062:277::-;7129:6;7182:2;7170:9;7161:7;7157:23;7153:32;7150:52;;;7198:1;7195;7188:12;7150:52;7230:9;7224:16;7283:5;7276:13;7269:21;7262:5;7259:32;7249:60;;7305:1;7302;7295:12;9372:128;9439:9;;;9460:11;;;9457:37;;;9474:18;;:::i;9505:125::-;9570:9;;;9591:10;;;9588:36;;;9604:18;;:::i;10826:135::-;10865:3;10886:17;;;10883:43;;10906:18;;:::i;:::-;-1:-1:-1;10953:1:1;10942:13;;10826:135::o;11098:127::-;11159:10;11154:3;11150:20;11147:1;11140:31;11190:4;11187:1;11180:15;11214:4;11211:1;11204:15;11230:980;11492:4;11540:3;11529:9;11525:19;11571:6;11560:9;11553:25;11597:2;11635:6;11630:2;11619:9;11615:18;11608:34;11678:3;11673:2;11662:9;11658:18;11651:31;11702:6;11737;11731:13;11768:6;11760;11753:22;11806:3;11795:9;11791:19;11784:26;;11845:2;11837:6;11833:15;11819:29;;11866:1;11876:195;11890:6;11887:1;11884:13;11876:195;;;11955:13;;-1:-1:-1;;;;;11951:39:1;11939:52;;12046:15;;;;12011:12;;;;11987:1;11905:9;11876:195;;;-1:-1:-1;;;;;;;12127:32:1;;;;12122:2;12107:18;;12100:60;-1:-1:-1;;;12191:3:1;12176:19;12169:35;12088:3;11230:980;-1:-1:-1;;;11230:980:1:o;12215:217::-;12255:1;12281;12271:132;;12325:10;12320:3;12316:20;12313:1;12306:31;12360:4;12357:1;12350:15;12388:4;12385:1;12378:15;12271:132;-1:-1:-1;12417:9:1;;12215:217::o

Swarm Source

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