ETH Price: $2,388.36 (-0.62%)

Token

NBLH (NBLH)
 

Overview

Max Total Supply

900,000,000,000 NBLH

Holders

521

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
824,335,916 NBLH

Value
$0.00
0xbac7084f8d6e0292a3cdec744259c5a7957dcdeb
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:
Create_Token

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-05-13
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

library Address {
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(account) }
        return size > 0;
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
      return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");

        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

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

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

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;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

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

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

contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _transferOwnership(_msgSender());
    }

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

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

contract Lockable is Context {
    event Locked(address account);
    event Unlocked(address account);

    mapping(address => bool) private _locked;

    function locked(address _to) internal view returns (bool) {
        return _locked[_to];
    }

    function _lock(address to) internal virtual {
        require(to != address(0), "ERC20: lock to the zero address");

        _locked[to] = true;
        emit Locked(to);
    }

    function _unlock(address to) internal virtual {
        require(to != address(0), "ERC20: lock to the zero address");

        _locked[to] = false;
        emit Unlocked(to);
    }
}

contract TimeLock {
    using SafeMath for uint256;
    using Address for address;

    event SetTimeLock(address account, uint timestamp);
    event RemoveTimeLock(address account);

    mapping(address => uint) private _endTimestamp;

    function getEndTime(address to) public view virtual returns(uint) {
        return _endTimestamp[to];
    }

    function _setTimeLock(address to, uint256 timestamp) internal virtual {
        require(to != address(0), "Timelock: account is the zero address");
        require(timestamp != uint256(0), "Timelock: is the zero day");

        _endTimestamp[to] = timestamp;

        emit SetTimeLock(to, timestamp);
    }

    function _removeTimeLock(address to) internal virtual {
        require(to != address(0), "Timelock: account is the zero address");

        _endTimestamp[to] = 0;

        emit RemoveTimeLock(to);
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address to, 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 from, address to, 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 IERC20Metadata is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
}

contract ERC20 is Context, IERC20, IERC20Metadata, Lockable, TimeLock {
    using SafeMath for uint256;
    using Address for address;

    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;

    uint256 private _totalSupply;
    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

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

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

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, _allowances[owner][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = _allowances[owner][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");
        require(locked(sender) != true, "ERC20: sender is locked");
        require((getEndTime(sender) <= block.timestamp) != false, "ERC20: sender is Time locked");

        _beforeTokenTransfer(sender, recipient, amount);

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        emit Approval(owner, spender, amount);
    }

    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }

    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract ERC20Pauser is Context, ERC20, Ownable {
    constructor(string memory name_, string memory symbol_) ERC20(name_, symbol_){}

    function mint(address account, uint256 amount) internal virtual onlyOwner {
        _mint(account, amount);
    }

    function lock(address account) public virtual onlyOwner {
        _lock(account);
    }

    function unlock(address account) public virtual onlyOwner {
        _unlock(account);
    }
    
    function burn(uint256 amount) public virtual onlyOwner {
        _burn(_msgSender(), amount*(10**uint256(decimals())));
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    function setTimeLock(address account, uint day) public virtual onlyOwner {
        _setTimeLock(account, day);
    }

    function removeTimeLock(address account) public virtual onlyOwner {
        _removeTimeLock(account);
    }
}

contract Create_Token is ERC20Pauser {
    constructor () ERC20Pauser("NBLH", "NBLH") {
        mint(msg.sender, 9000*(10**8)*(10**uint256(decimals())));
    }
}

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":false,"internalType":"address","name":"account","type":"address"}],"name":"Locked","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":false,"internalType":"address","name":"account","type":"address"}],"name":"RemoveTimeLock","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"SetTimeLock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unlocked","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"getEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"lock","outputs":[],"stateMutability":"nonpayable","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":[{"internalType":"address","name":"account","type":"address"}],"name":"removeTimeLock","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"day","type":"uint256"}],"name":"setTimeLock","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":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"unlock","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060408051808201825260048082526309c8498960e31b60208084018281528551808701909652928552840152815191929183918391620000559160059162000302565b5080516200006b90600690602084019062000302565b5050506200008862000082620000bb60201b60201c565b620000bf565b50620000b59050336200009e6012600a6200040c565b620000af9064d18c2e2800620004d5565b62000119565b6200054a565b3390565b600780546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6007546001600160a01b036101009091041633146200017f5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6200018b82826200018f565b5050565b6001600160a01b038216620001e75760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640162000176565b62000203816004546200029660201b620006f11790919060201c565b6004556001600160a01b03821660009081526002602090815260409091205462000238918390620006f162000296821b17901c565b6001600160a01b0383166000818152600260205260408082209390935591519091907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906200028a9085815260200190565b60405180910390a35050565b600080620002a58385620003a8565b905083811015620002f95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640162000176565b90505b92915050565b8280546200031090620004f7565b90600052602060002090601f0160209004810192826200033457600085556200037f565b82601f106200034f57805160ff19168380011785556200037f565b828001600101855582156200037f579182015b828111156200037f57825182559160200191906001019062000362565b506200038d92915062000391565b5090565b5b808211156200038d576000815560010162000392565b60008219821115620003be57620003be62000534565b500190565b600181815b8085111562000404578160001904821115620003e857620003e862000534565b80851615620003f657918102915b93841c9390800290620003c8565b509250929050565b60006200041a838362000421565b9392505050565b6000826200043257506001620002fc565b816200044157506000620002fc565b81600181146200045a5760028114620004655762000485565b6001915050620002fc565b60ff84111562000479576200047962000534565b50506001821b620002fc565b5060208310610133831016604e8410600b8410161715620004aa575081810a620002fc565b620004b68383620003c3565b8060001904821115620004cd57620004cd62000534565b029392505050565b6000816000190483118215151615620004f257620004f262000534565b500290565b600181811c908216806200050c57607f821691505b602082108114156200052e57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b611300806200055a6000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063644fab74116100ad578063a457c2d711610071578063a457c2d714610292578063a9059cbb146102a5578063dd62ed3e146102b8578063f2fde38b146102f1578063f435f5a71461030457600080fd5b8063644fab741461021d57806370a0823114610230578063715018a6146102595780638da5cb5b1461026157806395d89b411461028a57600080fd5b806323b872dd116100f457806323b872dd146101c25780632f6c493c146101d5578063313ce567146101e857806339509351146101f757806342966c681461020a57600080fd5b806306fdde0314610131578063095ea7b31461014f57806317abee1e1461017257806318160ddd146101875780631c260b5f14610199575b600080fd5b610139610317565b6040516101469190611029565b60405180910390f35b61016261015d366004610fe6565b6103a9565b6040519015158152602001610146565b610185610180366004610f5c565b6103c3565b005b6004545b604051908152602001610146565b61018b6101a7366004610f5c565b6001600160a01b031660009081526001602052604090205490565b6101626101d0366004610faa565b610408565b6101856101e3366004610f5c565b61041f565b60405160128152602001610146565b610162610205366004610fe6565b610458565b610185610218366004611010565b610497565b61018561022b366004610fe6565b6104e6565b61018b61023e366004610f5c565b6001600160a01b031660009081526002602052604090205490565b610185610524565b60075461010090046001600160a01b03166040516001600160a01b039091168152602001610146565b610139610560565b6101626102a0366004610fe6565b61056f565b6101626102b3366004610fe6565b61060c565b61018b6102c6366004610f77565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101856102ff366004610f5c565b61061a565b610185610312366004610f5c565b6106b8565b60606005805461032690611231565b80601f016020809104026020016040519081016040528092919081815260200182805461035290611231565b801561039f5780601f106103745761010080835404028352916020019161039f565b820191906000526020600020905b81548152906001019060200180831161038257829003601f168201915b5050505050905090565b6000336103b7818585610757565b60019150505b92915050565b6007546001600160a01b036101009091041633146103fc5760405162461bcd60e51b81526004016103f39061107e565b60405180910390fd5b6104058161086c565b50565b60006104158484846108e5565b5060019392505050565b6007546001600160a01b0361010090910416331461044f5760405162461bcd60e51b81526004016103f39061107e565b61040581610b47565b3360008181526003602090815260408083206001600160a01b03871684529091528120549091906103b790829086906104929087906110f8565b610757565b6007546001600160a01b036101009091041633146104c75760405162461bcd60e51b81526004016103f39061107e565b610405336104d76012600a611153565b6104e190846111fb565b610bec565b6007546001600160a01b036101009091041633146105165760405162461bcd60e51b81526004016103f39061107e565b6105208282610cf7565b5050565b6007546001600160a01b036101009091041633146105545760405162461bcd60e51b81526004016103f39061107e565b61055e6000610dc2565b565b60606006805461032690611231565b3360008181526003602090815260408083206001600160a01b0387168452909152812054909190838110156105f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103f3565b6106018286868403610757565b506001949350505050565b6000336103b78185856108e5565b6007546001600160a01b0361010090910416331461064a5760405162461bcd60e51b81526004016103f39061107e565b6001600160a01b0381166106af5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103f3565b61040581610dc2565b6007546001600160a01b036101009091041633146106e85760405162461bcd60e51b81526004016103f39061107e565b61040581610e1c565b6000806106fe83856110f8565b9050838110156107505760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103f3565b9392505050565b6001600160a01b0383166107b95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103f3565b6001600160a01b03821661081a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103f3565b816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161085f91815260200190565b60405180910390a3505050565b6001600160a01b0381166108925760405162461bcd60e51b81526004016103f3906110b3565b6001600160a01b03811660008181526001602090815260408083209290925590519182527f2411a6bc22519fe98a9db2ddbd83af278807704eac69a546c5d52fd3e0b2db9191015b60405180910390a150565b6001600160a01b0383166109495760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103f3565b6001600160a01b0382166109ab5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103f3565b6001600160a01b03831660009081526020819052604090205460ff16151560011415610a195760405162461bcd60e51b815260206004820152601760248201527f45524332303a2073656e646572206973206c6f636b656400000000000000000060448201526064016103f3565b42610a39846001600160a01b031660009081526001602052604090205490565b1115610a875760405162461bcd60e51b815260206004820152601c60248201527f45524332303a2073656e6465722069732054696d65206c6f636b65640000000060448201526064016103f3565b610ac4816040518060600160405280602681526020016112a5602691396001600160a01b0386166000908152600260205260409020549190610ec4565b6001600160a01b038085166000908152600260205260408082209390935590841681522054610af390826106f1565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061085f9085815260200190565b6001600160a01b038116610b9d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206c6f636b20746f20746865207a65726f20616464726573730060448201526064016103f3565b6001600160a01b03811660008181526020818152604091829020805460ff1916905590519182527f7e6adfec7e3f286831a0200a754127c171a2da564078722cb97704741bbdb0ea91016108da565b6001600160a01b038216610c4c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103f3565b610c8981604051806060016040528060228152602001611283602291396001600160a01b0385166000908152600260205260409020549190610ec4565b6001600160a01b038316600090815260026020526040902055600454610caf9082610efe565b6004556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b038216610d1d5760405162461bcd60e51b81526004016103f3906110b3565b80610d6a5760405162461bcd60e51b815260206004820152601960248201527f54696d656c6f636b3a20697320746865207a65726f206461790000000000000060448201526064016103f3565b6001600160a01b038216600081815260016020908152604091829020849055815192835282018390527fde6a7e6fbd24aa298ba27260cb50684143d79f1132db1e14ba235be2a6030610910160405180910390a15050565b600780546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038116610e725760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206c6f636b20746f20746865207a65726f20616464726573730060448201526064016103f3565b6001600160a01b03811660008181526020818152604091829020805460ff1916600117905590519182527f44427e3003a08f22cf803894075ac0297524e09e521fc1c15bc91741ce3dc15991016108da565b60008184841115610ee85760405162461bcd60e51b81526004016103f39190611029565b506000610ef5848661121a565b95945050505050565b600061075083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec4565b80356001600160a01b0381168114610f5757600080fd5b919050565b600060208284031215610f6e57600080fd5b61075082610f40565b60008060408385031215610f8a57600080fd5b610f9383610f40565b9150610fa160208401610f40565b90509250929050565b600080600060608486031215610fbf57600080fd5b610fc884610f40565b9250610fd660208501610f40565b9150604084013590509250925092565b60008060408385031215610ff957600080fd5b61100283610f40565b946020939093013593505050565b60006020828403121561102257600080fd5b5035919050565b600060208083528351808285015260005b818110156110565785810183015185820160400152820161103a565b81811115611068576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526025908201527f54696d656c6f636b3a206163636f756e7420697320746865207a65726f206164604082015264647265737360d81b606082015260800190565b6000821982111561110b5761110b61126c565b500190565b600181815b8085111561114b5781600019048211156111315761113161126c565b8085161561113e57918102915b93841c9390800290611115565b509250929050565b60006107508383600082611169575060016103bd565b81611176575060006103bd565b816001811461118c5760028114611196576111b2565b60019150506103bd565b60ff8411156111a7576111a761126c565b50506001821b6103bd565b5060208310610133831016604e8410600b84101617156111d5575081810a6103bd565b6111df8383611110565b80600019048211156111f3576111f361126c565b029392505050565b60008160001904831182151516156112155761121561126c565b500290565b60008282101561122c5761122c61126c565b500390565b600181811c9082168061124557607f821691505b6020821081141561126657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a2646970667358221220180975cad1de41595103044f2f64b6bf21dfbea4d8106c23b79b50a0b19e6a2a64736f6c63430008070033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063644fab74116100ad578063a457c2d711610071578063a457c2d714610292578063a9059cbb146102a5578063dd62ed3e146102b8578063f2fde38b146102f1578063f435f5a71461030457600080fd5b8063644fab741461021d57806370a0823114610230578063715018a6146102595780638da5cb5b1461026157806395d89b411461028a57600080fd5b806323b872dd116100f457806323b872dd146101c25780632f6c493c146101d5578063313ce567146101e857806339509351146101f757806342966c681461020a57600080fd5b806306fdde0314610131578063095ea7b31461014f57806317abee1e1461017257806318160ddd146101875780631c260b5f14610199575b600080fd5b610139610317565b6040516101469190611029565b60405180910390f35b61016261015d366004610fe6565b6103a9565b6040519015158152602001610146565b610185610180366004610f5c565b6103c3565b005b6004545b604051908152602001610146565b61018b6101a7366004610f5c565b6001600160a01b031660009081526001602052604090205490565b6101626101d0366004610faa565b610408565b6101856101e3366004610f5c565b61041f565b60405160128152602001610146565b610162610205366004610fe6565b610458565b610185610218366004611010565b610497565b61018561022b366004610fe6565b6104e6565b61018b61023e366004610f5c565b6001600160a01b031660009081526002602052604090205490565b610185610524565b60075461010090046001600160a01b03166040516001600160a01b039091168152602001610146565b610139610560565b6101626102a0366004610fe6565b61056f565b6101626102b3366004610fe6565b61060c565b61018b6102c6366004610f77565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101856102ff366004610f5c565b61061a565b610185610312366004610f5c565b6106b8565b60606005805461032690611231565b80601f016020809104026020016040519081016040528092919081815260200182805461035290611231565b801561039f5780601f106103745761010080835404028352916020019161039f565b820191906000526020600020905b81548152906001019060200180831161038257829003601f168201915b5050505050905090565b6000336103b7818585610757565b60019150505b92915050565b6007546001600160a01b036101009091041633146103fc5760405162461bcd60e51b81526004016103f39061107e565b60405180910390fd5b6104058161086c565b50565b60006104158484846108e5565b5060019392505050565b6007546001600160a01b0361010090910416331461044f5760405162461bcd60e51b81526004016103f39061107e565b61040581610b47565b3360008181526003602090815260408083206001600160a01b03871684529091528120549091906103b790829086906104929087906110f8565b610757565b6007546001600160a01b036101009091041633146104c75760405162461bcd60e51b81526004016103f39061107e565b610405336104d76012600a611153565b6104e190846111fb565b610bec565b6007546001600160a01b036101009091041633146105165760405162461bcd60e51b81526004016103f39061107e565b6105208282610cf7565b5050565b6007546001600160a01b036101009091041633146105545760405162461bcd60e51b81526004016103f39061107e565b61055e6000610dc2565b565b60606006805461032690611231565b3360008181526003602090815260408083206001600160a01b0387168452909152812054909190838110156105f45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016103f3565b6106018286868403610757565b506001949350505050565b6000336103b78185856108e5565b6007546001600160a01b0361010090910416331461064a5760405162461bcd60e51b81526004016103f39061107e565b6001600160a01b0381166106af5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016103f3565b61040581610dc2565b6007546001600160a01b036101009091041633146106e85760405162461bcd60e51b81526004016103f39061107e565b61040581610e1c565b6000806106fe83856110f8565b9050838110156107505760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103f3565b9392505050565b6001600160a01b0383166107b95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103f3565b6001600160a01b03821661081a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103f3565b816001600160a01b0316836001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161085f91815260200190565b60405180910390a3505050565b6001600160a01b0381166108925760405162461bcd60e51b81526004016103f3906110b3565b6001600160a01b03811660008181526001602090815260408083209290925590519182527f2411a6bc22519fe98a9db2ddbd83af278807704eac69a546c5d52fd3e0b2db9191015b60405180910390a150565b6001600160a01b0383166109495760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103f3565b6001600160a01b0382166109ab5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103f3565b6001600160a01b03831660009081526020819052604090205460ff16151560011415610a195760405162461bcd60e51b815260206004820152601760248201527f45524332303a2073656e646572206973206c6f636b656400000000000000000060448201526064016103f3565b42610a39846001600160a01b031660009081526001602052604090205490565b1115610a875760405162461bcd60e51b815260206004820152601c60248201527f45524332303a2073656e6465722069732054696d65206c6f636b65640000000060448201526064016103f3565b610ac4816040518060600160405280602681526020016112a5602691396001600160a01b0386166000908152600260205260409020549190610ec4565b6001600160a01b038085166000908152600260205260408082209390935590841681522054610af390826106f1565b6001600160a01b0380841660008181526002602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061085f9085815260200190565b6001600160a01b038116610b9d5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206c6f636b20746f20746865207a65726f20616464726573730060448201526064016103f3565b6001600160a01b03811660008181526020818152604091829020805460ff1916905590519182527f7e6adfec7e3f286831a0200a754127c171a2da564078722cb97704741bbdb0ea91016108da565b6001600160a01b038216610c4c5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b60648201526084016103f3565b610c8981604051806060016040528060228152602001611283602291396001600160a01b0385166000908152600260205260409020549190610ec4565b6001600160a01b038316600090815260026020526040902055600454610caf9082610efe565b6004556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b038216610d1d5760405162461bcd60e51b81526004016103f3906110b3565b80610d6a5760405162461bcd60e51b815260206004820152601960248201527f54696d656c6f636b3a20697320746865207a65726f206461790000000000000060448201526064016103f3565b6001600160a01b038216600081815260016020908152604091829020849055815192835282018390527fde6a7e6fbd24aa298ba27260cb50684143d79f1132db1e14ba235be2a6030610910160405180910390a15050565b600780546001600160a01b03838116610100818102610100600160a81b031985161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038116610e725760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206c6f636b20746f20746865207a65726f20616464726573730060448201526064016103f3565b6001600160a01b03811660008181526020818152604091829020805460ff1916600117905590519182527f44427e3003a08f22cf803894075ac0297524e09e521fc1c15bc91741ce3dc15991016108da565b60008184841115610ee85760405162461bcd60e51b81526004016103f39190611029565b506000610ef5848661121a565b95945050505050565b600061075083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec4565b80356001600160a01b0381168114610f5757600080fd5b919050565b600060208284031215610f6e57600080fd5b61075082610f40565b60008060408385031215610f8a57600080fd5b610f9383610f40565b9150610fa160208401610f40565b90509250929050565b600080600060608486031215610fbf57600080fd5b610fc884610f40565b9250610fd660208501610f40565b9150604084013590509250925092565b60008060408385031215610ff957600080fd5b61100283610f40565b946020939093013593505050565b60006020828403121561102257600080fd5b5035919050565b600060208083528351808285015260005b818110156110565785810183015185820160400152820161103a565b81811115611068576000604083870101525b50601f01601f1916929092016040019392505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526025908201527f54696d656c6f636b3a206163636f756e7420697320746865207a65726f206164604082015264647265737360d81b606082015260800190565b6000821982111561110b5761110b61126c565b500190565b600181815b8085111561114b5781600019048211156111315761113161126c565b8085161561113e57918102915b93841c9390800290611115565b509250929050565b60006107508383600082611169575060016103bd565b81611176575060006103bd565b816001811461118c5760028114611196576111b2565b60019150506103bd565b60ff8411156111a7576111a761126c565b50506001821b6103bd565b5060208310610133831016604e8410600b84101617156111d5575081810a6103bd565b6111df8383611110565b80600019048211156111f3576111f361126c565b029392505050565b60008160001904831182151516156112155761121561126c565b500290565b60008282101561122c5761122c61126c565b500390565b600181811c9082168061124557607f821691505b6020821081141561126657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fdfe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a2646970667358221220180975cad1de41595103044f2f64b6bf21dfbea4d8106c23b79b50a0b19e6a2a64736f6c63430008070033

Deployed Bytecode Sourcemap

13386:165:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7630:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8562:201;;;;;;:::i;:::-;;:::i;:::-;;;2077:14:1;;2070:22;2052:41;;2040:2;2025:18;8562:201:0;1912:187:1;13270:109:0;;;;;;:::i;:::-;;:::i;:::-;;7951:108;8039:12;;7951:108;;;8231:25:1;;;8219:2;8204:18;7951:108:0;8085:177:1;5573:109:0;;;;;;:::i;:::-;-1:-1:-1;;;;;5657:17:0;5633:4;5657:17;;;:13;:17;;;;;;;5573:109;8771:189;;;;;;:::i;:::-;;:::i;12584:93::-;;;;;;:::i;:::-;;:::i;7850:::-;;;7933:2;8409:36:1;;8397:2;8382:18;7850:93:0;8267:184:1;8968:240:0;;;;;;:::i;:::-;;:::i;12689:127::-;;;;;;:::i;:::-;;:::i;13144:118::-;;;;;;:::i;:::-;;:::i;8067:127::-;;;;;;:::i;:::-;-1:-1:-1;;;;;8168:18:0;8141:7;8168:18;;;:9;:18;;;;;;;8067:127;12824:103;;;:::i;4257:87::-;4330:6;;;;;-1:-1:-1;;;;;4330:6:0;4257:87;;-1:-1:-1;;;;;1589:32:1;;;1571:51;;1559:2;1544:18;4257:87:0;1425:203:1;7738:104:0;;;:::i;9216:438::-;;;;;;:::i;:::-;;:::i;8202:193::-;;;;;;:::i;:::-;;:::i;8403:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;8519:18:0;;;8492:7;8519:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8403:151;12935:201;;;;;;:::i;:::-;;:::i;12487:89::-;;;;;;:::i;:::-;;:::i;7630:100::-;7684:13;7717:5;7710:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7630:100;:::o;8562:201::-;8645:4;2338:10;8701:32;2338:10;8717:7;8726:6;8701:8;:32::i;:::-;8751:4;8744:11;;;8562:201;;;;;:::o;13270:109::-;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;;;;;;;;;13347:24:::1;13363:7;13347:15;:24::i;:::-;13270:109:::0;:::o;8771:189::-;8877:4;8894:36;8904:6;8912:9;8923:6;8894:9;:36::i;:::-;-1:-1:-1;8948:4:0;8771:189;;;;;:::o;12584:93::-;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;12653:16:::1;12661:7;12653;:16::i;8968:240::-:0;2338:10;9056:4;9137:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;9137:27:0;;;;;;;;;;9056:4;;2338:10;9112:66;;2338:10;;9137:27;;:40;;9167:10;;9137:40;:::i;:::-;9112:8;:66::i;12689:127::-;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;12755:53:::1;2338:10:::0;12783:23:::1;7933:2:::0;12783::::1;:23;:::i;:::-;12775:32;::::0;:6;:32:::1;:::i;:::-;12755:5;:53::i;13144:118::-:0;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;13228:26:::1;13241:7;13250:3;13228:12;:26::i;:::-;13144:118:::0;;:::o;12824:103::-;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;12889:30:::1;12916:1;12889:18;:30::i;:::-;12824:103::o:0;7738:104::-;7794:13;7827:7;7820:14;;;;;:::i;9216:438::-;2338:10;9309:4;9392:18;;;:11;:18;;;;;;;;-1:-1:-1;;;;;9392:27:0;;;;;;;;;;9309:4;;2338:10;9438:35;;;;9430:85;;;;-1:-1:-1;;;9430:85:0;;7881:2:1;9430:85:0;;;7863:21:1;7920:2;7900:18;;;7893:30;7959:34;7939:18;;;7932:62;-1:-1:-1;;;8010:18:1;;;8003:35;8055:19;;9430:85:0;7679:401:1;9430:85:0;9551:60;9560:5;9567:7;9595:15;9576:16;:34;9551:8;:60::i;:::-;-1:-1:-1;9642:4:0;;9216:438;-1:-1:-1;;;;9216:438:0:o;8202:193::-;8281:4;2338:10;8337:28;2338:10;8354:2;8358:6;8337:9;:28::i;12935:201::-;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13024:22:0;::::1;13016:73;;;::::0;-1:-1:-1;;;13016:73:0;;3666:2:1;13016:73:0::1;::::0;::::1;3648:21:1::0;3705:2;3685:18;;;3678:30;3744:34;3724:18;;;3717:62;-1:-1:-1;;;3795:18:1;;;3788:36;3841:19;;13016:73:0::1;3464:402:1::0;13016:73:0::1;13100:28;13119:8;13100:18;:28::i;12487:89::-:0;4330:6;;-1:-1:-1;;;;;4330:6:0;;;;;2338:10;4392:23;4384:68;;;;-1:-1:-1;;;4384:68:0;;;;;;;:::i;:::-;12554:14:::1;12560:7;12554:5;:14::i;2496:181::-:0;2554:7;;2586:5;2590:1;2586;:5;:::i;:::-;2574:17;;2615:1;2610;:6;;2602:46;;;;-1:-1:-1;;;2602:46:0;;4476:2:1;2602:46:0;;;4458:21:1;4515:2;4495:18;;;4488:30;4554:29;4534:18;;;4527:57;4601:18;;2602:46:0;4274:351:1;2602:46:0;2668:1;2496:181;-1:-1:-1;;;2496:181:0:o;11190:299::-;-1:-1:-1;;;;;11292:19:0;;11284:68;;;;-1:-1:-1;;;11284:68:0;;6353:2:1;11284:68:0;;;6335:21:1;6392:2;6372:18;;;6365:30;6431:34;6411:18;;;6404:62;-1:-1:-1;;;6482:18:1;;;6475:34;6526:19;;11284:68:0;6151:400:1;11284:68:0;-1:-1:-1;;;;;11371:21:0;;11363:68;;;;-1:-1:-1;;;11363:68:0;;4073:2:1;11363:68:0;;;4055:21:1;4112:2;4092:18;;;4085:30;4151:34;4131:18;;;4124:62;-1:-1:-1;;;4202:18:1;;;4195:32;4244:19;;11363:68:0;3871:398:1;11363:68:0;11465:7;-1:-1:-1;;;;;11449:32:0;11458:5;-1:-1:-1;;;;;11449:32:0;;11474:6;11449:32;;;;8231:25:1;;8219:2;8204:18;;8085:177;11449:32:0;;;;;;;;11190:299;;;:::o;6011:209::-;-1:-1:-1;;;;;6084:16:0;;6076:66;;;;-1:-1:-1;;;6076:66:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6155:17:0;;6175:1;6155:17;;;:13;:17;;;;;;;;:21;;;;6194:18;;1571:51:1;;;6194:18:0;;1544::1;6194::0;;;;;;;;6011:209;:::o;9662:708::-;-1:-1:-1;;;;;9768:20:0;;9760:70;;;;-1:-1:-1;;;9760:70:0;;5947:2:1;9760:70:0;;;5929:21:1;5986:2;5966:18;;;5959:30;6025:34;6005:18;;;5998:62;-1:-1:-1;;;6076:18:1;;;6069:35;6121:19;;9760:70:0;5745:401:1;9760:70:0;-1:-1:-1;;;;;9849:23:0;;9841:71;;;;-1:-1:-1;;;9841:71:0;;2908:2:1;9841:71:0;;;2890:21:1;2947:2;2927:18;;;2920:30;2986:34;2966:18;;;2959:62;-1:-1:-1;;;3037:18:1;;;3030:33;3080:19;;9841:71:0;2706:399:1;9841:71:0;-1:-1:-1;;;;;4915:12:0;;4891:4;4915:12;;;;;;;;;;;;;9931:22;;9949:4;9931:22;;9923:58;;;;-1:-1:-1;;;9923:58:0;;4832:2:1;9923:58:0;;;4814:21:1;4871:2;4851:18;;;4844:30;4910:25;4890:18;;;4883:53;4953:18;;9923:58:0;4630:347:1;9923:58:0;10023:15;10001:18;10012:6;-1:-1:-1;;;;;5657:17:0;5633:4;5657:17;;;:13;:17;;;;;;;5573:109;10001:18;:37;;9992:89;;;;-1:-1:-1;;;9992:89:0;;6758:2:1;9992:89:0;;;6740:21:1;6797:2;6777:18;;;6770:30;6836;6816:18;;;6809:58;6884:18;;9992:89:0;6556:352:1;9992:89:0;10174:71;10196:6;10174:71;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10174:17:0;;;;;;:9;:17;;;;;;;:71;:21;:71::i;:::-;-1:-1:-1;;;;;10154:17:0;;;;;;;:9;:17;;;;;;:91;;;;10279:20;;;;;;;:32;;10304:6;10279:24;:32::i;:::-;-1:-1:-1;;;;;10256:20:0;;;;;;;:9;:20;;;;;;;:55;;;;10327:35;;;;;;;;;;10355:6;8231:25:1;;8219:2;8204:18;;8085:177;5131:185:0;-1:-1:-1;;;;;5196:16:0;;5188:60;;;;-1:-1:-1;;;5188:60:0;;7521:2:1;5188:60:0;;;7503:21:1;7560:2;7540:18;;;7533:30;7599:33;7579:18;;;7572:61;7650:18;;5188:60:0;7319:355:1;5188:60:0;-1:-1:-1;;;;;5261:11:0;;5275:5;5261:11;;;;;;;;;;;;:19;;-1:-1:-1;;5261:19:0;;;5296:12;;1571:51:1;;;5296:12:0;;1544:18:1;5296:12:0;1425:203:1;10764:418:0;-1:-1:-1;;;;;10848:21:0;;10840:67;;;;-1:-1:-1;;;10840:67:0;;5545:2:1;10840:67:0;;;5527:21:1;5584:2;5564:18;;;5557:30;5623:34;5603:18;;;5596:62;-1:-1:-1;;;5674:18:1;;;5667:31;5715:19;;10840:67:0;5343:397:1;10840:67:0;11003:68;11026:6;11003:68;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11003:18:0;;;;;;:9;:18;;;;;;;:68;:22;:68::i;:::-;-1:-1:-1;;;;;10982:18:0;;;;;;:9;:18;;;;;:89;11097:12;;:24;;11114:6;11097:16;:24::i;:::-;11082:12;:39;11137:37;;8231:25:1;;;11163:1:0;;-1:-1:-1;;;;;11137:37:0;;;;;8219:2:1;8204:18;11137:37:0;;;;;;;10764:418;;:::o;5690:313::-;-1:-1:-1;;;;;5779:16:0;;5771:66;;;;-1:-1:-1;;;5771:66:0;;;;;;;:::i;:::-;5856:23;5848:61;;;;-1:-1:-1;;;5848:61:0;;3312:2:1;5848:61:0;;;3294:21:1;3351:2;3331:18;;;3324:30;3390:27;3370:18;;;3363:55;3435:18;;5848:61:0;3110:349:1;5848:61:0;-1:-1:-1;;;;;5922:17:0;;;;;;:13;:17;;;;;;;;;:29;;;5969:26;;1807:51:1;;;1874:18;;1867:34;;;5969:26:0;;1780:18:1;5969:26:0;;;;;;;5690:313;;:::o;4480:191::-;4573:6;;;-1:-1:-1;;;;;4590:17:0;;;4573:6;4590:17;;;-1:-1:-1;;;;;;4590:17:0;;;;;;4623:40;;4573:6;;;;;;;;4623:40;;4554:16;;4623:40;4543:128;4480:191;:::o;4943:180::-;-1:-1:-1;;;;;5006:16:0;;4998:60;;;;-1:-1:-1;;;4998:60:0;;7521:2:1;4998:60:0;;;7503:21:1;7560:2;7540:18;;;7533:30;7599:33;7579:18;;;7572:61;7650:18;;4998:60:0;7319:355:1;4998:60:0;-1:-1:-1;;;;;5071:11:0;;:7;:11;;;;;;;;;;;;:18;;-1:-1:-1;;5071:18:0;5085:4;5071:18;;;5105:10;;1571:51:1;;;5105:10:0;;1544:18:1;5105:10:0;1425:203:1;2829:192:0;2915:7;2951:12;2943:6;;;;2935:29;;;;-1:-1:-1;;;2935:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2975:9:0;2987:5;2991:1;2987;:5;:::i;:::-;2975:17;2829:192;-1:-1:-1;;;;;2829:192:0:o;2685:136::-;2743:7;2770:43;2774:1;2777;2770:43;;;;;;;;;;;;;;;;;:3;:43::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:52;;;528:1;525;518:12;480:52;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;383:260;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:52;;;810:1;807;800:12;762:52;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;648:328;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:52;;;1126:1;1123;1116:12;1078:52;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;981:254:1:o;1240:180::-;1299:6;1352:2;1340:9;1331:7;1327:23;1323:32;1320:52;;;1368:1;1365;1358:12;1320:52;-1:-1:-1;1391:23:1;;1240:180;-1:-1:-1;1240:180:1:o;2104:597::-;2216:4;2245:2;2274;2263:9;2256:21;2306:6;2300:13;2349:6;2344:2;2333:9;2329:18;2322:34;2374:1;2384:140;2398:6;2395:1;2392:13;2384:140;;;2493:14;;;2489:23;;2483:30;2459:17;;;2478:2;2455:26;2448:66;2413:10;;2384:140;;;2542:6;2539:1;2536:13;2533:91;;;2612:1;2607:2;2598:6;2587:9;2583:22;2579:31;2572:42;2533:91;-1:-1:-1;2685:2:1;2664:15;-1:-1:-1;;2660:29:1;2645:45;;;;2692:2;2641:54;;2104:597;-1:-1:-1;;;2104:597:1:o;4982:356::-;5184:2;5166:21;;;5203:18;;;5196:30;5262:34;5257:2;5242:18;;5235:62;5329:2;5314:18;;4982:356::o;6913:401::-;7115:2;7097:21;;;7154:2;7134:18;;;7127:30;7193:34;7188:2;7173:18;;7166:62;-1:-1:-1;;;7259:2:1;7244:18;;7237:35;7304:3;7289:19;;6913:401::o;8456:128::-;8496:3;8527:1;8523:6;8520:1;8517:13;8514:39;;;8533:18;;:::i;:::-;-1:-1:-1;8569:9:1;;8456:128::o;8589:422::-;8678:1;8721:5;8678:1;8735:270;8756:7;8746:8;8743:21;8735:270;;;8815:4;8811:1;8807:6;8803:17;8797:4;8794:27;8791:53;;;8824:18;;:::i;:::-;8874:7;8864:8;8860:22;8857:55;;;8894:16;;;;8857:55;8973:22;;;;8933:15;;;;8735:270;;;8739:3;8589:422;;;;;:::o;9016:131::-;9076:5;9105:36;9132:8;9126:4;9201:5;9231:8;9221:80;;-1:-1:-1;9272:1:1;9286:5;;9221:80;9320:4;9310:76;;-1:-1:-1;9357:1:1;9371:5;;9310:76;9402:4;9420:1;9415:59;;;;9488:1;9483:130;;;;9395:218;;9415:59;9445:1;9436:10;;9459:5;;;9483:130;9520:3;9510:8;9507:17;9504:43;;;9527:18;;:::i;:::-;-1:-1:-1;;9583:1:1;9569:16;;9598:5;;9395:218;;9697:2;9687:8;9684:16;9678:3;9672:4;9669:13;9665:36;9659:2;9649:8;9646:16;9641:2;9635:4;9632:12;9628:35;9625:77;9622:159;;;-1:-1:-1;9734:19:1;;;9766:5;;9622:159;9813:34;9838:8;9832:4;9813:34;:::i;:::-;9883:6;9879:1;9875:6;9871:19;9862:7;9859:32;9856:58;;;9894:18;;:::i;:::-;9932:20;;9152:806;-1:-1:-1;;;9152:806:1:o;9963:168::-;10003:7;10069:1;10065;10061:6;10057:14;10054:1;10051:21;10046:1;10039:9;10032:17;10028:45;10025:71;;;10076:18;;:::i;:::-;-1:-1:-1;10116:9:1;;9963:168::o;10136:125::-;10176:4;10204:1;10201;10198:8;10195:34;;;10209:18;;:::i;:::-;-1:-1:-1;10246:9:1;;10136:125::o;10266:380::-;10345:1;10341:12;;;;10388;;;10409:61;;10463:4;10455:6;10451:17;10441:27;;10409:61;10516:2;10508:6;10505:14;10485:18;10482:38;10479:161;;;10562:10;10557:3;10553:20;10550:1;10543:31;10597:4;10594:1;10587:15;10625:4;10622:1;10615:15;10479:161;;10266:380;;;:::o;10651:127::-;10712:10;10707:3;10703:20;10700:1;10693:31;10743:4;10740:1;10733:15;10767:4;10764:1;10757:15

Swarm Source

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