ETH Price: $2,420.03 (+0.09%)

Token

DegenID Token (DID)
 

Overview

Max Total Supply

27,846,000 DID

Holders

208

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
tuoluo.eth
Balance
0.000422249471942904 DID

Value
$0.00
0xfc7d1491dfcdcf6e72bf202e6d3bf5cc55e5b5ee
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:
DegenIDToken

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
File 1 of 7 : DegenIDToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.7;

import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import {IDegenIDToken} from "./interfaces/IDegenIDToken.sol";

/**
* --DegenIDToken--
* --DID--
                        ..::::::::..                                            
                   .^!?J55PPGGGGGGPP55J?!^.                                      
              .~?5PDEGENIDDEGENIDDEGENIDGP5?~.                                  
           .~JPDEGENIDDEGENIDDEGENIDDEGENIDGGPJ~.                               
         :?PDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGP?:                             
       :?DEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENID?:                           
      !PDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGGP!                          
    .JDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGGGGGGJ.                        
   .5DEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDG5.                       
  .YDEGENIDGGGGGPYJJ?????????PPJ???JGP??JJY5DEGENIDGGGGGY.                      
  ?DEGENIDGGGJ!:.            55     PY     .:~JPDEGENIDGG?                      
 :DEGENIDGGJ:     .:^^^^     5P^^^^~P5^^:.     .?DEGENIDGG:                     
 7DEGENIDG?     ~YPGGGGP.    5G5YYYYPGGGGPY!     7DEGENIDG7                     
 YDEGENIDP.    ?DEGENIDP.    55     YDEGENIDJ     YDEGENIDY                     
 5DEGENIDY    .PDEGENIDP.    55     YDEGENIDG:    ?DEGENID5                     
 YDEGENIDP.    ?DEGENIDP.    55     YDEGENIDJ     YDEGENIDY                     
 7DEGENIDG?     ~YPGGGGG5YYYYG5     5GGGGPY!     7DEGENIDG7                     
 :DEGENIDGGJ:     .:^^^^^^^^^55     :^^^:.     :?DEGENIDGG:                     
  ?DEGENIDGGGY!:.            Y5            .:~JPDEGENIDGG?                      
  .YDEGENIDGGGGGP5JJ?????????PPJ????????JJYPDEGENIDGGGGGY.                      
   .5DEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDG5.                       
     .JDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGGGGGGJ.                        
      !PDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGGP!                          
       :?DEGENIDDEGENIDDEGENIDDEGENIDDEGENIDDEGENID?:                           
         :?PDEGENIDDEGENIDDEGENIDDEGENIDDEGENIDGP?:                             
           .~JPDEGENIDDEGENIDDEGENIDDEGENIDGGPJ~.                               
              .~?5PDEGENIDDEGENIDDEGENIDGP5?~.                                  
                  .^!?J55PPGGGGGGPP55J?!^.                                      
                        ..::::::::..   
**/
contract VaultOwned is Ownable {
    
  address internal _vault;

  function setVault( address vault_ ) external onlyOwner() returns ( bool ) {
    _vault = vault_;

    return true;
  }

  function vault() public view returns (address) {
    return _vault;
  }

  modifier onlyVault() {
    require( _vault == msg.sender, "VaultOwned: caller is not the Vault" );
    _;
  }

}

contract DegenIDToken is ERC20, VaultOwned, IDegenIDToken {
    uint256 private immutable _MaxSupply;
    address public TeamVestingContract;
    address public MarketVestingContract;

    constructor(
        address _premint,
        uint256 _max
    ) ERC20("DegenID Token", "DID") {
        require(_max > 0, "Cannot be Zero");
        _mint(_premint, _max*5/100);
        _MaxSupply = _max;
    }

    function releaseToken(address _team, address _market) public onlyOwner {
        TeamVestingContract = _team;
        MarketVestingContract = _market;
        _mint(_team, _MaxSupply*10/100);
        _mint(_market, _MaxSupply*10/100);
    }

    function mint(address account, uint256 amount) external override onlyVault returns (bool status) {
        if (totalSupply() + amount <= _MaxSupply) {
            _mint(account, amount);
            return true;
        }
        return false;
    }

    function MaxSupply() external view override returns (uint256) {
        return _MaxSupply;
    }
}

File 2 of 7 : IDegenIDToken.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;

import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";

interface IDegenIDToken is IERC20 {
    function MaxSupply() external view returns (uint256);
    function mint(address account, uint256 amount) external returns (bool);
}

File 3 of 7 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol)

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

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

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions anymore. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby removing any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 4 of 7 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

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

File 5 of 7 : ERC20.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.7.0) (token/ERC20/ERC20.sol)

pragma solidity ^0.8.0;

import "./IERC20.sol";
import "./extensions/IERC20Metadata.sol";
import "../../utils/Context.sol";

/**
 * @dev Implementation of the {IERC20} interface.
 *
 * This implementation is agnostic to the way tokens are created. This means
 * that a supply mechanism has to be added in a derived contract using {_mint}.
 * For a generic mechanism see {ERC20PresetMinterPauser}.
 *
 * TIP: For a detailed writeup see our guide
 * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How
 * to implement supply mechanisms].
 *
 * We have followed general OpenZeppelin Contracts guidelines: functions revert
 * instead returning `false` on failure. This behavior is nonetheless
 * conventional and does not conflict with the expectations of ERC20
 * applications.
 *
 * Additionally, an {Approval} event is emitted on calls to {transferFrom}.
 * This allows applications to reconstruct the allowance for all accounts just
 * by listening to said events. Other implementations of the EIP may not emit
 * these events, as it isn't required by the specification.
 *
 * Finally, the non-standard {decreaseAllowance} and {increaseAllowance}
 * functions have been added to mitigate the well-known issues around setting
 * allowances. See {IERC20-approve}.
 */
contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    /**
     * @dev Sets the values for {name} and {symbol}.
     *
     * The default value of {decimals} is 18. To select a different value for
     * {decimals} you should overload it.
     *
     * All two of these values are immutable: they can only be set once during
     * construction.
     */
    constructor(string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual override returns (string memory) {
        return _name;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    /**
     * @dev Returns the number of decimals used to get its user representation.
     * For example, if `decimals` equals `2`, a balance of `505` tokens should
     * be displayed to a user as `5.05` (`505 / 10 ** 2`).
     *
     * Tokens usually opt for a value of 18, imitating the relationship between
     * Ether and Wei. This is the value {ERC20} uses, unless this function is
     * overridden;
     *
     * NOTE: This information is only used for _display_ purposes: it in
     * no way affects any of the arithmetic of the contract, including
     * {IERC20-balanceOf} and {IERC20-transfer}.
     */
    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }

    /**
     * @dev See {IERC20-transfer}.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

    /**
     * @dev See {IERC20-approve}.
     *
     * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on
     * `transferFrom`. This is semantically equivalent to an infinite approval.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    /**
     * @dev See {IERC20-transferFrom}.
     *
     * Emits an {Approval} event indicating the updated allowance. This is not
     * required by the EIP. See the note at the beginning of {ERC20}.
     *
     * NOTE: Does not update the allowance if the current allowance
     * is the maximum `uint256`.
     *
     * Requirements:
     *
     * - `from` and `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     * - the caller must have allowance for ``from``'s tokens of at least
     * `amount`.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev Atomically increases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        address owner = _msgSender();
        _approve(owner, spender, allowance(owner, spender) + addedValue);
        return true;
    }

    /**
     * @dev Atomically decreases the allowance granted to `spender` by the caller.
     *
     * This is an alternative to {approve} that can be used as a mitigation for
     * problems described in {IERC20-approve}.
     *
     * Emits an {Approval} event indicating the updated allowance.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     * - `spender` must have allowance for the caller of at least
     * `subtractedValue`.
     */
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        address owner = _msgSender();
        uint256 currentAllowance = allowance(owner, spender);
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(owner, spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `from` to `to`.
     *
     * This internal function is equivalent to {transfer}, and can be used to
     * e.g. implement automatic token fees, slashing mechanisms, etc.
     *
     * Emits a {Transfer} event.
     *
     * Requirements:
     *
     * - `from` cannot be the zero address.
     * - `to` cannot be the zero address.
     * - `from` must have a balance of at least `amount`.
     */
    function _transfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(from, to, amount);

        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
        }
        _balances[to] += amount;

        emit Transfer(from, to, amount);

        _afterTokenTransfer(from, to, amount);
    }

    /** @dev Creates `amount` tokens and assigns them to `account`, increasing
     * the total supply.
     *
     * Emits a {Transfer} event with `from` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

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

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);

        _afterTokenTransfer(address(0), account, amount);
    }

    /**
     * @dev Destroys `amount` tokens from `account`, reducing the
     * total supply.
     *
     * Emits a {Transfer} event with `to` set to the zero address.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     * - `account` must have at least `amount` tokens.
     */
    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

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

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        unchecked {
            _balances[account] = accountBalance - amount;
        }
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);

        _afterTokenTransfer(account, address(0), amount);
    }

    /**
     * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.
     *
     * This internal function is equivalent to `approve`, and can be used to
     * e.g. set automatic allowances for certain subsystems, etc.
     *
     * Emits an {Approval} event.
     *
     * Requirements:
     *
     * - `owner` cannot be the zero address.
     * - `spender` cannot be the zero address.
     */
    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");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    /**
     * @dev Updates `owner` s allowance for `spender` based on spent `amount`.
     *
     * Does not update the allowance amount in case of infinite allowance.
     * Revert if not enough allowance is available.
     *
     * Might emit an {Approval} event.
     */
    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);
            }
        }
    }

    /**
     * @dev Hook that is called before any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * will be transferred to `to`.
     * - when `from` is zero, `amount` tokens will be minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens will be burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _beforeTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}

    /**
     * @dev Hook that is called after any transfer of tokens. This includes
     * minting and burning.
     *
     * Calling conditions:
     *
     * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens
     * has been transferred to `to`.
     * - when `from` is zero, `amount` tokens have been minted for `to`.
     * - when `to` is zero, `amount` of ``from``'s tokens have been burned.
     * - `from` and `to` are never both zero.
     *
     * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks].
     */
    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

File 6 of 7 : IERC20.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `to`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address to, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `from` to `to` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) external returns (bool);
}

File 7 of 7 : IERC20Metadata.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol)

pragma solidity ^0.8.0;

import "../IERC20.sol";

/**
 * @dev Interface for the optional metadata functions from the ERC20 standard.
 *
 * _Available since v4.1._
 */
interface IERC20Metadata is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    function decimals() external view returns (uint8);
}

Settings
{
  "metadata": {
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_premint","type":"address"},{"internalType":"uint256","name":"_max","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"MarketVestingContract","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MaxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TeamVestingContract","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"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":"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"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"status","type":"bool"}],"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":"_team","type":"address"},{"internalType":"address","name":"_market","type":"address"}],"name":"releaseToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"vault_","type":"address"}],"name":"setVault","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"vault","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60a06040523480156200001157600080fd5b506040516200121d3803806200121d833981016040819052620000349162000319565b6040518060400160405280600d81526020016c2232b3b2b724a2102a37b5b2b760991b8152506040518060400160405280600381526020016211125160ea1b81525081600390805190602001906200008e92919062000273565b508051620000a490600490602084019062000273565b505050620000c1620000bb6200013860201b60201c565b6200013c565b60008111620001085760405162461bcd60e51b815260206004820152600e60248201526d43616e6e6f74206265205a65726f60901b60448201526064015b60405180910390fd5b6200012e8260646200011c8460056200036b565b6200012891906200038d565b6200018e565b6080525062000408565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620001e65760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620000ff565b8060026000828254620001fa9190620003b0565b90915550506001600160a01b0382166000908152602081905260408120805483929062000229908490620003b0565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b8280546200028190620003cb565b90600052602060002090601f016020900481019282620002a55760008555620002f0565b82601f10620002c057805160ff1916838001178555620002f0565b82800160010185558215620002f0579182015b82811115620002f0578251825591602001919060010190620002d3565b50620002fe92915062000302565b5090565b5b80821115620002fe576000815560010162000303565b600080604083850312156200032d57600080fd5b82516001600160a01b03811681146200034557600080fd5b6020939093015192949293505050565b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161562000388576200038862000355565b500290565b600082620003ab57634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115620003c657620003c662000355565b500190565b600181811c90821680620003e057607f821691505b602082108114156200040257634e487b7160e01b600052602260045260246000fd5b50919050565b608051610de46200043960003960008181610298015281816104680152818161054001526105800152610de46000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c8063796a6996116100b8578063aeea0aae1161007c578063aeea0aae14610283578063b36c128414610296578063dd62ed3e146102bc578063f2fde38b146102cf578063fbfa77cf146102e2578063fdf079e1146102f357600080fd5b8063796a69961461021d5780638da5cb5b1461023057806395d89b4114610255578063a457c2d71461025d578063a9059cbb1461027057600080fd5b806339509351116100ff57806339509351146101b157806340c10f19146101c45780636817031b146101d757806370a08231146101ea578063715018a61461021357600080fd5b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461017d57806323b872dd1461018f578063313ce567146101a2575b600080fd5b610144610306565b6040516101519190610bdd565b60405180910390f35b61016d610168366004610c49565b610398565b6040519015158152602001610151565b6002545b604051908152602001610151565b61016d61019d366004610c73565b6103b2565b60405160128152602001610151565b61016d6101bf366004610c49565b6103d6565b61016d6101d2366004610c49565b6103f8565b61016d6101e5366004610caf565b6104bb565b6101816101f8366004610caf565b6001600160a01b031660009081526020819052604090205490565b61021b6104e9565b005b61021b61022b366004610cd1565b6104fd565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610151565b6101446105aa565b61016d61026b366004610c49565b6105b9565b61016d61027e366004610c49565b610634565b60085461023d906001600160a01b031681565b7f0000000000000000000000000000000000000000000000000000000000000000610181565b6101816102ca366004610cd1565b610642565b61021b6102dd366004610caf565b61066d565b6006546001600160a01b031661023d565b60075461023d906001600160a01b031681565b60606003805461031590610d04565b80601f016020809104026020016040519081016040528092919081815260200182805461034190610d04565b801561038e5780601f106103635761010080835404028352916020019161038e565b820191906000526020600020905b81548152906001019060200180831161037157829003601f168201915b5050505050905090565b6000336103a68185856106e6565b60019150505b92915050565b6000336103c085828561080a565b6103cb858585610884565b506001949350505050565b6000336103a68185856103e98383610642565b6103f39190610d55565b6106e6565b6006546000906001600160a01b031633146104665760405162461bcd60e51b815260206004820152602360248201527f5661756c744f776e65643a2063616c6c6572206973206e6f74207468652056616044820152621d5b1d60ea1b60648201526084015b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000008261049160025490565b61049b9190610d55565b116104b2576104aa8383610a52565b5060016103ac565b50600092915050565b60006104c5610b31565b50600680546001600160a01b0319166001600160a01b03831617905560015b919050565b6104f1610b31565b6104fb6000610b8b565b565b610505610b31565b600780546001600160a01b038085166001600160a01b03199283161790925560088054928416929091169190911790556105758260646105667f0000000000000000000000000000000000000000000000000000000000000000600a610d6d565b6105709190610d8c565b610a52565b6105a68160646105667f0000000000000000000000000000000000000000000000000000000000000000600a610d6d565b5050565b60606004805461031590610d04565b600033816105c78286610642565b9050838110156106275760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161045d565b6103cb82868684036106e6565b6000336103a6818585610884565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610675610b31565b6001600160a01b0381166106da5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161045d565b6106e381610b8b565b50565b6001600160a01b0383166107485760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161045d565b6001600160a01b0382166107a95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161045d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006108168484610642565b9050600019811461087e57818110156108715760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161045d565b61087e84848484036106e6565b50505050565b6001600160a01b0383166108e85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161045d565b6001600160a01b03821661094a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161045d565b6001600160a01b038316600090815260208190526040902054818110156109c25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161045d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906109f9908490610d55565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a4591815260200190565b60405180910390a361087e565b6001600160a01b038216610aa85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161045d565b8060026000828254610aba9190610d55565b90915550506001600160a01b03821660009081526020819052604081208054839290610ae7908490610d55565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6005546001600160a01b031633146104fb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161045d565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b81811015610c0a57858101830151858201604001528201610bee565b81811115610c1c576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146104e457600080fd5b60008060408385031215610c5c57600080fd5b610c6583610c32565b946020939093013593505050565b600080600060608486031215610c8857600080fd5b610c9184610c32565b9250610c9f60208501610c32565b9150604084013590509250925092565b600060208284031215610cc157600080fd5b610cca82610c32565b9392505050565b60008060408385031215610ce457600080fd5b610ced83610c32565b9150610cfb60208401610c32565b90509250929050565b600181811c90821680610d1857607f821691505b60208210811415610d3957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610d6857610d68610d3f565b500190565b6000816000190483118215151615610d8757610d87610d3f565b500290565b600082610da957634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220de6b97430b6f9108dd397cb991529b61f206d4ad855aa39673588cecff5b409d64736f6c634300080c003300000000000000000000000052d75ee7ca9f1cc73697fd270a859ce955bf46c600000000000000000000000000000000000000000052b7d2dcc80cd2e4000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c8063796a6996116100b8578063aeea0aae1161007c578063aeea0aae14610283578063b36c128414610296578063dd62ed3e146102bc578063f2fde38b146102cf578063fbfa77cf146102e2578063fdf079e1146102f357600080fd5b8063796a69961461021d5780638da5cb5b1461023057806395d89b4114610255578063a457c2d71461025d578063a9059cbb1461027057600080fd5b806339509351116100ff57806339509351146101b157806340c10f19146101c45780636817031b146101d757806370a08231146101ea578063715018a61461021357600080fd5b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461017d57806323b872dd1461018f578063313ce567146101a2575b600080fd5b610144610306565b6040516101519190610bdd565b60405180910390f35b61016d610168366004610c49565b610398565b6040519015158152602001610151565b6002545b604051908152602001610151565b61016d61019d366004610c73565b6103b2565b60405160128152602001610151565b61016d6101bf366004610c49565b6103d6565b61016d6101d2366004610c49565b6103f8565b61016d6101e5366004610caf565b6104bb565b6101816101f8366004610caf565b6001600160a01b031660009081526020819052604090205490565b61021b6104e9565b005b61021b61022b366004610cd1565b6104fd565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610151565b6101446105aa565b61016d61026b366004610c49565b6105b9565b61016d61027e366004610c49565b610634565b60085461023d906001600160a01b031681565b7f00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000610181565b6101816102ca366004610cd1565b610642565b61021b6102dd366004610caf565b61066d565b6006546001600160a01b031661023d565b60075461023d906001600160a01b031681565b60606003805461031590610d04565b80601f016020809104026020016040519081016040528092919081815260200182805461034190610d04565b801561038e5780601f106103635761010080835404028352916020019161038e565b820191906000526020600020905b81548152906001019060200180831161037157829003601f168201915b5050505050905090565b6000336103a68185856106e6565b60019150505b92915050565b6000336103c085828561080a565b6103cb858585610884565b506001949350505050565b6000336103a68185856103e98383610642565b6103f39190610d55565b6106e6565b6006546000906001600160a01b031633146104665760405162461bcd60e51b815260206004820152602360248201527f5661756c744f776e65643a2063616c6c6572206973206e6f74207468652056616044820152621d5b1d60ea1b60648201526084015b60405180910390fd5b7f00000000000000000000000000000000000000000052b7d2dcc80cd2e40000008261049160025490565b61049b9190610d55565b116104b2576104aa8383610a52565b5060016103ac565b50600092915050565b60006104c5610b31565b50600680546001600160a01b0319166001600160a01b03831617905560015b919050565b6104f1610b31565b6104fb6000610b8b565b565b610505610b31565b600780546001600160a01b038085166001600160a01b03199283161790925560088054928416929091169190911790556105758260646105667f00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000600a610d6d565b6105709190610d8c565b610a52565b6105a68160646105667f00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000600a610d6d565b5050565b60606004805461031590610d04565b600033816105c78286610642565b9050838110156106275760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161045d565b6103cb82868684036106e6565b6000336103a6818585610884565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b610675610b31565b6001600160a01b0381166106da5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161045d565b6106e381610b8b565b50565b6001600160a01b0383166107485760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161045d565b6001600160a01b0382166107a95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161045d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006108168484610642565b9050600019811461087e57818110156108715760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161045d565b61087e84848484036106e6565b50505050565b6001600160a01b0383166108e85760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161045d565b6001600160a01b03821661094a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161045d565b6001600160a01b038316600090815260208190526040902054818110156109c25760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161045d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906109f9908490610d55565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a4591815260200190565b60405180910390a361087e565b6001600160a01b038216610aa85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161045d565b8060026000828254610aba9190610d55565b90915550506001600160a01b03821660009081526020819052604081208054839290610ae7908490610d55565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6005546001600160a01b031633146104fb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161045d565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b81811015610c0a57858101830151858201604001528201610bee565b81811115610c1c576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146104e457600080fd5b60008060408385031215610c5c57600080fd5b610c6583610c32565b946020939093013593505050565b600080600060608486031215610c8857600080fd5b610c9184610c32565b9250610c9f60208501610c32565b9150604084013590509250925092565b600060208284031215610cc157600080fd5b610cca82610c32565b9392505050565b60008060408385031215610ce457600080fd5b610ced83610c32565b9150610cfb60208401610c32565b90509250929050565b600181811c90821680610d1857607f821691505b60208210811415610d3957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610d6857610d68610d3f565b500190565b6000816000190483118215151615610d8757610d87610d3f565b500290565b600082610da957634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220de6b97430b6f9108dd397cb991529b61f206d4ad855aa39673588cecff5b409d64736f6c634300080c0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000052d75ee7ca9f1cc73697fd270a859ce955bf46c600000000000000000000000000000000000000000052b7d2dcc80cd2e4000000

-----Decoded View---------------
Arg [0] : _premint (address): 0x52D75eE7cA9F1CC73697FD270A859CE955bf46C6
Arg [1] : _max (uint256): 100000000000000000000000000

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000052d75ee7ca9f1cc73697fd270a859ce955bf46c6
Arg [1] : 00000000000000000000000000000000000000000052b7d2dcc80cd2e4000000


Deployed Bytecode Sourcemap

2983:1006:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98:3;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4433:197;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:7;;1211:22;1193:41;;1181:2;1166:18;4433:197:3;1053:187:7;3244:106:3;3331:12;;3244:106;;;1391:25:7;;;1379:2;1364:18;3244:106:3;1245:177:7;5192:286:3;;;;;;:::i;:::-;;:::i;3093:91::-;;;3175:2;1902:36:7;;1890:2;1875:18;3093:91:3;1760:184:7;5873:234:3;;;;;;:::i;:::-;;:::i;3636:249:0:-;;;;;;:::i;:::-;;:::i;2672:118::-;;;;;;:::i;:::-;;:::i;3408:125:3:-;;;;;;:::i;:::-;-1:-1:-1;;;;;3508:18:3;3482:7;3508:18;;;;;;;;;;;;3408:125;1831:101:2;;;:::i;:::-;;3390:240:0;;;;;;:::i;:::-;;:::i;1201:85:2:-;1273:6;;-1:-1:-1;;;;;1273:6:2;1201:85;;;-1:-1:-1;;;;;2569:32:7;;;2551:51;;2539:2;2524:18;1201:85:2;2405:203:7;2367:102:3;;;:::i;6594:427::-;;;;;;:::i;:::-;;:::i;3729:189::-;;;;;;:::i;:::-;;:::i;3129:36:0:-;;;;;-1:-1:-1;;;;;3129:36:0;;;3891:96;3970:10;3891:96;;3976:149:3;;;;;;:::i;:::-;;:::i;2081:198:2:-;;;;;;:::i;:::-;;:::i;2794:71:0:-;2854:6;;-1:-1:-1;;;;;2854:6:0;2794:71;;3089:34;;;;;-1:-1:-1;;;;;3089:34:0;;;2156:98:3;2210:13;2242:5;2235:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:98;:::o;4433:197::-;4516:4;719:10:6;4570:32:3;719:10:6;4586:7:3;4595:6;4570:8;:32::i;:::-;4619:4;4612:11;;;4433:197;;;;;:::o;5192:286::-;5319:4;719:10:6;5375:38:3;5391:4;719:10:6;5406:6:3;5375:15;:38::i;:::-;5423:27;5433:4;5439:2;5443:6;5423:9;:27::i;:::-;-1:-1:-1;5467:4:3;;5192:286;-1:-1:-1;;;;5192:286:3:o;5873:234::-;5961:4;719:10:6;6015:64:3;719:10:6;6031:7:3;6068:10;6040:25;719:10:6;6031:7:3;6040:9;:25::i;:::-;:38;;;;:::i;:::-;6015:8;:64::i;3636:249:0:-;2905:6;;3720:11;;-1:-1:-1;;;;;2905:6:0;2915:10;2905:20;2896:70;;;;-1:-1:-1;;;2896:70:0;;3465:2:7;2896:70:0;;;3447:21:7;3504:2;3484:18;;;3477:30;3543:34;3523:18;;;3516:62;-1:-1:-1;;;3594:18:7;;;3587:33;3637:19;;2896:70:0;;;;;;;;;3773:10:::1;3763:6;3747:13;3331:12:3::0;;;3244:106;3747:13:0::1;:22;;;;:::i;:::-;:36;3743:114;;3799:22;3805:7;3814:6;3799:5;:22::i;:::-;-1:-1:-1::0;3842:4:0::1;3835:11;;3743:114;-1:-1:-1::0;3873:5:0::1;3636:249:::0;;;;:::o;2672:118::-;2739:4;1094:13:2;:11;:13::i;:::-;-1:-1:-1;2752:6:0::1;:15:::0;;-1:-1:-1;;;;;;2752:15:0::1;-1:-1:-1::0;;;;;2752:15:0;::::1;;::::0;;-1:-1:-1;1117:1:2::1;2672:118:0::0;;;:::o;1831:101:2:-;1094:13;:11;:13::i;:::-;1895:30:::1;1922:1;1895:18;:30::i;:::-;1831:101::o:0;3390:240:0:-;1094:13:2;:11;:13::i;:::-;3471:19:0::1;:27:::0;;-1:-1:-1;;;;;3471:27:0;;::::1;-1:-1:-1::0;;;;;;3471:27:0;;::::1;;::::0;;;3508:21:::1;:31:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;3549::::1;3493:5:::0;3576:3:::1;3562:13;:10;3573:2;3562:13;:::i;:::-;:17;;;;:::i;:::-;3549:5;:31::i;:::-;3590:33;3596:7:::0;3619:3:::1;3605:13;:10;3616:2;3605:13;:::i;3590:33::-;3390:240:::0;;:::o;2367:102:3:-;2423:13;2455:7;2448:14;;;;;:::i;6594:427::-;6687:4;719:10:6;6687:4:3;6768:25;719:10:6;6785:7:3;6768:9;:25::i;:::-;6741:52;;6831:15;6811:16;:35;;6803:85;;;;-1:-1:-1;;;6803:85:3;;4264:2:7;6803:85:3;;;4246:21:7;4303:2;4283:18;;;4276:30;4342:34;4322:18;;;4315:62;-1:-1:-1;;;4393:18:7;;;4386:35;4438:19;;6803:85:3;4062:401:7;6803:85:3;6922:60;6931:5;6938:7;6966:15;6947:16;:34;6922:8;:60::i;3729:189::-;3808:4;719:10:6;3862:28:3;719:10:6;3879:2:3;3883:6;3862:9;:28::i;3976:149::-;-1:-1:-1;;;;;4091:18:3;;;4065:7;4091:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3976:149::o;2081:198:2:-;1094:13;:11;:13::i;:::-;-1:-1:-1;;;;;2169:22:2;::::1;2161:73;;;::::0;-1:-1:-1;;;2161:73:2;;4670:2:7;2161:73:2::1;::::0;::::1;4652:21:7::0;4709:2;4689:18;;;4682:30;4748:34;4728:18;;;4721:62;-1:-1:-1;;;4799:18:7;;;4792:36;4845:19;;2161:73:2::1;4468:402:7::0;2161:73:2::1;2244:28;2263:8;2244:18;:28::i;:::-;2081:198:::0;:::o;10110:370:3:-;-1:-1:-1;;;;;10241:19:3;;10233:68;;;;-1:-1:-1;;;10233:68:3;;5077:2:7;10233:68:3;;;5059:21:7;5116:2;5096:18;;;5089:30;5155:34;5135:18;;;5128:62;-1:-1:-1;;;5206:18:7;;;5199:34;5250:19;;10233:68:3;4875:400:7;10233:68:3;-1:-1:-1;;;;;10319:21:3;;10311:68;;;;-1:-1:-1;;;10311:68:3;;5482:2:7;10311:68:3;;;5464:21:7;5521:2;5501:18;;;5494:30;5560:34;5540:18;;;5533:62;-1:-1:-1;;;5611:18:7;;;5604:32;5653:19;;10311:68:3;5280:398:7;10311:68:3;-1:-1:-1;;;;;10390:18:3;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10441:32;;1391:25:7;;;10441:32:3;;1364:18:7;10441:32:3;;;;;;;10110:370;;;:::o;10761:441::-;10891:24;10918:25;10928:5;10935:7;10918:9;:25::i;:::-;10891:52;;-1:-1:-1;;10957:16:3;:37;10953:243;;11038:6;11018:16;:26;;11010:68;;;;-1:-1:-1;;;11010:68:3;;5885:2:7;11010:68:3;;;5867:21:7;5924:2;5904:18;;;5897:30;5963:31;5943:18;;;5936:59;6012:18;;11010:68:3;5683:353:7;11010:68:3;11120:51;11129:5;11136:7;11164:6;11145:16;:25;11120:8;:51::i;:::-;10881:321;10761:441;;;:::o;7475:651::-;-1:-1:-1;;;;;7601:18:3;;7593:68;;;;-1:-1:-1;;;7593:68:3;;6243:2:7;7593:68:3;;;6225:21:7;6282:2;6262:18;;;6255:30;6321:34;6301:18;;;6294:62;-1:-1:-1;;;6372:18:7;;;6365:35;6417:19;;7593:68:3;6041:401:7;7593:68:3;-1:-1:-1;;;;;7679:16:3;;7671:64;;;;-1:-1:-1;;;7671:64:3;;6649:2:7;7671:64:3;;;6631:21:7;6688:2;6668:18;;;6661:30;6727:34;6707:18;;;6700:62;-1:-1:-1;;;6778:18:7;;;6771:33;6821:19;;7671:64:3;6447:399:7;7671:64:3;-1:-1:-1;;;;;7817:15:3;;7795:19;7817:15;;;;;;;;;;;7850:21;;;;7842:72;;;;-1:-1:-1;;;7842:72:3;;7053:2:7;7842:72:3;;;7035:21:7;7092:2;7072:18;;;7065:30;7131:34;7111:18;;;7104:62;-1:-1:-1;;;7182:18:7;;;7175:36;7228:19;;7842:72:3;6851:402:7;7842:72:3;-1:-1:-1;;;;;7948:15:3;;;:9;:15;;;;;;;;;;;7966:20;;;7948:38;;8006:13;;;;;;;;:23;;7980:6;;7948:9;8006:23;;7980:6;;8006:23;:::i;:::-;;;;;;;;8060:2;-1:-1:-1;;;;;8045:26:3;8054:4;-1:-1:-1;;;;;8045:26:3;;8064:6;8045:26;;;;1391:25:7;;1379:2;1364:18;;1245:177;8045:26:3;;;;;;;;8082:37;11786:121;8402:389;-1:-1:-1;;;;;8485:21:3;;8477:65;;;;-1:-1:-1;;;8477:65:3;;7460:2:7;8477:65:3;;;7442:21:7;7499:2;7479:18;;;7472:30;7538:33;7518:18;;;7511:61;7589:18;;8477:65:3;7258:355:7;8477:65:3;8629:6;8613:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8645:18:3;;:9;:18;;;;;;;;;;:28;;8667:6;;8645:9;:28;;8667:6;;8645:28;:::i;:::-;;;;-1:-1:-1;;8688:37:3;;1391:25:7;;;-1:-1:-1;;;;;8688:37:3;;;8705:1;;8688:37;;1379:2:7;1364:18;8688:37:3;;;;;;;3390:240:0;;:::o;1359:130:2:-;1273:6;;-1:-1:-1;;;;;1273:6:2;719:10:6;1422:23:2;1414:68;;;;-1:-1:-1;;;1414:68:2;;7820:2:7;1414:68:2;;;7802:21:7;;;7839:18;;;7832:30;7898:34;7878:18;;;7871:62;7950:18;;1414:68:2;7618:356:7;2433:187:2;2525:6;;;-1:-1:-1;;;;;2541:17:2;;;-1:-1:-1;;;;;;2541:17:2;;;;;;;2573:40;;2525:6;;;2541:17;2525:6;;2573:40;;2506:16;;2573:40;2496:124;2433:187;:::o;14:597:7:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:7;574:15;-1:-1:-1;;570:29:7;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:7:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:7;;723:42;;713:70;;779:1;776;769:12;794:254;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:7:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1949:186::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;2100:29;2119:9;2100:29;:::i;:::-;2090:39;1949:186;-1:-1:-1;;;1949:186:7:o;2140:260::-;2208:6;2216;2269:2;2257:9;2248:7;2244:23;2240:32;2237:52;;;2285:1;2282;2275:12;2237:52;2308:29;2327:9;2308:29;:::i;:::-;2298:39;;2356:38;2390:2;2379:9;2375:18;2356:38;:::i;:::-;2346:48;;2140:260;;;;;:::o;2613:380::-;2692:1;2688:12;;;;2735;;;2756:61;;2810:4;2802:6;2798:17;2788:27;;2756:61;2863:2;2855:6;2852:14;2832:18;2829:38;2826:161;;;2909:10;2904:3;2900:20;2897:1;2890:31;2944:4;2941:1;2934:15;2972:4;2969:1;2962:15;2826:161;;2613:380;;;:::o;2998:127::-;3059:10;3054:3;3050:20;3047:1;3040:31;3090:4;3087:1;3080:15;3114:4;3111:1;3104:15;3130:128;3170:3;3201:1;3197:6;3194:1;3191:13;3188:39;;;3207:18;;:::i;:::-;-1:-1:-1;3243:9:7;;3130:128::o;3667:168::-;3707:7;3773:1;3769;3765:6;3761:14;3758:1;3755:21;3750:1;3743:9;3736:17;3732:45;3729:71;;;3780:18;;:::i;:::-;-1:-1:-1;3820:9:7;;3667:168::o;3840:217::-;3880:1;3906;3896:132;;3950:10;3945:3;3941:20;3938:1;3931:31;3985:4;3982:1;3975:15;4013:4;4010:1;4003:15;3896:132;-1:-1:-1;4042:9:7;;3840:217::o

Swarm Source

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