ETH Price: $2,975.69 (-4.13%)
Gas: 1 Gwei

Token

DinoSwap (DINO)
 

Overview

Max Total Supply

202,340,000 DINO

Holders

101

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
0xMaki
Balance
7,845.8445074478573216 DINO

Value
$0.00
0x285b7eea81a5b66b62e7276a24c1e0f83f7409c1
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:
DinoSwap

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-07-11
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/******************************************/
/*           IERC20 starts here           */
/******************************************/

// File: @openzeppelin/contracts/token/ERC20/IERC20.sol

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

/******************************************/
/*           Context starts here          */
/******************************************/

// File: @openzeppelin/contracts/GSN/Context.sol

/*
 * @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) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

/******************************************/
/*           Ownable starts here          */
/******************************************/

/**
 * @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() {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), 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 {
        emit OwnershipTransferred(_owner, address(0));
        _owner = 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");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

/******************************************/
/*      IERC20Metadata starts here        */
/******************************************/

// File: @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.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);
}

/******************************************/
/*           ERC20 starts here            */
/******************************************/

// File: @openzeppelin/contracts/token/ERC20/ERC20.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 guidelines: functions revert instead
 * of 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 tokens `amount` from `sender` to `recipient`.
     *
     * This is 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);
    }

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

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

    /**
     * @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 to 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 {}
}

/******************************************/
/*           DinoSwap starts here         */
/******************************************/

contract DinoSwap is ERC20, Ownable {

    address public minter;

    event DinosMinted(address to, uint256 amount);
    event DinosBurned(address from, uint256 amount);
    event LogNewMinter(address minter);

    modifier onlyMinter() {
        require(msg.sender == minter, "Caller is not the minter.");
        _;
    }
    
    constructor(string memory name, string memory symbol, address allocationsContract) ERC20(name, symbol) {
        _mint(allocationsContract, 65*1e24);
    }

    function setMinter(address newMinter) external onlyOwner {
        minter = newMinter;
        emit LogNewMinter(minter);
    }

    function mintDinos(address to, uint256 amount) external onlyMinter {
        _mint(to, amount);
        emit DinosMinted(to, amount);
    }

    function burnDinos(address from, uint256 amount) external onlyMinter {
        _burn(from, amount);
        emit DinosBurned(from, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"allocationsContract","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"DinosBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"DinosMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"minter","type":"address"}],"name":"LogNewMinter","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":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnDinos","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":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mintDinos","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"minter","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"address","name":"newMinter","type":"address"}],"name":"setMinter","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"}]

60806040523480156200001157600080fd5b50604051620028d4380380620028d48339818101604052810190620000379190620003ef565b8282816003908051906020019062000051929190620002b6565b5080600490805190602001906200006a929190620002b6565b50505060006200007f6200014460201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506200013b816a35c4490f820855e10000006200014c60201b60201c565b5050506200077c565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620001bf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620001b690620004af565b60405180910390fd5b620001d360008383620002b160201b60201c565b8060026000828254620001e791906200055e565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546200023e91906200055e565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620002a59190620004d1565b60405180910390a35050565b505050565b828054620002c4906200062f565b90600052602060002090601f016020900481019282620002e8576000855562000334565b82601f106200030357805160ff191683800117855562000334565b8280016001018555821562000334579182015b828111156200033357825182559160200191906001019062000316565b5b50905062000343919062000347565b5090565b5b808211156200036257600081600090555060010162000348565b5090565b60006200037d620003778462000517565b620004ee565b9050828152602081018484840111156200039657600080fd5b620003a3848285620005f9565b509392505050565b600081519050620003bc8162000762565b92915050565b600082601f830112620003d457600080fd5b8151620003e684826020860162000366565b91505092915050565b6000806000606084860312156200040557600080fd5b600084015167ffffffffffffffff8111156200042057600080fd5b6200042e86828701620003c2565b935050602084015167ffffffffffffffff8111156200044c57600080fd5b6200045a86828701620003c2565b92505060406200046d86828701620003ab565b9150509250925092565b600062000486601f836200054d565b9150620004938262000739565b602082019050919050565b620004a981620005ef565b82525050565b60006020820190508181036000830152620004ca8162000477565b9050919050565b6000602082019050620004e860008301846200049e565b92915050565b6000620004fa6200050d565b905062000508828262000665565b919050565b6000604051905090565b600067ffffffffffffffff821115620005355762000534620006f9565b5b620005408262000728565b9050602081019050919050565b600082825260208201905092915050565b60006200056b82620005ef565b91506200057883620005ef565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620005b057620005af6200069b565b5b828201905092915050565b6000620005c882620005cf565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b8381101562000619578082015181840152602081019050620005fc565b8381111562000629576000848401525b50505050565b600060028204905060018216806200064857607f821691505b602082108114156200065f576200065e620006ca565b5b50919050565b620006708262000728565b810181811067ffffffffffffffff82111715620006925762000691620006f9565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6200076d81620005bb565b81146200077957600080fd5b50565b612148806200078c6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a2578063a9059cbb11610071578063a9059cbb146102e5578063c0ef19b414610315578063dd62ed3e14610331578063f2fde38b14610361578063fca3b5aa1461037d57610116565b8063715018a61461026f5780638da5cb5b1461027957806395d89b4114610297578063a457c2d7146102b557610116565b806323b872dd116100e957806323b872dd146101a5578063313ce567146101d557806339509351146101f3578063637c43991461022357806370a082311461023f57610116565b806306fdde031461011b5780630754617214610139578063095ea7b31461015757806318160ddd14610187575b600080fd5b610123610399565b604051610130919061198c565b60405180910390f35b61014161042b565b60405161014e919061192d565b60405180910390f35b610171600480360381019061016c91906116b5565b610451565b60405161017e9190611971565b60405180910390f35b61018f61046f565b60405161019c9190611b4e565b60405180910390f35b6101bf60048036038101906101ba9190611666565b610479565b6040516101cc9190611971565b60405180910390f35b6101dd610571565b6040516101ea9190611b69565b60405180910390f35b61020d600480360381019061020891906116b5565b61057a565b60405161021a9190611971565b60405180910390f35b61023d600480360381019061023891906116b5565b610626565b005b61025960048036038101906102549190611601565b6106fd565b6040516102669190611b4e565b60405180910390f35b610277610745565b005b610281610882565b60405161028e919061192d565b60405180910390f35b61029f6108ac565b6040516102ac919061198c565b60405180910390f35b6102cf60048036038101906102ca91906116b5565b61093e565b6040516102dc9190611971565b60405180910390f35b6102ff60048036038101906102fa91906116b5565b610a29565b60405161030c9190611971565b60405180910390f35b61032f600480360381019061032a91906116b5565b610a47565b005b61034b6004803603810190610346919061162a565b610b1e565b6040516103589190611b4e565b60405180910390f35b61037b60048036038101906103769190611601565b610ba5565b005b61039760048036038101906103929190611601565b610d51565b005b6060600380546103a890611cb2565b80601f01602080910402602001604051908101604052809291908181526020018280546103d490611cb2565b80156104215780601f106103f657610100808354040283529160200191610421565b820191906000526020600020905b81548152906001019060200180831161040457829003601f168201915b5050505050905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061046561045e610e6a565b8484610e72565b6001905092915050565b6000600254905090565b600061048684848461103d565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d1610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610551576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054890611a4e565b60405180910390fd5b6105658561055d610e6a565b858403610e72565b60019150509392505050565b60006012905090565b600061061c610587610e6a565b848460016000610595610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106179190611ba0565b610e72565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ad90611ace565b60405180910390fd5b6106c082826112b3565b7ff864b2d33386d35b7ff5a04824246941626682243a792f008af6588b91bf48d782826040516106f1929190611948565b60405180910390a15050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61074d610e6a565b73ffffffffffffffffffffffffffffffffffffffff1661076b610882565b73ffffffffffffffffffffffffffffffffffffffff16146107c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b890611a6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546108bb90611cb2565b80601f01602080910402602001604051908101604052809291908181526020018280546108e790611cb2565b80156109345780601f1061090957610100808354040283529160200191610934565b820191906000526020600020905b81548152906001019060200180831161091757829003601f168201915b5050505050905090565b6000806001600061094d610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0190611b0e565b60405180910390fd5b610a1e610a15610e6a565b85858403610e72565b600191505092915050565b6000610a3d610a36610e6a565b848461103d565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace90611ace565b60405180910390fd5b610ae1828261147e565b7f34ad7aa5dba2fa70f998371074c083b0932f55c9e237ee849f1c34a8da387bb88282604051610b12929190611948565b60405180910390a15050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610bad610e6a565b73ffffffffffffffffffffffffffffffffffffffff16610bcb610882565b73ffffffffffffffffffffffffffffffffffffffff1614610c21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1890611a6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c88906119ee565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610d59610e6a565b73ffffffffffffffffffffffffffffffffffffffff16610d77610882565b73ffffffffffffffffffffffffffffffffffffffff1614610dcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc490611a6e565b60405180910390fd5b80600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fb47afe87c8374738d61604b305e5d2d8fc0d8c6164287b16aa2707d6454f12d9600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051610e5f919061192d565b60405180910390a150565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ee2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed990611aee565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4990611a0e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110309190611b4e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a490611aae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561111d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611114906119ae565b60405180910390fd5b6111288383836115d2565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a590611a2e565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112419190611ba0565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112a59190611b4e565b60405180910390a350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131a90611a8e565b60405180910390fd5b61132f826000836115d2565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156113b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ac906119ce565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816002600082825461140c9190611bf6565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114719190611b4e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e590611b2e565b60405180910390fd5b6114fa600083836115d2565b806002600082825461150c9190611ba0565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115619190611ba0565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115c69190611b4e565b60405180910390a35050565b505050565b6000813590506115e6816120e4565b92915050565b6000813590506115fb816120fb565b92915050565b60006020828403121561161357600080fd5b6000611621848285016115d7565b91505092915050565b6000806040838503121561163d57600080fd5b600061164b858286016115d7565b925050602061165c858286016115d7565b9150509250929050565b60008060006060848603121561167b57600080fd5b6000611689868287016115d7565b935050602061169a868287016115d7565b92505060406116ab868287016115ec565b9150509250925092565b600080604083850312156116c857600080fd5b60006116d6858286016115d7565b92505060206116e7858286016115ec565b9150509250929050565b6116fa81611c2a565b82525050565b61170981611c3c565b82525050565b600061171a82611b84565b6117248185611b8f565b9350611734818560208601611c7f565b61173d81611d42565b840191505092915050565b6000611755602383611b8f565b915061176082611d53565b604082019050919050565b6000611778602283611b8f565b915061178382611da2565b604082019050919050565b600061179b602683611b8f565b91506117a682611df1565b604082019050919050565b60006117be602283611b8f565b91506117c982611e40565b604082019050919050565b60006117e1602683611b8f565b91506117ec82611e8f565b604082019050919050565b6000611804602883611b8f565b915061180f82611ede565b604082019050919050565b6000611827602083611b8f565b915061183282611f2d565b602082019050919050565b600061184a602183611b8f565b915061185582611f56565b604082019050919050565b600061186d602583611b8f565b915061187882611fa5565b604082019050919050565b6000611890601983611b8f565b915061189b82611ff4565b602082019050919050565b60006118b3602483611b8f565b91506118be8261201d565b604082019050919050565b60006118d6602583611b8f565b91506118e18261206c565b604082019050919050565b60006118f9601f83611b8f565b9150611904826120bb565b602082019050919050565b61191881611c68565b82525050565b61192781611c72565b82525050565b600060208201905061194260008301846116f1565b92915050565b600060408201905061195d60008301856116f1565b61196a602083018461190f565b9392505050565b60006020820190506119866000830184611700565b92915050565b600060208201905081810360008301526119a6818461170f565b905092915050565b600060208201905081810360008301526119c781611748565b9050919050565b600060208201905081810360008301526119e78161176b565b9050919050565b60006020820190508181036000830152611a078161178e565b9050919050565b60006020820190508181036000830152611a27816117b1565b9050919050565b60006020820190508181036000830152611a47816117d4565b9050919050565b60006020820190508181036000830152611a67816117f7565b9050919050565b60006020820190508181036000830152611a878161181a565b9050919050565b60006020820190508181036000830152611aa78161183d565b9050919050565b60006020820190508181036000830152611ac781611860565b9050919050565b60006020820190508181036000830152611ae781611883565b9050919050565b60006020820190508181036000830152611b07816118a6565b9050919050565b60006020820190508181036000830152611b27816118c9565b9050919050565b60006020820190508181036000830152611b47816118ec565b9050919050565b6000602082019050611b63600083018461190f565b92915050565b6000602082019050611b7e600083018461191e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611bab82611c68565b9150611bb683611c68565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611beb57611bea611ce4565b5b828201905092915050565b6000611c0182611c68565b9150611c0c83611c68565b925082821015611c1f57611c1e611ce4565b5b828203905092915050565b6000611c3582611c48565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611c9d578082015181840152602081019050611c82565b83811115611cac576000848401525b50505050565b60006002820490506001821680611cca57607f821691505b60208210811415611cde57611cdd611d13565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f43616c6c6572206973206e6f7420746865206d696e7465722e00000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6120ed81611c2a565b81146120f857600080fd5b50565b61210481611c68565b811461210f57600080fd5b5056fea2646970667358221220ebe220ab3b189389cb894899ed3f1a9ee3eb6f6ae8522c5610e18ec0e3a5d55464736f6c63430008040033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000005e97d162f297a36ae5123b07f661f9b6d0e6188d000000000000000000000000000000000000000000000000000000000000000844696e6f53776170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444494e4f00000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101165760003560e01c8063715018a6116100a2578063a9059cbb11610071578063a9059cbb146102e5578063c0ef19b414610315578063dd62ed3e14610331578063f2fde38b14610361578063fca3b5aa1461037d57610116565b8063715018a61461026f5780638da5cb5b1461027957806395d89b4114610297578063a457c2d7146102b557610116565b806323b872dd116100e957806323b872dd146101a5578063313ce567146101d557806339509351146101f3578063637c43991461022357806370a082311461023f57610116565b806306fdde031461011b5780630754617214610139578063095ea7b31461015757806318160ddd14610187575b600080fd5b610123610399565b604051610130919061198c565b60405180910390f35b61014161042b565b60405161014e919061192d565b60405180910390f35b610171600480360381019061016c91906116b5565b610451565b60405161017e9190611971565b60405180910390f35b61018f61046f565b60405161019c9190611b4e565b60405180910390f35b6101bf60048036038101906101ba9190611666565b610479565b6040516101cc9190611971565b60405180910390f35b6101dd610571565b6040516101ea9190611b69565b60405180910390f35b61020d600480360381019061020891906116b5565b61057a565b60405161021a9190611971565b60405180910390f35b61023d600480360381019061023891906116b5565b610626565b005b61025960048036038101906102549190611601565b6106fd565b6040516102669190611b4e565b60405180910390f35b610277610745565b005b610281610882565b60405161028e919061192d565b60405180910390f35b61029f6108ac565b6040516102ac919061198c565b60405180910390f35b6102cf60048036038101906102ca91906116b5565b61093e565b6040516102dc9190611971565b60405180910390f35b6102ff60048036038101906102fa91906116b5565b610a29565b60405161030c9190611971565b60405180910390f35b61032f600480360381019061032a91906116b5565b610a47565b005b61034b6004803603810190610346919061162a565b610b1e565b6040516103589190611b4e565b60405180910390f35b61037b60048036038101906103769190611601565b610ba5565b005b61039760048036038101906103929190611601565b610d51565b005b6060600380546103a890611cb2565b80601f01602080910402602001604051908101604052809291908181526020018280546103d490611cb2565b80156104215780601f106103f657610100808354040283529160200191610421565b820191906000526020600020905b81548152906001019060200180831161040457829003601f168201915b5050505050905090565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061046561045e610e6a565b8484610e72565b6001905092915050565b6000600254905090565b600061048684848461103d565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006104d1610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610551576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161054890611a4e565b60405180910390fd5b6105658561055d610e6a565b858403610e72565b60019150509392505050565b60006012905090565b600061061c610587610e6a565b848460016000610595610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546106179190611ba0565b610e72565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146106b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106ad90611ace565b60405180910390fd5b6106c082826112b3565b7ff864b2d33386d35b7ff5a04824246941626682243a792f008af6588b91bf48d782826040516106f1929190611948565b60405180910390a15050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61074d610e6a565b73ffffffffffffffffffffffffffffffffffffffff1661076b610882565b73ffffffffffffffffffffffffffffffffffffffff16146107c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b890611a6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546108bb90611cb2565b80601f01602080910402602001604051908101604052809291908181526020018280546108e790611cb2565b80156109345780601f1061090957610100808354040283529160200191610934565b820191906000526020600020905b81548152906001019060200180831161091757829003601f168201915b5050505050905090565b6000806001600061094d610e6a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a0190611b0e565b60405180910390fd5b610a1e610a15610e6a565b85858403610e72565b600191505092915050565b6000610a3d610a36610e6a565b848461103d565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ad7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ace90611ace565b60405180910390fd5b610ae1828261147e565b7f34ad7aa5dba2fa70f998371074c083b0932f55c9e237ee849f1c34a8da387bb88282604051610b12929190611948565b60405180910390a15050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610bad610e6a565b73ffffffffffffffffffffffffffffffffffffffff16610bcb610882565b73ffffffffffffffffffffffffffffffffffffffff1614610c21576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1890611a6e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c91576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c88906119ee565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610d59610e6a565b73ffffffffffffffffffffffffffffffffffffffff16610d77610882565b73ffffffffffffffffffffffffffffffffffffffff1614610dcd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc490611a6e565b60405180910390fd5b80600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507fb47afe87c8374738d61604b305e5d2d8fc0d8c6164287b16aa2707d6454f12d9600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051610e5f919061192d565b60405180910390a150565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610ee2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed990611aee565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610f52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4990611a0e565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516110309190611b4e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156110ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a490611aae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561111d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611114906119ae565b60405180910390fd5b6111288383836115d2565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156111ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111a590611a2e565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546112419190611ba0565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516112a59190611b4e565b60405180910390a350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131a90611a8e565b60405180910390fd5b61132f826000836115d2565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156113b5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ac906119ce565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816002600082825461140c9190611bf6565b92505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114719190611b4e565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156114ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114e590611b2e565b60405180910390fd5b6114fa600083836115d2565b806002600082825461150c9190611ba0565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546115619190611ba0565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516115c69190611b4e565b60405180910390a35050565b505050565b6000813590506115e6816120e4565b92915050565b6000813590506115fb816120fb565b92915050565b60006020828403121561161357600080fd5b6000611621848285016115d7565b91505092915050565b6000806040838503121561163d57600080fd5b600061164b858286016115d7565b925050602061165c858286016115d7565b9150509250929050565b60008060006060848603121561167b57600080fd5b6000611689868287016115d7565b935050602061169a868287016115d7565b92505060406116ab868287016115ec565b9150509250925092565b600080604083850312156116c857600080fd5b60006116d6858286016115d7565b92505060206116e7858286016115ec565b9150509250929050565b6116fa81611c2a565b82525050565b61170981611c3c565b82525050565b600061171a82611b84565b6117248185611b8f565b9350611734818560208601611c7f565b61173d81611d42565b840191505092915050565b6000611755602383611b8f565b915061176082611d53565b604082019050919050565b6000611778602283611b8f565b915061178382611da2565b604082019050919050565b600061179b602683611b8f565b91506117a682611df1565b604082019050919050565b60006117be602283611b8f565b91506117c982611e40565b604082019050919050565b60006117e1602683611b8f565b91506117ec82611e8f565b604082019050919050565b6000611804602883611b8f565b915061180f82611ede565b604082019050919050565b6000611827602083611b8f565b915061183282611f2d565b602082019050919050565b600061184a602183611b8f565b915061185582611f56565b604082019050919050565b600061186d602583611b8f565b915061187882611fa5565b604082019050919050565b6000611890601983611b8f565b915061189b82611ff4565b602082019050919050565b60006118b3602483611b8f565b91506118be8261201d565b604082019050919050565b60006118d6602583611b8f565b91506118e18261206c565b604082019050919050565b60006118f9601f83611b8f565b9150611904826120bb565b602082019050919050565b61191881611c68565b82525050565b61192781611c72565b82525050565b600060208201905061194260008301846116f1565b92915050565b600060408201905061195d60008301856116f1565b61196a602083018461190f565b9392505050565b60006020820190506119866000830184611700565b92915050565b600060208201905081810360008301526119a6818461170f565b905092915050565b600060208201905081810360008301526119c781611748565b9050919050565b600060208201905081810360008301526119e78161176b565b9050919050565b60006020820190508181036000830152611a078161178e565b9050919050565b60006020820190508181036000830152611a27816117b1565b9050919050565b60006020820190508181036000830152611a47816117d4565b9050919050565b60006020820190508181036000830152611a67816117f7565b9050919050565b60006020820190508181036000830152611a878161181a565b9050919050565b60006020820190508181036000830152611aa78161183d565b9050919050565b60006020820190508181036000830152611ac781611860565b9050919050565b60006020820190508181036000830152611ae781611883565b9050919050565b60006020820190508181036000830152611b07816118a6565b9050919050565b60006020820190508181036000830152611b27816118c9565b9050919050565b60006020820190508181036000830152611b47816118ec565b9050919050565b6000602082019050611b63600083018461190f565b92915050565b6000602082019050611b7e600083018461191e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611bab82611c68565b9150611bb683611c68565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611beb57611bea611ce4565b5b828201905092915050565b6000611c0182611c68565b9150611c0c83611c68565b925082821015611c1f57611c1e611ce4565b5b828203905092915050565b6000611c3582611c48565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b83811015611c9d578082015181840152602081019050611c82565b83811115611cac576000848401525b50505050565b60006002820490506001821680611cca57607f821691505b60208210811415611cde57611cdd611d13565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f43616c6c6572206973206e6f7420746865206d696e7465722e00000000000000600082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6120ed81611c2a565b81146120f857600080fd5b50565b61210481611c68565b811461210f57600080fd5b5056fea2646970667358221220ebe220ab3b189389cb894899ed3f1a9ee3eb6f6ae8522c5610e18ec0e3a5d55464736f6c63430008040033

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

000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000005e97d162f297a36ae5123b07f661f9b6d0e6188d000000000000000000000000000000000000000000000000000000000000000844696e6f53776170000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000444494e4f00000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name (string): DinoSwap
Arg [1] : symbol (string): DINO
Arg [2] : allocationsContract (address): 0x5e97D162f297a36aE5123b07f661F9B6D0e6188d

-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000005e97d162f297a36ae5123b07f661f9b6d0e6188d
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [4] : 44696e6f53776170000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 44494e4f00000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

18565:951:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9370:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18610:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11537:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10490:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12188:492;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10332:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13089:215;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19365:148;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10661:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5887:148;;;:::i;:::-;;5236:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9589:104;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13807:413;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11001:175;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19215:142;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11239:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6190:244;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19077:130;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9370:100;9424:13;9457:5;9450:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9370:100;:::o;18610:21::-;;;;;;;;;;;;;:::o;11537:169::-;11620:4;11637:39;11646:12;:10;:12::i;:::-;11660:7;11669:6;11637:8;:39::i;:::-;11694:4;11687:11;;11537:169;;;;:::o;10490:108::-;10551:7;10578:12;;10571:19;;10490:108;:::o;12188:492::-;12328:4;12345:36;12355:6;12363:9;12374:6;12345:9;:36::i;:::-;12394:24;12421:11;:19;12433:6;12421:19;;;;;;;;;;;;;;;:33;12441:12;:10;:12::i;:::-;12421:33;;;;;;;;;;;;;;;;12394:60;;12493:6;12473:16;:26;;12465:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;12580:57;12589:6;12597:12;:10;:12::i;:::-;12630:6;12611:16;:25;12580:8;:57::i;:::-;12668:4;12661:11;;;12188:492;;;;;:::o;10332:93::-;10390:5;10415:2;10408:9;;10332:93;:::o;13089:215::-;13177:4;13194:80;13203:12;:10;:12::i;:::-;13217:7;13263:10;13226:11;:25;13238:12;:10;:12::i;:::-;13226:25;;;;;;;;;;;;;;;:34;13252:7;13226:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;13194:8;:80::i;:::-;13292:4;13285:11;;13089:215;;;;:::o;19365:148::-;18844:6;;;;;;;;;;;18830:20;;:10;:20;;;18822:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;19445:19:::1;19451:4;19457:6;19445:5;:19::i;:::-;19480:25;19492:4;19498:6;19480:25;;;;;;;:::i;:::-;;;;;;;;19365:148:::0;;:::o;10661:127::-;10735:7;10762:9;:18;10772:7;10762:18;;;;;;;;;;;;;;;;10755:25;;10661:127;;;:::o;5887:148::-;5467:12;:10;:12::i;:::-;5456:23;;:7;:5;:7::i;:::-;:23;;;5448:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5994:1:::1;5957:40;;5978:6;;;;;;;;;;;5957:40;;;;;;;;;;;;6025:1;6008:6;;:19;;;;;;;;;;;;;;;;;;5887:148::o:0;5236:87::-;5282:7;5309:6;;;;;;;;;;;5302:13;;5236:87;:::o;9589:104::-;9645:13;9678:7;9671:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9589:104;:::o;13807:413::-;13900:4;13917:24;13944:11;:25;13956:12;:10;:12::i;:::-;13944:25;;;;;;;;;;;;;;;:34;13970:7;13944:34;;;;;;;;;;;;;;;;13917:61;;14017:15;13997:16;:35;;13989:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;14110:67;14119:12;:10;:12::i;:::-;14133:7;14161:15;14142:16;:34;14110:8;:67::i;:::-;14208:4;14201:11;;;13807:413;;;;:::o;11001:175::-;11087:4;11104:42;11114:12;:10;:12::i;:::-;11128:9;11139:6;11104:9;:42::i;:::-;11164:4;11157:11;;11001:175;;;;:::o;19215:142::-;18844:6;;;;;;;;;;;18830:20;;:10;:20;;;18822:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;19293:17:::1;19299:2;19303:6;19293:5;:17::i;:::-;19326:23;19338:2;19342:6;19326:23;;;;;;;:::i;:::-;;;;;;;;19215:142:::0;;:::o;11239:151::-;11328:7;11355:11;:18;11367:5;11355:18;;;;;;;;;;;;;;;:27;11374:7;11355:27;;;;;;;;;;;;;;;;11348:34;;11239:151;;;;:::o;6190:244::-;5467:12;:10;:12::i;:::-;5456:23;;:7;:5;:7::i;:::-;:23;;;5448:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;6299:1:::1;6279:22;;:8;:22;;;;6271:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;6389:8;6360:38;;6381:6;;;;;;;;;;;6360:38;;;;;;;;;;;;6418:8;6409:6;;:17;;;;;;;;;;;;;;;;;;6190:244:::0;:::o;19077:130::-;5467:12;:10;:12::i;:::-;5456:23;;:7;:5;:7::i;:::-;:23;;;5448:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19154:9:::1;19145:6;;:18;;;;;;;;;;;;;;;;;;19179:20;19192:6;;;;;;;;;;;19179:20;;;;;;:::i;:::-;;;;;;;;19077:130:::0;:::o;3739:98::-;3792:7;3819:10;3812:17;;3739:98;:::o;17310:380::-;17463:1;17446:19;;:5;:19;;;;17438:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17544:1;17525:21;;:7;:21;;;;17517:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17628:6;17598:11;:18;17610:5;17598:18;;;;;;;;;;;;;;;:27;17617:7;17598:27;;;;;;;;;;;;;;;:36;;;;17666:7;17650:32;;17659:5;17650:32;;;17675:6;17650:32;;;;;;:::i;:::-;;;;;;;;17310:380;;;:::o;14710:674::-;14868:1;14850:20;;:6;:20;;;;14842:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14952:1;14931:23;;:9;:23;;;;14923:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;15007:47;15028:6;15036:9;15047:6;15007:20;:47::i;:::-;15067:21;15091:9;:17;15101:6;15091:17;;;;;;;;;;;;;;;;15067:41;;15144:6;15127:13;:23;;15119:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;15265:6;15249:13;:22;15229:9;:17;15239:6;15229:17;;;;;;;;;;;;;;;:42;;;;15317:6;15293:9;:20;15303:9;15293:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;15358:9;15341:35;;15350:6;15341:35;;;15369:6;15341:35;;;;;;:::i;:::-;;;;;;;;14710:674;;;;:::o;16342:530::-;16445:1;16426:21;;:7;:21;;;;16418:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;16498:49;16519:7;16536:1;16540:6;16498:20;:49::i;:::-;16560:22;16585:9;:18;16595:7;16585:18;;;;;;;;;;;;;;;;16560:43;;16640:6;16622:14;:24;;16614:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;16759:6;16742:14;:23;16721:9;:18;16731:7;16721:18;;;;;;;;;;;;;;;:44;;;;16803:6;16787:12;;:22;;;;;;;:::i;:::-;;;;;;;;16853:1;16827:37;;16836:7;16827:37;;;16857:6;16827:37;;;;;;:::i;:::-;;;;;;;;16342:530;;;:::o;15671:338::-;15774:1;15755:21;;:7;:21;;;;15747:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;15825:49;15854:1;15858:7;15867:6;15825:20;:49::i;:::-;15903:6;15887:12;;:22;;;;;;;:::i;:::-;;;;;;;;15942:6;15920:9;:18;15930:7;15920:18;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;15985:7;15964:37;;15981:1;15964:37;;;15994:6;15964:37;;;;;;:::i;:::-;;;;;;;;15671:338;;:::o;18293:125::-;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;356:6;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;633:6;641;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:552::-;1055:6;1063;1071;1120:2;1108:9;1099:7;1095:23;1091:32;1088:2;;;1136:1;1133;1126:12;1088:2;1179:1;1204:53;1249:7;1240:6;1229:9;1225:22;1204:53;:::i;:::-;1194:63;;1150:117;1306:2;1332:53;1377:7;1368:6;1357:9;1353:22;1332:53;:::i;:::-;1322:63;;1277:118;1434:2;1460:53;1505:7;1496:6;1485:9;1481:22;1460:53;:::i;:::-;1450:63;;1405:118;1078:452;;;;;:::o;1536:407::-;1604:6;1612;1661:2;1649:9;1640:7;1636:23;1632:32;1629:2;;;1677:1;1674;1667:12;1629:2;1720:1;1745:53;1790:7;1781:6;1770:9;1766:22;1745:53;:::i;:::-;1735:63;;1691:117;1847:2;1873:53;1918:7;1909:6;1898:9;1894:22;1873:53;:::i;:::-;1863:63;;1818:118;1619:324;;;;;:::o;1949:118::-;2036:24;2054:5;2036:24;:::i;:::-;2031:3;2024:37;2014:53;;:::o;2073:109::-;2154:21;2169:5;2154:21;:::i;:::-;2149:3;2142:34;2132:50;;:::o;2188:364::-;2276:3;2304:39;2337:5;2304:39;:::i;:::-;2359:71;2423:6;2418:3;2359:71;:::i;:::-;2352:78;;2439:52;2484:6;2479:3;2472:4;2465:5;2461:16;2439:52;:::i;:::-;2516:29;2538:6;2516:29;:::i;:::-;2511:3;2507:39;2500:46;;2280:272;;;;;:::o;2558:366::-;2700:3;2721:67;2785:2;2780:3;2721:67;:::i;:::-;2714:74;;2797:93;2886:3;2797:93;:::i;:::-;2915:2;2910:3;2906:12;2899:19;;2704:220;;;:::o;2930:366::-;3072:3;3093:67;3157:2;3152:3;3093:67;:::i;:::-;3086:74;;3169:93;3258:3;3169:93;:::i;:::-;3287:2;3282:3;3278:12;3271:19;;3076:220;;;:::o;3302:366::-;3444:3;3465:67;3529:2;3524:3;3465:67;:::i;:::-;3458:74;;3541:93;3630:3;3541:93;:::i;:::-;3659:2;3654:3;3650:12;3643:19;;3448:220;;;:::o;3674:366::-;3816:3;3837:67;3901:2;3896:3;3837:67;:::i;:::-;3830:74;;3913:93;4002:3;3913:93;:::i;:::-;4031:2;4026:3;4022:12;4015:19;;3820:220;;;:::o;4046:366::-;4188:3;4209:67;4273:2;4268:3;4209:67;:::i;:::-;4202:74;;4285:93;4374:3;4285:93;:::i;:::-;4403:2;4398:3;4394:12;4387:19;;4192:220;;;:::o;4418:366::-;4560:3;4581:67;4645:2;4640:3;4581:67;:::i;:::-;4574:74;;4657:93;4746:3;4657:93;:::i;:::-;4775:2;4770:3;4766:12;4759:19;;4564:220;;;:::o;4790:366::-;4932:3;4953:67;5017:2;5012:3;4953:67;:::i;:::-;4946:74;;5029:93;5118:3;5029:93;:::i;:::-;5147:2;5142:3;5138:12;5131:19;;4936:220;;;:::o;5162:366::-;5304:3;5325:67;5389:2;5384:3;5325:67;:::i;:::-;5318:74;;5401:93;5490:3;5401:93;:::i;:::-;5519:2;5514:3;5510:12;5503:19;;5308:220;;;:::o;5534:366::-;5676:3;5697:67;5761:2;5756:3;5697:67;:::i;:::-;5690:74;;5773:93;5862:3;5773:93;:::i;:::-;5891:2;5886:3;5882:12;5875:19;;5680:220;;;:::o;5906:366::-;6048:3;6069:67;6133:2;6128:3;6069:67;:::i;:::-;6062:74;;6145:93;6234:3;6145:93;:::i;:::-;6263:2;6258:3;6254:12;6247:19;;6052:220;;;:::o;6278:366::-;6420:3;6441:67;6505:2;6500:3;6441:67;:::i;:::-;6434:74;;6517:93;6606:3;6517:93;:::i;:::-;6635:2;6630:3;6626:12;6619:19;;6424:220;;;:::o;6650:366::-;6792:3;6813:67;6877:2;6872:3;6813:67;:::i;:::-;6806:74;;6889:93;6978:3;6889:93;:::i;:::-;7007:2;7002:3;6998:12;6991:19;;6796:220;;;:::o;7022:366::-;7164:3;7185:67;7249:2;7244:3;7185:67;:::i;:::-;7178:74;;7261:93;7350:3;7261:93;:::i;:::-;7379:2;7374:3;7370:12;7363:19;;7168:220;;;:::o;7394:118::-;7481:24;7499:5;7481:24;:::i;:::-;7476:3;7469:37;7459:53;;:::o;7518:112::-;7601:22;7617:5;7601:22;:::i;:::-;7596:3;7589:35;7579:51;;:::o;7636:222::-;7729:4;7767:2;7756:9;7752:18;7744:26;;7780:71;7848:1;7837:9;7833:17;7824:6;7780:71;:::i;:::-;7734:124;;;;:::o;7864:332::-;7985:4;8023:2;8012:9;8008:18;8000:26;;8036:71;8104:1;8093:9;8089:17;8080:6;8036:71;:::i;:::-;8117:72;8185:2;8174:9;8170:18;8161:6;8117:72;:::i;:::-;7990:206;;;;;:::o;8202:210::-;8289:4;8327:2;8316:9;8312:18;8304:26;;8340:65;8402:1;8391:9;8387:17;8378:6;8340:65;:::i;:::-;8294:118;;;;:::o;8418:313::-;8531:4;8569:2;8558:9;8554:18;8546:26;;8618:9;8612:4;8608:20;8604:1;8593:9;8589:17;8582:47;8646:78;8719:4;8710:6;8646:78;:::i;:::-;8638:86;;8536:195;;;;:::o;8737:419::-;8903:4;8941:2;8930:9;8926:18;8918:26;;8990:9;8984:4;8980:20;8976:1;8965:9;8961:17;8954:47;9018:131;9144:4;9018:131;:::i;:::-;9010:139;;8908:248;;;:::o;9162:419::-;9328:4;9366:2;9355:9;9351:18;9343:26;;9415:9;9409:4;9405:20;9401:1;9390:9;9386:17;9379:47;9443:131;9569:4;9443:131;:::i;:::-;9435:139;;9333:248;;;:::o;9587:419::-;9753:4;9791:2;9780:9;9776:18;9768:26;;9840:9;9834:4;9830:20;9826:1;9815:9;9811:17;9804:47;9868:131;9994:4;9868:131;:::i;:::-;9860:139;;9758:248;;;:::o;10012:419::-;10178:4;10216:2;10205:9;10201:18;10193:26;;10265:9;10259:4;10255:20;10251:1;10240:9;10236:17;10229:47;10293:131;10419:4;10293:131;:::i;:::-;10285:139;;10183:248;;;:::o;10437:419::-;10603:4;10641:2;10630:9;10626:18;10618:26;;10690:9;10684:4;10680:20;10676:1;10665:9;10661:17;10654:47;10718:131;10844:4;10718:131;:::i;:::-;10710:139;;10608:248;;;:::o;10862:419::-;11028:4;11066:2;11055:9;11051:18;11043:26;;11115:9;11109:4;11105:20;11101:1;11090:9;11086:17;11079:47;11143:131;11269:4;11143:131;:::i;:::-;11135:139;;11033:248;;;:::o;11287:419::-;11453:4;11491:2;11480:9;11476:18;11468:26;;11540:9;11534:4;11530:20;11526:1;11515:9;11511:17;11504:47;11568:131;11694:4;11568:131;:::i;:::-;11560:139;;11458:248;;;:::o;11712:419::-;11878:4;11916:2;11905:9;11901:18;11893:26;;11965:9;11959:4;11955:20;11951:1;11940:9;11936:17;11929:47;11993:131;12119:4;11993:131;:::i;:::-;11985:139;;11883:248;;;:::o;12137:419::-;12303:4;12341:2;12330:9;12326:18;12318:26;;12390:9;12384:4;12380:20;12376:1;12365:9;12361:17;12354:47;12418:131;12544:4;12418:131;:::i;:::-;12410:139;;12308:248;;;:::o;12562:419::-;12728:4;12766:2;12755:9;12751:18;12743:26;;12815:9;12809:4;12805:20;12801:1;12790:9;12786:17;12779:47;12843:131;12969:4;12843:131;:::i;:::-;12835:139;;12733:248;;;:::o;12987:419::-;13153:4;13191:2;13180:9;13176:18;13168:26;;13240:9;13234:4;13230:20;13226:1;13215:9;13211:17;13204:47;13268:131;13394:4;13268:131;:::i;:::-;13260:139;;13158:248;;;:::o;13412:419::-;13578:4;13616:2;13605:9;13601:18;13593:26;;13665:9;13659:4;13655:20;13651:1;13640:9;13636:17;13629:47;13693:131;13819:4;13693:131;:::i;:::-;13685:139;;13583:248;;;:::o;13837:419::-;14003:4;14041:2;14030:9;14026:18;14018:26;;14090:9;14084:4;14080:20;14076:1;14065:9;14061:17;14054:47;14118:131;14244:4;14118:131;:::i;:::-;14110:139;;14008:248;;;:::o;14262:222::-;14355:4;14393:2;14382:9;14378:18;14370:26;;14406:71;14474:1;14463:9;14459:17;14450:6;14406:71;:::i;:::-;14360:124;;;;:::o;14490:214::-;14579:4;14617:2;14606:9;14602:18;14594:26;;14630:67;14694:1;14683:9;14679:17;14670:6;14630:67;:::i;:::-;14584:120;;;;:::o;14710:99::-;14762:6;14796:5;14790:12;14780:22;;14769:40;;;:::o;14815:169::-;14899:11;14933:6;14928:3;14921:19;14973:4;14968:3;14964:14;14949:29;;14911:73;;;;:::o;14990:305::-;15030:3;15049:20;15067:1;15049:20;:::i;:::-;15044:25;;15083:20;15101:1;15083:20;:::i;:::-;15078:25;;15237:1;15169:66;15165:74;15162:1;15159:81;15156:2;;;15243:18;;:::i;:::-;15156:2;15287:1;15284;15280:9;15273:16;;15034:261;;;;:::o;15301:191::-;15341:4;15361:20;15379:1;15361:20;:::i;:::-;15356:25;;15395:20;15413:1;15395:20;:::i;:::-;15390:25;;15434:1;15431;15428:8;15425:2;;;15439:18;;:::i;:::-;15425:2;15484:1;15481;15477:9;15469:17;;15346:146;;;;:::o;15498:96::-;15535:7;15564:24;15582:5;15564:24;:::i;:::-;15553:35;;15543:51;;;:::o;15600:90::-;15634:7;15677:5;15670:13;15663:21;15652:32;;15642:48;;;:::o;15696:126::-;15733:7;15773:42;15766:5;15762:54;15751:65;;15741:81;;;:::o;15828:77::-;15865:7;15894:5;15883:16;;15873:32;;;:::o;15911:86::-;15946:7;15986:4;15979:5;15975:16;15964:27;;15954:43;;;:::o;16003:307::-;16071:1;16081:113;16095:6;16092:1;16089:13;16081:113;;;16180:1;16175:3;16171:11;16165:18;16161:1;16156:3;16152:11;16145:39;16117:2;16114:1;16110:10;16105:15;;16081:113;;;16212:6;16209:1;16206:13;16203:2;;;16292:1;16283:6;16278:3;16274:16;16267:27;16203:2;16052:258;;;;:::o;16316:320::-;16360:6;16397:1;16391:4;16387:12;16377:22;;16444:1;16438:4;16434:12;16465:18;16455:2;;16521:4;16513:6;16509:17;16499:27;;16455:2;16583;16575:6;16572:14;16552:18;16549:38;16546:2;;;16602:18;;:::i;:::-;16546:2;16367:269;;;;:::o;16642:180::-;16690:77;16687:1;16680:88;16787:4;16784:1;16777:15;16811:4;16808:1;16801:15;16828:180;16876:77;16873:1;16866:88;16973:4;16970:1;16963:15;16997:4;16994:1;16987:15;17014:102;17055:6;17106:2;17102:7;17097:2;17090:5;17086:14;17082:28;17072:38;;17062:54;;;:::o;17122:222::-;17262:34;17258:1;17250:6;17246:14;17239:58;17331:5;17326:2;17318:6;17314:15;17307:30;17228:116;:::o;17350:221::-;17490:34;17486:1;17478:6;17474:14;17467:58;17559:4;17554:2;17546:6;17542:15;17535:29;17456:115;:::o;17577:225::-;17717:34;17713:1;17705:6;17701:14;17694:58;17786:8;17781:2;17773:6;17769:15;17762:33;17683:119;:::o;17808:221::-;17948:34;17944:1;17936:6;17932:14;17925:58;18017:4;18012:2;18004:6;18000:15;17993:29;17914:115;:::o;18035:225::-;18175:34;18171:1;18163:6;18159:14;18152:58;18244:8;18239:2;18231:6;18227:15;18220:33;18141:119;:::o;18266:227::-;18406:34;18402:1;18394:6;18390:14;18383:58;18475:10;18470:2;18462:6;18458:15;18451:35;18372:121;:::o;18499:182::-;18639:34;18635:1;18627:6;18623:14;18616:58;18605:76;:::o;18687:220::-;18827:34;18823:1;18815:6;18811:14;18804:58;18896:3;18891:2;18883:6;18879:15;18872:28;18793:114;:::o;18913:224::-;19053:34;19049:1;19041:6;19037:14;19030:58;19122:7;19117:2;19109:6;19105:15;19098:32;19019:118;:::o;19143:175::-;19283:27;19279:1;19271:6;19267:14;19260:51;19249:69;:::o;19324:223::-;19464:34;19460:1;19452:6;19448:14;19441:58;19533:6;19528:2;19520:6;19516:15;19509:31;19430:117;:::o;19553:224::-;19693:34;19689:1;19681:6;19677:14;19670:58;19762:7;19757:2;19749:6;19745:15;19738:32;19659:118;:::o;19783:181::-;19923:33;19919:1;19911:6;19907:14;19900:57;19889:75;:::o;19970:122::-;20043:24;20061:5;20043:24;:::i;:::-;20036:5;20033:35;20023:2;;20082:1;20079;20072:12;20023:2;20013:79;:::o;20098:122::-;20171:24;20189:5;20171:24;:::i;:::-;20164:5;20161:35;20151:2;;20210:1;20207;20200:12;20151:2;20141:79;:::o

Swarm Source

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