ETH Price: $3,439.06 (+5.64%)
Gas: 12 Gwei

Token

HG (HG)
 

Overview

Max Total Supply

21,000,000 HG

Holders

233

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
Uniswap V2: HG 5
Balance
12,048,748.106093457501095751 HG

Value
$0.00
0xc0f375f89b4c8dd1b9773f8444eac14c10d54052
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:
ERC20

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

interface IERC20 {
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    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);
}

interface IUniswapRouter {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);

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

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

abstract contract Ownable {
    address internal _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = msg.sender;
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == msg.sender, "you are not owner");
        _;
    }

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

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "new is 0");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract ERC20 is IERC20, Ownable {
    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    address public fundAddress;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    mapping(address => bool) public _isExcludeFromFee;
    
    uint256 private _totalSupply;

    IUniswapRouter public _uniswapRouter;

    mapping(address => bool) public isMarketPair;
    bool private inSwap;

    uint256 private constant MAX = ~uint256(0);

    uint256 public _buyFundFee = 1;
    uint256 public _sellFundFee = 1;

    address public _uniswapPair;

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor (){
        _name = "HG";
        _symbol = "HG";
        _decimals = 18;
        uint256 Supply = 21000000;
        
        IUniswapRouter swapRouter = IUniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

        _uniswapRouter = swapRouter;
        _allowances[address(this)][address(swapRouter)] = MAX;

        IUniswapFactory swapFactory = IUniswapFactory(swapRouter.factory());
        address swapPair = swapFactory.createPair(address(this), swapRouter.WETH());
        _uniswapPair = swapPair;
        isMarketPair[swapPair] = true;

        _totalSupply = Supply * 10 ** _decimals;
        require(_totalSupply < ~uint112(0),"high decimals");

        address receiveAddr = msg.sender;
        _balances[receiveAddr] = _totalSupply;
        emit Transfer(address(0), receiveAddr, _totalSupply);

        fundAddress = receiveAddr;

        _isExcludeFromFee[address(this)] = true;
        _isExcludeFromFee[address(swapRouter)] = true;
        _isExcludeFromFee[msg.sender] = true;
        _isExcludeFromFee[receiveAddr] = true;
        _isExcludeFromFee[fundAddress] = true;
    }

    function setFundAddr(address newAddr) public onlyOwner{
        fundAddress = newAddr;
    }

    function symbol() external view override returns (string memory) {
        return _symbol;
    }

    function name() external view override returns (string memory) {
        return _name;
    }

    function decimals() external view override returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

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

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(msg.sender, 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(msg.sender, spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        if (_allowances[sender][msg.sender] != MAX) {
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender] - amount;
        }
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    mapping(address => bool) public _observe;
    function addObserve(address account) public onlyOwner{
        _observe[account] = true;
    }

    function delObserve(address account) public onlyOwner{
        _observe[account] = false;
    }

    bool public antiBotEnable = true;
    function setAntiBotEnable(bool status) public onlyOwner() {
        antiBotEnable = status;
    }

    uint256 public checkBClistedBlockNumber = 2;
    function setBCNumber(uint256 newValue) public onlyOwner{
        checkBClistedBlockNumber = newValue;
    }

    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        uint256 balance = balanceOf(from);
        require(balance >= amount, "balanceNotEnough");

        if (antiBotEnable){
            if (tradingBlock + checkBClistedBlockNumber <= block.number){
                require(!_observe[from], 'u r bot');
            }
        }else{
            require(!_observe[from], 'u r bot');
        }

        bool takeFee;
        bool sellFlag;

        if (isMarketPair[to] && !inSwap && !_isExcludeFromFee[from] && !_isExcludeFromFee[to]) {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (contractTokenBalance > 0) {
                uint256 numTokensSellToFund = amount;
                numTokensSellToFund = numTokensSellToFund > contractTokenBalance ? 
                                                            contractTokenBalance:numTokensSellToFund;
                swapTokenForETH(numTokensSellToFund);
            }
        }

        if (!_isExcludeFromFee[from] && !_isExcludeFromFee[to] && !inSwap) {
            require(tradingBlock > 0,"!trading");
            takeFee = true;
            if (from == _uniswapPair) {
                if(tradingBlock + killNum > block.number) {
                    _observe[to] = true;
                }
            }
        }

        if (isMarketPair[to]) { sellFlag = true; }

        _transferToken(from, to, amount, takeFee, sellFlag);
    }

    uint256 public tradingBlock;
    uint256 public killNum;
    function enableTrading(uint256 kb) public onlyOwner{
        require(tradingBlock == 0,"already trading");
        tradingBlock = block.number;
        killNum = kb;
    }

    function closeTrading() public onlyOwner{
        tradingBlock = 0;
    }

    function _transferToken(
        address sender,
        address recipient,
        uint256 tAmount,
        bool takeFee,
        bool sellFlag
    ) private {
        _balances[sender] = _balances[sender] - tAmount;
        uint256 feeAmount;

        if (takeFee) {
            
            uint256 taxFee;

            if (sellFlag) {
                taxFee = _sellFundFee;
            } else {
                taxFee = _buyFundFee;
            }
            uint256 swapAmount = tAmount * taxFee / 100;
            if (swapAmount > 0) {
                feeAmount += swapAmount;
                _balances[address(this)] = _balances[address(this)] + swapAmount;
                emit Transfer(sender, address(this), swapAmount);
            }
        }

        _balances[recipient] = _balances[recipient] + (tAmount - feeAmount);
        emit Transfer(sender, recipient, tAmount - feeAmount);

    }

    function swapTokenForETH(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = _uniswapRouter.WETH();
        try _uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(fundAddress),
            block.timestamp
        ) {} catch {}

    }

    function setIsExcludeFromFees(address account, bool value) public onlyOwner{
        _isExcludeFromFee[account] = value;
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_buyFundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludeFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_observe","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFundFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapRouter","outputs":[{"internalType":"contract IUniswapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addObserve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"antiBotEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"checkBClistedBlockNumber","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"closeTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"delObserve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"kb","type":"uint256"}],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"fundAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"killNum","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"setAntiBotEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"setBCNumber","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddr","type":"address"}],"name":"setFundAddr","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setIsExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]

60806040526001600c819055600d8190556010805460ff1916909117905560026011553480156200002f57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060408051808201909152600280825261484760f01b60209092019182526200009c916004916200041b565b5060408051808201909152600280825261484760f01b6020909201918252620000c8916005916200041b565b506006805460ff19166012179055600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915530600090815260026020908152604080832084845282528083206000199055805163c45a015560e01b815290516301406f40949392849263c45a01559260048083019392829003018186803b1580156200015857600080fd5b505afa1580156200016d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001939190620004c1565b90506000816001600160a01b031663c9c6539630856001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620001e157600080fd5b505afa158015620001f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021c9190620004c1565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b1580156200026557600080fd5b505af11580156200027a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a09190620004c1565b600e80546001600160a01b0319166001600160a01b0383169081179091556000908152600a60208190526040909120805460ff19166001179055600654919250620002ef9160ff16906200053a565b620002fb9085620005fb565b60088190556001600160701b03116200034a5760405162461bcd60e51b815260206004820152600d60248201526c6869676820646563696d616c7360981b604482015260640160405180910390fd5b60085433600081815260016020908152604080832085905551938452919283927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3600380546001600160a01b0319166001600160a01b03928316908117825530600090815260076020526040808220805460ff199081166001908117909255988616835281832080548a168217905533835281832080548a168217905592825280822080548916841790559254909316835291208054909416179092555062000670915050565b82805462000429906200061d565b90600052602060002090601f0160209004810192826200044d576000855562000498565b82601f106200046857805160ff191683800117855562000498565b8280016001018555821562000498579182015b82811115620004985782518255916020019190600101906200047b565b50620004a6929150620004aa565b5090565b5b80821115620004a65760008155600101620004ab565b600060208284031215620004d3578081fd5b81516001600160a01b0381168114620004ea578182fd5b9392505050565b600181815b80851115620005325781600019048211156200051657620005166200065a565b808516156200052457918102915b93841c9390800290620004f6565b509250929050565b6000620004ea60ff8416836000826200055657506001620005f5565b816200056557506000620005f5565b81600181146200057e57600281146200058957620005a9565b6001915050620005f5565b60ff8411156200059d576200059d6200065a565b50506001821b620005f5565b5060208310610133831016604e8410600b8410161715620005ce575081810a620005f5565b620005da8383620004f1565b8060001904821115620005f157620005f16200065a565b0290505b92915050565b60008160001904831182151516156200061857620006186200065a565b500290565b600181811c908216806200063257607f821691505b602082108114156200065457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6114f080620006806000396000f3fe6080604052600436106101e75760003560e01c8063715018a611610102578063bee6a9cd11610095578063dd62ed3e11610064578063dd62ed3e14610598578063e82bef29146105de578063f0ab32ec146105fe578063f2fde38b1461061e57600080fd5b8063bee6a9cd14610532578063ca8b54d714610552578063cd51e6d41461056c578063ce0192f91461058257600080fd5b80638da5cb5b116100d15780638da5cb5b146104ca57806395d89b41146104e857806397a98955146104fd578063a9059cbb1461051257600080fd5b8063715018a61461045557806382aa7c681461046a57806382b160931461048a578063863587cd146104aa57600080fd5b80633bfe62ca1161017a578063520a644411610149578063520a6444146103c957806365b61b77146103df5780636f39cfcd146103ff57806370a082311461041f57600080fd5b80633bfe62ca1461031b5780633ecad271146103315780634b1abf6f146103615780634bf28fd01461039157600080fd5b806323b872dd116101b657806323b872dd146102875780632741a251146102a7578063313ce567146102c957806336b2e027146102eb57600080fd5b806306fdde03146101f35780630923909f1461021e578063095ea7b31461024257806318160ddd1461027257600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861063e565b60405161021591906112f5565b60405180910390f35b34801561022a57600080fd5b5061023460135481565b604051908152602001610215565b34801561024e57600080fd5b5061026261025d366004611298565b6106d0565b6040519015158152602001610215565b34801561027e57600080fd5b50600854610234565b34801561029357600080fd5b506102626102a2366004611224565b6106e6565b3480156102b357600080fd5b506102c76102c23660046111ad565b61077d565b005b3480156102d557600080fd5b5060065460405160ff9091168152602001610215565b3480156102f757600080fd5b506102626103063660046111ad565b60076020526000908152604090205460ff1681565b34801561032757600080fd5b50610234600d5481565b34801561033d57600080fd5b5061026261034c3660046111ad565b600a6020526000908152604090205460ff1681565b34801561036d57600080fd5b5061026261037c3660046111ad565b600f6020526000908152604090205460ff1681565b34801561039d57600080fd5b50600e546103b1906001600160a01b031681565b6040516001600160a01b039091168152602001610215565b3480156103d557600080fd5b5061023460115481565b3480156103eb57600080fd5b506009546103b1906001600160a01b031681565b34801561040b57600080fd5b506102c761041a3660046111ad565b6107d1565b34801561042b57600080fd5b5061023461043a3660046111ad565b6001600160a01b031660009081526001602052604090205490565b34801561046157600080fd5b506102c761081d565b34801561047657600080fd5b506102c76104853660046112dd565b610891565b34801561049657600080fd5b506102c76104a53660046112c3565b610906565b3480156104b657600080fd5b506102c76104c5366004611264565b610943565b3480156104d657600080fd5b506000546001600160a01b03166103b1565b3480156104f457600080fd5b50610208610998565b34801561050957600080fd5b506102c76109a7565b34801561051e57600080fd5b5061026261052d366004611298565b6109d8565b34801561053e57600080fd5b506102c761054d3660046112dd565b6109e5565b34801561055e57600080fd5b506010546102629060ff1681565b34801561057857600080fd5b5061023460125481565b34801561058e57600080fd5b50610234600c5481565b3480156105a457600080fd5b506102346105b33660046111ec565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105ea57600080fd5b506003546103b1906001600160a01b031681565b34801561060a57600080fd5b506102c76106193660046111ad565b610a14565b34801561062a57600080fd5b506102c76106393660046111ad565b610a62565b60606004805461064d90611451565b80601f016020809104026020016040519081016040528092919081815260200182805461067990611451565b80156106c65780601f1061069b576101008083540402835291602001916106c6565b820191906000526020600020905b8154815290600101906020018083116106a957829003601f168201915b5050505050905090565b60006106dd338484610b28565b50600192915050565b60006106f3848484610b89565b6001600160a01b038416600090815260026020908152604080832033845290915290205460001914610773576001600160a01b038416600090815260026020908152604080832033845290915290205461074e90839061143a565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146107b05760405162461bcd60e51b81526004016107a790611348565b60405180910390fd5b6001600160a01b03166000908152600f60205260409020805460ff19169055565b6000546001600160a01b031633146107fb5760405162461bcd60e51b81526004016107a790611348565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146108475760405162461bcd60e51b81526004016107a790611348565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108bb5760405162461bcd60e51b81526004016107a790611348565b601254156108fd5760405162461bcd60e51b815260206004820152600f60248201526e616c72656164792074726164696e6760881b60448201526064016107a7565b43601255601355565b6000546001600160a01b031633146109305760405162461bcd60e51b81526004016107a790611348565b6010805460ff1916911515919091179055565b6000546001600160a01b0316331461096d5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b60606005805461064d90611451565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016107a790611348565b6000601255565b60006106dd338484610b89565b6000546001600160a01b03163314610a0f5760405162461bcd60e51b81526004016107a790611348565b601155565b6000546001600160a01b03163314610a3e5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b03166000908152600f60205260409020805460ff19166001179055565b6000546001600160a01b03163314610a8c5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b038116610acd5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016107a7565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610be55760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016107a7565b60105460ff1615610c5e5743601154601254610c0191906113e3565b11610c59576001600160a01b0384166000908152600f602052604090205460ff1615610c595760405162461bcd60e51b81526020600482015260076024820152661d481c88189bdd60ca1b60448201526064016107a7565b610cb1565b6001600160a01b0384166000908152600f602052604090205460ff1615610cb15760405162461bcd60e51b81526020600482015260076024820152661d481c88189bdd60ca1b60448201526064016107a7565b6001600160a01b0383166000908152600a6020526040812054819060ff168015610cde5750600b5460ff16155b8015610d0357506001600160a01b03861660009081526007602052604090205460ff16155b8015610d2857506001600160a01b03851660009081526007602052604090205460ff16155b15610d6257306000908152600160205260409020548015610d605784818111610d515780610d53565b815b9050610d5e81610e84565b505b505b6001600160a01b03861660009081526007602052604090205460ff16158015610da457506001600160a01b03851660009081526007602052604090205460ff16155b8015610db35750600b5460ff16155b15610e4a57600060125411610df55760405162461bcd60e51b81526020600482015260086024820152672174726164696e6760c01b60448201526064016107a7565b600e54600192506001600160a01b0387811691161415610e4a5743601354601254610e2091906113e3565b1115610e4a576001600160a01b0385166000908152600f60205260409020805460ff191660011790555b6001600160a01b0385166000908152600a602052604090205460ff1615610e6f575060015b610e7c8686868585611007565b505050505050565b600b805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ed457634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610f2857600080fd5b505afa158015610f3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6091906111d0565b81600181518110610f8157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260095460035460405163791ac94760e01b81529183169263791ac94792610fcd9287926000928892909116904290600401611373565b600060405180830381600087803b158015610fe757600080fd5b505af1925050508015610ff8575060015b505050600b805460ff19169055565b6001600160a01b03851660009081526001602052604090205461102b90849061143a565b6001600160a01b0386166000908152600160205260408120919091558215611108576000821561105e5750600d54611063565b50600c545b60006064611071838861141b565b61107b91906113fb565b905080156111055761108d81846113e3565b306000908152600160205260409020549093506110ab9082906113e3565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110fc9085815260200190565b60405180910390a35b50505b611112818561143a565b6001600160a01b03861660009081526001602052604090205461113591906113e3565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61117f848861143a565b60405190815260200160405180910390a3505050505050565b803580151581146111a857600080fd5b919050565b6000602082840312156111be578081fd5b81356111c9816114a2565b9392505050565b6000602082840312156111e1578081fd5b81516111c9816114a2565b600080604083850312156111fe578081fd5b8235611209816114a2565b91506020830135611219816114a2565b809150509250929050565b600080600060608486031215611238578081fd5b8335611243816114a2565b92506020840135611253816114a2565b929592945050506040919091013590565b60008060408385031215611276578182fd5b8235611281816114a2565b915061128f60208401611198565b90509250929050565b600080604083850312156112aa578182fd5b82356112b5816114a2565b946020939093013593505050565b6000602082840312156112d4578081fd5b6111c982611198565b6000602082840312156112ee578081fd5b5035919050565b6000602080835283518082850152825b8181101561132157858101830151858201604001528201611305565b818111156113325783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b818110156113c25784516001600160a01b03168352938301939183019160010161139d565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156113f6576113f661148c565b500190565b60008261141657634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156114355761143561148c565b500290565b60008282101561144c5761144c61148c565b500390565b600181811c9082168061146557607f821691505b6020821081141561148657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b03811681146114b757600080fd5b5056fea2646970667358221220a4fedeb4b9204287a94153bec256958642a433b01c881b09a4758cc9d3f9057464736f6c63430008040033

Deployed Bytecode

0x6080604052600436106101e75760003560e01c8063715018a611610102578063bee6a9cd11610095578063dd62ed3e11610064578063dd62ed3e14610598578063e82bef29146105de578063f0ab32ec146105fe578063f2fde38b1461061e57600080fd5b8063bee6a9cd14610532578063ca8b54d714610552578063cd51e6d41461056c578063ce0192f91461058257600080fd5b80638da5cb5b116100d15780638da5cb5b146104ca57806395d89b41146104e857806397a98955146104fd578063a9059cbb1461051257600080fd5b8063715018a61461045557806382aa7c681461046a57806382b160931461048a578063863587cd146104aa57600080fd5b80633bfe62ca1161017a578063520a644411610149578063520a6444146103c957806365b61b77146103df5780636f39cfcd146103ff57806370a082311461041f57600080fd5b80633bfe62ca1461031b5780633ecad271146103315780634b1abf6f146103615780634bf28fd01461039157600080fd5b806323b872dd116101b657806323b872dd146102875780632741a251146102a7578063313ce567146102c957806336b2e027146102eb57600080fd5b806306fdde03146101f35780630923909f1461021e578063095ea7b31461024257806318160ddd1461027257600080fd5b366101ee57005b600080fd5b3480156101ff57600080fd5b5061020861063e565b60405161021591906112f5565b60405180910390f35b34801561022a57600080fd5b5061023460135481565b604051908152602001610215565b34801561024e57600080fd5b5061026261025d366004611298565b6106d0565b6040519015158152602001610215565b34801561027e57600080fd5b50600854610234565b34801561029357600080fd5b506102626102a2366004611224565b6106e6565b3480156102b357600080fd5b506102c76102c23660046111ad565b61077d565b005b3480156102d557600080fd5b5060065460405160ff9091168152602001610215565b3480156102f757600080fd5b506102626103063660046111ad565b60076020526000908152604090205460ff1681565b34801561032757600080fd5b50610234600d5481565b34801561033d57600080fd5b5061026261034c3660046111ad565b600a6020526000908152604090205460ff1681565b34801561036d57600080fd5b5061026261037c3660046111ad565b600f6020526000908152604090205460ff1681565b34801561039d57600080fd5b50600e546103b1906001600160a01b031681565b6040516001600160a01b039091168152602001610215565b3480156103d557600080fd5b5061023460115481565b3480156103eb57600080fd5b506009546103b1906001600160a01b031681565b34801561040b57600080fd5b506102c761041a3660046111ad565b6107d1565b34801561042b57600080fd5b5061023461043a3660046111ad565b6001600160a01b031660009081526001602052604090205490565b34801561046157600080fd5b506102c761081d565b34801561047657600080fd5b506102c76104853660046112dd565b610891565b34801561049657600080fd5b506102c76104a53660046112c3565b610906565b3480156104b657600080fd5b506102c76104c5366004611264565b610943565b3480156104d657600080fd5b506000546001600160a01b03166103b1565b3480156104f457600080fd5b50610208610998565b34801561050957600080fd5b506102c76109a7565b34801561051e57600080fd5b5061026261052d366004611298565b6109d8565b34801561053e57600080fd5b506102c761054d3660046112dd565b6109e5565b34801561055e57600080fd5b506010546102629060ff1681565b34801561057857600080fd5b5061023460125481565b34801561058e57600080fd5b50610234600c5481565b3480156105a457600080fd5b506102346105b33660046111ec565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156105ea57600080fd5b506003546103b1906001600160a01b031681565b34801561060a57600080fd5b506102c76106193660046111ad565b610a14565b34801561062a57600080fd5b506102c76106393660046111ad565b610a62565b60606004805461064d90611451565b80601f016020809104026020016040519081016040528092919081815260200182805461067990611451565b80156106c65780601f1061069b576101008083540402835291602001916106c6565b820191906000526020600020905b8154815290600101906020018083116106a957829003601f168201915b5050505050905090565b60006106dd338484610b28565b50600192915050565b60006106f3848484610b89565b6001600160a01b038416600090815260026020908152604080832033845290915290205460001914610773576001600160a01b038416600090815260026020908152604080832033845290915290205461074e90839061143a565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b5060019392505050565b6000546001600160a01b031633146107b05760405162461bcd60e51b81526004016107a790611348565b60405180910390fd5b6001600160a01b03166000908152600f60205260409020805460ff19169055565b6000546001600160a01b031633146107fb5760405162461bcd60e51b81526004016107a790611348565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146108475760405162461bcd60e51b81526004016107a790611348565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146108bb5760405162461bcd60e51b81526004016107a790611348565b601254156108fd5760405162461bcd60e51b815260206004820152600f60248201526e616c72656164792074726164696e6760881b60448201526064016107a7565b43601255601355565b6000546001600160a01b031633146109305760405162461bcd60e51b81526004016107a790611348565b6010805460ff1916911515919091179055565b6000546001600160a01b0316331461096d5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b03919091166000908152600760205260409020805460ff1916911515919091179055565b60606005805461064d90611451565b6000546001600160a01b031633146109d15760405162461bcd60e51b81526004016107a790611348565b6000601255565b60006106dd338484610b89565b6000546001600160a01b03163314610a0f5760405162461bcd60e51b81526004016107a790611348565b601155565b6000546001600160a01b03163314610a3e5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b03166000908152600f60205260409020805460ff19166001179055565b6000546001600160a01b03163314610a8c5760405162461bcd60e51b81526004016107a790611348565b6001600160a01b038116610acd5760405162461bcd60e51b815260206004820152600860248201526706e657720697320360c41b60448201526064016107a7565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526001602052604090205481811015610be55760405162461bcd60e51b815260206004820152601060248201526f0c4c2d8c2dcc6ca9cdee88adcdeeaced60831b60448201526064016107a7565b60105460ff1615610c5e5743601154601254610c0191906113e3565b11610c59576001600160a01b0384166000908152600f602052604090205460ff1615610c595760405162461bcd60e51b81526020600482015260076024820152661d481c88189bdd60ca1b60448201526064016107a7565b610cb1565b6001600160a01b0384166000908152600f602052604090205460ff1615610cb15760405162461bcd60e51b81526020600482015260076024820152661d481c88189bdd60ca1b60448201526064016107a7565b6001600160a01b0383166000908152600a6020526040812054819060ff168015610cde5750600b5460ff16155b8015610d0357506001600160a01b03861660009081526007602052604090205460ff16155b8015610d2857506001600160a01b03851660009081526007602052604090205460ff16155b15610d6257306000908152600160205260409020548015610d605784818111610d515780610d53565b815b9050610d5e81610e84565b505b505b6001600160a01b03861660009081526007602052604090205460ff16158015610da457506001600160a01b03851660009081526007602052604090205460ff16155b8015610db35750600b5460ff16155b15610e4a57600060125411610df55760405162461bcd60e51b81526020600482015260086024820152672174726164696e6760c01b60448201526064016107a7565b600e54600192506001600160a01b0387811691161415610e4a5743601354601254610e2091906113e3565b1115610e4a576001600160a01b0385166000908152600f60205260409020805460ff191660011790555b6001600160a01b0385166000908152600a602052604090205460ff1615610e6f575060015b610e7c8686868585611007565b505050505050565b600b805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ed457634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b158015610f2857600080fd5b505afa158015610f3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6091906111d0565b81600181518110610f8157634e487b7160e01b600052603260045260246000fd5b6001600160a01b03928316602091820292909201015260095460035460405163791ac94760e01b81529183169263791ac94792610fcd9287926000928892909116904290600401611373565b600060405180830381600087803b158015610fe757600080fd5b505af1925050508015610ff8575060015b505050600b805460ff19169055565b6001600160a01b03851660009081526001602052604090205461102b90849061143a565b6001600160a01b0386166000908152600160205260408120919091558215611108576000821561105e5750600d54611063565b50600c545b60006064611071838861141b565b61107b91906113fb565b905080156111055761108d81846113e3565b306000908152600160205260409020549093506110ab9082906113e3565b30600081815260016020526040908190209290925590516001600160a01b038a16907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110fc9085815260200190565b60405180910390a35b50505b611112818561143a565b6001600160a01b03861660009081526001602052604090205461113591906113e3565b6001600160a01b0380871660008181526001602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61117f848861143a565b60405190815260200160405180910390a3505050505050565b803580151581146111a857600080fd5b919050565b6000602082840312156111be578081fd5b81356111c9816114a2565b9392505050565b6000602082840312156111e1578081fd5b81516111c9816114a2565b600080604083850312156111fe578081fd5b8235611209816114a2565b91506020830135611219816114a2565b809150509250929050565b600080600060608486031215611238578081fd5b8335611243816114a2565b92506020840135611253816114a2565b929592945050506040919091013590565b60008060408385031215611276578182fd5b8235611281816114a2565b915061128f60208401611198565b90509250929050565b600080604083850312156112aa578182fd5b82356112b5816114a2565b946020939093013593505050565b6000602082840312156112d4578081fd5b6111c982611198565b6000602082840312156112ee578081fd5b5035919050565b6000602080835283518082850152825b8181101561132157858101830151858201604001528201611305565b818111156113325783604083870101525b50601f01601f1916929092016040019392505050565b6020808252601190820152703cb7ba9030b932903737ba1037bbb732b960791b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c0860191508289019350845b818110156113c25784516001600160a01b03168352938301939183019160010161139d565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156113f6576113f661148c565b500190565b60008261141657634e487b7160e01b81526012600452602481fd5b500490565b60008160001904831182151516156114355761143561148c565b500290565b60008282101561144c5761144c61148c565b500390565b600181811c9082168061146557607f821691505b6020821081141561148657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b03811681146114b757600080fd5b5056fea2646970667358221220a4fedeb4b9204287a94153bec256958642a433b01c881b09a4758cc9d3f9057464736f6c63430008040033

Deployed Bytecode Sourcemap

2293:7565:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4427:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8016:22;;;;;;;;;;;;;;;;;;;6057:25:1;;;6045:2;6030:18;8016:22:0;6012:76:1;5190:159:0;;;;;;;;;;-1:-1:-1;5190:159:0;;;;;:::i;:::-;;:::i;:::-;;;3004:14:1;;2997:22;2979:41;;2967:2;2952:18;5190:159:0;2934:92:1;4631:100:0;;;;;;;;;;-1:-1:-1;4711:12:0;;4631:100;;5357:336;;;;;;;;;;-1:-1:-1;5357:336:0;;;;;:::i;:::-;;:::i;6037:97::-;;;;;;;;;;-1:-1:-1;6037:97:0;;;;;:::i;:::-;;:::i;:::-;;4529:94;;;;;;;;;;-1:-1:-1;4606:9:0;;4529:94;;4606:9;;;;7223:36:1;;7211:2;7196:18;4529:94:0;7178:87:1;2585:49:0;;;;;;;;;;-1:-1:-1;2585:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2896:31;;;;;;;;;;;;;;;;2729:44;;;;;;;;;;-1:-1:-1;2729:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5886:40;;;;;;;;;;-1:-1:-1;5886:40:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2936:27;;;;;;;;;;-1:-1:-1;2936:27:0;;;;-1:-1:-1;;;;;2936:27:0;;;;;;-1:-1:-1;;;;;2795:32:1;;;2777:51;;2765:2;2750:18;2936:27:0;2732:102:1;6288:43:0;;;;;;;;;;;;;;;;2684:36;;;;;;;;;;-1:-1:-1;2684:36:0;;;;-1:-1:-1;;;;;2684:36:0;;;4219:94;;;;;;;;;;-1:-1:-1;4219:94:0;;;;;:::i;:::-;;:::i;4739:119::-;;;;;;;;;;-1:-1:-1;4739:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;4832:18:0;4805:7;4832:18;;;:9;:18;;;;;;;4739:119;1916:148;;;;;;;;;;;;;:::i;8045:175::-;;;;;;;;;;-1:-1:-1;8045:175:0;;;;;:::i;:::-;;:::i;6181:99::-;;;;;;;;;;-1:-1:-1;6181:99:0;;;;;:::i;:::-;;:::i;9690:128::-;;;;;;;;;;-1:-1:-1;9690:128:0;;;;;:::i;:::-;;:::i;1719:79::-;;;;;;;;;;-1:-1:-1;1757:7:0;1784:6;-1:-1:-1;;;;;1784:6:0;1719:79;;4321:98;;;;;;;;;;;;;:::i;8228:75::-;;;;;;;;;;;;;:::i;4866:165::-;;;;;;;;;;-1:-1:-1;4866:165:0;;;;;:::i;:::-;;:::i;6338:109::-;;;;;;;;;;-1:-1:-1;6338:109:0;;;;;:::i;:::-;;:::i;6142:32::-;;;;;;;;;;-1:-1:-1;6142:32:0;;;;;;;;7982:27;;;;;;;;;;;;;;;;2859:30;;;;;;;;;;;;;;;;5039:143;;;;;;;;;;-1:-1:-1;5039:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5147:18:0;;;5120:7;5147:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5039:143;2462:26;;;;;;;;;;-1:-1:-1;2462:26:0;;;;-1:-1:-1;;;;;2462:26:0;;;5933:96;;;;;;;;;;-1:-1:-1;5933:96:0;;;;;:::i;:::-;;:::i;2072:214::-;;;;;;;;;;-1:-1:-1;2072:214:0;;;;;:::i;:::-;;:::i;4427:94::-;4475:13;4508:5;4501:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4427:94;:::o;5190:159::-;5265:4;5282:37;5291:10;5303:7;5312:6;5282:8;:37::i;:::-;-1:-1:-1;5337:4:0;5190:159;;;;:::o;5357:336::-;5455:4;5472:36;5482:6;5490:9;5501:6;5472:9;:36::i;:::-;-1:-1:-1;;;;;5523:19:0;;2848:1;5523:19;;;:11;:19;;;;;;;;5543:10;5523:31;;;;;;;;-1:-1:-1;;5523:38:0;5519:145;;-1:-1:-1;;;;;5612:19:0;;;;;;:11;:19;;;;;;;;5632:10;5612:31;;;;;;;;:40;;5646:6;;5612:40;:::i;:::-;-1:-1:-1;;;;;5578:19:0;;;;;;:11;:19;;;;;;;;5598:10;5578:31;;;;;;;:74;5519:145;-1:-1:-1;5681:4:0;5357:336;;;;;:::o;6037:97::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;6101:17:0::1;6121:5;6101:17:::0;;;:8:::1;:17;::::0;;;;:25;;-1:-1:-1;;6101:25:0::1;::::0;;6037:97::o;4219:94::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;4284:11:::1;:21:::0;;-1:-1:-1;;;;;;4284:21:0::1;-1:-1:-1::0;;;;;4284:21:0;;;::::1;::::0;;;::::1;::::0;;4219:94::o;1916:148::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;2023:1:::1;2007:6:::0;;1986:40:::1;::::0;-1:-1:-1;;;;;2007:6:0;;::::1;::::0;1986:40:::1;::::0;2023:1;;1986:40:::1;2054:1;2037:19:::0;;-1:-1:-1;;;;;;2037:19:0::1;::::0;;1916:148::o;8045:175::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;8115:12:::1;::::0;:17;8107:44:::1;;;::::0;-1:-1:-1;;;8107:44:0;;4407:2:1;8107:44:0::1;::::0;::::1;4389:21:1::0;4446:2;4426:18;;;4419:30;-1:-1:-1;;;4465:18:1;;;4458:45;4520:18;;8107:44:0::1;4379:165:1::0;8107:44:0::1;8177:12;8162;:27:::0;8200:7:::1;:12:::0;8045:175::o;6181:99::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;6250:13:::1;:22:::0;;-1:-1:-1;;6250:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6181:99::o;9690:128::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9776:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:34;;-1:-1:-1;;9776:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9690:128::o;4321:98::-;4371:13;4404:7;4397:14;;;;;:::i;8228:75::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;8294:1:::1;8279:12;:16:::0;8228:75::o;4866:165::-;4944:4;4961:40;4971:10;4983:9;4994:6;4961:9;:40::i;6338:109::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;6404:24:::1;:35:::0;6338:109::o;5933:96::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;5997:17:0::1;;::::0;;;:8:::1;:17;::::0;;;;:24;;-1:-1:-1;;5997:24:0::1;6017:4;5997:24;::::0;;5933:96::o;2072:214::-;1846:6;;-1:-1:-1;;;;;1846:6:0;1856:10;1846:20;1838:50;;;;-1:-1:-1;;;1838:50:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2161:22:0;::::1;2153:43;;;::::0;-1:-1:-1;;;2153:43:0;;5431:2:1;2153:43:0::1;::::0;::::1;5413:21:1::0;5470:1;5450:18;;;5443:29;-1:-1:-1;;;5488:18:1;;;5481:38;5536:18;;2153:43:0::1;5403:157:1::0;2153:43:0::1;2233:6;::::0;;2212:38:::1;::::0;-1:-1:-1;;;;;2212:38:0;;::::1;::::0;2233:6;::::1;::::0;2212:38:::1;::::0;::::1;2261:6;:17:::0;;-1:-1:-1;;;;;;2261:17:0::1;-1:-1:-1::0;;;;;2261:17:0;;;::::1;::::0;;;::::1;::::0;;2072:214::o;5701:177::-;-1:-1:-1;;;;;5786:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5838:32;;6057:25:1;;;5838:32:0;;6030:18:1;5838:32:0;;;;;;;5701:177;;;:::o;6455:1519::-;-1:-1:-1;;;;;4832:18:0;;6569:15;4832:18;;;:9;:18;;;;;;6621:17;;;;6613:46;;;;-1:-1:-1;;;6613:46:0;;5086:2:1;6613:46:0;;;5068:21:1;5125:2;5105:18;;;5098:30;-1:-1:-1;;;5144:18:1;;;5137:46;5200:18;;6613:46:0;5058:166:1;6613:46:0;6676:13;;;;6672:240;;;6752:12;6724:24;;6709:12;;:39;;;;:::i;:::-;:55;6705:130;;-1:-1:-1;;;;;6793:14:0;;;;;;:8;:14;;;;;;;;6792:15;6784:35;;;;-1:-1:-1;;;6784:35:0;;4751:2:1;6784:35:0;;;4733:21:1;4790:1;4770:18;;;4763:29;-1:-1:-1;;;4808:18:1;;;4801:37;4855:18;;6784:35:0;4723:156:1;6784:35:0;6672:240;;;-1:-1:-1;;;;;6874:14:0;;;;;;:8;:14;;;;;;;;6873:15;6865:35;;;;-1:-1:-1;;;6865:35:0;;4751:2:1;6865:35:0;;;4733:21:1;4790:1;4770:18;;;4763:29;-1:-1:-1;;;4808:18:1;;;4801:37;4855:18;;6865:35:0;4723:156:1;6865:35:0;-1:-1:-1;;;;;6977:16:0;;6924:12;6977:16;;;:12;:16;;;;;;6924:12;;6977:16;;:27;;;;-1:-1:-1;6998:6:0;;;;6997:7;6977:27;:55;;;;-1:-1:-1;;;;;;7009:23:0;;;;;;:17;:23;;;;;;;;7008:24;6977:55;:81;;;;-1:-1:-1;;;;;;7037:21:0;;;;;;:17;:21;;;;;;;;7036:22;6977:81;6973:527;;;7124:4;7075:28;4832:18;;;:9;:18;;;;;;7149:24;;7145:344;;7224:6;7271:42;;;:147;;7399:19;7271:147;;;7378:20;7271:147;7249:169;;7437:36;7453:19;7437:15;:36::i;:::-;7145:344;;6973:527;;-1:-1:-1;;;;;7517:23:0;;;;;;:17;:23;;;;;;;;7516:24;:50;;;;-1:-1:-1;;;;;;7545:21:0;;;;;;:17;:21;;;;;;;;7544:22;7516:50;:61;;;;-1:-1:-1;7571:6:0;;;;7570:7;7516:61;7512:337;;;7617:1;7602:12;;:16;7594:36;;;;-1:-1:-1;;;7594:36:0;;4071:2:1;7594:36:0;;;4053:21:1;4110:1;4090:18;;;4083:29;-1:-1:-1;;;4128:18:1;;;4121:38;4176:18;;7594:36:0;4043:157:1;7594:36:0;7686:12;;7655:4;;-1:-1:-1;;;;;;7678:20:0;;;7686:12;;7678:20;7674:164;;;7747:12;7737:7;;7722:12;;:22;;;;:::i;:::-;:37;7719:104;;;-1:-1:-1;;;;;7784:12:0;;;;;;:8;:12;;;;;:19;;-1:-1:-1;;7784:19:0;7799:4;7784:19;;;7719:104;-1:-1:-1;;;;;7865:16:0;;;;;;:12;:16;;;;;;;;7861:42;;;-1:-1:-1;7896:4:0;7861:42;7915:51;7930:4;7936:2;7940:6;7948:7;7957:8;7915:14;:51::i;:::-;6455:1519;;;;;;:::o;9251:431::-;3004:6;:13;;-1:-1:-1;;3004:13:0;3013:4;3004:13;;;9352:16:::1;::::0;;9366:1:::1;9352:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9352:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9352:16:0::1;9328:40;;9397:4;9379;9384:1;9379:7;;;;;;-1:-1:-1::0;;;9379:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;9379:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9423:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;9423:21:0;;;;:14;;;::::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;9379:7;;9423:21;;;;;:14;:21;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9413:4;9418:1;9413:7;;;;;;-1:-1:-1::0;;;9413:7:0::1;;;;;;;;;-1:-1:-1::0;;;;;9413:31:0;;::::1;:7;::::0;;::::1;::::0;;;;;:31;9459:14:::1;::::0;9608:11:::1;::::0;9459:202:::1;::::0;-1:-1:-1;;;9459:202:0;;:14;;::::1;::::0;:65:::1;::::0;:202:::1;::::0;9539:11;;9459:14:::1;::::0;9581:4;;9608:11;;::::1;::::0;9635:15:::1;::::0;9459:202:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;9455:218:::0;-1:-1:-1;;3040:6:0;:14;;-1:-1:-1;;3040:14:0;;;9251:431::o;8311:932::-;-1:-1:-1;;;;;8507:17:0;;;;;;:9;:17;;;;;;:27;;8527:7;;8507:27;:::i;:::-;-1:-1:-1;;;;;8487:17:0;;;;;;:9;:17;;;;;:47;;;;8575:515;;;;8617:14;8652:8;8648:131;;;-1:-1:-1;8690:12:0;;8648:131;;;-1:-1:-1;8752:11:0;;8648:131;8793:18;8833:3;8814:16;8824:6;8814:7;:16;:::i;:::-;:22;;;;:::i;:::-;8793:43;-1:-1:-1;8855:14:0;;8851:228;;8890:23;8903:10;8890:23;;:::i;:::-;8977:4;8959:24;;;;:9;:24;;;;;;8890:23;;-1:-1:-1;8959:37:0;;8986:10;;8959:37;:::i;:::-;8950:4;8932:24;;;;:9;:24;;;;;;;:64;;;;9020:43;;-1:-1:-1;;;;;9020:43:0;;;;;;;9052:10;6057:25:1;;6045:2;6030:18;;6012:76;9020:43:0;;;;;;;;8851:228;8575:515;;;9149:19;9159:9;9149:7;:19;:::i;:::-;-1:-1:-1;;;;;9125:20:0;;;;;;:9;:20;;;;;;:44;;;;:::i;:::-;-1:-1:-1;;;;;9102:20:0;;;;;;;:9;:20;;;;;:67;;;;9185:48;;;9213:19;9223:9;9213:7;:19;:::i;:::-;9185:48;;6057:25:1;;;6045:2;6030:18;9185:48:0;;;;;;;8311:932;;;;;;:::o;14:160:1:-;79:20;;135:13;;128:21;118:32;;108:2;;164:1;161;154:12;108:2;60:114;;;:::o;179:257::-;238:6;291:2;279:9;270:7;266:23;262:32;259:2;;;312:6;304;297:22;259:2;356:9;343:23;375:31;400:5;375:31;:::i;:::-;425:5;249:187;-1:-1:-1;;;249:187:1:o;441:261::-;511:6;564:2;552:9;543:7;539:23;535:32;532:2;;;585:6;577;570:22;532:2;622:9;616:16;641:31;666:5;641:31;:::i;707:398::-;775:6;783;836:2;824:9;815:7;811:23;807:32;804:2;;;857:6;849;842:22;804:2;901:9;888:23;920:31;945:5;920:31;:::i;:::-;970:5;-1:-1:-1;1027:2:1;1012:18;;999:32;1040:33;999:32;1040:33;:::i;:::-;1092:7;1082:17;;;794:311;;;;;:::o;1110:466::-;1187:6;1195;1203;1256:2;1244:9;1235:7;1231:23;1227:32;1224:2;;;1277:6;1269;1262:22;1224:2;1321:9;1308:23;1340:31;1365:5;1340:31;:::i;:::-;1390:5;-1:-1:-1;1447:2:1;1432:18;;1419:32;1460:33;1419:32;1460:33;:::i;:::-;1214:362;;1512:7;;-1:-1:-1;;;1566:2:1;1551:18;;;;1538:32;;1214:362::o;1581:325::-;1646:6;1654;1707:2;1695:9;1686:7;1682:23;1678:32;1675:2;;;1728:6;1720;1713:22;1675:2;1772:9;1759:23;1791:31;1816:5;1791:31;:::i;:::-;1841:5;-1:-1:-1;1865:35:1;1896:2;1881:18;;1865:35;:::i;:::-;1855:45;;1665:241;;;;;:::o;1911:325::-;1979:6;1987;2040:2;2028:9;2019:7;2015:23;2011:32;2008:2;;;2061:6;2053;2046:22;2008:2;2105:9;2092:23;2124:31;2149:5;2124:31;:::i;:::-;2174:5;2226:2;2211:18;;;;2198:32;;-1:-1:-1;;;1998:238:1:o;2241:190::-;2297:6;2350:2;2338:9;2329:7;2325:23;2321:32;2318:2;;;2371:6;2363;2356:22;2318:2;2399:26;2415:9;2399:26;:::i;2436:190::-;2495:6;2548:2;2536:9;2527:7;2523:23;2519:32;2516:2;;;2569:6;2561;2554:22;2516:2;-1:-1:-1;2597:23:1;;2506:120;-1:-1:-1;2506:120:1:o;3261:603::-;3373:4;3402:2;3431;3420:9;3413:21;3463:6;3457:13;3506:6;3501:2;3490:9;3486:18;3479:34;3531:4;3544:140;3558:6;3555:1;3552:13;3544:140;;;3653:14;;;3649:23;;3643:30;3619:17;;;3638:2;3615:26;3608:66;3573:10;;3544:140;;;3702:6;3699:1;3696:13;3693:2;;;3772:4;3767:2;3758:6;3747:9;3743:22;3739:31;3732:45;3693:2;-1:-1:-1;3848:2:1;3827:15;-1:-1:-1;;3823:29:1;3808:45;;;;3855:2;3804:54;;3382:482;-1:-1:-1;;;3382:482:1:o;5565:341::-;5767:2;5749:21;;;5806:2;5786:18;;;5779:30;-1:-1:-1;;;5840:2:1;5825:18;;5818:47;5897:2;5882:18;;5739:167::o;6093:983::-;6355:4;6403:3;6392:9;6388:19;6434:6;6423:9;6416:25;6460:2;6498:6;6493:2;6482:9;6478:18;6471:34;6541:3;6536:2;6525:9;6521:18;6514:31;6565:6;6600;6594:13;6631:6;6623;6616:22;6669:3;6658:9;6654:19;6647:26;;6708:2;6700:6;6696:15;6682:29;;6729:4;6742:195;6756:6;6753:1;6750:13;6742:195;;;6821:13;;-1:-1:-1;;;;;6817:39:1;6805:52;;6912:15;;;;6877:12;;;;6853:1;6771:9;6742:195;;;-1:-1:-1;;;;;;;6993:32:1;;;;6988:2;6973:18;;6966:60;-1:-1:-1;;;7057:3:1;7042:19;7035:35;6954:3;6364:712;-1:-1:-1;;;6364:712:1:o;7270:128::-;7310:3;7341:1;7337:6;7334:1;7331:13;7328:2;;;7347:18;;:::i;:::-;-1:-1:-1;7383:9:1;;7318:80::o;7403:217::-;7443:1;7469;7459:2;;-1:-1:-1;;;7494:31:1;;7548:4;7545:1;7538:15;7576:4;7501:1;7566:15;7459:2;-1:-1:-1;7605:9:1;;7449:171::o;7625:168::-;7665:7;7731:1;7727;7723:6;7719:14;7716:1;7713:21;7708:1;7701:9;7694:17;7690:45;7687:2;;;7738:18;;:::i;:::-;-1:-1:-1;7778:9:1;;7677:116::o;7798:125::-;7838:4;7866:1;7863;7860:8;7857:2;;;7871:18;;:::i;:::-;-1:-1:-1;7908:9:1;;7847:76::o;7928:380::-;8007:1;8003:12;;;;8050;;;8071:2;;8125:4;8117:6;8113:17;8103:27;;8071:2;8178;8170:6;8167:14;8147:18;8144:38;8141:2;;;8224:10;8219:3;8215:20;8212:1;8205:31;8259:4;8256:1;8249:15;8287:4;8284:1;8277:15;8141:2;;7983:325;;;:::o;8313:127::-;8374:10;8369:3;8365:20;8362:1;8355:31;8405:4;8402:1;8395:15;8429:4;8426:1;8419:15;8445:131;-1:-1:-1;;;;;8520:31:1;;8510:42;;8500:2;;8566:1;8563;8556:12;8500:2;8490:86;:::o

Swarm Source

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