ETH Price: $3,120.29 (-0.05%)

Token

AppleVRMichelleObamaInuPunk (GRETA)
 

Overview

Max Total Supply

100,000,000,000,000 GRETA

Holders

97

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

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:
Greta

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-02-03
*/

// File @openzeppelin/contracts/utils/[email protected]

// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.0 (utils/Context.sol)

pragma solidity ^0.8.0;

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 @openzeppelin/contracts/access/[email protected]


// OpenZeppelin Contracts v4.4.0 (access/Ownable.sol)

pragma solidity ^0.8.0;

/**
 * @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 Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        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 @openzeppelin/contracts/token/ERC20/[email protected]


// OpenZeppelin Contracts v4.4.0 (token/ERC20/IERC20.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @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 `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, 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 `sender` to `recipient` 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 sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    /**
     * @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);
}


// File @openzeppelin/contracts/token/ERC20/extensions/[email protected]


// OpenZeppelin Contracts v4.4.0 (token/ERC20/extensions/IERC20Metadata.sol)

pragma solidity ^0.8.0;

/**
 * @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);
}


// File @openzeppelin/contracts/token/ERC20/[email protected]


// OpenZeppelin Contracts v4.4.0 (token/ERC20/ERC20.sol)

pragma solidity ^0.8.0;



/**
 * @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:
     *
     * - `recipient` cannot be the zero address.
     * - the caller must have a balance of at least `amount`.
     */
    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, 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}.
     *
     * Requirements:
     *
     * - `spender` cannot be the zero address.
     */
    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), 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}.
     *
     * Requirements:
     *
     * - `sender` and `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     * - the caller must have allowance for ``sender``'s tokens of at least
     * `amount`.
     */
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        unchecked {
            _approve(sender, _msgSender(), currentAllowance - 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) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][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) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

    /**
     * @dev Moves `amount` of tokens from `sender` to `recipient`.
     *
     * 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:
     *
     * - `sender` cannot be the zero address.
     * - `recipient` cannot be the zero address.
     * - `sender` must have a balance of at least `amount`.
     */
    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");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[sender] = senderBalance - amount;
        }
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, 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 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 contracts/MAI.sol



pragma solidity ^0.8.0;


contract Greta is Ownable, ERC20 {
    bool public limited;
    uint256 public maxHoldingAmount;
    uint256 public minHoldingAmount;
    address public uniswapV2Pair;
    mapping(address => bool) public blacklists;

    constructor(uint256 _totalSupply) ERC20("AppleVRMichelleObamaInuPunk", "GRETA") {
        _mint(msg.sender, _totalSupply);
    }

   

    function setRule(bool _limited, address _uniswapV2Pair, uint256 _maxHoldingAmount, uint256 _minHoldingAmount) external onlyOwner {
        limited = _limited;
        uniswapV2Pair = _uniswapV2Pair;
        maxHoldingAmount = _maxHoldingAmount;
        minHoldingAmount = _minHoldingAmount;
    }


    function burn(uint256 value) external {
        _burn(msg.sender, value);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"uint256","name":"_totalSupply","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":[{"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":"address","name":"","type":"address"}],"name":"blacklists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"value","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":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limited","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxHoldingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minHoldingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_limited","type":"bool"},{"internalType":"address","name":"_uniswapV2Pair","type":"address"},{"internalType":"uint256","name":"_maxHoldingAmount","type":"uint256"},{"internalType":"uint256","name":"_minHoldingAmount","type":"uint256"}],"name":"setRule","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60806040523480156200001157600080fd5b50604051620023bd380380620023bd833981810160405281019062000037919062000427565b6040518060400160405280601b81526020017f4170706c6556524d696368656c6c654f62616d61496e7550756e6b00000000008152506040518060400160405280600581526020017f4752455441000000000000000000000000000000000000000000000000000000815250620000c3620000b76200011060201b60201c565b6200011860201b60201c565b8160049080519060200190620000db92919062000360565b508060059080519060200190620000f492919062000360565b505050620001093382620001dc60201b60201c565b506200060b565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200024f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200024690620004a6565b60405180910390fd5b62000263600083836200035660201b60201c565b8060036000828254620002779190620004f6565b9250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254620002cf9190620004f6565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003369190620004c8565b60405180910390a362000352600083836200035b60201b60201c565b5050565b505050565b505050565b8280546200036e906200055d565b90600052602060002090601f016020900481019282620003925760008555620003de565b82601f10620003ad57805160ff1916838001178555620003de565b82800160010185558215620003de579182015b82811115620003dd578251825591602001919060010190620003c0565b5b509050620003ed9190620003f1565b5090565b5b808211156200040c576000816000905550600101620003f2565b5090565b6000815190506200042181620005f1565b92915050565b6000602082840312156200043a57600080fd5b60006200044a8482850162000410565b91505092915050565b600062000462601f83620004e5565b91507f45524332303a206d696e7420746f20746865207a65726f2061646472657373006000830152602082019050919050565b620004a08162000553565b82525050565b60006020820190508181036000830152620004c18162000453565b9050919050565b6000602082019050620004df600083018462000495565b92915050565b600082825260208201905092915050565b6000620005038262000553565b9150620005108362000553565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000548576200054762000593565b5b828201905092915050565b6000819050919050565b600060028204905060018216806200057657607f821691505b602082108114156200058d576200058c620005c2565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b620005fc8162000553565b81146200060857600080fd5b50565b611da2806200061b6000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c806349bd5a5e116100b85780638da5cb5b1161007c5780638da5cb5b1461034057806395d89b411461035e578063a457c2d71461037c578063a9059cbb146103ac578063dd62ed3e146103dc578063f2fde38b1461040c57610137565b806349bd5a5e146102ac57806370a08231146102ca578063715018a6146102fa578063860a32ec1461030457806389f9a1d31461032257610137565b806323b872dd116100ff57806323b872dd146101f6578063313ce5671461022657806339509351146102445780633aa633aa1461027457806342966c681461029057610137565b806306fdde031461013c578063095ea7b31461015a57806316c021291461018a57806318160ddd146101ba5780631ab99e12146101d8575b600080fd5b610144610428565b60405161015191906119a0565b60405180910390f35b610174600480360381019061016f91906113f1565b6104ba565b6040516101819190611985565b60405180910390f35b6101a4600480360381019061019f919061133d565b6104d8565b6040516101b19190611985565b60405180910390f35b6101c26104f8565b6040516101cf9190611b22565b60405180910390f35b6101e0610502565b6040516101ed9190611b22565b60405180910390f35b610210600480360381019061020b91906113a2565b610508565b60405161021d9190611985565b60405180910390f35b61022e610600565b60405161023b9190611b3d565b60405180910390f35b61025e600480360381019061025991906113f1565b610609565b60405161026b9190611985565b60405180910390f35b61028e6004803603810190610289919061142d565b6106b5565b005b6102aa60048036038101906102a59190611490565b6107a0565b005b6102b46107ad565b6040516102c1919061196a565b60405180910390f35b6102e460048036038101906102df919061133d565b6107d3565b6040516102f19190611b22565b60405180910390f35b61030261081c565b005b61030c6108a4565b6040516103199190611985565b60405180910390f35b61032a6108b7565b6040516103379190611b22565b60405180910390f35b6103486108bd565b604051610355919061196a565b60405180910390f35b6103666108e6565b60405161037391906119a0565b60405180910390f35b610396600480360381019061039191906113f1565b610978565b6040516103a39190611985565b60405180910390f35b6103c660048036038101906103c191906113f1565b610a63565b6040516103d39190611985565b60405180910390f35b6103f660048036038101906103f19190611366565b610a81565b6040516104039190611b22565b60405180910390f35b6104266004803603810190610421919061133d565b610b08565b005b60606004805461043790611c86565b80601f016020809104026020016040519081016040528092919081815260200182805461046390611c86565b80156104b05780601f10610485576101008083540402835291602001916104b0565b820191906000526020600020905b81548152906001019060200180831161049357829003601f168201915b5050505050905090565b60006104ce6104c7610c00565b8484610c08565b6001905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b6000600354905090565b60085481565b6000610515848484610dd3565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610560610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d790611a62565b60405180910390fd5b6105f4856105ec610c00565b858403610c08565b60019150509392505050565b60006012905090565b60006106ab610616610c00565b848460026000610624610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106a69190611b74565b610c08565b6001905092915050565b6106bd610c00565b73ffffffffffffffffffffffffffffffffffffffff166106db6108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610731576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072890611a82565b60405180910390fd5b83600660006101000a81548160ff02191690831515021790555082600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b6107aa3382611057565b50565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610824610c00565b73ffffffffffffffffffffffffffffffffffffffff166108426108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611a82565b60405180910390fd5b6108a26000611230565b565b600660009054906101000a900460ff1681565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600580546108f590611c86565b80601f016020809104026020016040519081016040528092919081815260200182805461092190611c86565b801561096e5780601f106109435761010080835404028352916020019161096e565b820191906000526020600020905b81548152906001019060200180831161095157829003601f168201915b5050505050905090565b60008060026000610987610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610a44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3b90611b02565b60405180910390fd5b610a58610a4f610c00565b85858403610c08565b600191505092915050565b6000610a77610a70610c00565b8484610dd3565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610b10610c00565b73ffffffffffffffffffffffffffffffffffffffff16610b2e6108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610b84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7b90611a82565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610bf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610beb90611a02565b60405180910390fd5b610bfd81611230565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6f90611ae2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ce8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdf90611a22565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610dc69190611b22565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a90611ac2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eaa906119c2565b60405180910390fd5b610ebe8383836112f4565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610f45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3c90611a42565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610fda9190611b74565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161103e9190611b22565b60405180910390a36110518484846112f9565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110be90611aa2565b60405180910390fd5b6110d3826000836112f4565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561115a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611151906119e2565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282546111b29190611bca565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112179190611b22565b60405180910390a361122b836000846112f9565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b505050565b60008135905061130d81611d27565b92915050565b60008135905061132281611d3e565b92915050565b60008135905061133781611d55565b92915050565b60006020828403121561134f57600080fd5b600061135d848285016112fe565b91505092915050565b6000806040838503121561137957600080fd5b6000611387858286016112fe565b9250506020611398858286016112fe565b9150509250929050565b6000806000606084860312156113b757600080fd5b60006113c5868287016112fe565b93505060206113d6868287016112fe565b92505060406113e786828701611328565b9150509250925092565b6000806040838503121561140457600080fd5b6000611412858286016112fe565b925050602061142385828601611328565b9150509250929050565b6000806000806080858703121561144357600080fd5b600061145187828801611313565b9450506020611462878288016112fe565b935050604061147387828801611328565b925050606061148487828801611328565b91505092959194509250565b6000602082840312156114a257600080fd5b60006114b084828501611328565b91505092915050565b6114c281611bfe565b82525050565b6114d181611c10565b82525050565b60006114e282611b58565b6114ec8185611b63565b93506114fc818560208601611c53565b61150581611d16565b840191505092915050565b600061151d602383611b63565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611583602283611b63565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006115e9602683611b63565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061164f602283611b63565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006116b5602683611b63565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061171b602883611b63565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611781602083611b63565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b60006117c1602183611b63565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611827602583611b63565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061188d602483611b63565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006118f3602583611b63565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61195581611c3c565b82525050565b61196481611c46565b82525050565b600060208201905061197f60008301846114b9565b92915050565b600060208201905061199a60008301846114c8565b92915050565b600060208201905081810360008301526119ba81846114d7565b905092915050565b600060208201905081810360008301526119db81611510565b9050919050565b600060208201905081810360008301526119fb81611576565b9050919050565b60006020820190508181036000830152611a1b816115dc565b9050919050565b60006020820190508181036000830152611a3b81611642565b9050919050565b60006020820190508181036000830152611a5b816116a8565b9050919050565b60006020820190508181036000830152611a7b8161170e565b9050919050565b60006020820190508181036000830152611a9b81611774565b9050919050565b60006020820190508181036000830152611abb816117b4565b9050919050565b60006020820190508181036000830152611adb8161181a565b9050919050565b60006020820190508181036000830152611afb81611880565b9050919050565b60006020820190508181036000830152611b1b816118e6565b9050919050565b6000602082019050611b37600083018461194c565b92915050565b6000602082019050611b52600083018461195b565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b7f82611c3c565b9150611b8a83611c3c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611bbf57611bbe611cb8565b5b828201905092915050565b6000611bd582611c3c565b9150611be083611c3c565b925082821015611bf357611bf2611cb8565b5b828203905092915050565b6000611c0982611c1c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611c71578082015181840152602081019050611c56565b83811115611c80576000848401525b50505050565b60006002820490506001821680611c9e57607f821691505b60208210811415611cb257611cb1611ce7565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b611d3081611bfe565b8114611d3b57600080fd5b50565b611d4781611c10565b8114611d5257600080fd5b50565b611d5e81611c3c565b8114611d6957600080fd5b5056fea2646970667358221220ce3e38656f5090a4d4a9d4ce7c9154b012886af639ecb2252f3a38ea9feda7cf64736f6c6343000800003300000000000000000000000000000000000004ee2d6d415b85acef8100000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101375760003560e01c806349bd5a5e116100b85780638da5cb5b1161007c5780638da5cb5b1461034057806395d89b411461035e578063a457c2d71461037c578063a9059cbb146103ac578063dd62ed3e146103dc578063f2fde38b1461040c57610137565b806349bd5a5e146102ac57806370a08231146102ca578063715018a6146102fa578063860a32ec1461030457806389f9a1d31461032257610137565b806323b872dd116100ff57806323b872dd146101f6578063313ce5671461022657806339509351146102445780633aa633aa1461027457806342966c681461029057610137565b806306fdde031461013c578063095ea7b31461015a57806316c021291461018a57806318160ddd146101ba5780631ab99e12146101d8575b600080fd5b610144610428565b60405161015191906119a0565b60405180910390f35b610174600480360381019061016f91906113f1565b6104ba565b6040516101819190611985565b60405180910390f35b6101a4600480360381019061019f919061133d565b6104d8565b6040516101b19190611985565b60405180910390f35b6101c26104f8565b6040516101cf9190611b22565b60405180910390f35b6101e0610502565b6040516101ed9190611b22565b60405180910390f35b610210600480360381019061020b91906113a2565b610508565b60405161021d9190611985565b60405180910390f35b61022e610600565b60405161023b9190611b3d565b60405180910390f35b61025e600480360381019061025991906113f1565b610609565b60405161026b9190611985565b60405180910390f35b61028e6004803603810190610289919061142d565b6106b5565b005b6102aa60048036038101906102a59190611490565b6107a0565b005b6102b46107ad565b6040516102c1919061196a565b60405180910390f35b6102e460048036038101906102df919061133d565b6107d3565b6040516102f19190611b22565b60405180910390f35b61030261081c565b005b61030c6108a4565b6040516103199190611985565b60405180910390f35b61032a6108b7565b6040516103379190611b22565b60405180910390f35b6103486108bd565b604051610355919061196a565b60405180910390f35b6103666108e6565b60405161037391906119a0565b60405180910390f35b610396600480360381019061039191906113f1565b610978565b6040516103a39190611985565b60405180910390f35b6103c660048036038101906103c191906113f1565b610a63565b6040516103d39190611985565b60405180910390f35b6103f660048036038101906103f19190611366565b610a81565b6040516104039190611b22565b60405180910390f35b6104266004803603810190610421919061133d565b610b08565b005b60606004805461043790611c86565b80601f016020809104026020016040519081016040528092919081815260200182805461046390611c86565b80156104b05780601f10610485576101008083540402835291602001916104b0565b820191906000526020600020905b81548152906001019060200180831161049357829003601f168201915b5050505050905090565b60006104ce6104c7610c00565b8484610c08565b6001905092915050565b600a6020528060005260406000206000915054906101000a900460ff1681565b6000600354905090565b60085481565b6000610515848484610dd3565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610560610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105d790611a62565b60405180910390fd5b6105f4856105ec610c00565b858403610c08565b60019150509392505050565b60006012905090565b60006106ab610616610c00565b848460026000610624610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106a69190611b74565b610c08565b6001905092915050565b6106bd610c00565b73ffffffffffffffffffffffffffffffffffffffff166106db6108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610731576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161072890611a82565b60405180910390fd5b83600660006101000a81548160ff02191690831515021790555082600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816007819055508060088190555050505050565b6107aa3382611057565b50565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610824610c00565b73ffffffffffffffffffffffffffffffffffffffff166108426108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610898576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161088f90611a82565b60405180910390fd5b6108a26000611230565b565b600660009054906101000a900460ff1681565b60075481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600580546108f590611c86565b80601f016020809104026020016040519081016040528092919081815260200182805461092190611c86565b801561096e5780601f106109435761010080835404028352916020019161096e565b820191906000526020600020905b81548152906001019060200180831161095157829003601f168201915b5050505050905090565b60008060026000610987610c00565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610a44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3b90611b02565b60405180910390fd5b610a58610a4f610c00565b85858403610c08565b600191505092915050565b6000610a77610a70610c00565b8484610dd3565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610b10610c00565b73ffffffffffffffffffffffffffffffffffffffff16610b2e6108bd565b73ffffffffffffffffffffffffffffffffffffffff1614610b84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7b90611a82565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610bf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610beb90611a02565b60405180910390fd5b610bfd81611230565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c78576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6f90611ae2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610ce8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdf90611a22565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610dc69190611b22565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610e43576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3a90611ac2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610eb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eaa906119c2565b60405180910390fd5b610ebe8383836112f4565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015610f45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f3c90611a42565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610fda9190611b74565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161103e9190611b22565b60405180910390a36110518484846112f9565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156110c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110be90611aa2565b60405180910390fd5b6110d3826000836112f4565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561115a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611151906119e2565b60405180910390fd5b818103600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360008282546111b29190611bca565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112179190611b22565b60405180910390a361122b836000846112f9565b505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b505050565b60008135905061130d81611d27565b92915050565b60008135905061132281611d3e565b92915050565b60008135905061133781611d55565b92915050565b60006020828403121561134f57600080fd5b600061135d848285016112fe565b91505092915050565b6000806040838503121561137957600080fd5b6000611387858286016112fe565b9250506020611398858286016112fe565b9150509250929050565b6000806000606084860312156113b757600080fd5b60006113c5868287016112fe565b93505060206113d6868287016112fe565b92505060406113e786828701611328565b9150509250925092565b6000806040838503121561140457600080fd5b6000611412858286016112fe565b925050602061142385828601611328565b9150509250929050565b6000806000806080858703121561144357600080fd5b600061145187828801611313565b9450506020611462878288016112fe565b935050604061147387828801611328565b925050606061148487828801611328565b91505092959194509250565b6000602082840312156114a257600080fd5b60006114b084828501611328565b91505092915050565b6114c281611bfe565b82525050565b6114d181611c10565b82525050565b60006114e282611b58565b6114ec8185611b63565b93506114fc818560208601611c53565b61150581611d16565b840191505092915050565b600061151d602383611b63565b91507f45524332303a207472616e7366657220746f20746865207a65726f206164647260008301527f65737300000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611583602283611b63565b91507f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008301527f63650000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006115e9602683611b63565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061164f602283611b63565b91507f45524332303a20617070726f766520746f20746865207a65726f20616464726560008301527f73730000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006116b5602683611b63565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206260008301527f616c616e636500000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061171b602883611b63565b91507f45524332303a207472616e7366657220616d6f756e742065786365656473206160008301527f6c6c6f77616e63650000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611781602083611b63565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b60006117c1602183611b63565b91507f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008301527f73000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611827602583611b63565b91507f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008301527f64726573730000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061188d602483611b63565b91507f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008301527f72657373000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b60006118f3602583611b63565b91507f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008301527f207a65726f0000000000000000000000000000000000000000000000000000006020830152604082019050919050565b61195581611c3c565b82525050565b61196481611c46565b82525050565b600060208201905061197f60008301846114b9565b92915050565b600060208201905061199a60008301846114c8565b92915050565b600060208201905081810360008301526119ba81846114d7565b905092915050565b600060208201905081810360008301526119db81611510565b9050919050565b600060208201905081810360008301526119fb81611576565b9050919050565b60006020820190508181036000830152611a1b816115dc565b9050919050565b60006020820190508181036000830152611a3b81611642565b9050919050565b60006020820190508181036000830152611a5b816116a8565b9050919050565b60006020820190508181036000830152611a7b8161170e565b9050919050565b60006020820190508181036000830152611a9b81611774565b9050919050565b60006020820190508181036000830152611abb816117b4565b9050919050565b60006020820190508181036000830152611adb8161181a565b9050919050565b60006020820190508181036000830152611afb81611880565b9050919050565b60006020820190508181036000830152611b1b816118e6565b9050919050565b6000602082019050611b37600083018461194c565b92915050565b6000602082019050611b52600083018461195b565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b7f82611c3c565b9150611b8a83611c3c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611bbf57611bbe611cb8565b5b828201905092915050565b6000611bd582611c3c565b9150611be083611c3c565b925082821015611bf357611bf2611cb8565b5b828203905092915050565b6000611c0982611c1c565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611c71578082015181840152602081019050611c56565b83811115611c80576000848401525b50505050565b60006002820490506001821680611c9e57607f821691505b60208210811415611cb257611cb1611ce7565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b611d3081611bfe565b8114611d3b57600080fd5b50565b611d4781611c10565b8114611d5257600080fd5b50565b611d5e81611c3c565b8114611d6957600080fd5b5056fea2646970667358221220ce3e38656f5090a4d4a9d4ce7c9154b012886af639ecb2252f3a38ea9feda7cf64736f6c63430008000033

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

00000000000000000000000000000000000004ee2d6d415b85acef8100000000

-----Decoded View---------------
Arg [0] : _totalSupply (uint256): 100000000000000000000000000000000

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000004ee2d6d415b85acef8100000000


Deployed Bytecode Sourcemap

18766:768:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8741:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10908:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18943:42;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9861:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18870:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11559:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9703:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12460:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19139:301;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19450:81;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18908:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10032:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2142:103;;;:::i;:::-;;18806:19;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18832:31;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1491:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8960:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13178:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10372:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10610:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2400:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8741:100;8795:13;8828:5;8821:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8741:100;:::o;10908:169::-;10991:4;11008:39;11017:12;:10;:12::i;:::-;11031:7;11040:6;11008:8;:39::i;:::-;11065:4;11058:11;;10908:169;;;;:::o;18943:42::-;;;;;;;;;;;;;;;;;;;;;;:::o;9861:108::-;9922:7;9949:12;;9942:19;;9861:108;:::o;18870:31::-;;;;:::o;11559:492::-;11699:4;11716:36;11726:6;11734:9;11745:6;11716:9;:36::i;:::-;11765:24;11792:11;:19;11804:6;11792:19;;;;;;;;;;;;;;;:33;11812:12;:10;:12::i;:::-;11792:33;;;;;;;;;;;;;;;;11765:60;;11864:6;11844:16;:26;;11836:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;11951:57;11960:6;11968:12;:10;:12::i;:::-;12001:6;11982:16;:25;11951:8;:57::i;:::-;12039:4;12032:11;;;11559:492;;;;;:::o;9703:93::-;9761:5;9786:2;9779:9;;9703:93;:::o;12460:215::-;12548:4;12565:80;12574:12;:10;:12::i;:::-;12588:7;12634:10;12597:11;:25;12609:12;:10;:12::i;:::-;12597:25;;;;;;;;;;;;;;;:34;12623:7;12597:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;12565:8;:80::i;:::-;12663:4;12656:11;;12460:215;;;;:::o;19139:301::-;1722:12;:10;:12::i;:::-;1711:23;;:7;:5;:7::i;:::-;:23;;;1703:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19289:8:::1;19279:7;;:18;;;;;;;;;;;;;;;;;;19324:14;19308:13;;:30;;;;;;;;;;;;;;;;;;19368:17;19349:16;:36;;;;19415:17;19396:16;:36;;;;19139:301:::0;;;;:::o;19450:81::-;19499:24;19505:10;19517:5;19499;:24::i;:::-;19450:81;:::o;18908:28::-;;;;;;;;;;;;;:::o;10032:127::-;10106:7;10133:9;:18;10143:7;10133:18;;;;;;;;;;;;;;;;10126:25;;10032:127;;;:::o;2142:103::-;1722:12;:10;:12::i;:::-;1711:23;;:7;:5;:7::i;:::-;:23;;;1703:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2207:30:::1;2234:1;2207:18;:30::i;:::-;2142:103::o:0;18806:19::-;;;;;;;;;;;;;:::o;18832:31::-;;;;:::o;1491:87::-;1537:7;1564:6;;;;;;;;;;;1557:13;;1491:87;:::o;8960:104::-;9016:13;9049:7;9042:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8960:104;:::o;13178:413::-;13271:4;13288:24;13315:11;:25;13327:12;:10;:12::i;:::-;13315:25;;;;;;;;;;;;;;;:34;13341:7;13315:34;;;;;;;;;;;;;;;;13288:61;;13388:15;13368:16;:35;;13360:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13481:67;13490:12;:10;:12::i;:::-;13504:7;13532:15;13513:16;:34;13481:8;:67::i;:::-;13579:4;13572:11;;;13178:413;;;;:::o;10372:175::-;10458:4;10475:42;10485:12;:10;:12::i;:::-;10499:9;10510:6;10475:9;:42::i;:::-;10535:4;10528:11;;10372:175;;;;:::o;10610:151::-;10699:7;10726:11;:18;10738:5;10726:18;;;;;;;;;;;;;;;:27;10745:7;10726:27;;;;;;;;;;;;;;;;10719:34;;10610:151;;;;:::o;2400:201::-;1722:12;:10;:12::i;:::-;1711:23;;:7;:5;:7::i;:::-;:23;;;1703:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2509:1:::1;2489:22;;:8;:22;;;;2481:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;2565:28;2584:8;2565:18;:28::i;:::-;2400:201:::0;:::o;209:98::-;262:7;289:10;282:17;;209:98;:::o;16862:380::-;17015:1;16998:19;;:5;:19;;;;16990:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17096:1;17077:21;;:7;:21;;;;17069:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17180:6;17150:11;:18;17162:5;17150:18;;;;;;;;;;;;;;;:27;17169:7;17150:27;;;;;;;;;;;;;;;:36;;;;17218:7;17202:32;;17211:5;17202:32;;;17227:6;17202:32;;;;;;:::i;:::-;;;;;;;;16862:380;;;:::o;14081:733::-;14239:1;14221:20;;:6;:20;;;;14213:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14323:1;14302:23;;:9;:23;;;;14294:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;14378:47;14399:6;14407:9;14418:6;14378:20;:47::i;:::-;14438:21;14462:9;:17;14472:6;14462:17;;;;;;;;;;;;;;;;14438:41;;14515:6;14498:13;:23;;14490:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;14636:6;14620:13;:22;14600:9;:17;14610:6;14600:17;;;;;;;;;;;;;;;:42;;;;14688:6;14664:9;:20;14674:9;14664:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;14729:9;14712:35;;14721:6;14712:35;;;14740:6;14712:35;;;;;;:::i;:::-;;;;;;;;14760:46;14780:6;14788:9;14799:6;14760:19;:46::i;:::-;14081:733;;;;:::o;15833:591::-;15936:1;15917:21;;:7;:21;;;;15909:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15989:49;16010:7;16027:1;16031:6;15989:20;:49::i;:::-;16051:22;16076:9;:18;16086:7;16076:18;;;;;;;;;;;;;;;;16051:43;;16131:6;16113:14;:24;;16105:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;16250:6;16233:14;:23;16212:9;:18;16222:7;16212:18;;;;;;;;;;;;;;;:44;;;;16294:6;16278:12;;:22;;;;;;;:::i;:::-;;;;;;;;16344:1;16318:37;;16327:7;16318:37;;;16348:6;16318:37;;;;;;:::i;:::-;;;;;;;;16368:48;16388:7;16405:1;16409:6;16368:19;:48::i;:::-;15833:591;;;:::o;2761:191::-;2835:16;2854:6;;;;;;;;;;;2835:25;;2880:8;2871:6;;:17;;;;;;;;;;;;;;;;;;2935:8;2904:40;;2925:8;2904:40;;;;;;;;;;;;2761:191;;:::o;17842:125::-;;;;:::o;18571:124::-;;;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:133::-;;233:6;220:20;211:29;;249:30;273:5;249:30;:::i;:::-;201:84;;;;:::o;291:139::-;;375:6;362:20;353:29;;391:33;418:5;391:33;:::i;:::-;343:87;;;;:::o;436:262::-;;544:2;532:9;523:7;519:23;515:32;512:2;;;560:1;557;550:12;512:2;603:1;628:53;673:7;664:6;653:9;649:22;628:53;:::i;:::-;618:63;;574:117;502:196;;;;:::o;704:407::-;;;829:2;817:9;808:7;804:23;800:32;797:2;;;845:1;842;835:12;797:2;888:1;913:53;958:7;949:6;938:9;934:22;913:53;:::i;:::-;903:63;;859:117;1015:2;1041:53;1086:7;1077:6;1066:9;1062:22;1041:53;:::i;:::-;1031:63;;986:118;787:324;;;;;:::o;1117:552::-;;;;1259:2;1247:9;1238:7;1234:23;1230:32;1227:2;;;1275:1;1272;1265:12;1227:2;1318:1;1343:53;1388:7;1379:6;1368:9;1364:22;1343:53;:::i;:::-;1333:63;;1289:117;1445:2;1471:53;1516:7;1507:6;1496:9;1492:22;1471:53;:::i;:::-;1461:63;;1416:118;1573:2;1599:53;1644:7;1635:6;1624:9;1620:22;1599:53;:::i;:::-;1589:63;;1544:118;1217:452;;;;;:::o;1675:407::-;;;1800:2;1788:9;1779:7;1775:23;1771:32;1768:2;;;1816:1;1813;1806:12;1768:2;1859:1;1884:53;1929:7;1920:6;1909:9;1905:22;1884:53;:::i;:::-;1874:63;;1830:117;1986:2;2012:53;2057:7;2048:6;2037:9;2033:22;2012:53;:::i;:::-;2002:63;;1957:118;1758:324;;;;;:::o;2088:692::-;;;;;2244:3;2232:9;2223:7;2219:23;2215:33;2212:2;;;2261:1;2258;2251:12;2212:2;2304:1;2329:50;2371:7;2362:6;2351:9;2347:22;2329:50;:::i;:::-;2319:60;;2275:114;2428:2;2454:53;2499:7;2490:6;2479:9;2475:22;2454:53;:::i;:::-;2444:63;;2399:118;2556:2;2582:53;2627:7;2618:6;2607:9;2603:22;2582:53;:::i;:::-;2572:63;;2527:118;2684:2;2710:53;2755:7;2746:6;2735:9;2731:22;2710:53;:::i;:::-;2700:63;;2655:118;2202:578;;;;;;;:::o;2786:262::-;;2894:2;2882:9;2873:7;2869:23;2865:32;2862:2;;;2910:1;2907;2900:12;2862:2;2953:1;2978:53;3023:7;3014:6;3003:9;2999:22;2978:53;:::i;:::-;2968:63;;2924:117;2852:196;;;;:::o;3054:118::-;3141:24;3159:5;3141:24;:::i;:::-;3136:3;3129:37;3119:53;;:::o;3178:109::-;3259:21;3274:5;3259:21;:::i;:::-;3254:3;3247:34;3237:50;;:::o;3293:364::-;;3409:39;3442:5;3409:39;:::i;:::-;3464:71;3528:6;3523:3;3464:71;:::i;:::-;3457:78;;3544:52;3589:6;3584:3;3577:4;3570:5;3566:16;3544:52;:::i;:::-;3621:29;3643:6;3621:29;:::i;:::-;3616:3;3612:39;3605:46;;3385:272;;;;;:::o;3663:367::-;;3826:67;3890:2;3885:3;3826:67;:::i;:::-;3819:74;;3923:34;3919:1;3914:3;3910:11;3903:55;3989:5;3984:2;3979:3;3975:12;3968:27;4021:2;4016:3;4012:12;4005:19;;3809:221;;;:::o;4036:366::-;;4199:67;4263:2;4258:3;4199:67;:::i;:::-;4192:74;;4296:34;4292:1;4287:3;4283:11;4276:55;4362:4;4357:2;4352:3;4348:12;4341:26;4393:2;4388:3;4384:12;4377:19;;4182:220;;;:::o;4408:370::-;;4571:67;4635:2;4630:3;4571:67;:::i;:::-;4564:74;;4668:34;4664:1;4659:3;4655:11;4648:55;4734:8;4729:2;4724:3;4720:12;4713:30;4769:2;4764:3;4760:12;4753:19;;4554:224;;;:::o;4784:366::-;;4947:67;5011:2;5006:3;4947:67;:::i;:::-;4940:74;;5044:34;5040:1;5035:3;5031:11;5024:55;5110:4;5105:2;5100:3;5096:12;5089:26;5141:2;5136:3;5132:12;5125:19;;4930:220;;;:::o;5156:370::-;;5319:67;5383:2;5378:3;5319:67;:::i;:::-;5312:74;;5416:34;5412:1;5407:3;5403:11;5396:55;5482:8;5477:2;5472:3;5468:12;5461:30;5517:2;5512:3;5508:12;5501:19;;5302:224;;;:::o;5532:372::-;;5695:67;5759:2;5754:3;5695:67;:::i;:::-;5688:74;;5792:34;5788:1;5783:3;5779:11;5772:55;5858:10;5853:2;5848:3;5844:12;5837:32;5895:2;5890:3;5886:12;5879:19;;5678:226;;;:::o;5910:330::-;;6073:67;6137:2;6132:3;6073:67;:::i;:::-;6066:74;;6170:34;6166:1;6161:3;6157:11;6150:55;6231:2;6226:3;6222:12;6215:19;;6056:184;;;:::o;6246:365::-;;6409:67;6473:2;6468:3;6409:67;:::i;:::-;6402:74;;6506:34;6502:1;6497:3;6493:11;6486:55;6572:3;6567:2;6562:3;6558:12;6551:25;6602:2;6597:3;6593:12;6586:19;;6392:219;;;:::o;6617:369::-;;6780:67;6844:2;6839:3;6780:67;:::i;:::-;6773:74;;6877:34;6873:1;6868:3;6864:11;6857:55;6943:7;6938:2;6933:3;6929:12;6922:29;6977:2;6972:3;6968:12;6961:19;;6763:223;;;:::o;6992:368::-;;7155:67;7219:2;7214:3;7155:67;:::i;:::-;7148:74;;7252:34;7248:1;7243:3;7239:11;7232:55;7318:6;7313:2;7308:3;7304:12;7297:28;7351:2;7346:3;7342:12;7335:19;;7138:222;;;:::o;7366:369::-;;7529:67;7593:2;7588:3;7529:67;:::i;:::-;7522:74;;7626:34;7622:1;7617:3;7613:11;7606:55;7692:7;7687:2;7682:3;7678:12;7671:29;7726:2;7721:3;7717:12;7710:19;;7512:223;;;:::o;7741:118::-;7828:24;7846:5;7828:24;:::i;:::-;7823:3;7816:37;7806:53;;:::o;7865:112::-;7948:22;7964:5;7948:22;:::i;:::-;7943:3;7936:35;7926:51;;:::o;7983:222::-;;8114:2;8103:9;8099:18;8091:26;;8127:71;8195:1;8184:9;8180:17;8171:6;8127:71;:::i;:::-;8081:124;;;;:::o;8211:210::-;;8336:2;8325:9;8321:18;8313:26;;8349:65;8411:1;8400:9;8396:17;8387:6;8349:65;:::i;:::-;8303:118;;;;:::o;8427:313::-;;8578:2;8567:9;8563:18;8555:26;;8627:9;8621:4;8617:20;8613:1;8602:9;8598:17;8591:47;8655:78;8728:4;8719:6;8655:78;:::i;:::-;8647:86;;8545:195;;;;:::o;8746:419::-;;8950:2;8939:9;8935:18;8927:26;;8999:9;8993:4;8989:20;8985:1;8974:9;8970:17;8963:47;9027:131;9153:4;9027:131;:::i;:::-;9019:139;;8917:248;;;:::o;9171:419::-;;9375:2;9364:9;9360:18;9352:26;;9424:9;9418:4;9414:20;9410:1;9399:9;9395:17;9388:47;9452:131;9578:4;9452:131;:::i;:::-;9444:139;;9342:248;;;:::o;9596:419::-;;9800:2;9789:9;9785:18;9777:26;;9849:9;9843:4;9839:20;9835:1;9824:9;9820:17;9813:47;9877:131;10003:4;9877:131;:::i;:::-;9869:139;;9767:248;;;:::o;10021:419::-;;10225:2;10214:9;10210:18;10202:26;;10274:9;10268:4;10264:20;10260:1;10249:9;10245:17;10238:47;10302:131;10428:4;10302:131;:::i;:::-;10294:139;;10192:248;;;:::o;10446:419::-;;10650:2;10639:9;10635:18;10627:26;;10699:9;10693:4;10689:20;10685:1;10674:9;10670:17;10663:47;10727:131;10853:4;10727:131;:::i;:::-;10719:139;;10617:248;;;:::o;10871:419::-;;11075:2;11064:9;11060:18;11052:26;;11124:9;11118:4;11114:20;11110:1;11099:9;11095:17;11088:47;11152:131;11278:4;11152:131;:::i;:::-;11144:139;;11042:248;;;:::o;11296:419::-;;11500:2;11489:9;11485:18;11477:26;;11549:9;11543:4;11539:20;11535:1;11524:9;11520:17;11513:47;11577:131;11703:4;11577:131;:::i;:::-;11569:139;;11467:248;;;:::o;11721:419::-;;11925:2;11914:9;11910:18;11902:26;;11974:9;11968:4;11964:20;11960:1;11949:9;11945:17;11938:47;12002:131;12128:4;12002:131;:::i;:::-;11994:139;;11892:248;;;:::o;12146:419::-;;12350:2;12339:9;12335:18;12327:26;;12399:9;12393:4;12389:20;12385:1;12374:9;12370:17;12363:47;12427:131;12553:4;12427:131;:::i;:::-;12419:139;;12317:248;;;:::o;12571:419::-;;12775:2;12764:9;12760:18;12752:26;;12824:9;12818:4;12814:20;12810:1;12799:9;12795:17;12788:47;12852:131;12978:4;12852:131;:::i;:::-;12844:139;;12742:248;;;:::o;12996:419::-;;13200:2;13189:9;13185:18;13177:26;;13249:9;13243:4;13239:20;13235:1;13224:9;13220:17;13213:47;13277:131;13403:4;13277:131;:::i;:::-;13269:139;;13167:248;;;:::o;13421:222::-;;13552:2;13541:9;13537:18;13529:26;;13565:71;13633:1;13622:9;13618:17;13609:6;13565:71;:::i;:::-;13519:124;;;;:::o;13649:214::-;;13776:2;13765:9;13761:18;13753:26;;13789:67;13853:1;13842:9;13838:17;13829:6;13789:67;:::i;:::-;13743:120;;;;:::o;13869:99::-;;13955:5;13949:12;13939:22;;13928:40;;;:::o;13974:169::-;;14092:6;14087:3;14080:19;14132:4;14127:3;14123:14;14108:29;;14070:73;;;;:::o;14149:305::-;;14208:20;14226:1;14208:20;:::i;:::-;14203:25;;14242:20;14260:1;14242:20;:::i;:::-;14237:25;;14396:1;14328:66;14324:74;14321:1;14318:81;14315:2;;;14402:18;;:::i;:::-;14315:2;14446:1;14443;14439:9;14432:16;;14193:261;;;;:::o;14460:191::-;;14520:20;14538:1;14520:20;:::i;:::-;14515:25;;14554:20;14572:1;14554:20;:::i;:::-;14549:25;;14593:1;14590;14587:8;14584:2;;;14598:18;;:::i;:::-;14584:2;14643:1;14640;14636:9;14628:17;;14505:146;;;;:::o;14657:96::-;;14723:24;14741:5;14723:24;:::i;:::-;14712:35;;14702:51;;;:::o;14759:90::-;;14836:5;14829:13;14822:21;14811:32;;14801:48;;;:::o;14855:126::-;;14932:42;14925:5;14921:54;14910:65;;14900:81;;;:::o;14987:77::-;;15053:5;15042:16;;15032:32;;;:::o;15070:86::-;;15145:4;15138:5;15134:16;15123:27;;15113:43;;;:::o;15162:307::-;15230:1;15240:113;15254:6;15251:1;15248:13;15240:113;;;15339:1;15334:3;15330:11;15324:18;15320:1;15315:3;15311:11;15304:39;15276:2;15273:1;15269:10;15264:15;;15240:113;;;15371:6;15368:1;15365:13;15362:2;;;15451:1;15442:6;15437:3;15433:16;15426:27;15362:2;15211:258;;;;:::o;15475:320::-;;15556:1;15550:4;15546:12;15536:22;;15603:1;15597:4;15593:12;15624:18;15614:2;;15680:4;15672:6;15668:17;15658:27;;15614:2;15742;15734:6;15731:14;15711:18;15708:38;15705:2;;;15761:18;;:::i;:::-;15705:2;15526:269;;;;:::o;15801:180::-;15849:77;15846:1;15839:88;15946:4;15943:1;15936:15;15970:4;15967:1;15960:15;15987:180;16035:77;16032:1;16025:88;16132:4;16129:1;16122:15;16156:4;16153:1;16146:15;16173:102;;16265:2;16261:7;16256:2;16249:5;16245:14;16241:28;16231:38;;16221:54;;;:::o;16281:122::-;16354:24;16372:5;16354:24;:::i;:::-;16347:5;16344:35;16334:2;;16393:1;16390;16383:12;16334:2;16324:79;:::o;16409:116::-;16479:21;16494:5;16479:21;:::i;:::-;16472:5;16469:32;16459:2;;16515:1;16512;16505:12;16459:2;16449:76;:::o;16531:122::-;16604:24;16622:5;16604:24;:::i;:::-;16597:5;16594:35;16584:2;;16643:1;16640;16633:12;16584:2;16574:79;:::o

Swarm Source

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