ETH Price: $2,526.04 (-0.97%)

Token

LUNA (LUNA)
 

Overview

Max Total Supply

1,000,000,000 LUNA

Holders

75

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,758,864.149874786030553847 LUNA

Value
$0.00
0x07F5BaFe0946e310E1620018DB09250aA7BD5166
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:
LUNA

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-24
*/

/**

*/

/*
https://t.me/OPTZ18I
https://optz18i.com/
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.19;

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);
}

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 transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

    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(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

contract LUNA is Context, IERC20, Ownable {
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => uint256) private _FreeWallets;
    mapping(address => uint256) private _BlockedAddress;
    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 1000000000 * 10**_decimals;
    uint256 public constant minimumSwapAmount = 400000 * 10**_decimals;
    uint256 private constant onePercent = 10000000 * 10**_decimals;
    uint256 public maxSwap = 100*onePercent;
    uint256 public MaximumOneTrxAmount = 100*onePercent;
    uint256 public MxWalletSize = 100*onePercent;

    uint256 private InitialBlockNo;

    uint256 public buyTax = 15;
    uint256 public sellTax = 15;
    
    string private constant _name = "LUNA";
    string private constant _symbol = "LUNA";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address immutable public FeesAddress ;
    address immutable public SecFeesWallet;

    bool public launch = false;

    constructor() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        FeesAddress  = 0x84C77FEC4F88Cd8CddE9299A29fc80049AA97A68;
        SecFeesWallet = 0x84C77FEC4F88Cd8CddE9299A29fc80049AA97A68;
        _balance[msg.sender] = _totalSupply;
        _FreeWallets[FeesAddress ] = 1;
        _FreeWallets[msg.sender] = 1;
        _FreeWallets[address(this)] = 1;

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

    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 _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if(currentAllowance != type(uint256).max) { 
            require(
                currentAllowance >= amount,
                "ERC20: transfer amount exceeds allowance"
            );
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }
        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 StartTrading() external onlyOwner {
        launch = true;
        InitialBlockNo = block.number;
    }

    function _addExcludedWallet(address wallet) external onlyOwner {
        _FreeWallets[wallet] = 1;
    }

    function _RemoveExcludedWallet(address wallet) external onlyOwner {
        _FreeWallets[wallet] = 0;
    }

    function RemoveLimts() external onlyOwner {
        MaximumOneTrxAmount = _totalSupply;
        MxWalletSize = _totalSupply;
    }

    function EditTaxes(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        require(newBuyTax + newSellTax <= 70, "Tax too high");
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

    function _tokenTransfer(address from, address to, uint256 amount, uint256 _tax) private {
        uint256 taxTokens = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 0, "ERC20: no tokens transferred");
        uint256 _tax = 0;
        if (_FreeWallets[from] == 0 && _FreeWallets[to] == 0)
        {
            require(launch, "Trading not open");
            require(_BlockedAddress[from] == 0, "Please contact support");
            require(amount <= MaximumOneTrxAmount, "MaxTx Enabled at launch");
            if (to != uniswapV2Pair && to != address(0xdead)) require(balanceOf(to) + amount <= MxWalletSize, "MaxWallet Enabled at launch");
            if (block.number < InitialBlockNo + 0) {_tax=3;} else {
                if (from == uniswapV2Pair) {
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minimumSwapAmount) { 
                        uint256 mxSw = maxSwap;
                        if (tokensToSwap > amount) tokensToSwap = amount;
                        if (tokensToSwap > mxSw) tokensToSwap = mxSw;
                        swapTokensForEth(tokensToSwap);
                    }
                    _tax = sellTax;
                }
            }
        }
        _tokenTransfer(from, to, amount, _tax);
    }

    function manualSendBalance() external onlyOwner {
        bool success;
        (success, ) = SecFeesWallet.call{value: address(this).balance / 10}("");
        (success, ) = FeesAddress .call{value: address(this).balance}("");
    } 

    function manualSwapTokens() external onlyOwner {
        uint256 contractBalance = balanceOf(address(this));
        swapTokensForEth(contractBalance);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
        bool success;
        (success, ) = SecFeesWallet.call{value: address(this).balance / 10}("");
        (success, ) = FeesAddress .call{value: address(this).balance}("");
    }
    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"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":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"EditTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"FeesAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MaximumOneTrxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"RemoveLimts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"SecFeesWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"StartTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"_RemoveExcludedWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"_addExcludedWallet","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":"buyTax","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":"launch","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSendBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwapTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumSwapAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052620000126012600a62000491565b620000219062989680620004a9565b6200002e906064620004a9565b6005556200003f6012600a62000491565b6200004e9062989680620004a9565b6200005b906064620004a9565b6006556200006c6012600a62000491565b6200007b9062989680620004a9565b62000088906064620004a9565b600755600f6009819055600a55600c805460ff60a01b19169055348015620000af57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000156573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200017c9190620004c3565b6001600160a01b031663c9c6539630600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001df573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002059190620004c3565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000253573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002799190620004c3565b600c80546001600160a01b0319166001600160a01b03929092169190911790557384c77fec4f88cd8cdde9299a29fc80049aa97a68608081905260a052620002c46012600a62000491565b620002d490633b9aca00620004a9565b336000818152600160208181526040808420959095556080516001600160a01b031683526003905283822081905591815282812082905530815291909120556200031b3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003556012600a62000491565b6200036590633b9aca00620004a9565b60405190815260200160405180910390a3620004ee565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003d3578160001904821115620003b757620003b76200037c565b80851615620003c557918102915b93841c939080029062000397565b509250929050565b600082620003ec575060016200048b565b81620003fb575060006200048b565b81600181146200041457600281146200041f576200043f565b60019150506200048b565b60ff8411156200043357620004336200037c565b50506001821b6200048b565b5060208310610133831016604e8410600b841016171562000464575081810a6200048b565b62000470838362000392565b80600019048211156200048757620004876200037c565b0290505b92915050565b6000620004a260ff841683620003db565b9392505050565b80820281158282048414176200048b576200048b6200037c565b600060208284031215620004d657600080fd5b81516001600160a01b0381168114620004a257600080fd5b60805160a0516116a7620005306000396000818161044e015281816106c4015261102801526000818161039c0152818161074201526110b001526116a76000f3fe6080604052600436106101c65760003560e01c806370a08231116100f7578063a9059cbb11610095578063cc1776d311610064578063cc1776d3146104e6578063d7f73858146104fc578063dd62ed3e1461051c578063f2fde38b1461056257600080fd5b8063a9059cbb14610486578063bf6a1c0d146104a6578063c4918b4e146104bb578063c5c95259146104d157600080fd5b80638da5cb5b116100d15780638da5cb5b1461041e57806395d89b411461020857806397b2ebfe1461043c578063a414f3e21461047057600080fd5b806370a08231146103be578063715018a6146103f45780637c4c75eb1461040957600080fd5b806328176f891161016457806349bd5a5e1161013e57806349bd5a5e1461031c5780634f7041a514610354578063506caca11461036a5780636cae5a691461038a57600080fd5b806328176f89146102c95780632d34b9ed146102e0578063313ce5671461030057600080fd5b806318160ddd116101a057806318160ddd1461025b578063200ab15d1461027e578063230b33501461029357806323b872dd146102a957600080fd5b806301339c21146101d257806306fdde0314610208578063095ea7b31461023b57600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50600c546101f390600160a01b900460ff1681565b60405190151581526020015b60405180910390f35b34801561021457600080fd5b5060408051808201825260048152634c554e4160e01b602082015290516101ff91906112e1565b34801561024757600080fd5b506101f3610256366004611344565b610582565b34801561026757600080fd5b50610270610599565b6040519081526020016101ff565b34801561028a57600080fd5b506102706105ba565b34801561029f57600080fd5b5061027060065481565b3480156102b557600080fd5b506101f36102c4366004611370565b6105d6565b3480156102d557600080fd5b506102de61068e565b005b3480156102ec57600080fd5b506102de6102fb3660046113b1565b6107a9565b34801561030c57600080fd5b50604051601281526020016101ff565b34801561032857600080fd5b50600c5461033c906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561036057600080fd5b5061027060095481565b34801561037657600080fd5b506102de6103853660046113d5565b6107f0565b34801561039657600080fd5b5061033c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103ca57600080fd5b506102706103d93660046113b1565b6001600160a01b031660009081526001602052604090205490565b34801561040057600080fd5b506102de61086e565b34801561041557600080fd5b506102de6108e2565b34801561042a57600080fd5b506000546001600160a01b031661033c565b34801561044857600080fd5b5061033c7f000000000000000000000000000000000000000000000000000000000000000081565b34801561047c57600080fd5b5061027060075481565b34801561049257600080fd5b506101f36104a1366004611344565b610928565b3480156104b257600080fd5b506102de610935565b3480156104c757600080fd5b5061027060055481565b3480156104dd57600080fd5b506102de610978565b3480156104f257600080fd5b50610270600a5481565b34801561050857600080fd5b506102de6105173660046113b1565b6109de565b34801561052857600080fd5b506102706105373660046113f7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561056e57600080fd5b506102de61057d3660046113b1565b610a22565b600061058f338484610a55565b5060015b92915050565b60006105a76012600a61152a565b6105b590633b9aca00611539565b905090565b6105c66012600a61152a565b6105d39062061a80611539565b81565b60006105e3848484610b79565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461068357828110156106765760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6106838533858403610a55565b506001949350505050565b6000546001600160a01b031633146106b85760405162461bcd60e51b815260040161066d90611550565b60006001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166106ef600a47611585565b604051600081818185875af1925050503d806000811461072b576040519150601f19603f3d011682016040523d82523d6000602084013e610730565b606091505b50506040519091506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904790600081818185875af1925050503d806000811461079e576040519150601f19603f3d011682016040523d82523d6000602084013e6107a3565b606091505b50505050565b6000546001600160a01b031633146107d35760405162461bcd60e51b815260040161066d90611550565b6001600160a01b0316600090815260036020526040902060019055565b6000546001600160a01b0316331461081a5760405162461bcd60e51b815260040161066d90611550565b604661082682846115a7565b11156108635760405162461bcd60e51b815260206004820152600c60248201526b0a8c2f040e8dede40d0d2ced60a31b604482015260640161066d565b600991909155600a55565b6000546001600160a01b031633146108985760405162461bcd60e51b815260040161066d90611550565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461090c5760405162461bcd60e51b815260040161066d90611550565b3060009081526001602052604090205461092581610ece565b50565b600061058f338484610b79565b6000546001600160a01b0316331461095f5760405162461bcd60e51b815260040161066d90611550565b600c805460ff60a01b1916600160a01b17905543600855565b6000546001600160a01b031633146109a25760405162461bcd60e51b815260040161066d90611550565b6109ae6012600a61152a565b6109bc90633b9aca00611539565b6006556109cb6012600a61152a565b6109d990633b9aca00611539565b600755565b6000546001600160a01b03163314610a085760405162461bcd60e51b815260040161066d90611550565b6001600160a01b0316600090815260036020526040812055565b6000546001600160a01b03163314610a4c5760405162461bcd60e51b815260040161066d90611550565b61092581611119565b6001600160a01b038316610ab75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161066d565b6001600160a01b038216610b185760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161066d565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bdd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161066d565b60008111610c2d5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a206e6f20746f6b656e73207472616e7366657272656400000000604482015260640161066d565b6001600160a01b038316600090815260036020526040812054158015610c6957506001600160a01b038316600090815260036020526040902054155b15610ec257600c54600160a01b900460ff16610cba5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161066d565b6001600160a01b03841660009081526004602052604090205415610d195760405162461bcd60e51b8152602060048201526016602482015275141b19585cd94818dbdb9d1858dd081cdd5c1c1bdc9d60521b604482015260640161066d565b600654821115610d6b5760405162461bcd60e51b815260206004820152601760248201527f4d6178547820456e61626c6564206174206c61756e6368000000000000000000604482015260640161066d565b600c546001600160a01b03848116911614801590610d9457506001600160a01b03831661dead14155b15610e145760075482610dbc856001600160a01b031660009081526001602052604090205490565b610dc691906115a7565b1115610e145760405162461bcd60e51b815260206004820152601b60248201527f4d617857616c6c657420456e61626c6564206174206c61756e63680000000000604482015260640161066d565b600854610e229060006115a7565b431015610e3157506003610ec2565b600c546001600160a01b0390811690851603610e505750600954610ec2565b600c546001600160a01b0390811690841603610ec25730600090815260016020526040902054610e826012600a61152a565b610e8f9062061a80611539565b811115610ebc5760055483821115610ea5578391505b80821115610eb1578091505b610eba82610ece565b505b5050600a545b6107a3848484846111d9565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610f0357610f036115ba565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f8091906115d0565b81600181518110610f9357610f936115ba565b6001600160a01b039283166020918202929092010152600b54610fb99130911684610a55565b600b5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610ff29085906000908690309042906004016115ed565b600060405180830381600087803b15801561100c57600080fd5b505af1158015611020573d6000803e3d6000fd5b5050505060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316600a4761105d9190611585565b604051600081818185875af1925050503d8060008114611099576040519150601f19603f3d011682016040523d82523d6000602084013e61109e565b606091505b50506040519091506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904790600081818185875af1925050503d806000811461110c576040519150601f19603f3d011682016040523d82523d6000602084013e611111565b606091505b505050505050565b6001600160a01b03811661117e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161066d565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060646111e78385611539565b6111f19190611585565b905060006111ff828561165e565b6001600160a01b03871660009081526001602052604090205490915061122690859061165e565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546112569082906115a7565b6001600160a01b0386166000908152600160205260408082209290925530815220546112839083906115a7565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b8181101561130e578581018301518582016040015282016112f2565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461092557600080fd5b6000806040838503121561135757600080fd5b82356113628161132f565b946020939093013593505050565b60008060006060848603121561138557600080fd5b83356113908161132f565b925060208401356113a08161132f565b929592945050506040919091013590565b6000602082840312156113c357600080fd5b81356113ce8161132f565b9392505050565b600080604083850312156113e857600080fd5b50508035926020909101359150565b6000806040838503121561140a57600080fd5b82356114158161132f565b915060208301356114258161132f565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561148157816000190482111561146757611467611430565b8085161561147457918102915b93841c939080029061144b565b509250929050565b60008261149857506001610593565b816114a557506000610593565b81600181146114bb57600281146114c5576114e1565b6001915050610593565b60ff8411156114d6576114d6611430565b50506001821b610593565b5060208310610133831016604e8410600b8410161715611504575081810a610593565b61150e8383611446565b806000190482111561152257611522611430565b029392505050565b60006113ce60ff841683611489565b808202811582820484141761059357610593611430565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000826115a257634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561059357610593611430565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156115e257600080fd5b81516113ce8161132f565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163d5784516001600160a01b031683529383019391830191600101611618565b50506001600160a01b03969096166060850152505050608001529392505050565b818103818111156105935761059361143056fea2646970667358221220cc64b0f5eef966e26d30c367ce1229c1262bae5addbfca0e5d6fd1da98608b8064736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101c65760003560e01c806370a08231116100f7578063a9059cbb11610095578063cc1776d311610064578063cc1776d3146104e6578063d7f73858146104fc578063dd62ed3e1461051c578063f2fde38b1461056257600080fd5b8063a9059cbb14610486578063bf6a1c0d146104a6578063c4918b4e146104bb578063c5c95259146104d157600080fd5b80638da5cb5b116100d15780638da5cb5b1461041e57806395d89b411461020857806397b2ebfe1461043c578063a414f3e21461047057600080fd5b806370a08231146103be578063715018a6146103f45780637c4c75eb1461040957600080fd5b806328176f891161016457806349bd5a5e1161013e57806349bd5a5e1461031c5780634f7041a514610354578063506caca11461036a5780636cae5a691461038a57600080fd5b806328176f89146102c95780632d34b9ed146102e0578063313ce5671461030057600080fd5b806318160ddd116101a057806318160ddd1461025b578063200ab15d1461027e578063230b33501461029357806323b872dd146102a957600080fd5b806301339c21146101d257806306fdde0314610208578063095ea7b31461023b57600080fd5b366101cd57005b600080fd5b3480156101de57600080fd5b50600c546101f390600160a01b900460ff1681565b60405190151581526020015b60405180910390f35b34801561021457600080fd5b5060408051808201825260048152634c554e4160e01b602082015290516101ff91906112e1565b34801561024757600080fd5b506101f3610256366004611344565b610582565b34801561026757600080fd5b50610270610599565b6040519081526020016101ff565b34801561028a57600080fd5b506102706105ba565b34801561029f57600080fd5b5061027060065481565b3480156102b557600080fd5b506101f36102c4366004611370565b6105d6565b3480156102d557600080fd5b506102de61068e565b005b3480156102ec57600080fd5b506102de6102fb3660046113b1565b6107a9565b34801561030c57600080fd5b50604051601281526020016101ff565b34801561032857600080fd5b50600c5461033c906001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b34801561036057600080fd5b5061027060095481565b34801561037657600080fd5b506102de6103853660046113d5565b6107f0565b34801561039657600080fd5b5061033c7f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a6881565b3480156103ca57600080fd5b506102706103d93660046113b1565b6001600160a01b031660009081526001602052604090205490565b34801561040057600080fd5b506102de61086e565b34801561041557600080fd5b506102de6108e2565b34801561042a57600080fd5b506000546001600160a01b031661033c565b34801561044857600080fd5b5061033c7f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a6881565b34801561047c57600080fd5b5061027060075481565b34801561049257600080fd5b506101f36104a1366004611344565b610928565b3480156104b257600080fd5b506102de610935565b3480156104c757600080fd5b5061027060055481565b3480156104dd57600080fd5b506102de610978565b3480156104f257600080fd5b50610270600a5481565b34801561050857600080fd5b506102de6105173660046113b1565b6109de565b34801561052857600080fd5b506102706105373660046113f7565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561056e57600080fd5b506102de61057d3660046113b1565b610a22565b600061058f338484610a55565b5060015b92915050565b60006105a76012600a61152a565b6105b590633b9aca00611539565b905090565b6105c66012600a61152a565b6105d39062061a80611539565b81565b60006105e3848484610b79565b6001600160a01b0384166000908152600260209081526040808320338452909152902054600019811461068357828110156106765760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6106838533858403610a55565b506001949350505050565b6000546001600160a01b031633146106b85760405162461bcd60e51b815260040161066d90611550565b60006001600160a01b037f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a68166106ef600a47611585565b604051600081818185875af1925050503d806000811461072b576040519150601f19603f3d011682016040523d82523d6000602084013e610730565b606091505b50506040519091506001600160a01b037f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a6816904790600081818185875af1925050503d806000811461079e576040519150601f19603f3d011682016040523d82523d6000602084013e6107a3565b606091505b50505050565b6000546001600160a01b031633146107d35760405162461bcd60e51b815260040161066d90611550565b6001600160a01b0316600090815260036020526040902060019055565b6000546001600160a01b0316331461081a5760405162461bcd60e51b815260040161066d90611550565b604661082682846115a7565b11156108635760405162461bcd60e51b815260206004820152600c60248201526b0a8c2f040e8dede40d0d2ced60a31b604482015260640161066d565b600991909155600a55565b6000546001600160a01b031633146108985760405162461bcd60e51b815260040161066d90611550565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461090c5760405162461bcd60e51b815260040161066d90611550565b3060009081526001602052604090205461092581610ece565b50565b600061058f338484610b79565b6000546001600160a01b0316331461095f5760405162461bcd60e51b815260040161066d90611550565b600c805460ff60a01b1916600160a01b17905543600855565b6000546001600160a01b031633146109a25760405162461bcd60e51b815260040161066d90611550565b6109ae6012600a61152a565b6109bc90633b9aca00611539565b6006556109cb6012600a61152a565b6109d990633b9aca00611539565b600755565b6000546001600160a01b03163314610a085760405162461bcd60e51b815260040161066d90611550565b6001600160a01b0316600090815260036020526040812055565b6000546001600160a01b03163314610a4c5760405162461bcd60e51b815260040161066d90611550565b61092581611119565b6001600160a01b038316610ab75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161066d565b6001600160a01b038216610b185760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161066d565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bdd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161066d565b60008111610c2d5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a206e6f20746f6b656e73207472616e7366657272656400000000604482015260640161066d565b6001600160a01b038316600090815260036020526040812054158015610c6957506001600160a01b038316600090815260036020526040902054155b15610ec257600c54600160a01b900460ff16610cba5760405162461bcd60e51b815260206004820152601060248201526f2a3930b234b733903737ba1037b832b760811b604482015260640161066d565b6001600160a01b03841660009081526004602052604090205415610d195760405162461bcd60e51b8152602060048201526016602482015275141b19585cd94818dbdb9d1858dd081cdd5c1c1bdc9d60521b604482015260640161066d565b600654821115610d6b5760405162461bcd60e51b815260206004820152601760248201527f4d6178547820456e61626c6564206174206c61756e6368000000000000000000604482015260640161066d565b600c546001600160a01b03848116911614801590610d9457506001600160a01b03831661dead14155b15610e145760075482610dbc856001600160a01b031660009081526001602052604090205490565b610dc691906115a7565b1115610e145760405162461bcd60e51b815260206004820152601b60248201527f4d617857616c6c657420456e61626c6564206174206c61756e63680000000000604482015260640161066d565b600854610e229060006115a7565b431015610e3157506003610ec2565b600c546001600160a01b0390811690851603610e505750600954610ec2565b600c546001600160a01b0390811690841603610ec25730600090815260016020526040902054610e826012600a61152a565b610e8f9062061a80611539565b811115610ebc5760055483821115610ea5578391505b80821115610eb1578091505b610eba82610ece565b505b5050600a545b6107a3848484846111d9565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610f0357610f036115ba565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f5c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f8091906115d0565b81600181518110610f9357610f936115ba565b6001600160a01b039283166020918202929092010152600b54610fb99130911684610a55565b600b5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610ff29085906000908690309042906004016115ed565b600060405180830381600087803b15801561100c57600080fd5b505af1158015611020573d6000803e3d6000fd5b5050505060007f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a686001600160a01b0316600a4761105d9190611585565b604051600081818185875af1925050503d8060008114611099576040519150601f19603f3d011682016040523d82523d6000602084013e61109e565b606091505b50506040519091506001600160a01b037f00000000000000000000000084c77fec4f88cd8cdde9299a29fc80049aa97a6816904790600081818185875af1925050503d806000811461110c576040519150601f19603f3d011682016040523d82523d6000602084013e611111565b606091505b505050505050565b6001600160a01b03811661117e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161066d565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060646111e78385611539565b6111f19190611585565b905060006111ff828561165e565b6001600160a01b03871660009081526001602052604090205490915061122690859061165e565b6001600160a01b0380881660009081526001602052604080822093909355908716815220546112569082906115a7565b6001600160a01b0386166000908152600160205260408082209290925530815220546112839083906115a7565b3060009081526001602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600060208083528351808285015260005b8181101561130e578581018301518582016040015282016112f2565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461092557600080fd5b6000806040838503121561135757600080fd5b82356113628161132f565b946020939093013593505050565b60008060006060848603121561138557600080fd5b83356113908161132f565b925060208401356113a08161132f565b929592945050506040919091013590565b6000602082840312156113c357600080fd5b81356113ce8161132f565b9392505050565b600080604083850312156113e857600080fd5b50508035926020909101359150565b6000806040838503121561140a57600080fd5b82356114158161132f565b915060208301356114258161132f565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561148157816000190482111561146757611467611430565b8085161561147457918102915b93841c939080029061144b565b509250929050565b60008261149857506001610593565b816114a557506000610593565b81600181146114bb57600281146114c5576114e1565b6001915050610593565b60ff8411156114d6576114d6611430565b50506001821b610593565b5060208310610133831016604e8410600b8410161715611504575081810a610593565b61150e8383611446565b806000190482111561152257611522611430565b029392505050565b60006113ce60ff841683611489565b808202811582820484141761059357610593611430565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000826115a257634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111561059357610593611430565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156115e257600080fd5b81516113ce8161132f565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561163d5784516001600160a01b031683529383019391830191600101611618565b50506001600160a01b03969096166060850152505050608001529392505050565b818103818111156105935761059361143056fea2646970667358221220cc64b0f5eef966e26d30c367ce1229c1262bae5addbfca0e5d6fd1da98608b8064736f6c63430008130033

Deployed Bytecode Sourcemap

2524:7388:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:26;;;;;;;;;;-1:-1:-1;3657:26:0;;;;-1:-1:-1;;;3657:26:0;;;;;;;;;179:14:1;;172:22;154:41;;142:2;127:18;3657:26:0;;;;;;;;4305:83;;;;;;;;;;-1:-1:-1;4375:5:0;;;;;;;;;;;-1:-1:-1;;;4375:5:0;;;;4305:83;;;;4375:5;4305:83;:::i;5139:160::-;;;;;;;;;;-1:-1:-1;5139:160:0;;;;;:::i;:::-;;:::i;4582:100::-;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4582:100:0;1215:177:1;2977:66:0;;;;;;;;;;;;;:::i;3165:51::-;;;;;;;;;;;;;;;;5307:578;;;;;;;;;;-1:-1:-1;5307:578:0;;;;;:::i;:::-;;:::i;8808:237::-;;;;;;;;;;;;;:::i;:::-;;6361:106;;;;;;;;;;-1:-1:-1;6361:106:0;;;;;:::i;:::-;;:::i;4491:83::-;;;;;;;;;;-1:-1:-1;4491:83:0;;2895:2;2252:36:1;;2240:2;2225:18;4491:83:0;2110:184:1;3531:28:0;;;;;;;;;;-1:-1:-1;3531:28:0;;;;-1:-1:-1;;;;;3531:28:0;;;;;;-1:-1:-1;;;;;2463:32:1;;;2445:51;;2433:2;2418:18;3531:28:0;2299:203:1;3315:26:0;;;;;;;;;;;;;;;;6733:209;;;;;;;;;;-1:-1:-1;6733:209:0;;;;;:::i;:::-;;:::i;3566:36::-;;;;;;;;;;;;;;;4690:118;;;;;;;;;;-1:-1:-1;4690:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;4783:17:0;4756:7;4783:17;;;:8;:17;;;;;;;4690:118;1853:148;;;;;;;;;;;;;:::i;9054:160::-;;;;;;;;;;;;;:::i;1285:79::-;;;;;;;;;;-1:-1:-1;1323:7:0;1350:6;-1:-1:-1;;;;;1350:6:0;1285:79;;3610:38;;;;;;;;;;;;;;;3223:44;;;;;;;;;;;;;;;;4816:165;;;;;;;;;;-1:-1:-1;4816:165:0;;;;;:::i;:::-;;:::i;6238:115::-;;;;;;;;;;;;;:::i;3119:39::-;;;;;;;;;;;;;;;;6592:133;;;;;;;;;;;;;:::i;3348:27::-;;;;;;;;;;;;;;;;6475:109;;;;;;;;;;-1:-1:-1;6475:109:0;;;;;:::i;:::-;;:::i;4989:142::-;;;;;;;;;;-1:-1:-1;4989:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;5096:18:0;;;5070:7;5096:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4989:142;1499:109;;;;;;;;;;-1:-1:-1;1499:109:0;;;;;:::i;:::-;;:::i;5139:160::-;5214:4;5230:39;240:10;5253:7;5262:6;5230:8;:39::i;:::-;-1:-1:-1;5287:4:0;5139:160;;;;;:::o;4582:100::-;4635:7;2957:13;2895:2;2957;:13;:::i;:::-;2944:26;;:10;:26;:::i;:::-;4655:19;;4582:100;:::o;2977:66::-;3030:13;2895:2;3030;:13;:::i;:::-;3021:22;;:6;:22;:::i;:::-;2977:66;:::o;5307:578::-;5405:4;5422:36;5432:6;5440:9;5451:6;5422:9;:36::i;:::-;-1:-1:-1;;;;;5498:19:0;;5471:24;5498:19;;;:11;:19;;;;;;;;240:10;5498:33;;;;;;;;-1:-1:-1;;5545:37:0;;5542:314;;5646:6;5626:16;:26;;5600:128;;;;-1:-1:-1;;;5600:128:0;;5043:2:1;5600:128:0;;;5025:21:1;5082:2;5062:18;;;5055:30;5121:34;5101:18;;;5094:62;-1:-1:-1;;;5172:18:1;;;5165:38;5220:19;;5600:128:0;;;;;;;;;5772:57;5781:6;240:10;5822:6;5803:16;:25;5772:8;:57::i;:::-;-1:-1:-1;5873:4:0;;5307:578;-1:-1:-1;;;;5307:578:0:o;8808:237::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;8867:12:::1;-1:-1:-1::0;;;;;8904:13:0::1;:18;8930:26;8954:2;8930:21;:26;:::i;:::-;8904:57;::::0;::::1;::::0;;;;;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;8986:51:0::1;::::0;8890:71;;-1:-1:-1;;;;;;8986:11:0::1;:17;::::0;9011:21:::1;::::0;8986:51:::1;::::0;;;9011:21;8986:17;:51:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;8808:237:0:o;6361:106::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6435:20:0::1;;::::0;;;:12:::1;:20;::::0;;;;6458:1:::1;6435:24:::0;;6361:106::o;6733:209::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;6855:2:::1;6829:22;6841:10:::0;6829:9;:22:::1;:::i;:::-;:28;;6821:53;;;::::0;-1:-1:-1;;;6821:53:0;;6375:2:1;6821:53:0::1;::::0;::::1;6357:21:1::0;6414:2;6394:18;;;6387:30;-1:-1:-1;;;6433:18:1;;;6426:42;6485:18;;6821:53:0::1;6173:336:1::0;6821:53:0::1;6885:6;:18:::0;;;;6914:7:::1;:20:::0;6733:209::o;1853:148::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;1960:1:::1;1944:6:::0;;1923:40:::1;::::0;-1:-1:-1;;;;;1944:6:0;;::::1;::::0;1923:40:::1;::::0;1960:1;;1923:40:::1;1991:1;1974:19:::0;;-1:-1:-1;;;;;;1974:19:0::1;::::0;;1853:148::o;9054:160::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;9156:4:::1;9112:23;4783:17:::0;;;:8;:17;;;;;;9173:33:::1;4783:17:::0;9173:16:::1;:33::i;:::-;9101:113;9054:160::o:0;4816:165::-;4893:4;4909:42;240:10;4933:9;4944:6;4909:9;:42::i;6238:115::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;6292:6:::1;:13:::0;;-1:-1:-1;;;;6292:13:0::1;-1:-1:-1::0;;;6292:13:0::1;::::0;;6333:12:::1;6316:14;:29:::0;6238:115::o;6592:133::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;2957:13:::1;2895:2;2957;:13;:::i;:::-;2944:26;::::0;:10:::1;:26;:::i;:::-;6645:19;:34:::0;2957:13:::1;2895:2;2957;:13;:::i;:::-;2944:26;::::0;:10:::1;:26;:::i;:::-;6690:12;:27:::0;6592:133::o;6475:109::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6552:20:0::1;6575:1;6552:20:::0;;;:12:::1;:20;::::0;;;;:24;6475:109::o;1499:::-;1412:6;;-1:-1:-1;;;;;1412:6:0;240:10;1412:22;1404:67;;;;-1:-1:-1;;;1404:67:0;;;;;;;:::i;:::-;1572:28:::1;1591:8;1572:18;:28::i;5893:335::-:0;-1:-1:-1;;;;;5986:19:0;;5978:68;;;;-1:-1:-1;;;5978:68:0;;6716:2:1;5978:68:0;;;6698:21:1;6755:2;6735:18;;;6728:30;6794:34;6774:18;;;6767:62;-1:-1:-1;;;6845:18:1;;;6838:34;6889:19;;5978:68:0;6514:400:1;5978:68:0;-1:-1:-1;;;;;6065:21:0;;6057:68;;;;-1:-1:-1;;;6057:68:0;;7121:2:1;6057:68:0;;;7103:21:1;7160:2;7140:18;;;7133:30;7199:34;7179:18;;;7172:62;-1:-1:-1;;;7250:18:1;;;7243:32;7292:19;;6057:68:0;6919:398:1;6057:68:0;-1:-1:-1;;;;;6136:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6188:32;;1361:25:1;;;6188:32:0;;1334:18:1;6188:32:0;;;;;;;5893:335;;;:::o;7392:1408::-;-1:-1:-1;;;;;7480:18:0;;7472:68;;;;-1:-1:-1;;;7472:68:0;;7524:2:1;7472:68:0;;;7506:21:1;7563:2;7543:18;;;7536:30;7602:34;7582:18;;;7575:62;-1:-1:-1;;;7653:18:1;;;7646:35;7698:19;;7472:68:0;7322:401:1;7472:68:0;7568:1;7559:6;:10;7551:51;;;;-1:-1:-1;;;7551:51:0;;7930:2:1;7551:51:0;;;7912:21:1;7969:2;7949:18;;;7942:30;8008;7988:18;;;7981:58;8056:18;;7551:51:0;7728:352:1;7551:51:0;-1:-1:-1;;;;;7644:18:0;;7613:12;7644:18;;;:12;:18;;;;;;:23;:48;;;;-1:-1:-1;;;;;;7671:16:0;;;;;;:12;:16;;;;;;:21;7644:48;7640:1104;;;7726:6;;-1:-1:-1;;;7726:6:0;;;;7718:35;;;;-1:-1:-1;;;7718:35:0;;8287:2:1;7718:35:0;;;8269:21:1;8326:2;8306:18;;;8299:30;-1:-1:-1;;;8345:18:1;;;8338:46;8401:18;;7718:35:0;8085:340:1;7718:35:0;-1:-1:-1;;;;;7776:21:0;;;;;;:15;:21;;;;;;:26;7768:61;;;;-1:-1:-1;;;7768:61:0;;8632:2:1;7768:61:0;;;8614:21:1;8671:2;8651:18;;;8644:30;-1:-1:-1;;;8690:18:1;;;8683:52;8752:18;;7768:61:0;8430:346:1;7768:61:0;7862:19;;7852:6;:29;;7844:65;;;;-1:-1:-1;;;7844:65:0;;8983:2:1;7844:65:0;;;8965:21:1;9022:2;9002:18;;;8995:30;9061:25;9041:18;;;9034:53;9104:18;;7844:65:0;8781:347:1;7844:65:0;7934:13;;-1:-1:-1;;;;;7928:19:0;;;7934:13;;7928:19;;;;:44;;-1:-1:-1;;;;;;7951:21:0;;7965:6;7951:21;;7928:44;7924:128;;;8008:12;;7998:6;7982:13;7992:2;-1:-1:-1;;;;;4783:17:0;4756:7;4783:17;;;:8;:17;;;;;;;4690:118;7982:13;:22;;;;:::i;:::-;:38;;7974:78;;;;-1:-1:-1;;;7974:78:0;;9335:2:1;7974:78:0;;;9317:21:1;9374:2;9354:18;;;9347:30;9413:29;9393:18;;;9386:57;9460:18;;7974:78:0;9133:351:1;7974:78:0;8086:14;;:18;;8103:1;8086:18;:::i;:::-;8071:12;:33;8067:666;;;-1:-1:-1;8112:1:0;8067:666;;;8152:13;;-1:-1:-1;;;;;8152:13:0;;;8144:21;;;;8140:578;;-1:-1:-1;8197:6:0;;8140:578;;;8239:13;;-1:-1:-1;;;;;8239:13:0;;;8233:19;;;;8229:489;;8318:4;8277:20;4783:17;;;:8;:17;;;;;;3030:13;2895:2;3030;:13;:::i;:::-;3021:22;;:6;:22;:::i;:::-;8351:12;:32;8347:315;;;8428:7;;8466:21;;;8462:48;;;8504:6;8489:21;;8462:48;8556:4;8541:12;:19;8537:44;;;8577:4;8562:19;;8537:44;8608:30;8625:12;8608:16;:30::i;:::-;8385:277;8347:315;-1:-1:-1;;8691:7:0;;8229:489;8754:38;8769:4;8775:2;8779:6;8787:4;8754:14;:38::i;9222:652::-;9312:16;;;9326:1;9312:16;;;;;;;;9288:21;;9312:16;;;;;;;;;;-1:-1:-1;9312:16:0;9288:40;;9357:4;9339;9344:1;9339:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9339:23:0;;;:7;;;;;;;;;;:23;;;;9383:15;;:22;;;-1:-1:-1;;;9383:22:0;;;;:15;;;;;:20;;:22;;;;;9339:7;;9383:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9373:4;9378:1;9373:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9373:32:0;;;:7;;;;;;;;;:32;9448:15;;9416:62;;9433:4;;9448:15;9466:11;9416:8;:62::i;:::-;9489:15;;:196;;-1:-1:-1;;;9489:196:0;;-1:-1:-1;;;;;9489:15:0;;;;:66;;:196;;9570:11;;9489:15;;9612:4;;9639;;9659:15;;9489:196;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9696:12;9733:13;-1:-1:-1;;;;;9733:18:0;9783:2;9759:21;:26;;;;:::i;:::-;9733:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9815:51:0;;9719:71;;-1:-1:-1;;;;;;9815:11:0;:17;;9840:21;;9815:51;;;;9840:21;9815:17;:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9222:652:0:o;1616:229::-;-1:-1:-1;;;;;1690:22:0;;1682:73;;;;-1:-1:-1;;;1682:73:0;;11196:2:1;1682:73:0;;;11178:21:1;11235:2;11215:18;;;11208:30;11274:34;11254:18;;;11247:62;-1:-1:-1;;;11325:18:1;;;11318:36;11371:19;;1682:73:0;10994:402:1;1682:73:0;1792:6;;;1771:38;;-1:-1:-1;;;;;1771:38:0;;;;1792:6;;;1771:38;;;1820:6;:17;;-1:-1:-1;;;;;;1820:17:0;-1:-1:-1;;;;;1820:17:0;;;;;;;;;;1616:229::o;6950:434::-;7049:17;7087:3;7070:13;7079:4;7070:6;:13;:::i;:::-;7069:21;;;;:::i;:::-;7049:41;-1:-1:-1;7101:22:0;7126:18;7049:41;7126:6;:18;:::i;:::-;-1:-1:-1;;;;;7174:14:0;;;;;;:8;:14;;;;;;7101:43;;-1:-1:-1;7174:23:0;;7191:6;;7174:23;:::i;:::-;-1:-1:-1;;;;;7157:14:0;;;;;;;:8;:14;;;;;;:40;;;;7223:12;;;;;;;:29;;7238:14;;7223:29;:::i;:::-;-1:-1:-1;;;;;7208:12:0;;;;;;:8;:12;;;;;;:44;;;;7306:4;7289:23;;;;:35;;7315:9;;7289:35;:::i;:::-;7280:4;7263:23;;;;:8;:23;;;;;;;;;:61;;;;7342:34;1361:25:1;;;-1:-1:-1;;;;;7342:34:0;;;;;;;;;;1334:18:1;7342:34:0;;;;;;;7038:346;;6950:434;;;;:::o;206:548:1:-;318:4;347:2;376;365:9;358:21;408:6;402:13;451:6;446:2;435:9;431:18;424:34;476:1;486:140;500:6;497:1;494:13;486:140;;;595:14;;;591:23;;585:30;561:17;;;580:2;557:26;550:66;515:10;;486:140;;;490:3;675:1;670:2;661:6;650:9;646:22;642:31;635:42;745:2;738;734:7;729:2;721:6;717:15;713:29;702:9;698:45;694:54;686:62;;;;206:548;;;;:::o;759:131::-;-1:-1:-1;;;;;834:31:1;;824:42;;814:70;;880:1;877;870:12;895:315;963:6;971;1024:2;1012:9;1003:7;999:23;995:32;992:52;;;1040:1;1037;1030:12;992:52;1079:9;1066:23;1098:31;1123:5;1098:31;:::i;:::-;1148:5;1200:2;1185:18;;;;1172:32;;-1:-1:-1;;;895: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;1858:247::-;1917:6;1970:2;1958:9;1949:7;1945:23;1941:32;1938:52;;;1986:1;1983;1976:12;1938:52;2025:9;2012:23;2044:31;2069:5;2044:31;:::i;:::-;2094:5;1858:247;-1:-1:-1;;;1858:247:1:o;2507:248::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;-1:-1:-1;;2675:23:1;;;2745:2;2730:18;;;2717:32;;-1:-1:-1;2507:248:1:o;2760:388::-;2828:6;2836;2889:2;2877:9;2868:7;2864:23;2860:32;2857:52;;;2905:1;2902;2895:12;2857:52;2944:9;2931:23;2963:31;2988:5;2963:31;:::i;:::-;3013:5;-1:-1:-1;3070:2:1;3055:18;;3042:32;3083:33;3042:32;3083:33;:::i;:::-;3135:7;3125:17;;;2760:388;;;;;:::o;3153:127::-;3214:10;3209:3;3205:20;3202:1;3195:31;3245:4;3242:1;3235:15;3269:4;3266:1;3259:15;3285:422;3374:1;3417:5;3374:1;3431:270;3452:7;3442:8;3439:21;3431:270;;;3511:4;3507:1;3503:6;3499:17;3493:4;3490:27;3487:53;;;3520:18;;:::i;:::-;3570:7;3560:8;3556:22;3553:55;;;3590:16;;;;3553:55;3669:22;;;;3629:15;;;;3431:270;;;3435:3;3285:422;;;;;:::o;3712:806::-;3761:5;3791:8;3781:80;;-1:-1:-1;3832:1:1;3846:5;;3781:80;3880:4;3870:76;;-1:-1:-1;3917:1:1;3931:5;;3870:76;3962:4;3980:1;3975:59;;;;4048:1;4043:130;;;;3955:218;;3975:59;4005:1;3996:10;;4019:5;;;4043:130;4080:3;4070:8;4067:17;4064:43;;;4087:18;;:::i;:::-;-1:-1:-1;;4143:1:1;4129:16;;4158:5;;3955:218;;4257:2;4247:8;4244:16;4238:3;4232:4;4229:13;4225:36;4219:2;4209:8;4206:16;4201:2;4195:4;4192:12;4188:35;4185:77;4182:159;;;-1:-1:-1;4294:19:1;;;4326:5;;4182:159;4373:34;4398:8;4392:4;4373:34;:::i;:::-;4443:6;4439:1;4435:6;4431:19;4422:7;4419:32;4416:58;;;4454:18;;:::i;:::-;4492:20;;3712:806;-1:-1:-1;;;3712:806:1:o;4523:140::-;4581:5;4610:47;4651:4;4641:8;4637:19;4631:4;4610:47;:::i;4668:168::-;4741:9;;;4772;;4789:15;;;4783:22;;4769:37;4759:71;;4810:18;;:::i;5250:356::-;5452:2;5434:21;;;5471:18;;;5464:30;5530:34;5525:2;5510:18;;5503:62;5597:2;5582:18;;5250:356::o;5611:217::-;5651:1;5677;5667:132;;5721:10;5716:3;5712:20;5709:1;5702:31;5756:4;5753:1;5746:15;5784:4;5781:1;5774:15;5667:132;-1:-1:-1;5813:9:1;;5611:217::o;6043:125::-;6108:9;;;6129:10;;;6126:36;;;6142:18;;:::i;9621:127::-;9682:10;9677:3;9673:20;9670:1;9663:31;9713:4;9710:1;9703:15;9737:4;9734:1;9727:15;9753:251;9823:6;9876:2;9864:9;9855:7;9851:23;9847:32;9844:52;;;9892:1;9889;9882:12;9844:52;9924:9;9918:16;9943:31;9968:5;9943:31;:::i;10009:980::-;10271:4;10319:3;10308:9;10304:19;10350:6;10339:9;10332:25;10376:2;10414:6;10409:2;10398:9;10394:18;10387:34;10457:3;10452:2;10441:9;10437:18;10430:31;10481:6;10516;10510:13;10547:6;10539;10532:22;10585:3;10574:9;10570:19;10563:26;;10624:2;10616:6;10612:15;10598:29;;10645:1;10655:195;10669:6;10666:1;10663:13;10655:195;;;10734:13;;-1:-1:-1;;;;;10730:39:1;10718:52;;10825:15;;;;10790:12;;;;10766:1;10684:9;10655:195;;;-1:-1:-1;;;;;;;10906:32:1;;;;10901:2;10886:18;;10879:60;-1:-1:-1;;;10970:3:1;10955:19;10948:35;10867:3;10009:980;-1:-1:-1;;;10009:980:1:o;11401:128::-;11468:9;;;11489:11;;;11486:37;;;11503:18;;:::i

Swarm Source

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