ETH Price: $3,302.67 (-3.20%)
Gas: 18 Gwei

Token

Loyalty Labs ($LOYAL)
 

Overview

Max Total Supply

100,000,000 $LOYAL

Holders

11

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
943,363.075999326772802402 $LOYAL

Value
$0.00
0x3228dfd3d99a240483b4d377f2674141cacf964a
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:
LoyaltyLabs

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-29
*/

//      <IF YOU WEREN’T A BELIEVER BEFORE, NOW IS YOUR CHANCE TO BECOME ONE>
//
//                                                            
//________/\\\________/\\\___________________/\\\\\_______/\\\________/\\\_____/\\\\\\\\\_____/\\\_____________        
// ____/\\\\\\\\\\\___\/\\\_________________/\\\///\\\____\///\\\____/\\\/____/\\\\\\\\\\\\\__\/\\\_____________       
//  __/\\\///\\\////\\_\/\\\_______________/\\\/__\///\\\____\///\\\/\\\/_____/\\\/////////\\\_\/\\\_____________      
//   _\////\\\\\\__\//__\/\\\______________/\\\______\//\\\_____\///\\\/______\/\\\_______\/\\\_\/\\\_____________     
//    ____\////\\\\\\____\/\\\_____________\/\\\_______\/\\\_______\/\\\_______\/\\\\\\\\\\\\\\\_\/\\\_____________    
//     __/\\__\/\\\///\\\_\/\\\_____________\//\\\______/\\\________\/\\\_______\/\\\/////////\\\_\/\\\_____________   
//      _\///\\\\\\\\\\\/__\/\\\______________\///\\\__/\\\__________\/\\\_______\/\\\_______\/\\\_\/\\\_____________  
//       ___\/////\\\///____\/\\\\\\\\\\\\\\\____\///\\\\\/___________\/\\\_______\/\\\_______\/\\\_\/\\\\\\\\\\\\\\\_ 
//        _______\///________\///////////////_______\/////_____________\///________\///________\///__\///////////////__
//                                                      
//                                                            
//
// Twitter: https://twitter.com/loyaltylabseth
// Telegram: https://t.me/loyaltylabs

// 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 LoyaltyLabs 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 = 5;

    string private constant _name = "Loyalty Labs";
    string private constant _symbol = "$LOYAL";

    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(0xbD802578DE23a73BcDF62FBEF789b3C0dc98750A);
        _balance[msg.sender] = _totalSupply;

        _isExcludedFromFeeWallet[msg.sender] = true;
        _isExcludedFromFeeWallet[0xbD802578DE23a73BcDF62FBEF789b3C0dc98750A] = 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"}]

6080604052620000126012600a620004ce565b6200002190620b71b0620004e6565b6200002e906002620004e6565b600590815560006007819055600855600a908155600d805460ff60a01b191690556064906200006090601290620004ce565b62000070906305f5e100620004e6565b6200007c919062000500565b600e553480156200008c57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000133573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000159919062000523565b6001600160a01b031663c9c6539630600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001e2919062000523565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000230573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000256919062000523565b600c80546001600160a01b03929092166001600160a01b0319928316179055600d805490911673bd802578de23a73bcdf62fbef789b3c0dc98750a179055620002a26012600a620004ce565b620002b2906305f5e100620004e6565b33600081815260026020908152604080832094909455600481528382208054600160ff1991821681179092557f621a5276adb10fe1d3cd638d6c8dfd56c2866d952fb7996d137ea53bfa0f15b88054821683179055308085528685208054831684179055948452600f90925284832080548316821790559282528382208054821684179055600c546001600160a01b031682529290208054909216179055620003583390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003926012600a620004ce565b620003a2906305f5e100620004e6565b60405190815260200160405180910390a36200054e565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000410578160001904821115620003f457620003f4620003b9565b808516156200040257918102915b93841c9390800290620003d4565b509250929050565b6000826200042957506001620004c8565b816200043857506000620004c8565b81600181146200045157600281146200045c576200047c565b6001915050620004c8565b60ff841115620004705762000470620003b9565b50506001821b620004c8565b5060208310610133831016604e8410600b8410161715620004a1575081810a620004c8565b620004ad8383620003cf565b8060001904821115620004c457620004c4620003b9565b0290505b92915050565b6000620004df60ff84168362000418565b9392505050565b8082028115828204841417620004c857620004c8620003b9565b6000826200051e57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200053657600080fd5b81516001600160a01b0381168114620004df57600080fd5b61161c806200055e6000396000f3fe6080604052600436106101a05760003560e01c80638a8c523c116100ec578063ac1d06091161008a578063d8b6004011610064578063d8b60040146104b6578063dd62ed3e146104d6578063f2fde38b1461051c578063f99031a71461053c57600080fd5b8063ac1d06091461046a578063cc1776d31461048a578063cd03425c146104a057600080fd5b80639036ed4d116100c65780639036ed4d146103db57806395d89b41146103fb578063a21e876e1461042a578063a9059cbb1461044a57600080fd5b80638a8c523c146103925780638c0b5e22146103a75780638da5cb5b146103bd57600080fd5b80634f7041a51161015957806370d8c9ec1161013357806370d8c9ec14610328578063715018a614610348578063751039fc1461035d57806375f0a8741461037257600080fd5b80634f7041a5146102ba5780635d098b38146102d057806370a08231146102f257600080fd5b806306fdde03146101ac578063095ea7b3146101f357806318160ddd1461022357806323b872dd14610246578063313ce5671461026657806349bd5a5e1461028257600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600c81526b4c6f79616c7479204c61627360a01b60208201525b6040516101ea91906110e2565b60405180910390f35b3480156101ff57600080fd5b5061021361020e366004611155565b61056c565b60405190151581526020016101ea565b34801561022f57600080fd5b50610238610583565b6040519081526020016101ea565b34801561025257600080fd5b50610213610261366004611181565b6105a4565b34801561027257600080fd5b50604051601281526020016101ea565b34801561028e57600080fd5b50600c546102a2906001600160a01b031681565b6040516001600160a01b0390911681526020016101ea565b3480156102c657600080fd5b5061023860075481565b3480156102dc57600080fd5b506102f06102eb3660046111c2565b6105f6565b005b3480156102fe57600080fd5b5061023861030d3660046111c2565b6001600160a01b031660009081526002602052604090205490565b34801561033457600080fd5b506102f06103433660046111e6565b61064b565b34801561035457600080fd5b506102f061067a565b34801561036957600080fd5b506102f06106ee565b34801561037e57600080fd5b50600d546102a2906001600160a01b031681565b34801561039e57600080fd5b506102f0610737565b3480156103b357600080fd5b5061023860055481565b3480156103c957600080fd5b506000546001600160a01b03166102a2565b3480156103e757600080fd5b506102f06103f63660046111ff565b61077a565b34801561040757600080fd5b50604080518082019091526006815265091313d6505360d21b60208201526101dd565b34801561043657600080fd5b506102f0610445366004611247565b61080d565b34801561045657600080fd5b50610213610465366004611155565b6108a3565b34801561047657600080fd5b506102f061048536600461131e565b6108b0565b34801561049657600080fd5b5061023860085481565b3480156104ac57600080fd5b50610238600e5481565b3480156104c257600080fd5b506102f06104d13660046111e6565b610939565b3480156104e257600080fd5b506102386104f1366004611353565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052857600080fd5b506102f06105373660046111c2565b610996565b34801561054857600080fd5b506102136105573660046111c2565b600f6020526000908152604090205460ff1681565b60006105793384846109cc565b5060015b92915050565b60006105916012600a611486565b61059f906305f5e100611495565b905090565b60006105b1848484610af0565b6001600160a01b0384166000908152600360209081526040808320338085529252909120546105ec9186916105e79086906114ac565b6109cc565b5060019392505050565b6000546001600160a01b031633146106295760405162461bcd60e51b8152600401610620906114bf565b60405180910390fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106755760405162461bcd60e51b8152600401610620906114bf565b600a55565b6000546001600160a01b031633146106a45760405162461bcd60e51b8152600401610620906114bf565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107185760405162461bcd60e51b8152600401610620906114bf565b6107246012600a611486565b610732906305f5e100611495565b600555565b6000546001600160a01b031633146107615760405162461bcd60e51b8152600401610620906114bf565b600d805460ff60a01b1916600160a01b17905543600955565b6000546001600160a01b031633146107a45760405162461bcd60e51b8152600401610620906114bf565b600a82111580156107b65750600a8111155b6108025760405162461bcd60e51b815260206004820152601760248201527f45524332303a2077726f6e67207461782076616c7565210000000000000000006044820152606401610620565b600791909155600855565b6000546001600160a01b031633146108375760405162461bcd60e51b8152600401610620906114bf565b60005b825181101561089e57816004600085848151811061085a5761085a6114f4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806108968161150a565b91505061083a565b505050565b6000610579338484610af0565b6000546001600160a01b031633146108da5760405162461bcd60e51b8152600401610620906114bf565b6001600160a01b0382166000818152600f6020908152604091829020805460ff191685151590811790915591519182527fc551bbb22d0406dbfb8b6b7740cc521bcf44e1106029cf899c19b6a8e4c99d51910160405180910390a25050565b6000546001600160a01b031633146109635760405162461bcd60e51b8152600401610620906114bf565b600e81905560405181907fc9a07d0106b62dd0f2706dab6a7aee4c4d0dc35078c994bf5c08d5d85861d46b90600090a250565b6000546001600160a01b031633146109c05760405162461bcd60e51b8152600401610620906114bf565b6109c981610d29565b50565b6001600160a01b038316610a2e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610620565b6001600160a01b038216610a8f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610620565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b545760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610620565b6001600160a01b03831660009081526004602052604090205460ff1680610b9357506001600160a01b03821660009081526004602052604090205460ff165b15610ba2576000600655610d1e565b600d54600160a01b900460ff16610bee5760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610620565b600554811115610c405760405162461bcd60e51b815260206004820152601960248201527f4d6178205478416d6f756e74203225206174206c61756e6368000000000000006044820152606401610620565b600a54600954610c509190611523565b431015610c61576063600655610d1e565b600c546001600160a01b0390811690841603610c8257600754600655610d1e565b600c546001600160a01b0390811690831603610d185730600090815260026020526040902054610cb46012600a611486565b610cc090617530611495565b811115610d0c57610cd36012600a611486565b610ce090620b71b0611495565b811115610d0357610cf36012600a611486565b610d0090620b71b0611495565b90505b610d0c81610de9565b50600854600655610d1e565b60006006555b61089e838383610f47565b6001600160a01b038116610d8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610620565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610e1e57610e1e6114f4565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190611536565b81600181518110610eae57610eae6114f4565b6001600160a01b039283166020918202929092010152600b54610ed491309116846109cc565b600b54600d5460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f1192879260009288929116904290600401611553565b600060405180830381600087803b158015610f2b57600080fd5b505af1158015610f3f573d6000803e3d6000fd5b505050505050565b6000606460065483610f599190611495565b610f6391906115c4565b90506000610f7182846114ac565b6001600160a01b038616600090815260026020526040902054909150610f989084906114ac565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610fc8908290611523565b6001600160a01b038516600090815260026020526040808220929092553081522054610ff5908390611523565b306000908152600260209081526040808320939093556001600160a01b0387168252600f9052205460ff1661108e57600e546001600160a01b038516600090815260026020526040902054111561108e5760405162461bcd60e51b815260206004820152601760248201527f4f766572204d617820486f6c64696e6720416d6f756e740000000000000000006044820152606401610620565b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110d391815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b8181101561110f578581018301518582016040015282016110f3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109c957600080fd5b803561115081611130565b919050565b6000806040838503121561116857600080fd5b823561117381611130565b946020939093013593505050565b60008060006060848603121561119657600080fd5b83356111a181611130565b925060208401356111b181611130565b929592945050506040919091013590565b6000602082840312156111d457600080fd5b81356111df81611130565b9392505050565b6000602082840312156111f857600080fd5b5035919050565b6000806040838503121561121257600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b8035801515811461115057600080fd5b6000806040838503121561125a57600080fd5b823567ffffffffffffffff8082111561127257600080fd5b818501915085601f83011261128657600080fd5b813560208282111561129a5761129a611221565b8160051b604051601f19603f830116810181811086821117156112bf576112bf611221565b6040529283528183019350848101820192898411156112dd57600080fd5b948201945b83861015611302576112f386611145565b855294820194938201936112e2565b96506113119050878201611237565b9450505050509250929050565b6000806040838503121561133157600080fd5b823561133c81611130565b915061134a60208401611237565b90509250929050565b6000806040838503121561136657600080fd5b823561137181611130565b9150602083013561138181611130565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113dd5781600019048211156113c3576113c361138c565b808516156113d057918102915b93841c93908002906113a7565b509250929050565b6000826113f45750600161057d565b816114015750600061057d565b816001811461141757600281146114215761143d565b600191505061057d565b60ff8411156114325761143261138c565b50506001821b61057d565b5060208310610133831016604e8410600b8410161715611460575081810a61057d565b61146a83836113a2565b806000190482111561147e5761147e61138c565b029392505050565b60006111df60ff8416836113e5565b808202811582820484141761057d5761057d61138c565b8181038181111561057d5761057d61138c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161151c5761151c61138c565b5060010190565b8082018082111561057d5761057d61138c565b60006020828403121561154857600080fd5b81516111df81611130565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115a35784516001600160a01b03168352938301939183019160010161157e565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115e157634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220a0e16c7fc8701a777698884479fac79883e8441f2500ad8f1523f3444a4351d464736f6c63430008120033

Deployed Bytecode

0x6080604052600436106101a05760003560e01c80638a8c523c116100ec578063ac1d06091161008a578063d8b6004011610064578063d8b60040146104b6578063dd62ed3e146104d6578063f2fde38b1461051c578063f99031a71461053c57600080fd5b8063ac1d06091461046a578063cc1776d31461048a578063cd03425c146104a057600080fd5b80639036ed4d116100c65780639036ed4d146103db57806395d89b41146103fb578063a21e876e1461042a578063a9059cbb1461044a57600080fd5b80638a8c523c146103925780638c0b5e22146103a75780638da5cb5b146103bd57600080fd5b80634f7041a51161015957806370d8c9ec1161013357806370d8c9ec14610328578063715018a614610348578063751039fc1461035d57806375f0a8741461037257600080fd5b80634f7041a5146102ba5780635d098b38146102d057806370a08231146102f257600080fd5b806306fdde03146101ac578063095ea7b3146101f357806318160ddd1461022357806323b872dd14610246578063313ce5671461026657806349bd5a5e1461028257600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b5060408051808201909152600c81526b4c6f79616c7479204c61627360a01b60208201525b6040516101ea91906110e2565b60405180910390f35b3480156101ff57600080fd5b5061021361020e366004611155565b61056c565b60405190151581526020016101ea565b34801561022f57600080fd5b50610238610583565b6040519081526020016101ea565b34801561025257600080fd5b50610213610261366004611181565b6105a4565b34801561027257600080fd5b50604051601281526020016101ea565b34801561028e57600080fd5b50600c546102a2906001600160a01b031681565b6040516001600160a01b0390911681526020016101ea565b3480156102c657600080fd5b5061023860075481565b3480156102dc57600080fd5b506102f06102eb3660046111c2565b6105f6565b005b3480156102fe57600080fd5b5061023861030d3660046111c2565b6001600160a01b031660009081526002602052604090205490565b34801561033457600080fd5b506102f06103433660046111e6565b61064b565b34801561035457600080fd5b506102f061067a565b34801561036957600080fd5b506102f06106ee565b34801561037e57600080fd5b50600d546102a2906001600160a01b031681565b34801561039e57600080fd5b506102f0610737565b3480156103b357600080fd5b5061023860055481565b3480156103c957600080fd5b506000546001600160a01b03166102a2565b3480156103e757600080fd5b506102f06103f63660046111ff565b61077a565b34801561040757600080fd5b50604080518082019091526006815265091313d6505360d21b60208201526101dd565b34801561043657600080fd5b506102f0610445366004611247565b61080d565b34801561045657600080fd5b50610213610465366004611155565b6108a3565b34801561047657600080fd5b506102f061048536600461131e565b6108b0565b34801561049657600080fd5b5061023860085481565b3480156104ac57600080fd5b50610238600e5481565b3480156104c257600080fd5b506102f06104d13660046111e6565b610939565b3480156104e257600080fd5b506102386104f1366004611353565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052857600080fd5b506102f06105373660046111c2565b610996565b34801561054857600080fd5b506102136105573660046111c2565b600f6020526000908152604090205460ff1681565b60006105793384846109cc565b5060015b92915050565b60006105916012600a611486565b61059f906305f5e100611495565b905090565b60006105b1848484610af0565b6001600160a01b0384166000908152600360209081526040808320338085529252909120546105ec9186916105e79086906114ac565b6109cc565b5060019392505050565b6000546001600160a01b031633146106295760405162461bcd60e51b8152600401610620906114bf565b60405180910390fd5b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106755760405162461bcd60e51b8152600401610620906114bf565b600a55565b6000546001600160a01b031633146106a45760405162461bcd60e51b8152600401610620906114bf565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146107185760405162461bcd60e51b8152600401610620906114bf565b6107246012600a611486565b610732906305f5e100611495565b600555565b6000546001600160a01b031633146107615760405162461bcd60e51b8152600401610620906114bf565b600d805460ff60a01b1916600160a01b17905543600955565b6000546001600160a01b031633146107a45760405162461bcd60e51b8152600401610620906114bf565b600a82111580156107b65750600a8111155b6108025760405162461bcd60e51b815260206004820152601760248201527f45524332303a2077726f6e67207461782076616c7565210000000000000000006044820152606401610620565b600791909155600855565b6000546001600160a01b031633146108375760405162461bcd60e51b8152600401610620906114bf565b60005b825181101561089e57816004600085848151811061085a5761085a6114f4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806108968161150a565b91505061083a565b505050565b6000610579338484610af0565b6000546001600160a01b031633146108da5760405162461bcd60e51b8152600401610620906114bf565b6001600160a01b0382166000818152600f6020908152604091829020805460ff191685151590811790915591519182527fc551bbb22d0406dbfb8b6b7740cc521bcf44e1106029cf899c19b6a8e4c99d51910160405180910390a25050565b6000546001600160a01b031633146109635760405162461bcd60e51b8152600401610620906114bf565b600e81905560405181907fc9a07d0106b62dd0f2706dab6a7aee4c4d0dc35078c994bf5c08d5d85861d46b90600090a250565b6000546001600160a01b031633146109c05760405162461bcd60e51b8152600401610620906114bf565b6109c981610d29565b50565b6001600160a01b038316610a2e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610620565b6001600160a01b038216610a8f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610620565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b545760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610620565b6001600160a01b03831660009081526004602052604090205460ff1680610b9357506001600160a01b03821660009081526004602052604090205460ff165b15610ba2576000600655610d1e565b600d54600160a01b900460ff16610bee5760405162461bcd60e51b815260206004820152601060248201526f0aec2d2e840e8d2d8d840d8c2eadcc6d60831b6044820152606401610620565b600554811115610c405760405162461bcd60e51b815260206004820152601960248201527f4d6178205478416d6f756e74203225206174206c61756e6368000000000000006044820152606401610620565b600a54600954610c509190611523565b431015610c61576063600655610d1e565b600c546001600160a01b0390811690841603610c8257600754600655610d1e565b600c546001600160a01b0390811690831603610d185730600090815260026020526040902054610cb46012600a611486565b610cc090617530611495565b811115610d0c57610cd36012600a611486565b610ce090620b71b0611495565b811115610d0357610cf36012600a611486565b610d0090620b71b0611495565b90505b610d0c81610de9565b50600854600655610d1e565b60006006555b61089e838383610f47565b6001600160a01b038116610d8e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610620565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610e1e57610e1e6114f4565b6001600160a01b03928316602091820292909201810191909152600b54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610e77573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e9b9190611536565b81600181518110610eae57610eae6114f4565b6001600160a01b039283166020918202929092010152600b54610ed491309116846109cc565b600b54600d5460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f1192879260009288929116904290600401611553565b600060405180830381600087803b158015610f2b57600080fd5b505af1158015610f3f573d6000803e3d6000fd5b505050505050565b6000606460065483610f599190611495565b610f6391906115c4565b90506000610f7182846114ac565b6001600160a01b038616600090815260026020526040902054909150610f989084906114ac565b6001600160a01b038087166000908152600260205260408082209390935590861681522054610fc8908290611523565b6001600160a01b038516600090815260026020526040808220929092553081522054610ff5908390611523565b306000908152600260209081526040808320939093556001600160a01b0387168252600f9052205460ff1661108e57600e546001600160a01b038516600090815260026020526040902054111561108e5760405162461bcd60e51b815260206004820152601760248201527f4f766572204d617820486f6c64696e6720416d6f756e740000000000000000006044820152606401610620565b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516110d391815260200190565b60405180910390a35050505050565b600060208083528351808285015260005b8181101561110f578581018301518582016040015282016110f3565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109c957600080fd5b803561115081611130565b919050565b6000806040838503121561116857600080fd5b823561117381611130565b946020939093013593505050565b60008060006060848603121561119657600080fd5b83356111a181611130565b925060208401356111b181611130565b929592945050506040919091013590565b6000602082840312156111d457600080fd5b81356111df81611130565b9392505050565b6000602082840312156111f857600080fd5b5035919050565b6000806040838503121561121257600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b8035801515811461115057600080fd5b6000806040838503121561125a57600080fd5b823567ffffffffffffffff8082111561127257600080fd5b818501915085601f83011261128657600080fd5b813560208282111561129a5761129a611221565b8160051b604051601f19603f830116810181811086821117156112bf576112bf611221565b6040529283528183019350848101820192898411156112dd57600080fd5b948201945b83861015611302576112f386611145565b855294820194938201936112e2565b96506113119050878201611237565b9450505050509250929050565b6000806040838503121561133157600080fd5b823561133c81611130565b915061134a60208401611237565b90509250929050565b6000806040838503121561136657600080fd5b823561137181611130565b9150602083013561138181611130565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113dd5781600019048211156113c3576113c361138c565b808516156113d057918102915b93841c93908002906113a7565b509250929050565b6000826113f45750600161057d565b816114015750600061057d565b816001811461141757600281146114215761143d565b600191505061057d565b60ff8411156114325761143261138c565b50506001821b61057d565b5060208310610133831016604e8410600b8410161715611460575081810a61057d565b61146a83836113a2565b806000190482111561147e5761147e61138c565b029392505050565b60006111df60ff8416836113e5565b808202811582820484141761057d5761057d61138c565b8181038181111561057d5761057d61138c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b60006001820161151c5761151c61138c565b5060010190565b8082018082111561057d5761057d61138c565b60006020828403121561154857600080fd5b81516111df81611130565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115a35784516001600160a01b03168352938301939183019160010161157e565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826115e157634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220a0e16c7fc8701a777698884479fac79883e8441f2500ad8f1523f3444a4351d464736f6c63430008120033

Deployed Bytecode Sourcemap

3953:7368:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6172:83;;;;;;;;;;-1:-1:-1;6242:5:0;;;;;;;;;;;;-1:-1:-1;;;6242:5:0;;;;6172:83;;;;;;;:::i;:::-;;;;;;;;7006:160;;;;;;;;;;-1:-1:-1;7006:160:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;7006:160:0;1162:187:1;6449:100:0;;;;;;;;;;;;;:::i;:::-;;;1500:25:1;;;1488:2;1473:18;6449:100:0;1354:177:1;7174:264:0;;;;;;;;;;-1:-1:-1;7174:264:0;;;;;:::i;:::-;;:::i;6358:83::-;;;;;;;;;;-1:-1:-1;6358:83:0;;4282:2;2139:36:1;;2127:2;2112:18;6358:83:0;1997:184:1;4935:28:0;;;;;;;;;;-1:-1:-1;4935:28:0;;;;-1:-1:-1;;;;;4935:28:0;;;;;;-1:-1:-1;;;;;2350:32:1;;;2332:51;;2320:2;2305:18;4935:28:0;2186:203:1;4638:25:0;;;;;;;;;;;;;;;;8585:135;;;;;;;;;;-1:-1:-1;8585:135:0;;;;;:::i;:::-;;:::i;:::-;;6557:118;;;;;;;;;;-1:-1:-1;6557:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;6650:17:0;6623:7;6650:17;;;:8;:17;;;;;;;6557:118;8240:96;;;;;;;;;;-1:-1:-1;8240:96:0;;;;;:::i;:::-;;:::i;3282:148::-;;;;;;;;;;;;;:::i;8144:88::-;;;;;;;;;;;;;:::i;4970:38::-;;;;;;;;;;-1:-1:-1;4970:38:0;;;;-1:-1:-1;;;;;4970:38:0;;;7789:113;;;;;;;;;;;;;:::i;4525:40::-;;;;;;;;;;;;;;;;2714:79;;;;;;;;;;-1:-1:-1;2752:7:0;2779:6;-1:-1:-1;;;;;2779:6:0;2714:79;;8344:227;;;;;;;;;;-1:-1:-1;8344:227:0;;;;;:::i;:::-;;:::i;6263:87::-;;;;;;;;;;-1:-1:-1;6335:7:0;;;;;;;;;;;;-1:-1:-1;;;6335:7:0;;;;6263:87;;7910:226;;;;;;;;;;-1:-1:-1;7910:226:0;;;;;:::i;:::-;;:::i;6683:165::-;;;;;;;;;;-1:-1:-1;6683:165:0;;;;;:::i;:::-;;:::i;11146:172::-;;;;;;;;;;-1:-1:-1;11146:172:0;;;;;:::i;:::-;;:::i;4670:26::-;;;;;;;;;;;;;;;;5072:49;;;;;;;;;;;;;;;;10970:168;;;;;;;;;;-1:-1:-1;10970:168:0;;;;;:::i;:::-;;:::i;6856:142::-;;;;;;;;;;-1:-1:-1;6856:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;6963:18:0;;;6937:7;6963:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6856:142;2928:109;;;;;;;;;;-1:-1:-1;2928:109:0;;;;;:::i;:::-;;:::i;5150:43::-;;;;;;;;;;-1:-1:-1;5150:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;7006:160;7081:4;7097:39;1632:10;7120:7;7129:6;7097:8;:39::i;:::-;-1:-1:-1;7154:4:0;7006:160;;;;;:::o;6449:100::-;6502:7;4339:13;4282:2;4339;:13;:::i;:::-;4331:21;;:5;:21;:::i;:::-;6522:19;;6449:100;:::o;7174:264::-;7272:4;7289:36;7299:6;7307:9;7318:6;7289:9;:36::i;:::-;-1:-1:-1;;;;;7365:19:0;;;;;;:11;:19;;;;;;;;1632:10;7365:33;;;;;;;;;7336:72;;7345:6;;7365:42;;7401:6;;7365:42;:::i;:::-;7336:8;:72::i;:::-;-1:-1:-1;7426:4:0;7174:264;;;;;:::o;8585:135::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;;;;;;;;;8669:15:::1;:43:::0;;-1:-1:-1;;;;;;8669:43:0::1;-1:-1:-1::0;;;;;8669:43:0;;;::::1;::::0;;;::::1;::::0;;8585:135::o;8240:96::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;8309:10:::1;:19:::0;8240:96::o;3282:148::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;3389:1:::1;3373:6:::0;;3352:40:::1;::::0;-1:-1:-1;;;;;3373:6:0;;::::1;::::0;3352:40:::1;::::0;3389:1;;3352:40:::1;3420:1;3403:19:::0;;-1:-1:-1;;;;;;3403:19:0::1;::::0;;3282:148::o;8144:88::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;4339:13:::1;4282:2;4339;:13;:::i;:::-;4331:21;::::0;:5:::1;:21;:::i;:::-;8198:11;:26:::0;8144:88::o;7789:113::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;7844:6:::1;:13:::0;;-1:-1:-1;;;;7844:13:0::1;-1:-1:-1::0;;;7844:13:0::1;::::0;;7882:12:::1;7868:11;:26:::0;7789:113::o;8344:227::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;8453:2:::1;8440:9;:15;;:35;;;;;8473:2;8459:10;:16;;8440:35;8432:71;;;::::0;-1:-1:-1;;;8432:71:0;;7898:2:1;8432:71:0::1;::::0;::::1;7880:21:1::0;7937:2;7917:18;;;7910:30;7976:25;7956:18;;;7949:53;8019:18;;8432:71:0::1;7696:347:1::0;8432:71:0::1;8514:6;:18:::0;;;;8543:7:::1;:20:::0;8344:227::o;7910:226::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;8012:9:::1;8008:121;8031:8;:15;8027:1;:19;8008:121;;;8110:7;8070:24;:37;8095:8;8104:1;8095:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;8070:37:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;8070:37:0;:47;;-1:-1:-1;;8070:47:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8048:3;::::1;::::0;::::1;:::i;:::-;;;;8008:121;;;;7910:226:::0;;:::o;6683:165::-;6760:4;6776:42;1632:10;6800:9;6811:6;6776:9;:42::i;11146:172::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11231:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;;;;:29;;-1:-1:-1;;11231:29:0::1;::::0;::::1;;::::0;;::::1;::::0;;;11278:32;;1302:41:1;;;11278:32:0::1;::::0;1275:18:1;11278:32:0::1;;;;;;;11146:172:::0;;:::o;10970:168::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;11050:13:::1;:30:::0;;;11098:32:::1;::::0;11066:14;;11098:32:::1;::::0;;;::::1;10970:168:::0;:::o;2928:109::-;2841:6;;-1:-1:-1;;;;;2841:6:0;1632:10;2841:22;2833:67;;;;-1:-1:-1;;;2833:67:0;;;;;;;:::i;:::-;3001:28:::1;3020:8;3001:18;:28::i;:::-;2928:109:::0;:::o;7446:335::-;-1:-1:-1;;;;;7539:19:0;;7531:68;;;;-1:-1:-1;;;7531:68:0;;8522:2:1;7531: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;;7531:68:0;8320:400:1;7531:68:0;-1:-1:-1;;;;;7618:21:0;;7610:68;;;;-1:-1:-1;;;7610:68:0;;8927:2:1;7610: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;;7610:68:0;8725:398:1;7610:68:0;-1:-1:-1;;;;;7689:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7741:32;;1500:25:1;;;7741:32:0;;1473:18:1;7741:32:0;;;;;;;7446:335;;;:::o;9317:1129::-;-1:-1:-1;;;;;9405:18:0;;9397:68;;;;-1:-1:-1;;;9397:68:0;;9330:2:1;9397: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;;9397:68:0;9128:401:1;9397:68:0;-1:-1:-1;;;;;9482:30:0;;;;;;:24;:30;;;;;;;;;:62;;-1:-1:-1;;;;;;9516:28:0;;;;;;:24;:28;;;;;;;;9482:62;9478:918;;;9568:1;9561:4;:8;9478:918;;;9610:6;;-1:-1:-1;;;9610:6:0;;;;9602:35;;;;-1:-1:-1;;;9602:35:0;;9736:2:1;9602:35:0;;;9718:21:1;9775:2;9755:18;;;9748:30;-1:-1:-1;;;9794:18:1;;;9787:46;9850:18;;9602:35:0;9534:340:1;9602:35:0;9670:11;;9660:6;:21;;9652:59;;;;-1:-1:-1;;;9652:59:0;;10081:2:1;9652:59:0;;;10063:21:1;10120:2;10100:18;;;10093:30;10159:27;10139:18;;;10132:55;10204:18;;9652:59:0;9879:349:1;9652:59:0;9759:10;;9745:11;;:24;;;;:::i;:::-;9730:12;:39;9726:659;;;9777:2;9772:4;:7;9726:659;;;9818:13;;-1:-1:-1;;;;;9818:13:0;;;9810:21;;;;9806:564;;9863:6;;9856:4;:13;9806:564;;;9905:13;;-1:-1:-1;;;;;9905:13:0;;;9899:19;;;;9895:475;;9984:4;9943:20;6650:17;;;:8;:17;;;;;;4402:13;4282:2;4402;:13;:::i;:::-;4394:21;;:5;:21;:::i;:::-;10017:12;:22;10013:244;;;4486:13;4282:2;4486;:13;:::i;:::-;4477:22;;:6;:22;:::i;:::-;10072:12;:22;10068:109;;;4486:13;4282:2;4486;:13;:::i;:::-;4477:22;;:6;:22;:::i;:::-;10127;;10068:109;10203:30;10220:12;10203:16;:30::i;:::-;-1:-1:-1;10286:7:0;;10279:4;:14;9895:475;;;10349:1;10342:4;:8;9895:475;10406:32;10421:4;10427:2;10431:6;10406:14;:32::i;3045:229::-;-1:-1:-1;;;;;3119:22:0;;3111:73;;;;-1:-1:-1;;;3111:73:0;;10565:2:1;3111: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;;3111:73:0;10363:402:1;3111:73:0;3221:6;;;3200:38;;-1:-1:-1;;;;;3200:38:0;;;;3221:6;;;3200:38;;;3249:6;:17;;-1:-1:-1;;;;;;3249:17:0;-1:-1:-1;;;;;3249:17:0;;;;;;;;;;3045:229::o;10454:473::-;10544:16;;;10558:1;10544:16;;;;;;;;10520:21;;10544:16;;;;;;;;;;-1:-1:-1;10544:16:0;10520:40;;10589:4;10571;10576:1;10571:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10571:23:0;;;:7;;;;;;;;;;:23;;;;10615:15;;:22;;;-1:-1:-1;;;10615:22:0;;;;:15;;;;;:20;;:22;;;;;10571:7;;10615:22;;;;;:15;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10605:4;10610:1;10605:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10605:32:0;;;:7;;;;;;;;;:32;10680:15;;10648:62;;10665:4;;10680:15;10698:11;10648:8;:62::i;:::-;10721:15;;10863;;10721:198;;-1:-1:-1;;;10721:198:0;;-1:-1:-1;;;;;10721:15:0;;;;:66;;:198;;10802:11;;10721:15;;10844:4;;10863:15;;;10893;;10721:198;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10509:418;10454:473;:::o;8732:577::-;8817:17;8855:3;8847:4;;8838:6;:13;;;;:::i;:::-;8837:21;;;;:::i;:::-;8817:41;-1:-1:-1;8869:22:0;8894:18;8817:41;8894:6;:18;:::i;:::-;-1:-1:-1;;;;;8942:14:0;;;;;;:8;:14;;;;;;8869:43;;-1:-1:-1;8942:23:0;;8959:6;;8942:23;:::i;:::-;-1:-1:-1;;;;;8925:14:0;;;;;;;:8;:14;;;;;;:40;;;;8991:12;;;;;;;:29;;9006:14;;8991:29;:::i;:::-;-1:-1:-1;;;;;8976:12:0;;;;;;:8;:12;;;;;;:44;;;;9074:4;9057:23;;;;:35;;9083:9;;9057:35;:::i;:::-;9048:4;9031:23;;;;:8;:23;;;;;;;;:61;;;;-1:-1:-1;;;;;9141:15:0;;;;:11;:15;;;;;;9137:113;;9197:13;;-1:-1:-1;;;;;9181:12:0;;;;;;:8;:12;;;;;;:29;;9173:65;;;;-1:-1:-1;;;9173:65:0;;12443:2:1;9173:65:0;;;12425:21:1;12482:2;12462:18;;;12455:30;12521:25;12501:18;;;12494:53;12564:18;;9173:65:0;12241:347:1;9173:65:0;9282:2;-1:-1:-1;;;;;9267:34:0;9276:4;-1:-1:-1;;;;;9267:34:0;;9286:14;9267:34;;;;1500:25:1;;1488:2;1473:18;;1354:177;9267:34:0;;;;;;;;8806:503;;8732: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://a0e16c7fc8701a777698884479fac79883e8441f2500ad8f1523f3444a4351d4
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.