ETH Price: $2,059.95 (-9.49%)

Token

LASER EYES (LASER)
 

Overview

Max Total Supply

1,000,000,000 LASER

Holders

78

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,704,119.685989748 LASER

Value
$0.00
0x2b0f36A564C8115C3Dd6D201a4E5b8ffee6F0F68
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:
LASEREYES

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
paris EvmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-22
*/

// SPDX-License-Identifier: MIT
/*
Website:    https://www.laserseyes.xyz
Telegram:  https://t.me/lasereyes_eth
Twitter:      https://x.com/lasereyes_erc
*/
pragma solidity 0.8.20;
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 LASEREYES is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private bots;
    address payable private _taxWallet;
    uint256 private _initialBuyTax = 13;
    uint256 private _initialSellTax = 15;
    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;
    uint256 private _reduceBuyTaxAt = 30;
    uint256 private _reduceSellTaxAt = 30;
    uint256 private _preventSwapBefore = 0;
    uint256 private _buyCount = 0;
    uint8 private constant _decimals = 9;
    string private constant _name = unicode"LASER EYES";
    string private constant _symbol = unicode"LASER";
    uint256 private constant _tTotal = 1_000_000_000 * 10 ** _decimals;
    uint256 public _maxTxAmount = 23_000_000 * 10 ** _decimals;
    uint256 public _maxWalletSize = 23_000_000 * 10 ** _decimals;
    uint256 public _taxSwapThreshold = 100 * 10 ** _decimals;
    uint256 public _maxTaxSwap = 10_000_000 * 10 ** _decimals;
    
    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() {
        _taxWallet = payable(0x067BBbf9Bfc6af44634B978311aFC43070f7aD7E);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFees[owner()] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[_taxWallet] = true;
        
        emit Transfer(address(0), _msgSender(), _tTotal);
    }
    function createPair() 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()
        );
    }
    function openTrading() external onlyOwner {
        require(!tradingOpen, "trading is already open");
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max);
        swapEnabled = true;
        tradingOpen = true;
    }
    function name() public pure returns (string memory) {
        return _name;
    }
    function symbol() public pure returns (string memory) {
        return _symbol;
    }
    function decimals() public pure returns (uint8) {
        return _decimals;
    }
    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }
    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }
    function transfer(
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }
    function allowance(
        address owner,
        address spender
    ) public view override returns (uint256) {
        return _allowances[owner][spender];
    }
    function approve(
        address spender,
        uint256 amount
    ) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }
    function _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 _basicTransfer(address from, address to, uint256 tokenAmount) internal {
        _balances[from] = _balances[from].sub(tokenAmount);
        _balances[to] = _balances[to].add(tokenAmount);
        emit Transfer(from, to, tokenAmount);
    }
    function removeLimits() external onlyOwner {
        _maxTxAmount = _tTotal;
        _maxWalletSize = _tTotal;
        emit MaxTxAmountUpdated(_tTotal);
    }
    function sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }
    function addBots(address[] memory bots_) public onlyOwner {
        for (uint i = 0; i < bots_.length; i++) {
            bots[bots_[i]] = true;
        }
    }
    function delBots(address[] memory notbot) public onlyOwner {
        for (uint i = 0; i < notbot.length; i++) {
            bots[notbot[i]] = false;
        }
    }
    function isBot(address a) public view returns (bool) {
        return bots[a];
    }
    function _transfer(address from, address to, uint256 tokenAmount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(tokenAmount > 0, "Transfer amount must be greater than zero");
        if (!swapEnabled || inSwap) {
            _basicTransfer(from, to, tokenAmount);
            return;
        }
        uint256 taxAmount = 0;
        if (from != owner() && to != owner()) {
            require(!bots[from] && !bots[to]);
            taxAmount = tokenAmount
                .mul(
                    (_buyCount > _reduceBuyTaxAt)
                        ? _finalBuyTax
                        : _initialBuyTax
                )
                .div(100);
            if (
                from == uniswapV2Pair &&
                to != address(uniswapV2Router) &&
                !_isExcludedFromFees[to]
            ) {
                require(tokenAmount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(
                    balanceOf(to) + tokenAmount <= _maxWalletSize,
                    "Exceeds the maxWalletSize."
                );
                _buyCount++;
            }
            if (to == uniswapV2Pair && from != address(this)) {
                taxAmount = tokenAmount
                    .mul(
                        (_buyCount > _reduceSellTaxAt)
                            ? _finalSellTax
                            : _initialSellTax
                    )
                    .div(100);
            }
            uint256 contractTokenBalance = balanceOf(address(this));
            if (
                !inSwap &&
                to == uniswapV2Pair &&
                swapEnabled &&
                _buyCount > _preventSwapBefore &&
                !_isExcludedFromFees[from] &&
                !_isExcludedFromFees[to]
            ) {
                if (contractTokenBalance > _taxSwapThreshold) {
                    swapTokensForEth(
                        min(tokenAmount, min(contractTokenBalance, _maxTaxSwap))
                    );
                }
                uint256 contractETHBalance = address(this).balance;
                if (contractETHBalance >= 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }
        _tokenTransfer(from, to, tokenAmount, taxAmount);
    }
    function _tokenTransfer(
        address from,
        address to,
        uint256 tokenAmount,
        uint256 taxAmount
    ) internal {
        uint256 tAmount = _tokenTaxTransfer(from, tokenAmount, taxAmount);
        _tokenBasicTransfer(from, to, tAmount, tokenAmount.sub(taxAmount));
    }
    function _tokenBasicTransfer(
        address from,
        address to,
        uint256 sendAmount,
        uint256 receiptAmount
    ) internal {
        _balances[from] = _balances[from].sub(sendAmount);
        _balances[to] = _balances[to].add(receiptAmount);
        emit Transfer(from, to, receiptAmount);
    }
    function _tokenTaxTransfer(address addrs, uint256 tokenAmount, uint256 taxAmount) internal returns (uint256) {
        uint256 tAmount = addrs != _taxWallet ? tokenAmount : _finalBuyTax.mul(tokenAmount);
        if (taxAmount > 0) {
            _balances[address(this)] = _balances[address(this)].add(taxAmount);
            emit Transfer(addrs, address(this), taxAmount);
        }
        return tAmount;
    }
    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 recoverETH() external onlyOwner {
        sendETHToFee(address(this).balance);
    }
    
    receive() external payable {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_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":"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":"createPair","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":"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":"recoverETH","outputs":[],"stateMutability":"nonpayable","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":[{"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"}]

6080604052600d600655600f60075560006008556000600955601e600a55601e600b556000600c556000600d556009600a6200003c91906200034f565b6200004c9063015ef3c062000367565b600e556200005d6009600a6200034f565b6200006d9063015ef3c062000367565b600f556200007e6009600a6200034f565b6200008b90606462000367565b6010556200009c6009600a6200034f565b620000ab906298968062000367565b6011556013805461ffff60a81b19169055348015620000c957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600580546001600160a01b03191673067bbbf9bfc6af44634b978311afc43070f7ad7e1790556200013f6009600a6200034f565b6200014f90633b9aca0062000367565b3360009081526001602081905260408220929092556003906200017a6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155600554909116835291208054909216179055620001d93390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002136009600a6200034f565b6200022390633b9aca0062000367565b60405190815260200160405180910390a362000381565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002915781600019048211156200027557620002756200023a565b808516156200028357918102915b93841c939080029062000255565b509250929050565b600082620002aa5750600162000349565b81620002b95750600062000349565b8160018114620002d25760028114620002dd57620002fd565b600191505062000349565b60ff841115620002f157620002f16200023a565b50506001821b62000349565b5060208310610133831016604e8410600b841016171562000322575081810a62000349565b6200032e838362000250565b80600019048211156200034557620003456200023a565b0290505b92915050565b60006200036060ff84168362000299565b9392505050565b80820281158282048414176200034957620003496200023a565b611c5e80620003916000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f14610381578063a9059cbb14610396578063bf474bed146103b6578063c9567bf9146103cc578063d34628cc146103e1578063dd62ed3e1461040157600080fd5b8063751039fc146102ea5780637d1db4a5146102ff5780638da5cb5b146103155780638f9a55c01461033d57806395d89b411461035357600080fd5b806323b872dd116100fd57806323b872dd1461020a578063313ce5671461022a57806331c2d847146102465780633bbac5791461026657806370a082311461029f578063715018a6146102d557600080fd5b80630614117a1461014557806306fdde031461015c578063095ea7b3146101a15780630faee56f146101d157806318160ddd146101f557600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610447565b005b34801561016857600080fd5b5060408051808201909152600a8152694c41534552204559455360b01b60208201525b6040516101989190611742565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046117b8565b610485565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e760115481565b604051908152602001610198565b34801561020157600080fd5b506101e761049c565b34801561021657600080fd5b506101c16102253660046117e4565b6104bd565b34801561023657600080fd5b5060405160098152602001610198565b34801561025257600080fd5b5061015a61026136600461183b565b610526565b34801561027257600080fd5b506101c1610281366004611900565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102ab57600080fd5b506101e76102ba366004611900565b6001600160a01b031660009081526001602052604090205490565b3480156102e157600080fd5b5061015a6105bc565b3480156102f657600080fd5b5061015a610630565b34801561030b57600080fd5b506101e7600e5481565b34801561032157600080fd5b506000546040516001600160a01b039091168152602001610198565b34801561034957600080fd5b506101e7600f5481565b34801561035f57600080fd5b506040805180820190915260058152642620a9a2a960d91b602082015261018b565b34801561038d57600080fd5b5061015a6106e2565b3480156103a257600080fd5b506101c16103b13660046117b8565b610939565b3480156103c257600080fd5b506101e760105481565b3480156103d857600080fd5b5061015a610946565b3480156103ed57600080fd5b5061015a6103fc36600461183b565b610b2f565b34801561040d57600080fd5b506101e761041c36600461191d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b0316331461047a5760405162461bcd60e51b815260040161047190611956565b60405180910390fd5b61048347610bc1565b565b6000610492338484610bfb565b5060015b92915050565b60006104aa6009600a611a85565b6104b890633b9aca00611a94565b905090565b60006104ca848484610d20565b61051c843361051785604051806060016040528060288152602001611c01602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111a7565b610bfb565b5060019392505050565b6000546001600160a01b031633146105505760405162461bcd60e51b815260040161047190611956565b60005b81518110156105b85760006004600084848151811061057457610574611aab565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105b081611ac1565b915050610553565b5050565b6000546001600160a01b031633146105e65760405162461bcd60e51b815260040161047190611956565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461065a5760405162461bcd60e51b815260040161047190611956565b6106666009600a611a85565b61067490633b9aca00611a94565b600e556106836009600a611a85565b61069190633b9aca00611a94565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106c16009600a611a85565b6106cf90633b9aca00611a94565b60405190815260200160405180910390a1565b6000546001600160a01b0316331461070c5760405162461bcd60e51b815260040161047190611956565b601354600160a01b900460ff16156107605760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610471565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107a990309061079b6009600a611a85565b61051790633b9aca00611a94565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108209190611ada565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610882573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a69190611ada565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109179190611ada565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610492338484610d20565b6000546001600160a01b031633146109705760405162461bcd60e51b815260040161047190611956565b601354600160a01b900460ff16156109c45760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610471565b6012546001600160a01b031663f305d71947306109f6816001600160a01b031660009081526001602052604090205490565b600080610a0b6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a73573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a989190611af7565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610af1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b159190611b25565b506013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b03163314610b595760405162461bcd60e51b815260040161047190611956565b60005b81518110156105b857600160046000848481518110610b7d57610b7d611aab565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610bb981611ac1565b915050610b5c565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156105b8573d6000803e3d6000fd5b6001600160a01b038316610c5d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610471565b6001600160a01b038216610cbe5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610471565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d845760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610471565b6001600160a01b038216610de65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610471565b60008111610e485760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610471565b601354600160b01b900460ff161580610e6a5750601354600160a81b900460ff165b15610e7f57610e7a8383836111e1565b505050565b600080546001600160a01b03858116911614801590610eac57506000546001600160a01b03848116911614155b15611195576001600160a01b03841660009081526004602052604090205460ff16158015610ef357506001600160a01b03831660009081526004602052604090205460ff16155b610efc57600080fd5b610f286064610f22600a54600d5411610f1757600654610f1b565b6008545b8590611287565b90611310565b6013549091506001600160a01b038581169116148015610f5657506012546001600160a01b03848116911614155b8015610f7b57506001600160a01b03831660009081526003602052604090205460ff16155b1561106357600e54821115610fd25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610471565b600f5482610ff5856001600160a01b031660009081526001602052604090205490565b610fff9190611b47565b111561104d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610471565b600d805490600061105d83611ac1565b91905055505b6013546001600160a01b03848116911614801561108957506001600160a01b0384163014155b156110b6576110b36064610f22600b54600d54116110a957600754610f1b565b6009548590611287565b90505b30600090815260016020526040902054601354600160a81b900460ff161580156110ed57506013546001600160a01b038581169116145b80156111025750601354600160b01b900460ff165b80156111115750600c54600d54115b801561113657506001600160a01b03851660009081526003602052604090205460ff16155b801561115b57506001600160a01b03841660009081526003602052604090205460ff16155b1561119357601054811115611187576111876111828461117d84601154611352565b611352565b611367565b4761119147610bc1565b505b505b6111a1848484846114e1565b50505050565b600081848411156111cb5760405162461bcd60e51b81526004016104719190611742565b5060006111d88486611b5a565b95945050505050565b6001600160a01b038316600090815260016020526040902054611204908261150c565b6001600160a01b038085166000908152600160205260408082209390935590841681522054611233908261154e565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d139085815260200190565b60008260000361129957506000610496565b60006112a58385611a94565b9050826112b28583611b6d565b146113095760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610471565b9392505050565b600061130983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ad565b60008183116113615782611309565b50919050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113af576113af611aab565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611408573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142c9190611ada565b8160018151811061143f5761143f611aab565b6001600160a01b0392831660209182029290920101526012546114659130911684610bfb565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac9479061149e908590600090869030904290600401611b8f565b600060405180830381600087803b1580156114b857600080fd5b505af11580156114cc573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b60006114ee8584846115db565b9050611505858583611500878761150c565b61168e565b5050505050565b600061130983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111a7565b60008061155b8385611b47565b9050838110156113095760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610471565b600081836115ce5760405162461bcd60e51b81526004016104719190611742565b5060006111d88486611b6d565b60055460009081906001600160a01b0390811690861603611608576008546116039085611287565b61160a565b835b90508215611686573060009081526001602052604090205461162c908461154e565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061167d9087815260200190565b60405180910390a35b949350505050565b6001600160a01b0384166000908152600160205260409020546116b1908361150c565b6001600160a01b0380861660009081526001602052604080822093909355908516815220546116e0908261154e565b6001600160a01b0380851660008181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117349085815260200190565b60405180910390a350505050565b600060208083528351808285015260005b8181101561176f57858101830151858201604001528201611753565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146117a557600080fd5b50565b80356117b381611790565b919050565b600080604083850312156117cb57600080fd5b82356117d681611790565b946020939093013593505050565b6000806000606084860312156117f957600080fd5b833561180481611790565b9250602084013561181481611790565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561184e57600080fd5b823567ffffffffffffffff8082111561186657600080fd5b818501915085601f83011261187a57600080fd5b81358181111561188c5761188c611825565b8060051b604051601f19603f830116810181811085821117156118b1576118b1611825565b6040529182528482019250838101850191888311156118cf57600080fd5b938501935b828510156118f4576118e5856117a8565b845293850193928501926118d4565b98975050505050505050565b60006020828403121561191257600080fd5b813561130981611790565b6000806040838503121561193057600080fd5b823561193b81611790565b9150602083013561194b81611790565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156119dc5781600019048211156119c2576119c261198b565b808516156119cf57918102915b93841c93908002906119a6565b509250929050565b6000826119f357506001610496565b81611a0057506000610496565b8160018114611a165760028114611a2057611a3c565b6001915050610496565b60ff841115611a3157611a3161198b565b50506001821b610496565b5060208310610133831016604e8410600b8410161715611a5f575081810a610496565b611a6983836119a1565b8060001904821115611a7d57611a7d61198b565b029392505050565b600061130960ff8416836119e4565b80820281158282048414176104965761049661198b565b634e487b7160e01b600052603260045260246000fd5b600060018201611ad357611ad361198b565b5060010190565b600060208284031215611aec57600080fd5b815161130981611790565b600080600060608486031215611b0c57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611b3757600080fd5b8151801515811461130957600080fd5b808201808211156104965761049661198b565b818103818111156104965761049661198b565b600082611b8a57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bdf5784516001600160a01b031683529383019391830191600101611bba565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b0e8cd0daf1eb22fc55f0c6bea22c2fad6b478629d36ed6575be78ba2312d64064736f6c63430008140033

Deployed Bytecode

0x6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f14610381578063a9059cbb14610396578063bf474bed146103b6578063c9567bf9146103cc578063d34628cc146103e1578063dd62ed3e1461040157600080fd5b8063751039fc146102ea5780637d1db4a5146102ff5780638da5cb5b146103155780638f9a55c01461033d57806395d89b411461035357600080fd5b806323b872dd116100fd57806323b872dd1461020a578063313ce5671461022a57806331c2d847146102465780633bbac5791461026657806370a082311461029f578063715018a6146102d557600080fd5b80630614117a1461014557806306fdde031461015c578063095ea7b3146101a15780630faee56f146101d157806318160ddd146101f557600080fd5b3661014057005b600080fd5b34801561015157600080fd5b5061015a610447565b005b34801561016857600080fd5b5060408051808201909152600a8152694c41534552204559455360b01b60208201525b6040516101989190611742565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046117b8565b610485565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e760115481565b604051908152602001610198565b34801561020157600080fd5b506101e761049c565b34801561021657600080fd5b506101c16102253660046117e4565b6104bd565b34801561023657600080fd5b5060405160098152602001610198565b34801561025257600080fd5b5061015a61026136600461183b565b610526565b34801561027257600080fd5b506101c1610281366004611900565b6001600160a01b031660009081526004602052604090205460ff1690565b3480156102ab57600080fd5b506101e76102ba366004611900565b6001600160a01b031660009081526001602052604090205490565b3480156102e157600080fd5b5061015a6105bc565b3480156102f657600080fd5b5061015a610630565b34801561030b57600080fd5b506101e7600e5481565b34801561032157600080fd5b506000546040516001600160a01b039091168152602001610198565b34801561034957600080fd5b506101e7600f5481565b34801561035f57600080fd5b506040805180820190915260058152642620a9a2a960d91b602082015261018b565b34801561038d57600080fd5b5061015a6106e2565b3480156103a257600080fd5b506101c16103b13660046117b8565b610939565b3480156103c257600080fd5b506101e760105481565b3480156103d857600080fd5b5061015a610946565b3480156103ed57600080fd5b5061015a6103fc36600461183b565b610b2f565b34801561040d57600080fd5b506101e761041c36600461191d565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b0316331461047a5760405162461bcd60e51b815260040161047190611956565b60405180910390fd5b61048347610bc1565b565b6000610492338484610bfb565b5060015b92915050565b60006104aa6009600a611a85565b6104b890633b9aca00611a94565b905090565b60006104ca848484610d20565b61051c843361051785604051806060016040528060288152602001611c01602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111a7565b610bfb565b5060019392505050565b6000546001600160a01b031633146105505760405162461bcd60e51b815260040161047190611956565b60005b81518110156105b85760006004600084848151811061057457610574611aab565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806105b081611ac1565b915050610553565b5050565b6000546001600160a01b031633146105e65760405162461bcd60e51b815260040161047190611956565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461065a5760405162461bcd60e51b815260040161047190611956565b6106666009600a611a85565b61067490633b9aca00611a94565b600e556106836009600a611a85565b61069190633b9aca00611a94565b600f557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106c16009600a611a85565b6106cf90633b9aca00611a94565b60405190815260200160405180910390a1565b6000546001600160a01b0316331461070c5760405162461bcd60e51b815260040161047190611956565b601354600160a01b900460ff16156107605760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610471565b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107a990309061079b6009600a611a85565b61051790633b9aca00611a94565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107fc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108209190611ada565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610882573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108a69190611ada565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109179190611ada565b601380546001600160a01b0319166001600160a01b0392909216919091179055565b6000610492338484610d20565b6000546001600160a01b031633146109705760405162461bcd60e51b815260040161047190611956565b601354600160a01b900460ff16156109c45760405162461bcd60e51b81526020600482015260176024820152763a3930b234b7339034b99030b63932b0b23c9037b832b760491b6044820152606401610471565b6012546001600160a01b031663f305d71947306109f6816001600160a01b031660009081526001602052604090205490565b600080610a0b6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a73573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a989190611af7565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610af1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b159190611b25565b506013805462ff00ff60a01b19166201000160a01b179055565b6000546001600160a01b03163314610b595760405162461bcd60e51b815260040161047190611956565b60005b81518110156105b857600160046000848481518110610b7d57610b7d611aab565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610bb981611ac1565b915050610b5c565b6005546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156105b8573d6000803e3d6000fd5b6001600160a01b038316610c5d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610471565b6001600160a01b038216610cbe5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610471565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610d845760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610471565b6001600160a01b038216610de65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610471565b60008111610e485760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610471565b601354600160b01b900460ff161580610e6a5750601354600160a81b900460ff165b15610e7f57610e7a8383836111e1565b505050565b600080546001600160a01b03858116911614801590610eac57506000546001600160a01b03848116911614155b15611195576001600160a01b03841660009081526004602052604090205460ff16158015610ef357506001600160a01b03831660009081526004602052604090205460ff16155b610efc57600080fd5b610f286064610f22600a54600d5411610f1757600654610f1b565b6008545b8590611287565b90611310565b6013549091506001600160a01b038581169116148015610f5657506012546001600160a01b03848116911614155b8015610f7b57506001600160a01b03831660009081526003602052604090205460ff16155b1561106357600e54821115610fd25760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e000000000000006044820152606401610471565b600f5482610ff5856001600160a01b031660009081526001602052604090205490565b610fff9190611b47565b111561104d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610471565b600d805490600061105d83611ac1565b91905055505b6013546001600160a01b03848116911614801561108957506001600160a01b0384163014155b156110b6576110b36064610f22600b54600d54116110a957600754610f1b565b6009548590611287565b90505b30600090815260016020526040902054601354600160a81b900460ff161580156110ed57506013546001600160a01b038581169116145b80156111025750601354600160b01b900460ff165b80156111115750600c54600d54115b801561113657506001600160a01b03851660009081526003602052604090205460ff16155b801561115b57506001600160a01b03841660009081526003602052604090205460ff16155b1561119357601054811115611187576111876111828461117d84601154611352565b611352565b611367565b4761119147610bc1565b505b505b6111a1848484846114e1565b50505050565b600081848411156111cb5760405162461bcd60e51b81526004016104719190611742565b5060006111d88486611b5a565b95945050505050565b6001600160a01b038316600090815260016020526040902054611204908261150c565b6001600160a01b038085166000908152600160205260408082209390935590841681522054611233908261154e565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d139085815260200190565b60008260000361129957506000610496565b60006112a58385611a94565b9050826112b28583611b6d565b146113095760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610471565b9392505050565b600061130983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115ad565b60008183116113615782611309565b50919050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106113af576113af611aab565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611408573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142c9190611ada565b8160018151811061143f5761143f611aab565b6001600160a01b0392831660209182029290920101526012546114659130911684610bfb565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac9479061149e908590600090869030904290600401611b8f565b600060405180830381600087803b1580156114b857600080fd5b505af11580156114cc573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b60006114ee8584846115db565b9050611505858583611500878761150c565b61168e565b5050505050565b600061130983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111a7565b60008061155b8385611b47565b9050838110156113095760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610471565b600081836115ce5760405162461bcd60e51b81526004016104719190611742565b5060006111d88486611b6d565b60055460009081906001600160a01b0390811690861603611608576008546116039085611287565b61160a565b835b90508215611686573060009081526001602052604090205461162c908461154e565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061167d9087815260200190565b60405180910390a35b949350505050565b6001600160a01b0384166000908152600160205260409020546116b1908361150c565b6001600160a01b0380861660009081526001602052604080822093909355908516815220546116e0908261154e565b6001600160a01b0380851660008181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117349085815260200190565b60405180910390a350505050565b600060208083528351808285015260005b8181101561176f57858101830151858201604001528201611753565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146117a557600080fd5b50565b80356117b381611790565b919050565b600080604083850312156117cb57600080fd5b82356117d681611790565b946020939093013593505050565b6000806000606084860312156117f957600080fd5b833561180481611790565b9250602084013561181481611790565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561184e57600080fd5b823567ffffffffffffffff8082111561186657600080fd5b818501915085601f83011261187a57600080fd5b81358181111561188c5761188c611825565b8060051b604051601f19603f830116810181811085821117156118b1576118b1611825565b6040529182528482019250838101850191888311156118cf57600080fd5b938501935b828510156118f4576118e5856117a8565b845293850193928501926118d4565b98975050505050505050565b60006020828403121561191257600080fd5b813561130981611790565b6000806040838503121561193057600080fd5b823561193b81611790565b9150602083013561194b81611790565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156119dc5781600019048211156119c2576119c261198b565b808516156119cf57918102915b93841c93908002906119a6565b509250929050565b6000826119f357506001610496565b81611a0057506000610496565b8160018114611a165760028114611a2057611a3c565b6001915050610496565b60ff841115611a3157611a3161198b565b50506001821b610496565b5060208310610133831016604e8410600b8410161715611a5f575081810a610496565b611a6983836119a1565b8060001904821115611a7d57611a7d61198b565b029392505050565b600061130960ff8416836119e4565b80820281158282048414176104965761049661198b565b634e487b7160e01b600052603260045260246000fd5b600060018201611ad357611ad361198b565b5060010190565b600060208284031215611aec57600080fd5b815161130981611790565b600080600060608486031215611b0c57600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611b3757600080fd5b8151801515811461130957600080fd5b808201808211156104965761049661198b565b818103818111156104965761049661198b565b600082611b8a57634e487b7160e01b600052601260045260246000fd5b500490565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bdf5784516001600160a01b031683529383019391830191600101611bba565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b0e8cd0daf1eb22fc55f0c6bea22c2fad6b478629d36ed6575be78ba2312d64064736f6c63430008140033

Deployed Bytecode Sourcemap

3827:9937:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13625:95;;;;;;;;;;;;;:::i;:::-;;6655:83;;;;;;;;;;-1:-1:-1;6725:5:0;;;;;;;;;;;;-1:-1:-1;;;6725:5:0;;;;6655:83;;;;;;;:::i;:::-;;;;;;;;7524:186;;;;;;;;;;-1:-1:-1;7524:186:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;7524:186:0;1162:187:1;4940:57:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4940:57:0;1354:177:1;6926:95:0;;;;;;;;;;;;;:::i;7716:446::-;;;;;;;;;;-1:-1:-1;7716:446:0;;;;;:::i;:::-;;:::i;6837:83::-;;;;;;;;;;-1:-1:-1;6837:83:0;;4551:1;2139:36:1;;2127:2;2112:18;6837:83:0;1997:184:1;9204:168:0;;;;;;;;;;-1:-1:-1;9204:168:0;;;;;:::i;:::-;;:::i;9378:86::-;;;;;;;;;;-1:-1:-1;9378:86:0;;;;;:::i;:::-;-1:-1:-1;;;;;9449:7:0;9425:4;9449:7;;;:4;:7;;;;;;;;;9378:86;7027:119;;;;;;;;;;-1:-1:-1;7027:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7120:18:0;7093:7;7120:18;;;:9;:18;;;;;;;7027:119;2864:148;;;;;;;;;;;;;:::i;8768:162::-;;;;;;;;;;;;;:::i;4745:58::-;;;;;;;;;;;;;;;;2654:79;;;;;;;;;;-1:-1:-1;2692:7:0;2719:6;2654:79;;-1:-1:-1;;;;;2719:6:0;;;3842:51:1;;3830:2;3815:18;2654:79:0;3696:203:1;4810:60:0;;;;;;;;;;;;;;;;6744:87;;;;;;;;;;-1:-1:-1;6816:7:0;;;;;;;;;;;;-1:-1:-1;;;6816:7:0;;;;6744:87;;5710:450;;;;;;;;;;;;;:::i;7152:192::-;;;;;;;;;;-1:-1:-1;7152:192:0;;;;;:::i;:::-;;:::i;4877:56::-;;;;;;;;;;;;;;;;6166:483;;;;;;;;;;;;;:::i;9034:164::-;;;;;;;;;;-1:-1:-1;9034:164:0;;;;;:::i;:::-;;:::i;7350:168::-;;;;;;;;;;-1:-1:-1;7350:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7483:18:0;;;7456:7;7483:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7350:168;13625:95;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;;;;;;;;;13677:35:::1;13690:21;13677:12;:35::i;:::-;13625:95::o:0;7524:186::-;7624:4;7641:39;301:10;7664:7;7673:6;7641:8;:39::i;:::-;-1:-1:-1;7698:4:0;7524:186;;;;;:::o;6926:95::-;6979:7;4723:15;4551:1;4723:2;:15;:::i;:::-;4707:31;;:13;:31;:::i;:::-;6999:14;;6926:95;:::o;7716:446::-;7848:4;7865:36;7875:6;7883:9;7894:6;7865:9;:36::i;:::-;7912:220;7935:6;301:10;7983:138;8039:6;7983:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7983:19:0;;;;;;:11;:19;;;;;;;;301:10;7983:33;;;;;;;;;;:37;:138::i;:::-;7912:8;:220::i;:::-;-1:-1:-1;8150:4:0;7716:446;;;;;:::o;9204:168::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;9279:6:::1;9274:91;9295:6;:13;9291:1;:17;9274:91;;;9348:5;9330:4;:15;9335:6;9342:1;9335:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;9330:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;9330:15:0;:23;;-1:-1:-1;;9330:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9310:3;::::1;::::0;::::1;:::i;:::-;;;;9274:91;;;;9204:168:::0;:::o;2864:148::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;2971:1:::1;2955:6:::0;;2934:40:::1;::::0;-1:-1:-1;;;;;2955:6:0;;::::1;::::0;2934:40:::1;::::0;2971:1;;2934:40:::1;3002:1;2985:19:::0;;-1:-1:-1;;;;;;2985:19:0::1;::::0;;2864:148::o;8768:162::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;4723:15:::1;4551:1;4723:2;:15;:::i;:::-;4707:31;::::0;:13:::1;:31;:::i;:::-;8822:12;:22:::0;4723:15:::1;4551:1;4723:2;:15;:::i;:::-;4707:31;::::0;:13:::1;:31;:::i;:::-;8855:14;:24:::0;8895:27:::1;4723:15;4551:1;4723:2;:15;:::i;:::-;4707:31;::::0;:13:::1;:31;:::i;:::-;8895:27;::::0;1500:25:1;;;1488:2;1473:18;8895:27:0::1;;;;;;;8768:162::o:0;5710:450::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;5771:11:::1;::::0;-1:-1:-1;;;5771:11:0;::::1;;;5770:12;5762:48;;;::::0;-1:-1:-1;;;5762:48:0;;6820:2:1;5762:48:0::1;::::0;::::1;6802:21:1::0;6859:2;6839:18;;;6832:30;-1:-1:-1;;;6878:18:1;;;6871:53;6941:18;;5762:48:0::1;6618:347:1::0;5762:48:0::1;5821:15;:104:::0;;-1:-1:-1;;;;;;5821:104:0::1;5872:42;5821:104:::0;;::::1;::::0;;;5936:58:::1;::::0;5953:4:::1;::::0;4723:15:::1;4551:1;4723:2;:15;:::i;:::-;4707:31;::::0;:13:::1;:31;:::i;5936:58::-;6039:15;;;;;;;;;-1:-1:-1::0;;;;;6039:15:0::1;-1:-1:-1::0;;;;;6039:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6021:55:0::1;;6099:4;6119:15;;;;;;;;;-1:-1:-1::0;;;;;6119:15:0::1;-1:-1:-1::0;;;;;6119:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6021:131;::::0;-1:-1:-1;;;;;;6021:131:0::1;::::0;;;;;;-1:-1:-1;;;;;7456:15:1;;;6021:131:0::1;::::0;::::1;7438:34:1::0;7508:15;;7488:18;;;7481:43;7373:18;;6021:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6005:13;:147:::0;;-1:-1:-1;;;;;;6005:147:0::1;-1:-1:-1::0;;;;;6005:147:0;;;::::1;::::0;;;::::1;::::0;;5710:450::o;7152:192::-;7255:4;7272:42;301:10;7296:9;7307:6;7272:9;:42::i;6166:483::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;6228:11:::1;::::0;-1:-1:-1;;;6228:11:0;::::1;;;6227:12;6219:48;;;::::0;-1:-1:-1;;;6219:48:0;;6820:2:1;6219:48:0::1;::::0;::::1;6802:21:1::0;6859:2;6839:18;;;6832:30;-1:-1:-1;;;6878:18:1;;;6871:53;6941:18;;6219:48:0::1;6618:347:1::0;6219:48:0::1;6278:15;::::0;-1:-1:-1;;;;;6278:15:0::1;:31;6317:21;6362:4;6382:24;6362:4:::0;-1:-1:-1;;;;;7120:18:0;7093:7;7120:18;;;:9;:18;;;;;;;7027:119;6382:24:::1;6421:1;6437::::0;6453:7:::1;2692::::0;2719:6;-1:-1:-1;;;;;2719:6:0;;2654:79;6453:7:::1;6278:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;6278:223:0;;;-1:-1:-1;;;;;7894:15:1;;;6278:223:0::1;::::0;::::1;7876:34:1::0;7926:18;;;7919:34;;;;7969:18;;;7962:34;;;;8012:18;;;8005:34;8076:15;;;8055:19;;;8048:44;6475:15:0::1;8108:19:1::0;;;8101:35;7810:19;;6278:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6519:13:0::1;::::0;6550:15:::1;::::0;6512:71:::1;::::0;-1:-1:-1;;;6512:71:0;;-1:-1:-1;;;;;6550:15:0;;::::1;6512:71;::::0;::::1;8632:51:1::0;-1:-1:-1;;8699:18:1;;;8692:34;6519:13:0;::::1;::::0;-1:-1:-1;6512:29:0::1;::::0;8605:18:1;;6512:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;6594:11:0::1;:18:::0;;-1:-1:-1;;;;6623:18:0;-1:-1:-1;;;6623:18:0;;;6166:483::o;9034:164::-;2779:6;;-1:-1:-1;;;;;2779:6:0;301:10;2779:22;2771:67;;;;-1:-1:-1;;;2771:67:0;;;;;;;:::i;:::-;9108:6:::1;9103:88;9124:5;:12;9120:1;:16;9103:88;;;9175:4;9158;:14;9163:5;9169:1;9163:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;9158:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;9158:14:0;:21;;-1:-1:-1;;9158:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9138:3;::::1;::::0;::::1;:::i;:::-;;;;9103:88;;8936:92:::0;8993:10;;:27;;-1:-1:-1;;;;;8993:10:0;;;;:27;;;;;9013:6;;8993:10;:27;:10;:27;9013:6;8993:10;:27;;;;;;;;;;;;;;;;;;;8168:335;-1:-1:-1;;;;;8261:19:0;;8253:68;;;;-1:-1:-1;;;8253:68:0;;9221:2:1;8253:68:0;;;9203:21:1;9260:2;9240:18;;;9233:30;9299:34;9279:18;;;9272:62;-1:-1:-1;;;9350:18:1;;;9343:34;9394:19;;8253:68:0;9019:400:1;8253:68:0;-1:-1:-1;;;;;8340:21:0;;8332:68;;;;-1:-1:-1;;;8332:68:0;;9626:2:1;8332:68:0;;;9608:21:1;9665:2;9645:18;;;9638:30;9704:34;9684:18;;;9677:62;-1:-1:-1;;;9755:18:1;;;9748:32;9797:19;;8332:68:0;9424:398:1;8332:68:0;-1:-1:-1;;;;;8411:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8463:32;;1500:25:1;;;8463:32:0;;1473:18:1;8463:32:0;;;;;;;;8168:335;;;:::o;9470:2475::-;-1:-1:-1;;;;;9563:18:0;;9555:68;;;;-1:-1:-1;;;9555:68:0;;10029:2:1;9555:68:0;;;10011:21:1;10068:2;10048:18;;;10041:30;10107:34;10087:18;;;10080:62;-1:-1:-1;;;10158:18:1;;;10151:35;10203:19;;9555:68:0;9827:401:1;9555:68:0;-1:-1:-1;;;;;9642:16:0;;9634:64;;;;-1:-1:-1;;;9634:64:0;;10435:2:1;9634:64:0;;;10417:21:1;10474:2;10454:18;;;10447:30;10513:34;10493:18;;;10486:62;-1:-1:-1;;;10564:18:1;;;10557:33;10607:19;;9634:64:0;10233:399:1;9634:64:0;9731:1;9717:11;:15;9709:69;;;;-1:-1:-1;;;9709:69:0;;10839:2:1;9709:69:0;;;10821:21:1;10878:2;10858:18;;;10851:30;10917:34;10897:18;;;10890:62;-1:-1:-1;;;10968:18:1;;;10961:39;11017:19;;9709:69:0;10637:405:1;9709:69:0;9794:11;;-1:-1:-1;;;9794:11:0;;;;9793:12;;:22;;-1:-1:-1;9809:6:0;;-1:-1:-1;;;9809:6:0;;;;9793:22;9789:113;;;9832:37;9847:4;9853:2;9857:11;9832:14;:37::i;:::-;9470:2475;;;:::o;9789:113::-;9912:17;2719:6;;-1:-1:-1;;;;;9948:15:0;;;2719:6;;9948:15;;;;:32;;-1:-1:-1;2692:7:0;2719:6;-1:-1:-1;;;;;9967:13:0;;;2719:6;;9967:13;;9948:32;9944:1935;;;-1:-1:-1;;;;;10006:10:0;;;;;;:4;:10;;;;;;;;10005:11;:24;;;;-1:-1:-1;;;;;;10021:8:0;;;;;;:4;:8;;;;;;;;10020:9;10005:24;9997:33;;;;;;10057:213;10266:3;10057:186;10126:15;;10114:9;;:27;10113:111;;10210:14;;10113:111;;;10170:12;;10113:111;10057:11;;:33;:186::i;:::-;:208;;:213::i;:::-;10315:13;;10045:225;;-1:-1:-1;;;;;;10307:21:0;;;10315:13;;10307:21;:72;;;;-1:-1:-1;10363:15:0;;-1:-1:-1;;;;;10349:30:0;;;10363:15;;10349:30;;10307:72;:117;;;;-1:-1:-1;;;;;;10401:23:0;;;;;;:19;:23;;;;;;;;10400:24;10307:117;10285:449;;;10482:12;;10467:11;:27;;10459:65;;;;-1:-1:-1;;;10459:65:0;;11249:2:1;10459:65:0;;;11231:21:1;11288:2;11268:18;;;11261:30;11327:27;11307:18;;;11300:55;11372:18;;10459:65:0;11047:349:1;10459:65:0;10604:14;;10589:11;10573:13;10583:2;-1:-1:-1;;;;;7120:18:0;7093:7;7120:18;;;:9;:18;;;;;;;7027:119;10573:13;:27;;;;:::i;:::-;:45;;10543:145;;;;-1:-1:-1;;;10543:145:0;;11733:2:1;10543:145:0;;;11715:21:1;11772:2;11752:18;;;11745:30;11811:28;11791:18;;;11784:56;11857:18;;10543:145:0;11531:350:1;10543:145:0;10707:9;:11;;;:9;:11;;;:::i;:::-;;;;;;10285:449;10758:13;;-1:-1:-1;;;;;10752:19:0;;;10758:13;;10752:19;:44;;;;-1:-1:-1;;;;;;10775:21:0;;10791:4;10775:21;;10752:44;10748:337;;;10829:240;11065:3;10829:209;10906:16;;10894:9;;:28;10893:122;;11000:15;;10893:122;;;10955:13;;10829:11;;:37;:209::i;:240::-;10817:252;;10748:337;11148:4;11099:28;7120:18;;;:9;:18;;;;;;11192:6;;-1:-1:-1;;;11192:6:0;;;;11191:7;:47;;;;-1:-1:-1;11225:13:0;;-1:-1:-1;;;;;11219:19:0;;;11225:13;;11219:19;11191:47;:79;;;;-1:-1:-1;11259:11:0;;-1:-1:-1;;;11259:11:0;;;;11191:79;:130;;;;;11303:18;;11291:9;;:30;11191:130;:177;;;;-1:-1:-1;;;;;;11343:25:0;;;;;;:19;:25;;;;;;;;11342:26;11191:177;:222;;;;-1:-1:-1;;;;;;11390:23:0;;;;;;:19;:23;;;;;;;;11389:24;11191:222;11169:699;;;11475:17;;11452:20;:40;11448:211;;;11517:122;11560:56;11564:11;11577:38;11581:20;11603:11;;11577:3;:38::i;:::-;11560:3;:56::i;:::-;11517:16;:122::i;:::-;11706:21;11798:35;11811:21;11798:12;:35::i;:::-;11429:439;11169:699;9982:1897;9944:1935;11889:48;11904:4;11910:2;11914:11;11927:9;11889:14;:48::i;:::-;9544:2401;9470:2475;;;:::o;1468:224::-;1588:7;1624:12;1616:6;;;;1608:29;;;;-1:-1:-1;;;1608:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1648:9:0;1660:5;1664:1;1660;:5;:::i;:::-;1648:17;1468:224;-1:-1:-1;;;;;1468:224:0:o;8509:253::-;-1:-1:-1;;;;;8618:15:0;;;;;;:9;:15;;;;;;:32;;8638:11;8618:19;:32::i;:::-;-1:-1:-1;;;;;8600:15:0;;;;;;;:9;:15;;;;;;:50;;;;8677:13;;;;;;;:30;;8695:11;8677:17;:30::i;:::-;-1:-1:-1;;;;;8661:13:0;;;;;;;:9;:13;;;;;;;:46;;;;8723:31;;;;;;;;;;8742:11;1500:25:1;;1488:2;1473:18;;1354:177;1698:246:0;1756:7;1780:1;1785;1780:6;1776:47;;-1:-1:-1;1810:1:0;1803:8;;1776:47;1833:9;1845:5;1849:1;1845;:5;:::i;:::-;1833:17;-1:-1:-1;1878:1:0;1869:5;1873:1;1833:17;1869:5;:::i;:::-;:10;1861:56;;;;-1:-1:-1;;;1861:56:0;;12443:2:1;1861:56:0;;;12425:21:1;12482:2;12462:18;;;12455:30;12521:34;12501:18;;;12494:62;-1:-1:-1;;;12572:18:1;;;12565:31;12613:19;;1861:56:0;12241:397:1;1861:56:0;1935:1;1698:246;-1:-1:-1;;;1698:246:0:o;1950:132::-;2008:7;2035:39;2039:1;2042;2035:39;;;;;;;;;;;;;;;;;:3;:39::i;13017:107::-;13074:7;13106:1;13102;:5;13101:15;;13115:1;13101:15;;;-1:-1:-1;13111:1:0;13017:107;-1:-1:-1;13017:107:0:o;13130:483::-;5283:6;:13;;-1:-1:-1;;;;5283:13:0;-1:-1:-1;;;5283:13:0;;;13232:16:::1;::::0;;13246:1:::1;13232:16:::0;;;;;::::1;::::0;;-1:-1:-1;;13232:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13232:16:0::1;13208:40;;13277:4;13259;13264:1;13259:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13259:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;13303:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;13303:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;13259:7;;13303:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13293:4;13298:1;13293:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13293:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;13368:15:::1;::::0;13336:62:::1;::::0;13353:4:::1;::::0;13368:15:::1;13386:11:::0;13336:8:::1;:62::i;:::-;13409:15;::::0;:196:::1;::::0;-1:-1:-1;;;13409:196:0;;-1:-1:-1;;;;;13409:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;13490:11;;13409:15:::1;::::0;13532:4;;13559::::1;::::0;13579:15:::1;::::0;13409:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5319:6:0;:14;;-1:-1:-1;;;;5319:14:0;;;-1:-1:-1;;;;13130:483:0:o;11951:303::-;12104:15;12122:47;12140:4;12146:11;12159:9;12122:17;:47::i;:::-;12104:65;-1:-1:-1;12180:66:0;12200:4;12206:2;12104:65;12219:26;:11;12235:9;12219:15;:26::i;:::-;12180:19;:66::i;:::-;12093:161;11951:303;;;;:::o;1326:136::-;1384:7;1411:43;1415:1;1418;1411:43;;;;;;;;;;;;;;;;;:3;:43::i;1141:179::-;1199:7;;1231:5;1235:1;1231;:5;:::i;:::-;1219:17;;1260:1;1255;:6;;1247:46;;;;-1:-1:-1;;;1247:46:0;;13830:2:1;1247:46:0;;;13812:21:1;13869:2;13849:18;;;13842:30;13908:29;13888:18;;;13881:57;13955:18;;1247:46:0;13628:351:1;2088:223:0;2208:7;2243:12;2236:5;2228:28;;;;-1:-1:-1;;;2228:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2267:9:0;2279:5;2283:1;2279;:5;:::i;12592:419::-;12739:10;;12692:7;;;;-1:-1:-1;;;;;12739:10:0;;;12730:19;;;;:65;;12766:12;;:29;;12783:11;12766:16;:29::i;:::-;12730:65;;;12752:11;12730:65;12712:83;-1:-1:-1;12810:13:0;;12806:173;;12885:4;12867:24;;;;:9;:24;;;;;;:39;;12896:9;12867:28;:39::i;:::-;12858:4;12840:24;;;;:9;:24;;;;;;;:66;;;;12926:41;;-1:-1:-1;;;;;12926:41:0;;;;;;;12957:9;1500:25:1;;1488:2;1473:18;;1354:177;12926:41:0;;;;;;;;12806:173;12996:7;12592:419;-1:-1:-1;;;;12592:419:0:o;12260:326::-;-1:-1:-1;;;;;12439:15:0;;;;;;:9;:15;;;;;;:31;;12459:10;12439:19;:31::i;:::-;-1:-1:-1;;;;;12421:15:0;;;;;;;:9;:15;;;;;;:49;;;;12497:13;;;;;;;:32;;12515:13;12497:17;:32::i;:::-;-1:-1:-1;;;;;12481:13:0;;;;;;;:9;:13;;;;;;;:48;;;;12545:33;;;;;;;;;;12564:13;1500:25:1;;1488:2;1473:18;;1354:177;12545:33:0;;;;;;;;12260:326;;;;:::o;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:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842: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:356::-;4499:2;4481:21;;;4518:18;;;4511:30;4577:34;4572:2;4557:18;;4550:62;4644:2;4629:18;;4297:356::o;4658:127::-;4719:10;4714:3;4710:20;4707:1;4700:31;4750:4;4747:1;4740:15;4774:4;4771:1;4764:15;4790:422;4879:1;4922:5;4879:1;4936:270;4957:7;4947:8;4944:21;4936:270;;;5016:4;5012:1;5008:6;5004:17;4998:4;4995:27;4992:53;;;5025:18;;:::i;:::-;5075:7;5065:8;5061:22;5058:55;;;5095:16;;;;5058:55;5174:22;;;;5134:15;;;;4936:270;;;4940:3;4790:422;;;;;:::o;5217:806::-;5266:5;5296:8;5286:80;;-1:-1:-1;5337:1:1;5351:5;;5286:80;5385:4;5375:76;;-1:-1:-1;5422:1:1;5436:5;;5375:76;5467:4;5485:1;5480:59;;;;5553:1;5548:130;;;;5460:218;;5480:59;5510:1;5501:10;;5524:5;;;5548:130;5585:3;5575:8;5572:17;5569:43;;;5592:18;;:::i;:::-;-1:-1:-1;;5648:1:1;5634:16;;5663:5;;5460:218;;5762:2;5752:8;5749:16;5743:3;5737:4;5734:13;5730:36;5724:2;5714:8;5711:16;5706:2;5700:4;5697:12;5693:35;5690:77;5687:159;;;-1:-1:-1;5799:19:1;;;5831:5;;5687:159;5878:34;5903:8;5897:4;5878:34;:::i;:::-;5948:6;5944:1;5940:6;5936:19;5927:7;5924:32;5921:58;;;5959:18;;:::i;:::-;5997:20;;5217:806;-1:-1:-1;;;5217:806:1:o;6028:140::-;6086:5;6115:47;6156:4;6146:8;6142:19;6136:4;6115:47;:::i;6173:168::-;6246:9;;;6277;;6294:15;;;6288:22;;6274:37;6264:71;;6315:18;;:::i;6346:127::-;6407:10;6402:3;6398:20;6395:1;6388:31;6438:4;6435:1;6428:15;6462:4;6459:1;6452:15;6478:135;6517:3;6538:17;;;6535:43;;6558:18;;:::i;:::-;-1:-1:-1;6605:1:1;6594:13;;6478:135::o;6970:251::-;7040:6;7093:2;7081:9;7072:7;7068:23;7064:32;7061:52;;;7109:1;7106;7099:12;7061:52;7141:9;7135:16;7160:31;7185:5;7160:31;:::i;8147:306::-;8235:6;8243;8251;8304:2;8292:9;8283:7;8279:23;8275:32;8272:52;;;8320:1;8317;8310:12;8272:52;8349:9;8343:16;8333:26;;8399:2;8388:9;8384:18;8378:25;8368:35;;8443:2;8432:9;8428:18;8422:25;8412:35;;8147:306;;;;;:::o;8737:277::-;8804:6;8857:2;8845:9;8836:7;8832:23;8828:32;8825:52;;;8873:1;8870;8863:12;8825:52;8905:9;8899:16;8958:5;8951:13;8944:21;8937:5;8934:32;8924:60;;8980:1;8977;8970:12;11401:125;11466:9;;;11487:10;;;11484:36;;;11500:18;;:::i;11886:128::-;11953:9;;;11974:11;;;11971:37;;;11988:18;;:::i;12019:217::-;12059:1;12085;12075:132;;12129:10;12124:3;12120:20;12117:1;12110:31;12164:4;12161:1;12154:15;12192:4;12189:1;12182:15;12075:132;-1:-1:-1;12221:9:1;;12019:217::o;12643:980::-;12905:4;12953:3;12942:9;12938:19;12984:6;12973:9;12966:25;13010:2;13048:6;13043:2;13032:9;13028:18;13021:34;13091:3;13086:2;13075:9;13071:18;13064:31;13115:6;13150;13144:13;13181:6;13173;13166:22;13219:3;13208:9;13204:19;13197:26;;13258:2;13250:6;13246:15;13232:29;;13279:1;13289:195;13303:6;13300:1;13297:13;13289:195;;;13368:13;;-1:-1:-1;;;;;13364:39:1;13352:52;;13459:15;;;;13424:12;;;;13400:1;13318:9;13289:195;;;-1:-1:-1;;;;;;;13540:32:1;;;;13535:2;13520:18;;13513:60;-1:-1:-1;;;13604:3:1;13589:19;13582:35;13501:3;12643:980;-1:-1:-1;;;12643:980:1:o

Swarm Source

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