ETH Price: $3,713.18 (+4.73%)
Gas: 6.61 Gwei

Token

ERC-20: Ligma ($LIGMA)
 

Overview

Max Total Supply

100,000,000 $LIGMA

Holders

319

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
0o00.eth
Balance
14,471.764244748183837022 $LIGMA

Value
$0.00
0x2380ca49ed8e933c97905977763693e5cf8770f4
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:
Ligma

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-04
*/

/**
 Telegram: https://t.me/ligma_ERC
 Website: http://www.ligma.mom
 Twitter: https://twitter.com/ligmaerc
 */


// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.18;

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;
    address private _previousOwner;
    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 Ligma is Context, IERC20, Ownable {
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFeeWallet;
    uint256 private constant MAX = ~uint256(0);
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 10**8 * 10**_decimals;
    uint256 private constant minSwap = 30000 * 10**_decimals; //0.03% from supply
    uint256 private constant maxSwap = 750000 * 10**_decimals; //0.7% from supply
    uint256 public maxTxAmount = maxSwap * 2; //max Tx for first mins after launch

    uint256 private _tax;
    uint256 public buyTax = 0;
    uint256 public sellTax = 0;
    
    uint256 private launchBlock;
    uint256 private blockDelay = 2;

    string private constant _name = "Ligma";
    string private constant _symbol = "$LIGMA";

    IUniswapV2Router02 private uniswapV2Router;
    address public uniswapV2Pair;
    address payable public marketingWallet;

    bool private launch = false;

    // Anti-Whale
    uint256 public maxHoldAmount = _totalSupply / 100; // 1% of _totalSupply
    mapping(address => bool) public isWhiteList;

    // Events
    event UpdateWhiteList(address indexed holder, bool value);
    event SetMaxHoldAmount(uint256 indexed maxHoldAmount);

    constructor() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        marketingWallet = payable(0x01efA2c7aDa9F6ff93B7dc69a47009Cd9079F463);
        _balance[msg.sender] = _totalSupply;

        _isExcludedFromFeeWallet[msg.sender] = true;
        _isExcludedFromFeeWallet[0x01efA2c7aDa9F6ff93B7dc69a47009Cd9079F463] = true;
        _isExcludedFromFeeWallet[address(this)] = true;

        // default whiteList
        isWhiteList[msg.sender] = true; // owner
        isWhiteList[address(this)] = true; // token contract
        isWhiteList[uniswapV2Pair] = true; // pair

        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);
        _approve(sender,_msgSender(),_allowances[sender][_msgSender()] - 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 enableTrading() external onlyOwner {
        launch = true;
        launchBlock = block.number;
    }

    function configureExempted(address[] memory _wallets, bool _enable) external onlyOwner {
        for(uint256 i = 0; i < _wallets.length; i++) {

            _isExcludedFromFeeWallet[_wallets[i]] = _enable;
        }
    }

    function removeLimits() external onlyOwner {
        maxTxAmount = _totalSupply;
    }

    function newBlockDelay(uint256 number) external onlyOwner {
        blockDelay = number;
    }

    function changeTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        require(newBuyTax <= 10 && newSellTax <= 10, "ERC20: wrong tax value!");
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }
    
      function setMarketingWallet(address _marketingWallet) external onlyOwner {
        marketingWallet = payable(_marketingWallet);
    }
    
    function _tokenTransfer(address from, address to, uint256 amount) 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;

        // maxHoldAmount check
        if(!isWhiteList[to]) {
            require(_balance[to] <= maxHoldAmount, "Over Max Holding Amount");
        }

        emit Transfer(from, to, transferAmount);
    }

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

        if (_isExcludedFromFeeWallet[from] || _isExcludedFromFeeWallet[to]) {
            _tax = 0;
        } else {
            require(launch, "Wait till launch");
            require(amount <= maxTxAmount, "Max TxAmount 2% at launch");
            if (block.number < launchBlock + blockDelay) {_tax=99;} else {
                if (from == uniswapV2Pair) {
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minSwap) {
                        if (tokensToSwap > maxSwap) {
                            tokensToSwap = maxSwap;
                        }
                        swapTokensForEth(tokensToSwap);
                    }
                    _tax = sellTax;
                } else {
                    _tax = 0;
                }
            }
        }
        _tokenTransfer(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            marketingWallet,
            block.timestamp
        );
    }
    receive() external payable {}

    function setMaxHoldAmount(uint256 _maxHoldAmount) external onlyOwner {
        maxHoldAmount = _maxHoldAmount;

        emit SetMaxHoldAmount(_maxHoldAmount);
    }

    function updateWhiteList(address _holder, bool _value) external onlyOwner {
        isWhiteList[_holder] = _value;

        emit UpdateWhiteList(_holder, _value);
    }
}

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":"uint256","name":"maxHoldAmount","type":"uint256"}],"name":"SetMaxHoldAmount","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"holder","type":"address"},{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"UpdateWhiteList","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_wallets","type":"address[]"},{"internalType":"bool","name":"_enable","type":"bool"}],"name":"configureExempted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWhiteList","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldAmount","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":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"number","type":"uint256"}],"name":"newBlockDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxHoldAmount","type":"uint256"}],"name":"setMaxHoldAmount","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"},{"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"},{"inputs":[{"internalType":"address","name":"_holder","type":"address"},{"internalType":"bool","name":"_value","type":"bool"}],"name":"updateWhiteList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a620004ce565b6200002190620b71b0620004e6565b6200002e906002620004e6565b600555600060078190556008556002600a908155600d805460ff60a01b191690556064906200006090601290620004ce565b62000070906305f5e100620004e6565b6200007c919062000500565b600e553480156200008c57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000133573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000159919062000523565b6001600160a01b031663c9c6539630600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e2919062000523565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000230573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000256919062000523565b600c80546001600160a01b03929092166001600160a01b0319928316179055600d80549091167301efa2c7ada9f6ff93b7dc69a47009cd9079f463179055620002a26012600a620004ce565b620002b2906305f5e100620004e6565b33600081815260026020908152604080832094909455600481528382208054600160ff1991821681179092557f63dcb447f2e0e01cdc1057b30721868f9f1372b283aa8ba2185dacf6358be5c38054821683179055308085528685208054831684179055948452600f90925284832080548316821790559282528382208054821684179055600c546001600160a01b031682529290208054909216179055620003583390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003926012600a620004ce565b620003a2906305f5e100620004e6565b60405190815260200160405180910390a36200054e565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000410578160001904821115620003f457620003f4620003b9565b808516156200040257918102915b93841c9390800290620003d4565b509250929050565b6000826200042957506001620004c8565b816200043857506000620004c8565b81600181146200045157600281146200045c576200047c565b6001915050620004c8565b60ff841115620004705762000470620003b9565b50506001821b620004c8565b5060208310610133831016604e8410600b8410161715620004a1575081810a620004c8565b620004ad8383620003cf565b8060001904821115620004c457620004c4620003b9565b0290505b92915050565b6000620004df60ff84168362000418565b9392505050565b8082028115828204841417620004c857620004c8620003b9565b6000826200051e57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200053657600080fd5b81516001600160a01b0381168114620004df57600080fd5b611615806200055e6000396000f3fe6080604052600436106101a05760003560e01c80638a8c523c116100ec578063ac1d06091161008a578063d8b6004011610064578063d8b60040146104af578063dd62ed3e146104cf578063f2fde38b14610515578063f99031a71461053557600080fd5b8063ac1d060914610463578063cc1776d314610483578063cd03425c1461049957600080fd5b80639036ed4d116100c65780639036ed4d146103d457806395d89b41146103f4578063a21e876e14610423578063a9059cbb1461044357600080fd5b80638a8c523c1461038b5780638c0b5e22146103a05780638da5cb5b146103b657600080fd5b80634f7041a51161015957806370d8c9ec1161013357806370d8c9ec14610321578063715018a614610341578063751039fc1461035657806375f0a8741461036b57600080fd5b80634f7041a5146102b35780635d098b38146102c957806370a08231146102eb57600080fd5b806306fdde03146101ac578063095ea7b3146101ec57806318160ddd1461021c57806323b872dd1461023f578063313ce5671461025f57806349bd5a5e1461027b57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506040805180820190915260058152644c69676d6160d81b60208201525b6040516101e391906110db565b60405180910390f35b3480156101f857600080fd5b5061020c61020736600461114e565b610565565b60405190151581526020016101e3565b34801561022857600080fd5b5061023161057c565b6040519081526020016101e3565b34801561024b57600080fd5b5061020c61025a36600461117a565b61059d565b34801561026b57600080fd5b50604051601281526020016101e3565b34801561028757600080fd5b50600c5461029b906001600160a01b031681565b6040516001600160a01b0390911681526020016101e3565b3480156102bf57600080fd5b5061023160075481565b3480156102d557600080fd5b506102e96102e43660046111bb565b6105ef565b005b3480156102f757600080fd5b506102316103063660046111bb565b6001600160a01b031660009081526002602052604090205490565b34801561032d57600080fd5b506102e961033c3660046111df565b610644565b34801561034d57600080fd5b506102e9610673565b34801561036257600080fd5b506102e96106e7565b34801561037757600080fd5b50600d5461029b906001600160a01b031681565b34801561039757600080fd5b506102e9610730565b3480156103ac57600080fd5b5061023160055481565b3480156103c257600080fd5b506000546001600160a01b031661029b565b3480156103e057600080fd5b506102e96103ef3660046111f8565b610773565b34801561040057600080fd5b50604080518082019091526006815265244c49474d4160d01b60208201526101d6565b34801561042f57600080fd5b506102e961043e366004611240565b610806565b34801561044f57600080fd5b5061020c61045e36600461114e565b61089c565b34801561046f57600080fd5b506102e961047e366004611317565b6108a9565b34801561048f57600080fd5b5061023160085481565b3480156104a557600080fd5b50610231600e5481565b3480156104bb57600080fd5b506102e96104ca3660046111df565b610932565b3480156104db57600080fd5b506102316104ea36600461134c565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052157600080fd5b506102e96105303660046111bb565b61098f565b34801561054157600080fd5b5061020c6105503660046111bb565b600f6020526000908152604090205460ff1681565b60006105723384846109c5565b5060015b92915050565b600061058a6012600a61147f565b610598906305f5e10061148e565b905090565b60006105aa848484610ae9565b6001600160a01b0384166000908152600360209081526040808320338085529252909120546105e59186916105e09086906114a5565b6109c5565b5060019392505050565b6000546001600160a01b031633146106225760405162461bcd60e51b8152600401610619906114b8565b60405180910390fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461066e5760405162461bcd60e51b8152600401610619906114b8565b600a55565b6000546001600160a01b0316331461069d5760405162461bcd60e51b8152600401610619906114b8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107115760405162461bcd60e51b8152600401610619906114b8565b61071d6012600a61147f565b61072b906305f5e10061148e565b600555565b6000546001600160a01b0316331461075a5760405162461bcd60e51b8152600401610619906114b8565b600d805460ff60a01b1916600160a01b17905543600955565b6000546001600160a01b0316331461079d5760405162461bcd60e51b8152600401610619906114b8565b600a82111580156107af5750600a8111155b6107fb5760405162461bcd60e51b815260206004820152601760248201527f45524332303a2077726f6e67207461782076616c7565210000000000000000006044820152606401610619565b600791909155600855565b6000546001600160a01b031633146108305760405162461bcd60e51b8152600401610619906114b8565b60005b8251811015610897578160046000858481518110610853576108536114ed565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061088f81611503565b915050610833565b505050565b6000610572338484610ae9565b6000546001600160a01b031633146108d35760405162461bcd60e51b8152600401610619906114b8565b6001600160a01b0382166000818152600f6020908152604091829020805460ff191685151590811790915591519182527fc551bbb22d0406dbfb8b6b7740cc521bcf44e1106029cf899c19b6a8e4c99d51910160405180910390a25050565b6000546001600160a01b0316331461095c5760405162461bcd60e51b8152600401610619906114b8565b600e81905560405181907fc9a07d0106b62dd0f2706dab6a7aee4c4d0dc35078c994bf5c08d5d85861d46b90600090a250565b6000546001600160a01b031633146109b95760405162461bcd60e51b8152600401610619906114b8565b6109c281610d22565b50565b6001600160a01b038316610a275760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610619565b6001600160a01b038216610a885760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610619565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b4d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610619565b6001600160a01b03831660009081526004602052604090205460ff1680610b8c57506001600160a01b03821660009081526004602052604090205460ff165b15610b9b576000600655610d17565b600d54600160a01b900460ff16610be75760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610619565b600554811115610c395760405162461bcd60e51b815260206004820152601960248201527f4d6178205478416d6f756e74203225206174206c61756e6368000000000000006044820152606401610619565b600a54600954610c49919061151c565b431015610c5a576063600655610d17565b600c546001600160a01b0390811690841603610c7b57600754600655610d17565b600c546001600160a01b0390811690831603610d115730600090815260026020526040902054610cad6012600a61147f565b610cb99061753061148e565b811115610d0557610ccc6012600a61147f565b610cd990620b71b061148e565b811115610cfc57610cec6012600a61147f565b610cf990620b71b061148e565b90505b610d0581610de2565b50600854600655610d17565b60006006555b610897838383610f40565b6001600160a01b038116610d875760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610619565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610e1757610e176114ed565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610e70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e94919061152f565b81600181518110610ea757610ea76114ed565b6001600160a01b039283166020918202929092010152600b54610ecd91309116846109c5565b600b54600d5460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f0a9287926000928892911690429060040161154c565b600060405180830381600087803b158015610f2457600080fd5b505af1158015610f38573d6000803e3d6000fd5b505050505050565b6000606460065483610f52919061148e565b610f5c91906115bd565b90506000610f6a82846114a5565b6001600160a01b038616600090815260026020526040902054909150610f919084906114a5565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610fc190829061151c565b6001600160a01b038516600090815260026020526040808220929092553081522054610fee90839061151c565b306000908152600260209081526040808320939093556001600160a01b0387168252600f9052205460ff1661108757600e546001600160a01b03851660009081526002602052604090205411156110875760405162461bcd60e51b815260206004820152601760248201527f4f766572204d617820486f6c64696e6720416d6f756e740000000000000000006044820152606401610619565b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110cc91815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b81811015611108578581018301518582016040015282016110ec565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109c257600080fd5b803561114981611129565b919050565b6000806040838503121561116157600080fd5b823561116c81611129565b946020939093013593505050565b60008060006060848603121561118f57600080fd5b833561119a81611129565b925060208401356111aa81611129565b929592945050506040919091013590565b6000602082840312156111cd57600080fd5b81356111d881611129565b9392505050565b6000602082840312156111f157600080fd5b5035919050565b6000806040838503121561120b57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b8035801515811461114957600080fd5b6000806040838503121561125357600080fd5b823567ffffffffffffffff8082111561126b57600080fd5b818501915085601f83011261127f57600080fd5b81356020828211156112935761129361121a565b8160051b604051601f19603f830116810181811086821117156112b8576112b861121a565b6040529283528183019350848101820192898411156112d657600080fd5b948201945b838610156112fb576112ec8661113e565b855294820194938201936112db565b965061130a9050878201611230565b9450505050509250929050565b6000806040838503121561132a57600080fd5b823561133581611129565b915061134360208401611230565b90509250929050565b6000806040838503121561135f57600080fd5b823561136a81611129565b9150602083013561137a81611129565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113d65781600019048211156113bc576113bc611385565b808516156113c957918102915b93841c93908002906113a0565b509250929050565b6000826113ed57506001610576565b816113fa57506000610576565b8160018114611410576002811461141a57611436565b6001915050610576565b60ff84111561142b5761142b611385565b50506001821b610576565b5060208310610133831016604e8410600b8410161715611459575081810a610576565b611463838361139b565b806000190482111561147757611477611385565b029392505050565b60006111d860ff8416836113de565b808202811582820484141761057657610576611385565b8181038181111561057657610576611385565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161151557611515611385565b5060010190565b8082018082111561057657610576611385565b60006020828403121561154157600080fd5b81516111d881611129565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561159c5784516001600160a01b031683529383019391830191600101611577565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115da57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208335b6e6dc97fa9d816a95f2ffdaaff50f3f397e369e5559b2433a6586160d0c64736f6c63430008120033

Deployed Bytecode

0x6080604052600436106101a05760003560e01c80638a8c523c116100ec578063ac1d06091161008a578063d8b6004011610064578063d8b60040146104af578063dd62ed3e146104cf578063f2fde38b14610515578063f99031a71461053557600080fd5b8063ac1d060914610463578063cc1776d314610483578063cd03425c1461049957600080fd5b80639036ed4d116100c65780639036ed4d146103d457806395d89b41146103f4578063a21e876e14610423578063a9059cbb1461044357600080fd5b80638a8c523c1461038b5780638c0b5e22146103a05780638da5cb5b146103b657600080fd5b80634f7041a51161015957806370d8c9ec1161013357806370d8c9ec14610321578063715018a614610341578063751039fc1461035657806375f0a8741461036b57600080fd5b80634f7041a5146102b35780635d098b38146102c957806370a08231146102eb57600080fd5b806306fdde03146101ac578063095ea7b3146101ec57806318160ddd1461021c57806323b872dd1461023f578063313ce5671461025f57806349bd5a5e1461027b57600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506040805180820190915260058152644c69676d6160d81b60208201525b6040516101e391906110db565b60405180910390f35b3480156101f857600080fd5b5061020c61020736600461114e565b610565565b60405190151581526020016101e3565b34801561022857600080fd5b5061023161057c565b6040519081526020016101e3565b34801561024b57600080fd5b5061020c61025a36600461117a565b61059d565b34801561026b57600080fd5b50604051601281526020016101e3565b34801561028757600080fd5b50600c5461029b906001600160a01b031681565b6040516001600160a01b0390911681526020016101e3565b3480156102bf57600080fd5b5061023160075481565b3480156102d557600080fd5b506102e96102e43660046111bb565b6105ef565b005b3480156102f757600080fd5b506102316103063660046111bb565b6001600160a01b031660009081526002602052604090205490565b34801561032d57600080fd5b506102e961033c3660046111df565b610644565b34801561034d57600080fd5b506102e9610673565b34801561036257600080fd5b506102e96106e7565b34801561037757600080fd5b50600d5461029b906001600160a01b031681565b34801561039757600080fd5b506102e9610730565b3480156103ac57600080fd5b5061023160055481565b3480156103c257600080fd5b506000546001600160a01b031661029b565b3480156103e057600080fd5b506102e96103ef3660046111f8565b610773565b34801561040057600080fd5b50604080518082019091526006815265244c49474d4160d01b60208201526101d6565b34801561042f57600080fd5b506102e961043e366004611240565b610806565b34801561044f57600080fd5b5061020c61045e36600461114e565b61089c565b34801561046f57600080fd5b506102e961047e366004611317565b6108a9565b34801561048f57600080fd5b5061023160085481565b3480156104a557600080fd5b50610231600e5481565b3480156104bb57600080fd5b506102e96104ca3660046111df565b610932565b3480156104db57600080fd5b506102316104ea36600461134c565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052157600080fd5b506102e96105303660046111bb565b61098f565b34801561054157600080fd5b5061020c6105503660046111bb565b600f6020526000908152604090205460ff1681565b60006105723384846109c5565b5060015b92915050565b600061058a6012600a61147f565b610598906305f5e10061148e565b905090565b60006105aa848484610ae9565b6001600160a01b0384166000908152600360209081526040808320338085529252909120546105e59186916105e09086906114a5565b6109c5565b5060019392505050565b6000546001600160a01b031633146106225760405162461bcd60e51b8152600401610619906114b8565b60405180910390fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461066e5760405162461bcd60e51b8152600401610619906114b8565b600a55565b6000546001600160a01b0316331461069d5760405162461bcd60e51b8152600401610619906114b8565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107115760405162461bcd60e51b8152600401610619906114b8565b61071d6012600a61147f565b61072b906305f5e10061148e565b600555565b6000546001600160a01b0316331461075a5760405162461bcd60e51b8152600401610619906114b8565b600d805460ff60a01b1916600160a01b17905543600955565b6000546001600160a01b0316331461079d5760405162461bcd60e51b8152600401610619906114b8565b600a82111580156107af5750600a8111155b6107fb5760405162461bcd60e51b815260206004820152601760248201527f45524332303a2077726f6e67207461782076616c7565210000000000000000006044820152606401610619565b600791909155600855565b6000546001600160a01b031633146108305760405162461bcd60e51b8152600401610619906114b8565b60005b8251811015610897578160046000858481518110610853576108536114ed565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061088f81611503565b915050610833565b505050565b6000610572338484610ae9565b6000546001600160a01b031633146108d35760405162461bcd60e51b8152600401610619906114b8565b6001600160a01b0382166000818152600f6020908152604091829020805460ff191685151590811790915591519182527fc551bbb22d0406dbfb8b6b7740cc521bcf44e1106029cf899c19b6a8e4c99d51910160405180910390a25050565b6000546001600160a01b0316331461095c5760405162461bcd60e51b8152600401610619906114b8565b600e81905560405181907fc9a07d0106b62dd0f2706dab6a7aee4c4d0dc35078c994bf5c08d5d85861d46b90600090a250565b6000546001600160a01b031633146109b95760405162461bcd60e51b8152600401610619906114b8565b6109c281610d22565b50565b6001600160a01b038316610a275760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610619565b6001600160a01b038216610a885760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610619565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b4d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610619565b6001600160a01b03831660009081526004602052604090205460ff1680610b8c57506001600160a01b03821660009081526004602052604090205460ff165b15610b9b576000600655610d17565b600d54600160a01b900460ff16610be75760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610619565b600554811115610c395760405162461bcd60e51b815260206004820152601960248201527f4d6178205478416d6f756e74203225206174206c61756e6368000000000000006044820152606401610619565b600a54600954610c49919061151c565b431015610c5a576063600655610d17565b600c546001600160a01b0390811690841603610c7b57600754600655610d17565b600c546001600160a01b0390811690831603610d115730600090815260026020526040902054610cad6012600a61147f565b610cb99061753061148e565b811115610d0557610ccc6012600a61147f565b610cd990620b71b061148e565b811115610cfc57610cec6012600a61147f565b610cf990620b71b061148e565b90505b610d0581610de2565b50600854600655610d17565b60006006555b610897838383610f40565b6001600160a01b038116610d875760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610619565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610e1757610e176114ed565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610e70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e94919061152f565b81600181518110610ea757610ea76114ed565b6001600160a01b039283166020918202929092010152600b54610ecd91309116846109c5565b600b54600d5460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f0a9287926000928892911690429060040161154c565b600060405180830381600087803b158015610f2457600080fd5b505af1158015610f38573d6000803e3d6000fd5b505050505050565b6000606460065483610f52919061148e565b610f5c91906115bd565b90506000610f6a82846114a5565b6001600160a01b038616600090815260026020526040902054909150610f919084906114a5565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610fc190829061151c565b6001600160a01b038516600090815260026020526040808220929092553081522054610fee90839061151c565b306000908152600260209081526040808320939093556001600160a01b0387168252600f9052205460ff1661108757600e546001600160a01b03851660009081526002602052604090205411156110875760405162461bcd60e51b815260206004820152601760248201527f4f766572204d617820486f6c64696e6720416d6f756e740000000000000000006044820152606401610619565b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110cc91815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b81811015611108578581018301518582016040015282016110ec565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109c257600080fd5b803561114981611129565b919050565b6000806040838503121561116157600080fd5b823561116c81611129565b946020939093013593505050565b60008060006060848603121561118f57600080fd5b833561119a81611129565b925060208401356111aa81611129565b929592945050506040919091013590565b6000602082840312156111cd57600080fd5b81356111d881611129565b9392505050565b6000602082840312156111f157600080fd5b5035919050565b6000806040838503121561120b57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b8035801515811461114957600080fd5b6000806040838503121561125357600080fd5b823567ffffffffffffffff8082111561126b57600080fd5b818501915085601f83011261127f57600080fd5b81356020828211156112935761129361121a565b8160051b604051601f19603f830116810181811086821117156112b8576112b861121a565b6040529283528183019350848101820192898411156112d657600080fd5b948201945b838610156112fb576112ec8661113e565b855294820194938201936112db565b965061130a9050878201611230565b9450505050509250929050565b6000806040838503121561132a57600080fd5b823561133581611129565b915061134360208401611230565b90509250929050565b6000806040838503121561135f57600080fd5b823561136a81611129565b9150602083013561137a81611129565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113d65781600019048211156113bc576113bc611385565b808516156113c957918102915b93841c93908002906113a0565b509250929050565b6000826113ed57506001610576565b816113fa57506000610576565b8160018114611410576002811461141a57611436565b6001915050610576565b60ff84111561142b5761142b611385565b50506001821b610576565b5060208310610133831016604e8410600b8410161715611459575081810a610576565b611463838361139b565b806000190482111561147757611477611385565b029392505050565b60006111d860ff8416836113de565b808202811582820484141761057657610576611385565b8181038181111561057657610576611385565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161151557611515611385565b5060010190565b8082018082111561057657610576611385565b60006020828403121561154157600080fd5b81516111d881611129565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561159c5784516001600160a01b031683529383019391830191600101611577565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115da57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208335b6e6dc97fa9d816a95f2ffdaaff50f3f397e369e5559b2433a6586160d0c64736f6c63430008120033

Deployed Bytecode Sourcemap

2622:7355:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4828:83;;;;;;;;;;-1:-1:-1;4898:5:0;;;;;;;;;;;;-1:-1:-1;;;4898:5:0;;;;4828:83;;;;;;;:::i;:::-;;;;;;;;5662:160;;;;;;;;;;-1:-1:-1;5662:160:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;5662:160:0;1162:187:1;5105:100:0;;;;;;;;;;;;;:::i;:::-;;;1500:25:1;;;1488:2;1473:18;5105:100:0;1354:177:1;5830:264:0;;;;;;;;;;-1:-1:-1;5830:264:0;;;;;:::i;:::-;;:::i;5014:83::-;;;;;;;;;;-1:-1:-1;5014:83:0;;2945:2;2139:36:1;;2127:2;2112:18;5014:83:0;1997:184:1;3591:28:0;;;;;;;;;;-1:-1:-1;3591:28:0;;;;-1:-1:-1;;;;;3591:28:0;;;;;;-1:-1:-1;;;;;2350:32:1;;;2332:51;;2320:2;2305:18;3591:28:0;2186:203:1;3301:25:0;;;;;;;;;;;;;;;;7241:135;;;;;;;;;;-1:-1:-1;7241:135:0;;;;;:::i;:::-;;:::i;:::-;;5213:118;;;;;;;;;;-1:-1:-1;5213:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;5306:17:0;5279:7;5306:17;;;:8;:17;;;;;;;5213:118;6896:96;;;;;;;;;;-1:-1:-1;6896:96:0;;;;;:::i;:::-;;:::i;1951:148::-;;;;;;;;;;;;;:::i;6800:88::-;;;;;;;;;;;;;:::i;3626:38::-;;;;;;;;;;-1:-1:-1;3626:38:0;;;;-1:-1:-1;;;;;3626:38:0;;;6445:113;;;;;;;;;;;;;:::i;3188:40::-;;;;;;;;;;;;;;;;1383:79;;;;;;;;;;-1:-1:-1;1421:7:0;1448:6;-1:-1:-1;;;;;1448:6:0;1383:79;;7000:227;;;;;;;;;;-1:-1:-1;7000:227:0;;;;;:::i;:::-;;:::i;4919:87::-;;;;;;;;;;-1:-1:-1;4991:7:0;;;;;;;;;;;;-1:-1:-1;;;4991:7:0;;;;4919:87;;6566:226;;;;;;;;;;-1:-1:-1;6566:226:0;;;;;:::i;:::-;;:::i;5339:165::-;;;;;;;;;;-1:-1:-1;5339:165:0;;;;;:::i;:::-;;:::i;9802:172::-;;;;;;;;;;-1:-1:-1;9802:172:0;;;;;:::i;:::-;;:::i;3333:26::-;;;;;;;;;;;;;;;;3728:49;;;;;;;;;;;;;;;;9626:168;;;;;;;;;;-1:-1:-1;9626:168:0;;;;;:::i;:::-;;:::i;5512:142::-;;;;;;;;;;-1:-1:-1;5512:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;5619:18:0;;;5593:7;5619:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5512:142;1597:109;;;;;;;;;;-1:-1:-1;1597:109:0;;;;;:::i;:::-;;:::i;3806:43::-;;;;;;;;;;-1:-1:-1;3806:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5662:160;5737:4;5753:39;301:10;5776:7;5785:6;5753:8;:39::i;:::-;-1:-1:-1;5810:4:0;5662:160;;;;;:::o;5105:100::-;5158:7;3002:13;2945:2;3002;:13;:::i;:::-;2994:21;;:5;:21;:::i;:::-;5178:19;;5105:100;:::o;5830:264::-;5928:4;5945:36;5955:6;5963:9;5974:6;5945:9;:36::i;:::-;-1:-1:-1;;;;;6021:19:0;;;;;;:11;:19;;;;;;;;301:10;6021:33;;;;;;;;;5992:72;;6001:6;;6021:42;;6057:6;;6021:42;:::i;:::-;5992:8;:72::i;:::-;-1:-1:-1;6082:4:0;5830:264;;;;;:::o;7241:135::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;;;;;;;;;7325:15:::1;:43:::0;;-1:-1:-1;;;;;;7325:43:0::1;-1:-1:-1::0;;;;;7325:43:0;;;::::1;::::0;;;::::1;::::0;;7241:135::o;6896:96::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;6965:10:::1;:19:::0;6896:96::o;1951:148::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;2058:1:::1;2042:6:::0;;2021:40:::1;::::0;-1:-1:-1;;;;;2042:6:0;;::::1;::::0;2021:40:::1;::::0;2058:1;;2021:40:::1;2089:1;2072:19:::0;;-1:-1:-1;;;;;;2072:19:0::1;::::0;;1951:148::o;6800:88::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;3002:13:::1;2945:2;3002;:13;:::i;:::-;2994:21;::::0;:5:::1;:21;:::i;:::-;6854:11;:26:::0;6800:88::o;6445:113::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;6500:6:::1;:13:::0;;-1:-1:-1;;;;6500:13:0::1;-1:-1:-1::0;;;6500:13:0::1;::::0;;6538:12:::1;6524:11;:26:::0;6445:113::o;7000:227::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;7109:2:::1;7096:9;:15;;:35;;;;;7129:2;7115:10;:16;;7096:35;7088:71;;;::::0;-1:-1:-1;;;7088:71:0;;7898:2:1;7088:71:0::1;::::0;::::1;7880:21:1::0;7937:2;7917:18;;;7910:30;7976:25;7956:18;;;7949:53;8019:18;;7088:71:0::1;7696:347:1::0;7088:71:0::1;7170:6;:18:::0;;;;7199:7:::1;:20:::0;7000:227::o;6566:226::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;6668:9:::1;6664:121;6687:8;:15;6683:1;:19;6664:121;;;6766:7;6726:24;:37;6751:8;6760:1;6751:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6726:37:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6726:37:0;:47;;-1:-1:-1;;6726:47:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6704:3;::::1;::::0;::::1;:::i;:::-;;;;6664:121;;;;6566:226:::0;;:::o;5339:165::-;5416:4;5432:42;301:10;5456:9;5467:6;5432:9;:42::i;9802:172::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9887:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;;;;:29;;-1:-1:-1;;9887:29:0::1;::::0;::::1;;::::0;;::::1;::::0;;;9934:32;;1302:41:1;;;9934:32:0::1;::::0;1275:18:1;9934:32:0::1;;;;;;;9802:172:::0;;:::o;9626:168::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;9706:13:::1;:30:::0;;;9754:32:::1;::::0;9722:14;;9754:32:::1;::::0;;;::::1;9626:168:::0;:::o;1597:109::-;1510:6;;-1:-1:-1;;;;;1510:6:0;301:10;1510:22;1502:67;;;;-1:-1:-1;;;1502:67:0;;;;;;;:::i;:::-;1670:28:::1;1689:8;1670:18;:28::i;:::-;1597:109:::0;:::o;6102:335::-;-1:-1:-1;;;;;6195:19:0;;6187:68;;;;-1:-1:-1;;;6187:68:0;;8522:2:1;6187:68:0;;;8504:21:1;8561:2;8541:18;;;8534:30;8600:34;8580:18;;;8573:62;-1:-1:-1;;;8651:18:1;;;8644:34;8695:19;;6187:68:0;8320:400:1;6187:68:0;-1:-1:-1;;;;;6274:21:0;;6266:68;;;;-1:-1:-1;;;6266:68:0;;8927:2:1;6266:68:0;;;8909:21:1;8966:2;8946:18;;;8939:30;9005:34;8985:18;;;8978:62;-1:-1:-1;;;9056:18:1;;;9049:32;9098:19;;6266:68:0;8725:398:1;6266:68:0;-1:-1:-1;;;;;6345:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6397:32;;1500:25:1;;;6397:32:0;;1473:18:1;6397:32:0;;;;;;;6102:335;;;:::o;7973:1129::-;-1:-1:-1;;;;;8061:18:0;;8053:68;;;;-1:-1:-1;;;8053:68:0;;9330:2:1;8053:68:0;;;9312:21:1;9369:2;9349:18;;;9342:30;9408:34;9388:18;;;9381:62;-1:-1:-1;;;9459:18:1;;;9452:35;9504:19;;8053:68:0;9128:401:1;8053:68:0;-1:-1:-1;;;;;8138:30:0;;;;;;:24;:30;;;;;;;;;:62;;-1:-1:-1;;;;;;8172:28:0;;;;;;:24;:28;;;;;;;;8138:62;8134:918;;;8224:1;8217:4;:8;8134:918;;;8266:6;;-1:-1:-1;;;8266:6:0;;;;8258:35;;;;-1:-1:-1;;;8258:35:0;;9736:2:1;8258:35:0;;;9718:21:1;9775:2;9755:18;;;9748:30;-1:-1:-1;;;9794:18:1;;;9787:46;9850:18;;8258:35:0;9534:340:1;8258:35:0;8326:11;;8316:6;:21;;8308:59;;;;-1:-1:-1;;;8308:59:0;;10081:2:1;8308:59:0;;;10063:21:1;10120:2;10100:18;;;10093:30;10159:27;10139:18;;;10132:55;10204:18;;8308:59:0;9879:349:1;8308:59:0;8415:10;;8401:11;;:24;;;;:::i;:::-;8386:12;:39;8382:659;;;8433:2;8428:4;:7;8382:659;;;8474:13;;-1:-1:-1;;;;;8474:13:0;;;8466:21;;;;8462:564;;8519:6;;8512:4;:13;8462:564;;;8561:13;;-1:-1:-1;;;;;8561:13:0;;;8555:19;;;;8551:475;;8640:4;8599:20;5306:17;;;:8;:17;;;;;;3065:13;2945:2;3065;:13;:::i;:::-;3057:21;;:5;:21;:::i;:::-;8673:12;:22;8669:244;;;3149:13;2945:2;3149;:13;:::i;:::-;3140:22;;:6;:22;:::i;:::-;8728:12;:22;8724:109;;;3149:13;2945:2;3149;:13;:::i;:::-;3140:22;;:6;:22;:::i;:::-;8783;;8724:109;8859:30;8876:12;8859:16;:30::i;:::-;-1:-1:-1;8942:7:0;;8935:4;:14;8551:475;;;9005:1;8998:4;:8;8551:475;9062:32;9077:4;9083:2;9087:6;9062:14;:32::i;1714:229::-;-1:-1:-1;;;;;1788:22:0;;1780:73;;;;-1:-1:-1;;;1780:73:0;;10565:2:1;1780:73:0;;;10547:21:1;10604:2;10584:18;;;10577:30;10643:34;10623:18;;;10616:62;-1:-1:-1;;;10694:18:1;;;10687:36;10740:19;;1780:73:0;10363:402:1;1780:73:0;1890:6;;;1869:38;;-1:-1:-1;;;;;1869:38:0;;;;1890:6;;;1869:38;;;1918:6;:17;;-1:-1:-1;;;;;;1918:17:0;-1:-1:-1;;;;;1918:17:0;;;;;;;;;;1714:229::o;9110:473::-;9200:16;;;9214:1;9200:16;;;;;;;;9176:21;;9200:16;;;;;;;;;;-1:-1:-1;9200:16:0;9176:40;;9245:4;9227;9232:1;9227:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9227:23:0;;;:7;;;;;;;;;;:23;;;;9271:15;;:22;;;-1:-1:-1;;;9271:22:0;;;;:15;;;;;:20;;:22;;;;;9227:7;;9271:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9261:4;9266:1;9261:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;9261:32:0;;;:7;;;;;;;;;:32;9336:15;;9304:62;;9321:4;;9336:15;9354:11;9304:8;:62::i;:::-;9377:15;;9519;;9377:198;;-1:-1:-1;;;9377:198:0;;-1:-1:-1;;;;;9377:15:0;;;;:66;;:198;;9458:11;;9377:15;;9500:4;;9519:15;;;9549;;9377:198;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9165:418;9110:473;:::o;7388:577::-;7473:17;7511:3;7503:4;;7494:6;:13;;;;:::i;:::-;7493:21;;;;:::i;:::-;7473:41;-1:-1:-1;7525:22:0;7550:18;7473:41;7550:6;:18;:::i;:::-;-1:-1:-1;;;;;7598:14:0;;;;;;:8;:14;;;;;;7525:43;;-1:-1:-1;7598:23:0;;7615:6;;7598:23;:::i;:::-;-1:-1:-1;;;;;7581:14:0;;;;;;;:8;:14;;;;;;:40;;;;7647:12;;;;;;;:29;;7662:14;;7647:29;:::i;:::-;-1:-1:-1;;;;;7632:12:0;;;;;;:8;:12;;;;;;:44;;;;7730:4;7713:23;;;;:35;;7739:9;;7713:35;:::i;:::-;7704:4;7687:23;;;;:8;:23;;;;;;;;:61;;;;-1:-1:-1;;;;;7797:15:0;;;;:11;:15;;;;;;7793:113;;7853:13;;-1:-1:-1;;;;;7837:12:0;;;;;;:8;:12;;;;;;:29;;7829:65;;;;-1:-1:-1;;;7829:65:0;;12443:2:1;7829:65:0;;;12425:21:1;12482:2;12462:18;;;12455:30;12521:25;12501:18;;;12494:53;12564:18;;7829:65:0;12241:347:1;7829:65:0;7938:2;-1:-1:-1;;;;;7923:34:0;7932:4;-1:-1:-1;;;;;7923:34:0;;7942:14;7923:34;;;;1500:25:1;;1488:2;1473:18;;1354:177;7923:34:0;;;;;;;;7462:503;;7388:577;;;:::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;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;2394:247::-;2453:6;2506:2;2494:9;2485:7;2481:23;2477:32;2474:52;;;2522:1;2519;2512:12;2474:52;2561:9;2548:23;2580:31;2605:5;2580:31;:::i;:::-;2630:5;2394:247;-1:-1:-1;;;2394:247:1:o;2646:180::-;2705:6;2758:2;2746:9;2737:7;2733:23;2729:32;2726:52;;;2774:1;2771;2764:12;2726:52;-1:-1:-1;2797:23:1;;2646:180;-1:-1:-1;2646:180:1:o;3055:248::-;3123:6;3131;3184:2;3172:9;3163:7;3159:23;3155:32;3152:52;;;3200:1;3197;3190:12;3152:52;-1:-1:-1;;3223:23:1;;;3293:2;3278:18;;;3265:32;;-1:-1:-1;3055:248:1:o;3308:127::-;3369:10;3364:3;3360:20;3357:1;3350:31;3400:4;3397:1;3390:15;3424:4;3421:1;3414:15;3440:160;3505:20;;3561:13;;3554:21;3544:32;;3534:60;;3590:1;3587;3580:12;3605:1191;3695:6;3703;3756:2;3744:9;3735:7;3731:23;3727:32;3724:52;;;3772:1;3769;3762:12;3724:52;3812:9;3799:23;3841:18;3882:2;3874:6;3871:14;3868:34;;;3898:1;3895;3888:12;3868:34;3936:6;3925:9;3921:22;3911:32;;3981:7;3974:4;3970:2;3966:13;3962:27;3952:55;;4003:1;4000;3993:12;3952:55;4039:2;4026:16;4061:4;4084:2;4080;4077:10;4074:36;;;4090:18;;:::i;:::-;4136:2;4133:1;4129:10;4168:2;4162:9;4231:2;4227:7;4222:2;4218;4214:11;4210:25;4202:6;4198:38;4286:6;4274:10;4271:22;4266:2;4254:10;4251:18;4248:46;4245:72;;;4297:18;;:::i;:::-;4333:2;4326:22;4383:18;;;4417:15;;;;-1:-1:-1;4459:11:1;;;4455:20;;;4487:19;;;4484:39;;;4519:1;4516;4509:12;4484:39;4543:11;;;;4563:148;4579:6;4574:3;4571:15;4563:148;;;4645:23;4664:3;4645:23;:::i;:::-;4633:36;;4596:12;;;;4689;;;;4563:148;;;4730:6;-1:-1:-1;4755:35:1;;-1:-1:-1;4771:18:1;;;4755:35;:::i;:::-;4745:45;;;;;;3605:1191;;;;;:::o;4801:315::-;4866:6;4874;4927:2;4915:9;4906:7;4902:23;4898:32;4895:52;;;4943:1;4940;4933:12;4895:52;4982:9;4969:23;5001:31;5026:5;5001:31;:::i;:::-;5051:5;-1:-1:-1;5075:35:1;5106:2;5091:18;;5075:35;:::i;:::-;5065:45;;4801:315;;;;;:::o;5121:388::-;5189:6;5197;5250:2;5238:9;5229:7;5225:23;5221:32;5218:52;;;5266:1;5263;5256:12;5218:52;5305:9;5292:23;5324:31;5349:5;5324:31;:::i;:::-;5374:5;-1:-1:-1;5431:2:1;5416:18;;5403:32;5444:33;5403:32;5444:33;:::i;:::-;5496:7;5486:17;;;5121:388;;;;;:::o;5514:127::-;5575:10;5570:3;5566:20;5563:1;5556:31;5606:4;5603:1;5596:15;5630:4;5627:1;5620:15;5646:422;5735:1;5778:5;5735:1;5792:270;5813:7;5803:8;5800:21;5792:270;;;5872:4;5868:1;5864:6;5860:17;5854:4;5851:27;5848:53;;;5881:18;;:::i;:::-;5931:7;5921:8;5917:22;5914:55;;;5951:16;;;;5914:55;6030:22;;;;5990:15;;;;5792:270;;;5796:3;5646:422;;;;;:::o;6073:806::-;6122:5;6152:8;6142:80;;-1:-1:-1;6193:1:1;6207:5;;6142:80;6241:4;6231:76;;-1:-1:-1;6278:1:1;6292:5;;6231:76;6323:4;6341:1;6336:59;;;;6409:1;6404:130;;;;6316:218;;6336:59;6366:1;6357:10;;6380:5;;;6404:130;6441:3;6431:8;6428:17;6425:43;;;6448:18;;:::i;:::-;-1:-1:-1;;6504:1:1;6490:16;;6519:5;;6316:218;;6618:2;6608:8;6605:16;6599:3;6593:4;6590:13;6586:36;6580:2;6570:8;6567:16;6562:2;6556:4;6553:12;6549:35;6546:77;6543:159;;;-1:-1:-1;6655:19:1;;;6687:5;;6543:159;6734:34;6759:8;6753:4;6734:34;:::i;:::-;6804:6;6800:1;6796:6;6792:19;6783:7;6780:32;6777:58;;;6815:18;;:::i;:::-;6853:20;;6073:806;-1:-1:-1;;;6073:806:1:o;6884:140::-;6942:5;6971:47;7012:4;7002:8;6998:19;6992:4;6971:47;:::i;7029:168::-;7102:9;;;7133;;7150:15;;;7144:22;;7130:37;7120:71;;7171:18;;:::i;7202:128::-;7269:9;;;7290:11;;;7287:37;;;7304:18;;:::i;7335:356::-;7537:2;7519:21;;;7556:18;;;7549:30;7615:34;7610:2;7595:18;;7588:62;7682:2;7667:18;;7335:356::o;8048:127::-;8109:10;8104:3;8100:20;8097:1;8090:31;8140:4;8137:1;8130:15;8164:4;8161:1;8154:15;8180:135;8219:3;8240:17;;;8237:43;;8260:18;;:::i;:::-;-1:-1:-1;8307:1:1;8296:13;;8180:135::o;10233:125::-;10298:9;;;10319:10;;;10316:36;;;10332:18;;:::i;10770:251::-;10840:6;10893:2;10881:9;10872:7;10868:23;10864:32;10861:52;;;10909:1;10906;10899:12;10861:52;10941:9;10935:16;10960:31;10985:5;10960:31;:::i;11026:988::-;11296:4;11344:3;11333:9;11329:19;11375:6;11364:9;11357:25;11401:2;11439:6;11434:2;11423:9;11419:18;11412:34;11482:3;11477:2;11466:9;11462:18;11455:31;11506:6;11541;11535:13;11572:6;11564;11557:22;11610:3;11599:9;11595:19;11588:26;;11649:2;11641:6;11637:15;11623:29;;11670:1;11680:195;11694:6;11691:1;11688:13;11680:195;;;11759:13;;-1:-1:-1;;;;;11755:39:1;11743:52;;11850:15;;;;11815:12;;;;11791:1;11709:9;11680:195;;;-1:-1:-1;;;;;;;11931:32:1;;;;11926:2;11911:18;;11904:60;-1:-1:-1;;;11995:3:1;11980:19;11973:35;11892:3;11026:988;-1:-1:-1;;;11026:988:1:o;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

Swarm Source

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