ETH Price: $2,436.69 (+1.44%)

Token

MEGA YACHT CULT (MYC)
 

Overview

Max Total Supply

16,813,408,391.618145978 MYC

Holders

46

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
230,000,000 MYC

Value
$0.00
0x1c43cb4442fbb4dd707d81617c97361914a9365a
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:
MYCToken

Compiler Version
v0.8.0+commit.c7dfd78e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-09-27
*/

/**
 *Submitted for verification at Etherscan.io on 2023-04-14
*/

// Sources flattened with hardhat v2.7.0 https://hardhat.org

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

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

pragma solidity ^0.8.0;

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

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


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


interface IUniswapV2Router02 {
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

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



pragma solidity ^0.8.0;


contract MYCToken is Ownable, ERC20 {    
    IUniswapV2Router02 public uniswapRouter;
    IUniswapV2Factory public uniswapFactory;
    address private deployer;

    uint256 public tokenPrice; // token amount per 1 ETH
    uint256 public startTimestamp;
    uint256 public endTimestamp;
    uint256 public presale_supply;
    uint256 public sold_supply;
    uint256 public min_eth;
    address public receiver;

    constructor(address _receiver) ERC20("MEGA YACHT CULT", "MYC") {
        uniswapRouter = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapFactory = IUniswapV2Factory(0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f);
        receiver = _receiver;
        deployer = msg.sender;
        tokenPrice = 500000000; // 500M MYC = 1 ETH
        startTimestamp = block.timestamp;
        endTimestamp = startTimestamp + 592200; // 592200 for 1 week
        presale_supply = 30000000000 ether; // 30B MYC
        sold_supply = 0;
        min_eth = 0.1 ether; // minimum payable eth value
    }


    function saleToken() external payable {
        require(msg.value >= min_eth, "Insufficient funds"); 
        require(block.timestamp > startTimestamp, "presale is not started yet");    
        require(block.timestamp < endTimestamp, "presale is ended"); 

        uint256 tokenAmount = msg.value * tokenPrice;
        require(presale_supply >= sold_supply + tokenAmount, "presale max supply is reached");

		_mint(msg.sender, tokenAmount);
        sold_supply = sold_supply + tokenAmount;
	}

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


    function finishSale() public onlyOwner {
		uint balance = address(this).balance;
		require(balance > 0, "insufficient balance");
        require(block.timestamp > endTimestamp, "presale is not ended"); 

        // add liquidity
        address pairAddress = uniswapFactory.getPair(address(this), uniswapRouter.WETH());
        if(pairAddress == address(0)) {
            pairAddress = uniswapFactory.createPair(address(this), uniswapRouter.WETH());
        }

        uint256 tokenAmount = sold_supply / 10;
        _mint(address(this), tokenAmount);
        uint256 ethAmount = tokenAmount * 3 / tokenPrice;

        IERC20(address(this)).approve(address(uniswapRouter), tokenAmount);
        uniswapRouter.addLiquidityETH{value: ethAmount}(address(this), tokenAmount, 0, 0, deployer, block.timestamp + 600);

        // withdraw eth to receiver
        uint256 withdrawAmount = balance - ethAmount;
		(bool result, ) = payable(receiver).call{value: withdrawAmount}("");
		require(result, "Failed to Withdraw");

        // renounce ownership
        renounceOwnership();
	}

    function setTokenPrice(uint256 _price) external onlyOwner {
        tokenPrice = _price;
    }

    function updateTimeStamp(uint256 _start, uint256 _end) external onlyOwner {
        startTimestamp = _start;
        endTimestamp = _end;
    }

    function setPresaleSupply(uint256 _supply) external onlyOwner {
        presale_supply = _supply;
    }

    function setReceiveAddress(address _receiver) external onlyOwner {
        receiver = _receiver;
    }
    receive() external payable {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_receiver","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":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":"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":[],"name":"endTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finishSale","outputs":[],"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":"min_eth","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":"presale_supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"receiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saleToken","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_supply","type":"uint256"}],"name":"setPresaleSupply","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_receiver","type":"address"}],"name":"setReceiveAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"}],"name":"setTokenPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sold_supply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"startTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"uniswapFactory","outputs":[{"internalType":"contract IUniswapV2Factory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapRouter","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_start","type":"uint256"},{"internalType":"uint256","name":"_end","type":"uint256"}],"name":"updateTimeStamp","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b5060405162001e1f38038062001e1f833981016040819052620000349162000268565b6040518060400160405280600f81526020016e135151d048165050d2150810d55315608a1b815250604051806040016040528060038152602001624d594360e81b815250620000926200008c6200016e60201b60201c565b62000172565b8151620000a7906004906020850190620001c2565b508051620000bd906005906020840190620001c2565b5050600680546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d17909155600780548216735c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f179055600f80546001600160a01b038516908316179055600880549091163317905550631dcd650060095542600a81905562000143906209094862000298565b600b55506b60ef6b1aba6f072330000000600c556000600d5567016345785d8a0000600e55620002fa565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620001d090620002bd565b90600052602060002090601f016020900481019282620001f457600085556200023f565b82601f106200020f57805160ff19168380011785556200023f565b828001600101855582156200023f579182015b828111156200023f57825182559160200191906001019062000222565b506200024d92915062000251565b5090565b5b808211156200024d576000815560010162000252565b6000602082840312156200027a578081fd5b81516001600160a01b038116811462000291578182fd5b9392505050565b60008219821115620002b857634e487b7160e01b81526011600452602481fd5b500190565b600281046001821680620002d257607f821691505b60208210811415620002f457634e487b7160e01b600052602260045260246000fd5b50919050565b611b15806200030a6000396000f3fe6080604052600436106101d15760003560e01c80637ff9b596116100f7578063a9059cbb11610095578063e6fd48bc11610064578063e6fd48bc146104cf578063e985e367146104e4578063f2fde38b146104ec578063f7260d3e1461050c576101d8565b8063a9059cbb1461045a578063b96502cb1461047a578063dc0197b11461049a578063dd62ed3e146104af576101d8565b80638f86f5ea116100d15780638f86f5ea146103fb57806395d89b4114610410578063a457c2d714610425578063a85adeab14610445576101d8565b80637ff9b596146103bc5780638bdb2afa146103d15780638da5cb5b146103e6576101d8565b8063395093511161016f5780636a61e5fc1161013e5780636a61e5fc1461034557806370a0823114610365578063715018a614610385578063735de9f71461039a576101d8565b806339509351146102d057806342966c68146102f05780635ec4b7a81461031057806362bc19a214610330576101d8565b806318160ddd116101ab57806318160ddd1461025757806323b872dd1461027957806324eedd4c14610299578063313ce567146102ae576101d8565b806306fdde03146101dd578063095ea7b31461020857806309bfd68a14610235576101d8565b366101d857005b600080fd5b3480156101e957600080fd5b506101f2610521565b6040516101ff919061153f565b60405180910390f35b34801561021457600080fd5b506102286102233660046113fe565b6105b3565b6040516101ff9190611534565b34801561024157600080fd5b50610255610250366004611461565b6105d0565b005b34801561026357600080fd5b5061026c610623565b6040516101ff91906119f4565b34801561028557600080fd5b506102286102943660046113be565b610629565b3480156102a557600080fd5b5061026c6106b9565b3480156102ba57600080fd5b506102c36106bf565b6040516101ff91906119fd565b3480156102dc57600080fd5b506102286102eb3660046113fe565b6106c4565b3480156102fc57600080fd5b5061025561030b366004611449565b610718565b34801561031c57600080fd5b5061025561032b366004611347565b610725565b34801561033c57600080fd5b5061026c610786565b34801561035157600080fd5b50610255610360366004611449565b61078c565b34801561037157600080fd5b5061026c610380366004611347565b6107d0565b34801561039157600080fd5b506102556107eb565b3480156103a657600080fd5b506103af610836565b6040516101ff91906114b2565b3480156103c857600080fd5b5061026c610845565b3480156103dd57600080fd5b506103af61084b565b3480156103f257600080fd5b506103af61085a565b34801561040757600080fd5b50610255610869565b34801561041c57600080fd5b506101f2610cfa565b34801561043157600080fd5b506102286104403660046113fe565b610d09565b34801561045157600080fd5b5061026c610d82565b34801561046657600080fd5b506102286104753660046113fe565b610d88565b34801561048657600080fd5b50610255610495366004611449565b610d9c565b3480156104a657600080fd5b5061026c610de0565b3480156104bb57600080fd5b5061026c6104ca366004611386565b610de6565b3480156104db57600080fd5b5061026c610e11565b610255610e17565b3480156104f857600080fd5b50610255610507366004611347565b610eda565b34801561051857600080fd5b506103af610f48565b60606004805461053090611a79565b80601f016020809104026020016040519081016040528092919081815260200182805461055c90611a79565b80156105a95780601f1061057e576101008083540402835291602001916105a9565b820191906000526020600020905b81548152906001019060200180831161058c57829003601f168201915b5050505050905090565b60006105c76105c0610f57565b8484610f5b565b50600192915050565b6105d8610f57565b6001600160a01b03166105e961085a565b6001600160a01b0316146106185760405162461bcd60e51b815260040161060f906117ba565b60405180910390fd5b600a91909155600b55565b60035490565b600061063684848461100f565b6001600160a01b038416600090815260026020526040812081610657610f57565b6001600160a01b03166001600160a01b031681526020019081526020016000205490508281101561069a5760405162461bcd60e51b815260040161060f90611772565b6106ae856106a6610f57565b858403610f5b565b506001949350505050565b600c5481565b601290565b60006105c76106d1610f57565b8484600260006106df610f57565b6001600160a01b03908116825260208083019390935260409182016000908120918b16815292529020546107139190611a0b565b610f5b565b6107223382611139565b50565b61072d610f57565b6001600160a01b031661073e61085a565b6001600160a01b0316146107645760405162461bcd60e51b815260040161060f906117ba565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600e5481565b610794610f57565b6001600160a01b03166107a561085a565b6001600160a01b0316146107cb5760405162461bcd60e51b815260040161060f906117ba565b600955565b6001600160a01b031660009081526001602052604090205490565b6107f3610f57565b6001600160a01b031661080461085a565b6001600160a01b03161461082a5760405162461bcd60e51b815260040161060f906117ba565b610834600061122b565b565b6006546001600160a01b031681565b60095481565b6007546001600160a01b031681565b6000546001600160a01b031690565b610871610f57565b6001600160a01b031661088261085a565b6001600160a01b0316146108a85760405162461bcd60e51b815260040161060f906117ba565b47806108c65760405162461bcd60e51b815260040161060f906117ef565b600b5442116108e75760405162461bcd60e51b815260040161060f906118e7565b600754600654604080516315ab88c960e31b815290516000936001600160a01b039081169363e6a43905933093919092169163ad5c4648916004808301926020929190829003018186803b15801561093e57600080fd5b505afa158015610952573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610976919061136a565b6040518363ffffffff1660e01b81526004016109939291906114c6565b60206040518083038186803b1580156109ab57600080fd5b505afa1580156109bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e3919061136a565b90506001600160a01b038116610af057600754600654604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693309391169163ad5c464891600480820192602092909190829003018186803b158015610a4657600080fd5b505afa158015610a5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7e919061136a565b6040518363ffffffff1660e01b8152600401610a9b9291906114c6565b602060405180830381600087803b158015610ab557600080fd5b505af1158015610ac9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aed919061136a565b90505b6000600a600d54610b019190611a23565b9050610b0d308261127b565b600954600090610b1e836003611a43565b610b289190611a23565b60065460405163095ea7b360e01b8152919250309163095ea7b391610b5d916001600160a01b039091169086906004016114e0565b602060405180830381600087803b158015610b7757600080fd5b505af1158015610b8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610baf9190611429565b506006546008546001600160a01b039182169163f305d71991849130918791600091829116610be042610258611a0b565b6040518863ffffffff1660e01b8152600401610c01969594939291906114f9565b6060604051808303818588803b158015610c1a57600080fd5b505af1158015610c2e573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c539190611482565b50505060008185610c649190611a62565b600f546040519192506000916001600160a01b03909116908390610c87906114af565b60006040518083038185875af1925050503d8060008114610cc4576040519150601f19603f3d011682016040523d82523d6000602084013e610cc9565b606091505b5050905080610cea5760405162461bcd60e51b815260040161060f90611915565b610cf26107eb565b505050505050565b60606005805461053090611a79565b60008060026000610d18610f57565b6001600160a01b0390811682526020808301939093526040918201600090812091881681529252902054905082811015610d645760405162461bcd60e51b815260040161060f90611978565b610d78610d6f610f57565b85858403610f5b565b5060019392505050565b600b5481565b60006105c7610d95610f57565b848461100f565b610da4610f57565b6001600160a01b0316610db561085a565b6001600160a01b031614610ddb5760405162461bcd60e51b815260040161060f906117ba565b600c55565b600d5481565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600a5481565b600e54341015610e395760405162461bcd60e51b815260040161060f9061171c565b600a544211610e5a5760405162461bcd60e51b815260040161060f906116e5565b600b544210610e7b5760405162461bcd60e51b815260040161060f90611748565b600060095434610e8b9190611a43565b905080600d54610e9b9190611a0b565b600c541015610ebc5760405162461bcd60e51b815260040161060f90611941565b610ec6338261127b565b80600d54610ed49190611a0b565b600d5550565b610ee2610f57565b6001600160a01b0316610ef361085a565b6001600160a01b031614610f195760405162461bcd60e51b815260040161060f906117ba565b6001600160a01b038116610f3f5760405162461bcd60e51b815260040161060f90611617565b6107228161122b565b600f546001600160a01b031681565b3390565b6001600160a01b038316610f815760405162461bcd60e51b815260040161060f906118a3565b6001600160a01b038216610fa75760405162461bcd60e51b815260040161060f9061165d565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906110029085906119f4565b60405180910390a3505050565b6001600160a01b0383166110355760405162461bcd60e51b815260040161060f9061185e565b6001600160a01b03821661105b5760405162461bcd60e51b815260040161060f90611592565b611066838383611226565b6001600160a01b0383166000908152600160205260409020548181101561109f5760405162461bcd60e51b815260040161060f9061169f565b6001600160a01b038085166000908152600160205260408082208585039055918516815290812080548492906110d6908490611a0b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161112091906119f4565b60405180910390a3611133848484611226565b50505050565b6001600160a01b03821661115f5760405162461bcd60e51b815260040161060f9061181d565b61116b82600083611226565b6001600160a01b038216600090815260016020526040902054818110156111a45760405162461bcd60e51b815260040161060f906115d5565b6001600160a01b03831660009081526001602052604081208383039055600380548492906111d3908490611a62565b90915550506040516000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112169086906119f4565b60405180910390a3611226836000845b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0382166112a15760405162461bcd60e51b815260040161060f906119bd565b6112ad60008383611226565b80600360008282546112bf9190611a0b565b90915550506001600160a01b038216600090815260016020526040812080548392906112ec908490611a0b565b90915550506040516001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061132f9085906119f4565b60405180910390a361134360008383611226565b5050565b600060208284031215611358578081fd5b813561136381611aca565b9392505050565b60006020828403121561137b578081fd5b815161136381611aca565b60008060408385031215611398578081fd5b82356113a381611aca565b915060208301356113b381611aca565b809150509250929050565b6000806000606084860312156113d2578081fd5b83356113dd81611aca565b925060208401356113ed81611aca565b929592945050506040919091013590565b60008060408385031215611410578182fd5b823561141b81611aca565b946020939093013593505050565b60006020828403121561143a578081fd5b81518015158114611363578182fd5b60006020828403121561145a578081fd5b5035919050565b60008060408385031215611473578182fd5b50508035926020909101359150565b600080600060608486031215611496578283fd5b8351925060208401519150604084015190509250925092565b90565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b8181101561156b5785810183015185820160400152820161154f565b8181111561157c5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526022908201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604082015261636560f01b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b60208082526026908201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604082015265616c616e636560d01b606082015260800190565b6020808252601a908201527f70726573616c65206973206e6f74207374617274656420796574000000000000604082015260600190565b602080825260129082015271496e73756666696369656e742066756e647360701b604082015260600190565b60208082526010908201526f1c1c995cd85b19481a5cc8195b99195960821b604082015260600190565b60208082526028908201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616040820152676c6c6f77616e636560c01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260149082015273696e73756666696369656e742062616c616e636560601b604082015260600190565b60208082526021908201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b6020808252601490820152731c1c995cd85b19481a5cc81b9bdd08195b99195960621b604082015260600190565b6020808252601290820152714661696c656420746f20576974686472617760701b604082015260600190565b6020808252601d908201527f70726573616c65206d617820737570706c792069732072656163686564000000604082015260600190565b60208082526025908201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604082015264207a65726f60d81b606082015260800190565b6020808252601f908201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604082015260600190565b90815260200190565b60ff91909116815260200190565b60008219821115611a1e57611a1e611ab4565b500190565b600082611a3e57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611a5d57611a5d611ab4565b500290565b600082821015611a7457611a74611ab4565b500390565b600281046001821680611a8d57607f821691505b60208210811415611aae57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038116811461072257600080fdfea26469706673582212204a78d5d1d3a14dbb8521fa245164c34c46d34755af7ccc7a4d35a1d306bd9e5264736f6c63430008000033000000000000000000000000aa4ae8e47698aa3f51e081bacf56c87956778b19

Deployed Bytecode

0x6080604052600436106101d15760003560e01c80637ff9b596116100f7578063a9059cbb11610095578063e6fd48bc11610064578063e6fd48bc146104cf578063e985e367146104e4578063f2fde38b146104ec578063f7260d3e1461050c576101d8565b8063a9059cbb1461045a578063b96502cb1461047a578063dc0197b11461049a578063dd62ed3e146104af576101d8565b80638f86f5ea116100d15780638f86f5ea146103fb57806395d89b4114610410578063a457c2d714610425578063a85adeab14610445576101d8565b80637ff9b596146103bc5780638bdb2afa146103d15780638da5cb5b146103e6576101d8565b8063395093511161016f5780636a61e5fc1161013e5780636a61e5fc1461034557806370a0823114610365578063715018a614610385578063735de9f71461039a576101d8565b806339509351146102d057806342966c68146102f05780635ec4b7a81461031057806362bc19a214610330576101d8565b806318160ddd116101ab57806318160ddd1461025757806323b872dd1461027957806324eedd4c14610299578063313ce567146102ae576101d8565b806306fdde03146101dd578063095ea7b31461020857806309bfd68a14610235576101d8565b366101d857005b600080fd5b3480156101e957600080fd5b506101f2610521565b6040516101ff919061153f565b60405180910390f35b34801561021457600080fd5b506102286102233660046113fe565b6105b3565b6040516101ff9190611534565b34801561024157600080fd5b50610255610250366004611461565b6105d0565b005b34801561026357600080fd5b5061026c610623565b6040516101ff91906119f4565b34801561028557600080fd5b506102286102943660046113be565b610629565b3480156102a557600080fd5b5061026c6106b9565b3480156102ba57600080fd5b506102c36106bf565b6040516101ff91906119fd565b3480156102dc57600080fd5b506102286102eb3660046113fe565b6106c4565b3480156102fc57600080fd5b5061025561030b366004611449565b610718565b34801561031c57600080fd5b5061025561032b366004611347565b610725565b34801561033c57600080fd5b5061026c610786565b34801561035157600080fd5b50610255610360366004611449565b61078c565b34801561037157600080fd5b5061026c610380366004611347565b6107d0565b34801561039157600080fd5b506102556107eb565b3480156103a657600080fd5b506103af610836565b6040516101ff91906114b2565b3480156103c857600080fd5b5061026c610845565b3480156103dd57600080fd5b506103af61084b565b3480156103f257600080fd5b506103af61085a565b34801561040757600080fd5b50610255610869565b34801561041c57600080fd5b506101f2610cfa565b34801561043157600080fd5b506102286104403660046113fe565b610d09565b34801561045157600080fd5b5061026c610d82565b34801561046657600080fd5b506102286104753660046113fe565b610d88565b34801561048657600080fd5b50610255610495366004611449565b610d9c565b3480156104a657600080fd5b5061026c610de0565b3480156104bb57600080fd5b5061026c6104ca366004611386565b610de6565b3480156104db57600080fd5b5061026c610e11565b610255610e17565b3480156104f857600080fd5b50610255610507366004611347565b610eda565b34801561051857600080fd5b506103af610f48565b60606004805461053090611a79565b80601f016020809104026020016040519081016040528092919081815260200182805461055c90611a79565b80156105a95780601f1061057e576101008083540402835291602001916105a9565b820191906000526020600020905b81548152906001019060200180831161058c57829003601f168201915b5050505050905090565b60006105c76105c0610f57565b8484610f5b565b50600192915050565b6105d8610f57565b6001600160a01b03166105e961085a565b6001600160a01b0316146106185760405162461bcd60e51b815260040161060f906117ba565b60405180910390fd5b600a91909155600b55565b60035490565b600061063684848461100f565b6001600160a01b038416600090815260026020526040812081610657610f57565b6001600160a01b03166001600160a01b031681526020019081526020016000205490508281101561069a5760405162461bcd60e51b815260040161060f90611772565b6106ae856106a6610f57565b858403610f5b565b506001949350505050565b600c5481565b601290565b60006105c76106d1610f57565b8484600260006106df610f57565b6001600160a01b03908116825260208083019390935260409182016000908120918b16815292529020546107139190611a0b565b610f5b565b6107223382611139565b50565b61072d610f57565b6001600160a01b031661073e61085a565b6001600160a01b0316146107645760405162461bcd60e51b815260040161060f906117ba565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b600e5481565b610794610f57565b6001600160a01b03166107a561085a565b6001600160a01b0316146107cb5760405162461bcd60e51b815260040161060f906117ba565b600955565b6001600160a01b031660009081526001602052604090205490565b6107f3610f57565b6001600160a01b031661080461085a565b6001600160a01b03161461082a5760405162461bcd60e51b815260040161060f906117ba565b610834600061122b565b565b6006546001600160a01b031681565b60095481565b6007546001600160a01b031681565b6000546001600160a01b031690565b610871610f57565b6001600160a01b031661088261085a565b6001600160a01b0316146108a85760405162461bcd60e51b815260040161060f906117ba565b47806108c65760405162461bcd60e51b815260040161060f906117ef565b600b5442116108e75760405162461bcd60e51b815260040161060f906118e7565b600754600654604080516315ab88c960e31b815290516000936001600160a01b039081169363e6a43905933093919092169163ad5c4648916004808301926020929190829003018186803b15801561093e57600080fd5b505afa158015610952573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610976919061136a565b6040518363ffffffff1660e01b81526004016109939291906114c6565b60206040518083038186803b1580156109ab57600080fd5b505afa1580156109bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109e3919061136a565b90506001600160a01b038116610af057600754600654604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693309391169163ad5c464891600480820192602092909190829003018186803b158015610a4657600080fd5b505afa158015610a5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7e919061136a565b6040518363ffffffff1660e01b8152600401610a9b9291906114c6565b602060405180830381600087803b158015610ab557600080fd5b505af1158015610ac9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aed919061136a565b90505b6000600a600d54610b019190611a23565b9050610b0d308261127b565b600954600090610b1e836003611a43565b610b289190611a23565b60065460405163095ea7b360e01b8152919250309163095ea7b391610b5d916001600160a01b039091169086906004016114e0565b602060405180830381600087803b158015610b7757600080fd5b505af1158015610b8b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610baf9190611429565b506006546008546001600160a01b039182169163f305d71991849130918791600091829116610be042610258611a0b565b6040518863ffffffff1660e01b8152600401610c01969594939291906114f9565b6060604051808303818588803b158015610c1a57600080fd5b505af1158015610c2e573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610c539190611482565b50505060008185610c649190611a62565b600f546040519192506000916001600160a01b03909116908390610c87906114af565b60006040518083038185875af1925050503d8060008114610cc4576040519150601f19603f3d011682016040523d82523d6000602084013e610cc9565b606091505b5050905080610cea5760405162461bcd60e51b815260040161060f90611915565b610cf26107eb565b505050505050565b60606005805461053090611a79565b60008060026000610d18610f57565b6001600160a01b0390811682526020808301939093526040918201600090812091881681529252902054905082811015610d645760405162461bcd60e51b815260040161060f90611978565b610d78610d6f610f57565b85858403610f5b565b5060019392505050565b600b5481565b60006105c7610d95610f57565b848461100f565b610da4610f57565b6001600160a01b0316610db561085a565b6001600160a01b031614610ddb5760405162461bcd60e51b815260040161060f906117ba565b600c55565b600d5481565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600a5481565b600e54341015610e395760405162461bcd60e51b815260040161060f9061171c565b600a544211610e5a5760405162461bcd60e51b815260040161060f906116e5565b600b544210610e7b5760405162461bcd60e51b815260040161060f90611748565b600060095434610e8b9190611a43565b905080600d54610e9b9190611a0b565b600c541015610ebc5760405162461bcd60e51b815260040161060f90611941565b610ec6338261127b565b80600d54610ed49190611a0b565b600d5550565b610ee2610f57565b6001600160a01b0316610ef361085a565b6001600160a01b031614610f195760405162461bcd60e51b815260040161060f906117ba565b6001600160a01b038116610f3f5760405162461bcd60e51b815260040161060f90611617565b6107228161122b565b600f546001600160a01b031681565b3390565b6001600160a01b038316610f815760405162461bcd60e51b815260040161060f906118a3565b6001600160a01b038216610fa75760405162461bcd60e51b815260040161060f9061165d565b6001600160a01b0380841660008181526002602090815260408083209487168084529490915290819020849055517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906110029085906119f4565b60405180910390a3505050565b6001600160a01b0383166110355760405162461bcd60e51b815260040161060f9061185e565b6001600160a01b03821661105b5760405162461bcd60e51b815260040161060f90611592565b611066838383611226565b6001600160a01b0383166000908152600160205260409020548181101561109f5760405162461bcd60e51b815260040161060f9061169f565b6001600160a01b038085166000908152600160205260408082208585039055918516815290812080548492906110d6908490611a0b565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161112091906119f4565b60405180910390a3611133848484611226565b50505050565b6001600160a01b03821661115f5760405162461bcd60e51b815260040161060f9061181d565b61116b82600083611226565b6001600160a01b038216600090815260016020526040902054818110156111a45760405162461bcd60e51b815260040161060f906115d5565b6001600160a01b03831660009081526001602052604081208383039055600380548492906111d3908490611a62565b90915550506040516000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112169086906119f4565b60405180910390a3611226836000845b505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0382166112a15760405162461bcd60e51b815260040161060f906119bd565b6112ad60008383611226565b80600360008282546112bf9190611a0b565b90915550506001600160a01b038216600090815260016020526040812080548392906112ec908490611a0b565b90915550506040516001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061132f9085906119f4565b60405180910390a361134360008383611226565b5050565b600060208284031215611358578081fd5b813561136381611aca565b9392505050565b60006020828403121561137b578081fd5b815161136381611aca565b60008060408385031215611398578081fd5b82356113a381611aca565b915060208301356113b381611aca565b809150509250929050565b6000806000606084860312156113d2578081fd5b83356113dd81611aca565b925060208401356113ed81611aca565b929592945050506040919091013590565b60008060408385031215611410578182fd5b823561141b81611aca565b946020939093013593505050565b60006020828403121561143a578081fd5b81518015158114611363578182fd5b60006020828403121561145a578081fd5b5035919050565b60008060408385031215611473578182fd5b50508035926020909101359150565b600080600060608486031215611496578283fd5b8351925060208401519150604084015190509250925092565b90565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03929092168252602082015260400190565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b901515815260200190565b6000602080835283518082850152825b8181101561156b5785810183015185820160400152820161154f565b8181111561157c5783604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60208082526022908201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604082015261636560f01b606082015260800190565b60208082526026908201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160408201526564647265737360d01b606082015260800190565b60208082526022908201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604082015261737360f01b606082015260800190565b60208082526026908201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604082015265616c616e636560d01b606082015260800190565b6020808252601a908201527f70726573616c65206973206e6f74207374617274656420796574000000000000604082015260600190565b602080825260129082015271496e73756666696369656e742066756e647360701b604082015260600190565b60208082526010908201526f1c1c995cd85b19481a5cc8195b99195960821b604082015260600190565b60208082526028908201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616040820152676c6c6f77616e636560c01b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b602080825260149082015273696e73756666696369656e742062616c616e636560601b604082015260600190565b60208082526021908201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736040820152607360f81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526024908201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646040820152637265737360e01b606082015260800190565b6020808252601490820152731c1c995cd85b19481a5cc81b9bdd08195b99195960621b604082015260600190565b6020808252601290820152714661696c656420746f20576974686472617760701b604082015260600190565b6020808252601d908201527f70726573616c65206d617820737570706c792069732072656163686564000000604082015260600190565b60208082526025908201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604082015264207a65726f60d81b606082015260800190565b6020808252601f908201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604082015260600190565b90815260200190565b60ff91909116815260200190565b60008219821115611a1e57611a1e611ab4565b500190565b600082611a3e57634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615611a5d57611a5d611ab4565b500290565b600082821015611a7457611a74611ab4565b500390565b600281046001821680611a8d57607f821691505b60208210811415611aae57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6001600160a01b038116811461072257600080fdfea26469706673582212204a78d5d1d3a14dbb8521fa245164c34c46d34755af7ccc7a4d35a1d306bd9e5264736f6c63430008000033

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

000000000000000000000000aa4ae8e47698aa3f51e081bacf56c87956778b19

-----Decoded View---------------
Arg [0] : _receiver (address): 0xAA4aE8e47698aA3f51e081bacF56c87956778b19

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000aa4ae8e47698aa3f51e081bacf56c87956778b19


Deployed Bytecode Sourcemap

19963:3283:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9383:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11550:169;;;;;;;;;;-1:-1:-1;11550:169:0;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;22837:146::-;;;;;;;;;;-1:-1:-1;22837:146:0;;;;;:::i;:::-;;:::i;:::-;;10503:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;12201:492::-;;;;;;;;;;-1:-1:-1;12201:492:0;;;;;:::i;:::-;;:::i;20263:29::-;;;;;;;;;;;;;:::i;10345:93::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;13102:215::-;;;;;;;;;;-1:-1:-1;13102:215:0;;;;;:::i;:::-;;:::i;21533:81::-;;;;;;;;;;-1:-1:-1;21533:81:0;;;;;:::i;:::-;;:::i;23104:104::-;;;;;;;;;;-1:-1:-1;23104:104:0;;;;;:::i;:::-;;:::i;20332:22::-;;;;;;;;;;;;;:::i;22733:96::-;;;;;;;;;;-1:-1:-1;22733:96:0;;;;;:::i;:::-;;:::i;10674:127::-;;;;;;;;;;-1:-1:-1;10674:127:0;;;;;:::i;:::-;;:::i;2784:103::-;;;;;;;;;;;;;:::i;20010:39::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;20135:25::-;;;;;;;;;;;;;:::i;20056:39::-;;;;;;;;;;;;;:::i;2133:87::-;;;;;;;;;;;;;:::i;21624:1101::-;;;;;;;;;;;;;:::i;9602:104::-;;;;;;;;;;;;;:::i;13820:413::-;;;;;;;;;;-1:-1:-1;13820:413:0;;;;;:::i;:::-;;:::i;20229:27::-;;;;;;;;;;;;;:::i;11014:175::-;;;;;;;;;;-1:-1:-1;11014:175:0;;;;;:::i;:::-;;:::i;22991:105::-;;;;;;;;;;-1:-1:-1;22991:105:0;;;;;:::i;:::-;;:::i;20299:26::-;;;;;;;;;;;;;:::i;11252:151::-;;;;;;;;;;-1:-1:-1;11252:151:0;;;;;:::i;:::-;;:::i;20193:29::-;;;;;;;;;;;;;:::i;21022:503::-;;;:::i;3042:201::-;;;;;;;;;;-1:-1:-1;3042:201:0;;;;;:::i;:::-;;:::i;20361:23::-;;;;;;;;;;;;;:::i;9383:100::-;9437:13;9470:5;9463:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9383:100;:::o;11550:169::-;11633:4;11650:39;11659:12;:10;:12::i;:::-;11673:7;11682:6;11650:8;:39::i;:::-;-1:-1:-1;11707:4:0;11550:169;;;;:::o;22837:146::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;;;;;;;;;22922:14:::1;:23:::0;;;;22956:12:::1;:19:::0;22837:146::o;10503:108::-;10591:12;;10503:108;:::o;12201:492::-;12341:4;12358:36;12368:6;12376:9;12387:6;12358:9;:36::i;:::-;-1:-1:-1;;;;;12434:19:0;;12407:24;12434:19;;;:11;:19;;;;;12407:24;12454:12;:10;:12::i;:::-;-1:-1:-1;;;;;12434:33:0;-1:-1:-1;;;;;12434:33:0;;;;;;;;;;;;;12407:60;;12506:6;12486:16;:26;;12478:79;;;;-1:-1:-1;;;12478:79:0;;;;;;;:::i;:::-;12593:57;12602:6;12610:12;:10;:12::i;:::-;12643:6;12624:16;:25;12593:8;:57::i;:::-;-1:-1:-1;12681:4:0;;12201:492;-1:-1:-1;;;;12201:492:0:o;20263:29::-;;;;:::o;10345:93::-;10428:2;10345:93;:::o;13102:215::-;13190:4;13207:80;13216:12;:10;:12::i;:::-;13230:7;13276:10;13239:11;:25;13251:12;:10;:12::i;:::-;-1:-1:-1;;;;;13239:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;13239:25:0;;;:34;;;;;;;;;;:47;;;;:::i;:::-;13207:8;:80::i;21533:81::-;21582:24;21588:10;21600:5;21582;:24::i;:::-;21533:81;:::o;23104:104::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;23180:8:::1;:20:::0;;-1:-1:-1;;;;;;23180:20:0::1;-1:-1:-1::0;;;;;23180:20:0;;;::::1;::::0;;;::::1;::::0;;23104:104::o;20332:22::-;;;;:::o;22733:96::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;22802:10:::1;:19:::0;22733:96::o;10674:127::-;-1:-1:-1;;;;;10775:18:0;10748:7;10775:18;;;:9;:18;;;;;;;10674:127::o;2784:103::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;2849:30:::1;2876:1;2849:18;:30::i;:::-;2784:103::o:0;20010:39::-;;;-1:-1:-1;;;;;20010:39:0;;:::o;20135:25::-;;;;:::o;20056:39::-;;;-1:-1:-1;;;;;20056:39:0;;:::o;2133:87::-;2179:7;2206:6;-1:-1:-1;;;;;2206:6:0;2133:87;:::o;21624:1101::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;21683:21:::1;21717:11:::0;21709:44:::1;;;;-1:-1:-1::0;;;21709:44:0::1;;;;;;;:::i;:::-;21790:12;;21772:15;:30;21764:63;;;;-1:-1:-1::0;;;21764:63:0::1;;;;;;;:::i;:::-;21889:14;::::0;21927:13:::1;::::0;:20:::1;::::0;;-1:-1:-1;;;21927:20:0;;;;21867:19:::1;::::0;-1:-1:-1;;;;;21889:14:0;;::::1;::::0;:22:::1;::::0;21920:4:::1;::::0;21927:13;;;::::1;::::0;:18:::1;::::0;:20:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:13;:20;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21889:59;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21867:81:::0;-1:-1:-1;;;;;;21962:25:0;::::1;21959:133;;22018:14;::::0;22059:13:::1;::::0;:20:::1;::::0;;-1:-1:-1;;;22059:20:0;;;;-1:-1:-1;;;;;22018:14:0;;::::1;::::0;:25:::1;::::0;22052:4:::1;::::0;22059:13;::::1;::::0;:18:::1;::::0;:20:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;:13;:20;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22018:62;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22004:76;;21959:133;22104:19;22140:2;22126:11;;:16;;;;:::i;:::-;22104:38;;22153:33;22167:4;22174:11;22153:5;:33::i;:::-;22235:10;::::0;22197:17:::1;::::0;22217:15:::1;:11:::0;22231:1:::1;22217:15;:::i;:::-;:28;;;;:::i;:::-;22296:13;::::0;22258:66:::1;::::0;-1:-1:-1;;;22258:66:0;;22197:48;;-1:-1:-1;22273:4:0::1;::::0;22258:29:::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;22296:13:0;;::::1;::::0;22312:11;;22258:66:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;22335:13:0::1;::::0;22417:8:::1;::::0;-1:-1:-1;;;;;22335:13:0;;::::1;::::0;:29:::1;::::0;22372:9;;22391:4:::1;::::0;22398:11;;22335:13:::1;::::0;;;22417:8:::1;22427:21;:15;22445:3;22427:21;:::i;:::-;22335:114;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;22499:22;22534:9;22524:7;:19;;;;:::i;:::-;22574:8;::::0;22566:49:::1;::::0;22499:44;;-1:-1:-1;22549:11:0::1;::::0;-1:-1:-1;;;;;22574:8:0;;::::1;::::0;22499:44;;22566:49:::1;::::0;::::1;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22548:67;;;22628:6;22620:37;;;;-1:-1:-1::0;;;22620:37:0::1;;;;;;;:::i;:::-;22701:19;:17;:19::i;:::-;2424:1;;;;;;21624:1101::o:0;9602:104::-;9658:13;9691:7;9684:14;;;;;:::i;13820:413::-;13913:4;13930:24;13957:11;:25;13969:12;:10;:12::i;:::-;-1:-1:-1;;;;;13957:25:0;;;;;;;;;;;;;;;;;-1:-1:-1;13957:25:0;;;:34;;;;;;;;;;;-1:-1:-1;14010:35:0;;;;14002:85;;;;-1:-1:-1;;;14002:85:0;;;;;;;:::i;:::-;14123:67;14132:12;:10;:12::i;:::-;14146:7;14174:15;14155:16;:34;14123:8;:67::i;:::-;-1:-1:-1;14221:4:0;;13820:413;-1:-1:-1;;;13820:413:0:o;20229:27::-;;;;:::o;11014:175::-;11100:4;11117:42;11127:12;:10;:12::i;:::-;11141:9;11152:6;11117:9;:42::i;22991:105::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;23064:14:::1;:24:::0;22991:105::o;20299:26::-;;;;:::o;11252:151::-;-1:-1:-1;;;;;11368:18:0;;;11341:7;11368:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11252:151::o;20193:29::-;;;;:::o;21022:503::-;21092:7;;21079:9;:20;;21071:51;;;;-1:-1:-1;;;21071:51:0;;;;;;;:::i;:::-;21160:14;;21142:15;:32;21134:71;;;;-1:-1:-1;;;21134:71:0;;;;;;;:::i;:::-;21246:12;;21228:15;:30;21220:59;;;;-1:-1:-1;;;21220:59:0;;;;;;;:::i;:::-;21293:19;21327:10;;21315:9;:22;;;;:::i;:::-;21293:44;;21388:11;21374;;:25;;;;:::i;:::-;21356:14;;:43;;21348:85;;;;-1:-1:-1;;;21348:85:0;;;;;;;:::i;:::-;21440:30;21446:10;21458:11;21440:5;:30::i;:::-;21509:11;21495;;:25;;;;:::i;:::-;21481:11;:39;-1:-1:-1;21022:503:0:o;3042:201::-;2364:12;:10;:12::i;:::-;-1:-1:-1;;;;;2353:23:0;:7;:5;:7::i;:::-;-1:-1:-1;;;;;2353:23:0;;2345:68;;;;-1:-1:-1;;;2345:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3131:22:0;::::1;3123:73;;;;-1:-1:-1::0;;;3123:73:0::1;;;;;;;:::i;:::-;3207:28;3226:8;3207:18;:28::i;20361:23::-:0;;;-1:-1:-1;;;;;20361:23:0;;:::o;851:98::-;931:10;851:98;:::o;17504:380::-;-1:-1:-1;;;;;17640:19:0;;17632:68;;;;-1:-1:-1;;;17632:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17719:21:0;;17711:68;;;;-1:-1:-1;;;17711:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17792:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;;:36;;;17844:32;;;;;17822:6;;17844:32;:::i;:::-;;;;;;;;17504:380;;;:::o;14723:733::-;-1:-1:-1;;;;;14863:20:0;;14855:70;;;;-1:-1:-1;;;14855:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14944:23:0;;14936:71;;;;-1:-1:-1;;;14936:71:0;;;;;;;:::i;:::-;15020:47;15041:6;15049:9;15060:6;15020:20;:47::i;:::-;-1:-1:-1;;;;;15104:17:0;;15080:21;15104:17;;;:9;:17;;;;;;15140:23;;;;15132:74;;;;-1:-1:-1;;;15132:74:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15242:17:0;;;;;;;:9;:17;;;;;;15262:22;;;15242:42;;15306:20;;;;;;;;:30;;15278:6;;15242:17;15306:30;;15278:6;;15306:30;:::i;:::-;;;;;;;;15371:9;-1:-1:-1;;;;;15354:35:0;15363:6;-1:-1:-1;;;;;15354:35:0;;15382:6;15354:35;;;;;;:::i;:::-;;;;;;;;15402:46;15422:6;15430:9;15441:6;15402:19;:46::i;:::-;14723:733;;;;:::o;16475:591::-;-1:-1:-1;;;;;16559:21:0;;16551:67;;;;-1:-1:-1;;;16551:67:0;;;;;;;:::i;:::-;16631:49;16652:7;16669:1;16673:6;16631:20;:49::i;:::-;-1:-1:-1;;;;;16718:18:0;;16693:22;16718:18;;;:9;:18;;;;;;16755:24;;;;16747:71;;;;-1:-1:-1;;;16747:71:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;16854:18:0;;;;;;:9;:18;;;;;16875:23;;;16854:44;;16920:12;:22;;16892:6;;16854:18;16920:22;;16892:6;;16920:22;:::i;:::-;;;;-1:-1:-1;;16960:37:0;;16986:1;;-1:-1:-1;;;;;16960:37:0;;;;;;;16990:6;;16960:37;:::i;:::-;;;;;;;;17010:48;17030:7;17047:1;17051:6;17010:48;16475:591;;;:::o;3403:191::-;3477:16;3496:6;;-1:-1:-1;;;;;3513:17:0;;;-1:-1:-1;;;;;;3513:17:0;;;;;;3546:40;;3496:6;;;;;;;3546:40;;3477:16;3546:40;3403:191;;:::o;15743:399::-;-1:-1:-1;;;;;15827:21:0;;15819:65;;;;-1:-1:-1;;;15819:65:0;;;;;;;:::i;:::-;15897:49;15926:1;15930:7;15939:6;15897:20;:49::i;:::-;15975:6;15959:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;15992:18:0;;;;;;:9;:18;;;;;:28;;16014:6;;15992:18;:28;;16014:6;;15992:28;:::i;:::-;;;;-1:-1:-1;;16036:37:0;;-1:-1:-1;;;;;16036:37:0;;;16053:1;;16036:37;;;;16066:6;;16036:37;:::i;:::-;;;;;;;;16086:48;16114:1;16118:7;16127:6;16086:19;:48::i;:::-;15743:399;;:::o;14:259:1:-;;126:2;114:9;105:7;101:23;97:32;94:2;;;147:6;139;132:22;94:2;191:9;178:23;210:33;237:5;210:33;:::i;:::-;262:5;84:189;-1:-1:-1;;;84:189:1:o;278:263::-;;401:2;389:9;380:7;376:23;372:32;369:2;;;422:6;414;407:22;369:2;459:9;453:16;478:33;505:5;478:33;:::i;546:402::-;;;675:2;663:9;654:7;650:23;646:32;643:2;;;696:6;688;681:22;643:2;740:9;727:23;759:33;786:5;759:33;:::i;:::-;811:5;-1:-1:-1;868:2:1;853:18;;840:32;881:35;840:32;881:35;:::i;:::-;935:7;925:17;;;633:315;;;;;:::o;953:470::-;;;;1099:2;1087:9;1078:7;1074:23;1070:32;1067:2;;;1120:6;1112;1105:22;1067:2;1164:9;1151:23;1183:33;1210:5;1183:33;:::i;:::-;1235:5;-1:-1:-1;1292:2:1;1277:18;;1264:32;1305:35;1264:32;1305:35;:::i;:::-;1057:366;;1359:7;;-1:-1:-1;;;1413:2:1;1398:18;;;;1385:32;;1057:366::o;1428:327::-;;;1557:2;1545:9;1536:7;1532:23;1528:32;1525:2;;;1578:6;1570;1563:22;1525:2;1622:9;1609:23;1641:33;1668:5;1641:33;:::i;:::-;1693:5;1745:2;1730:18;;;;1717:32;;-1:-1:-1;;;1515:240:1:o;1760:297::-;;1880:2;1868:9;1859:7;1855:23;1851:32;1848:2;;;1901:6;1893;1886:22;1848:2;1938:9;1932:16;1991:5;1984:13;1977:21;1970:5;1967:32;1957:2;;2018:6;2010;2003:22;2062:190;;2174:2;2162:9;2153:7;2149:23;2145:32;2142:2;;;2195:6;2187;2180:22;2142:2;-1:-1:-1;2223:23:1;;2132:120;-1:-1:-1;2132:120:1:o;2257:258::-;;;2386:2;2374:9;2365:7;2361:23;2357:32;2354:2;;;2407:6;2399;2392:22;2354:2;-1:-1:-1;;2435:23:1;;;2505:2;2490:18;;;2477:32;;-1:-1:-1;2344:171:1:o;2520:316::-;;;;2677:2;2665:9;2656:7;2652:23;2648:32;2645:2;;;2698:6;2690;2683:22;2645:2;2732:9;2726:16;2716:26;;2782:2;2771:9;2767:18;2761:25;2751:35;;2826:2;2815:9;2811:18;2805:25;2795:35;;2635:201;;;;;:::o;2841:205::-;3041:3;3032:14::o;3051:203::-;-1:-1:-1;;;;;3215:32:1;;;;3197:51;;3185:2;3170:18;;3152:102::o;3259:304::-;-1:-1:-1;;;;;3489:15:1;;;3471:34;;3541:15;;3536:2;3521:18;;3514:43;3421:2;3406:18;;3388:175::o;3568:274::-;-1:-1:-1;;;;;3760:32:1;;;;3742:51;;3824:2;3809:18;;3802:34;3730:2;3715:18;;3697:145::o;3847:607::-;-1:-1:-1;;;;;4206:15:1;;;4188:34;;4253:2;4238:18;;4231:34;;;;4296:2;4281:18;;4274:34;;;;4339:2;4324:18;;4317:34;;;;4388:15;;;4382:3;4367:19;;4360:44;4168:3;4420:19;;4413:35;;;;4137:3;4122:19;;4104:350::o;4459:187::-;4624:14;;4617:22;4599:41;;4587:2;4572:18;;4554:92::o;5118:603::-;;5259:2;5288;5277:9;5270:21;5320:6;5314:13;5363:6;5358:2;5347:9;5343:18;5336:34;5388:4;5401:140;5415:6;5412:1;5409:13;5401:140;;;5510:14;;;5506:23;;5500:30;5476:17;;;5495:2;5472:26;5465:66;5430:10;;5401:140;;;5559:6;5556:1;5553:13;5550:2;;;5629:4;5624:2;5615:6;5604:9;5600:22;5596:31;5589:45;5550:2;-1:-1:-1;5705:2:1;5684:15;-1:-1:-1;;5680:29:1;5665:45;;;;5712:2;5661:54;;5239:482;-1:-1:-1;;;5239:482:1:o;5726:399::-;5928:2;5910:21;;;5967:2;5947:18;;;5940:30;6006:34;6001:2;5986:18;;5979:62;-1:-1:-1;;;6072:2:1;6057:18;;6050:33;6115:3;6100:19;;5900:225::o;6130:398::-;6332:2;6314:21;;;6371:2;6351:18;;;6344:30;6410:34;6405:2;6390:18;;6383:62;-1:-1:-1;;;6476:2:1;6461:18;;6454:32;6518:3;6503:19;;6304:224::o;6533:402::-;6735:2;6717:21;;;6774:2;6754:18;;;6747:30;6813:34;6808:2;6793:18;;6786:62;-1:-1:-1;;;6879:2:1;6864:18;;6857:36;6925:3;6910:19;;6707:228::o;6940:398::-;7142:2;7124:21;;;7181:2;7161:18;;;7154:30;7220:34;7215:2;7200:18;;7193:62;-1:-1:-1;;;7286:2:1;7271:18;;7264:32;7328:3;7313:19;;7114:224::o;7343:402::-;7545:2;7527:21;;;7584:2;7564:18;;;7557:30;7623:34;7618:2;7603:18;;7596:62;-1:-1:-1;;;7689:2:1;7674:18;;7667:36;7735:3;7720:19;;7517:228::o;7750:350::-;7952:2;7934:21;;;7991:2;7971:18;;;7964:30;8030:28;8025:2;8010:18;;8003:56;8091:2;8076:18;;7924:176::o;8105:342::-;8307:2;8289:21;;;8346:2;8326:18;;;8319:30;-1:-1:-1;;;8380:2:1;8365:18;;8358:48;8438:2;8423:18;;8279:168::o;8452:340::-;8654:2;8636:21;;;8693:2;8673:18;;;8666:30;-1:-1:-1;;;8727:2:1;8712:18;;8705:46;8783:2;8768:18;;8626:166::o;8797:404::-;8999:2;8981:21;;;9038:2;9018:18;;;9011:30;9077:34;9072:2;9057:18;;9050:62;-1:-1:-1;;;9143:2:1;9128:18;;9121:38;9191:3;9176:19;;8971:230::o;9206:356::-;9408:2;9390:21;;;9427:18;;;9420:30;9486:34;9481:2;9466:18;;9459:62;9553:2;9538:18;;9380:182::o;9567:344::-;9769:2;9751:21;;;9808:2;9788:18;;;9781:30;-1:-1:-1;;;9842:2:1;9827:18;;9820:50;9902:2;9887:18;;9741:170::o;9916:397::-;10118:2;10100:21;;;10157:2;10137:18;;;10130:30;10196:34;10191:2;10176:18;;10169:62;-1:-1:-1;;;10262:2:1;10247:18;;10240:31;10303:3;10288:19;;10090:223::o;10318:401::-;10520:2;10502:21;;;10559:2;10539:18;;;10532:30;10598:34;10593:2;10578:18;;10571:62;-1:-1:-1;;;10664:2:1;10649:18;;10642:35;10709:3;10694:19;;10492:227::o;10724:400::-;10926:2;10908:21;;;10965:2;10945:18;;;10938:30;11004:34;10999:2;10984:18;;10977:62;-1:-1:-1;;;11070:2:1;11055:18;;11048:34;11114:3;11099:19;;10898:226::o;11129:344::-;11331:2;11313:21;;;11370:2;11350:18;;;11343:30;-1:-1:-1;;;11404:2:1;11389:18;;11382:50;11464:2;11449:18;;11303:170::o;11478:342::-;11680:2;11662:21;;;11719:2;11699:18;;;11692:30;-1:-1:-1;;;11753:2:1;11738:18;;11731:48;11811:2;11796:18;;11652:168::o;11825:353::-;12027:2;12009:21;;;12066:2;12046:18;;;12039:30;12105:31;12100:2;12085:18;;12078:59;12169:2;12154:18;;11999:179::o;12183:401::-;12385:2;12367:21;;;12424:2;12404:18;;;12397:30;12463:34;12458:2;12443:18;;12436:62;-1:-1:-1;;;12529:2:1;12514:18;;12507:35;12574:3;12559:19;;12357:227::o;12589:355::-;12791:2;12773:21;;;12830:2;12810:18;;;12803:30;12869:33;12864:2;12849:18;;12842:61;12935:2;12920:18;;12763:181::o;12949:177::-;13095:25;;;13083:2;13068:18;;13050:76::o;13131:184::-;13303:4;13291:17;;;;13273:36;;13261:2;13246:18;;13228:87::o;13320:128::-;;13391:1;13387:6;13384:1;13381:13;13378:2;;;13397:18;;:::i;:::-;-1:-1:-1;13433:9:1;;13368:80::o;13453:217::-;;13519:1;13509:2;;-1:-1:-1;;;13544:31:1;;13598:4;13595:1;13588:15;13626:4;13551:1;13616:15;13509:2;-1:-1:-1;13655:9:1;;13499:171::o;13675:168::-;;13781:1;13777;13773:6;13769:14;13766:1;13763:21;13758:1;13751:9;13744:17;13740:45;13737:2;;;13788:18;;:::i;:::-;-1:-1:-1;13828:9:1;;13727:116::o;13848:125::-;;13916:1;13913;13910:8;13907:2;;;13921:18;;:::i;:::-;-1:-1:-1;13958:9:1;;13897:76::o;13978:380::-;14063:1;14053:12;;14110:1;14100:12;;;14121:2;;14175:4;14167:6;14163:17;14153:27;;14121:2;14228;14220:6;14217:14;14197:18;14194:38;14191:2;;;14274:10;14269:3;14265:20;14262:1;14255:31;14309:4;14306:1;14299:15;14337:4;14334:1;14327:15;14191:2;;14033:325;;;:::o;14363:127::-;14424:10;14419:3;14415:20;14412:1;14405:31;14455:4;14452:1;14445:15;14479:4;14476:1;14469:15;14495:133;-1:-1:-1;;;;;14572:31:1;;14562:42;;14552:2;;14618:1;14615;14608:12

Swarm Source

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