ETH Price: $3,709.25 (-7.12%)

Token

PacMoon (PAC)
 

Overview

Max Total Supply

1,000,000,000 PAC

Holders

98,700

Market

Price

$0.0009 @ 0.000000 ETH (-6.34%)

Onchain Market Cap

$945,770.00

Circulating Supply Market Cap

$922,124.00

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,205.999971719196310005 PAC

Value
$1.14 ( ~0.000307339815963229 ETH) [0.0001%]
0x7ec4f936d7fa748d8d446e310ca98ab05f7f5092
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

The community coin of Blast.

Market

Volume (24H):$90.09
Market Capitalization:$922,124.00
Circulating Supply:975,000,000.00 PAC
Market Data Source: Coinmarketcap

Contract Source Code Verified (Exact Match)

Contract Name:
Pacmoon

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
london EvmVersion
File 1 of 4 : Pacmoon.sol
// contracts/Pacmoon.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.21;

import {ERC20} from "solmate/tokens/ERC20.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";

interface IBlast {
    function configureClaimableGas() external;
    function configureGovernor(address _governor) external;
    function configurePointsOperator(address operator) external;
}

contract Pacmoon is ERC20, Ownable {
    uint256 private constant _tTotal = 1_000_000_000 * 10 ** 18;

    constructor(address treasury) ERC20("PacMoon", "PAC", 18) Ownable(msg.sender) {
        _mint(msg.sender, _tTotal);

        IBlast(0x4300000000000000000000000000000000000002).configureClaimableGas();
        IBlast(0x4300000000000000000000000000000000000002).configureGovernor(treasury);
        IBlast(0x2536FE9ab3F511540F2f9e2eC2A805005C3Dd800).configurePointsOperator(treasury);
    }
}

File 2 of 4 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)

pragma solidity ^0.8.20;

import {Context} from "../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.
 *
 * The initial owner is set to the address provided by the deployer. 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;

    /**
     * @dev The caller account is not authorized to perform an operation.
     */
    error OwnableUnauthorizedAccount(address account);

    /**
     * @dev The owner is not a valid owner account. (eg. `address(0)`)
     */
    error OwnableInvalidOwner(address owner);

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

    /**
     * @dev Initializes the contract setting the address provided by the deployer as the initial owner.
     */
    constructor(address initialOwner) {
        if (initialOwner == address(0)) {
            revert OwnableInvalidOwner(address(0));
        }
        _transferOwnership(initialOwner);
    }

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

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

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        if (owner() != _msgSender()) {
            revert OwnableUnauthorizedAccount(_msgSender());
        }
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby disabling 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 {
        if (newOwner == address(0)) {
            revert OwnableInvalidOwner(address(0));
        }
        _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 3 of 4 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)

pragma solidity ^0.8.20;

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

    function _contextSuffixLength() internal view virtual returns (uint256) {
        return 0;
    }
}

File 4 of 4 : ERC20.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Modern and gas efficient ERC20 + EIP-2612 implementation.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol)
/// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)
/// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.
abstract contract ERC20 {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

    event Transfer(address indexed from, address indexed to, uint256 amount);

    event Approval(address indexed owner, address indexed spender, uint256 amount);

    /*//////////////////////////////////////////////////////////////
                            METADATA STORAGE
    //////////////////////////////////////////////////////////////*/

    string public name;

    string public symbol;

    uint8 public immutable decimals;

    /*//////////////////////////////////////////////////////////////
                              ERC20 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 public totalSupply;

    mapping(address => uint256) public balanceOf;

    mapping(address => mapping(address => uint256)) public allowance;

    /*//////////////////////////////////////////////////////////////
                            EIP-2612 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 internal immutable INITIAL_CHAIN_ID;

    bytes32 internal immutable INITIAL_DOMAIN_SEPARATOR;

    mapping(address => uint256) public nonces;

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(
        string memory _name,
        string memory _symbol,
        uint8 _decimals
    ) {
        name = _name;
        symbol = _symbol;
        decimals = _decimals;

        INITIAL_CHAIN_ID = block.chainid;
        INITIAL_DOMAIN_SEPARATOR = computeDomainSeparator();
    }

    /*//////////////////////////////////////////////////////////////
                               ERC20 LOGIC
    //////////////////////////////////////////////////////////////*/

    function approve(address spender, uint256 amount) public virtual returns (bool) {
        allowance[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);

        return true;
    }

    function transfer(address to, uint256 amount) public virtual returns (bool) {
        balanceOf[msg.sender] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(msg.sender, to, amount);

        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual returns (bool) {
        uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals.

        if (allowed != type(uint256).max) allowance[from][msg.sender] = allowed - amount;

        balanceOf[from] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(from, to, amount);

        return true;
    }

    /*//////////////////////////////////////////////////////////////
                             EIP-2612 LOGIC
    //////////////////////////////////////////////////////////////*/

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) public virtual {
        require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED");

        // Unchecked because the only math done is incrementing
        // the owner's nonce which cannot realistically overflow.
        unchecked {
            address recoveredAddress = ecrecover(
                keccak256(
                    abi.encodePacked(
                        "\x19\x01",
                        DOMAIN_SEPARATOR(),
                        keccak256(
                            abi.encode(
                                keccak256(
                                    "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"
                                ),
                                owner,
                                spender,
                                value,
                                nonces[owner]++,
                                deadline
                            )
                        )
                    )
                ),
                v,
                r,
                s
            );

            require(recoveredAddress != address(0) && recoveredAddress == owner, "INVALID_SIGNER");

            allowance[recoveredAddress][spender] = value;
        }

        emit Approval(owner, spender, value);
    }

    function DOMAIN_SEPARATOR() public view virtual returns (bytes32) {
        return block.chainid == INITIAL_CHAIN_ID ? INITIAL_DOMAIN_SEPARATOR : computeDomainSeparator();
    }

    function computeDomainSeparator() internal view virtual returns (bytes32) {
        return
            keccak256(
                abi.encode(
                    keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),
                    keccak256(bytes(name)),
                    keccak256("1"),
                    block.chainid,
                    address(this)
                )
            );
    }

    /*//////////////////////////////////////////////////////////////
                        INTERNAL MINT/BURN LOGIC
    //////////////////////////////////////////////////////////////*/

    function _mint(address to, uint256 amount) internal virtual {
        totalSupply += amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(address(0), to, amount);
    }

    function _burn(address from, uint256 amount) internal virtual {
        balanceOf[from] -= amount;

        // Cannot underflow because a user's balance
        // will never be larger than the total supply.
        unchecked {
            totalSupply -= amount;
        }

        emit Transfer(from, address(0), amount);
    }
}

Settings
{
  "remappings": [
    "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/",
    "ds-test/=lib/solmate/lib/ds-test/src/",
    "erc4626-tests/=lib/openzeppelin-contracts/lib/erc4626-tests/",
    "forge-std/=lib/openzeppelin-contracts/lib/forge-std/src/",
    "openzeppelin-contracts/=lib/openzeppelin-contracts/",
    "solmate/=lib/solmate/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "bytecodeHash": "ipfs",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"treasury","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","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":"","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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","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":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60e06040523480156200001157600080fd5b50604051620011e4380380620011e48339810160408190526200003491620003ab565b33604051806040016040528060078152602001662830b1a6b7b7b760c91b8152506040518060400160405280600381526020016250414360e81b8152506012826000908162000084919062000482565b50600162000093838262000482565b5060ff81166080524660a052620000a962000250565b60c0525050506001600160a01b038116620000de57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b620000e981620002ec565b5062000102336b033b2e3c9fd0803ce80000006200033e565b7343000000000000000000000000000000000000026001600160a01b0316634e606c476040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200015257600080fd5b505af115801562000167573d6000803e3d6000fd5b5050604051631d70c8d360e31b81526001600160a01b0384166004820152734300000000000000000000000000000000000002925063eb8646989150602401600060405180830381600087803b158015620001c157600080fd5b505af1158015620001d6573d6000803e3d6000fd5b50506040516336b91f2b60e01b81526001600160a01b0384166004820152732536fe9ab3f511540f2f9e2ec2a805005c3dd80092506336b91f2b9150602401600060405180830381600087803b1580156200023057600080fd5b505af115801562000245573d6000803e3d6000fd5b5050505050620005f4565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516200028491906200054e565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b8060026000828254620003529190620005cc565b90915550506001600160a01b0382166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600060208284031215620003be57600080fd5b81516001600160a01b0381168114620003d657600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200040857607f821691505b6020821081036200042957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200047d57600081815260208120601f850160051c81016020861015620004585750805b601f850160051c820191505b81811015620004795782815560010162000464565b5050505b505050565b81516001600160401b038111156200049e576200049e620003dd565b620004b681620004af8454620003f3565b846200042f565b602080601f831160018114620004ee5760008415620004d55750858301515b600019600386901b1c1916600185901b17855562000479565b600085815260208120601f198616915b828110156200051f57888601518255948401946001909101908401620004fe565b50858210156200053e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008083546200055e81620003f3565b600182811680156200057957600181146200058f57620005c0565b60ff1984168752821515830287019450620005c0565b8760005260208060002060005b85811015620005b75781548a8201529084019082016200059c565b50505082870194505b50929695505050505050565b80820180821115620005ee57634e487b7160e01b600052601160045260246000fd5b92915050565b60805160a05160c051610bc062000624600039600061049d015260006104680152600061016a0152610bc06000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610213578063d505accf14610226578063dd62ed3e14610239578063f2fde38b1461026457600080fd5b8063715018a6146101c65780637ecebe00146101d05780638da5cb5b146101f057806395d89b411461020b57600080fd5b806323b872dd116100d357806323b872dd14610152578063313ce567146101655780633644e5151461019e57806370a08231146101a657600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610277565b60405161010f91906108f8565b60405180910390f35b61012b610126366004610962565b610305565b604051901515815260200161010f565b61014460025481565b60405190815260200161010f565b61012b61016036600461098c565b610372565b61018c7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff909116815260200161010f565b610144610464565b6101446101b43660046109c8565b60036020526000908152604090205481565b6101ce6104bf565b005b6101446101de3660046109c8565b60056020526000908152604090205481565b6006546040516001600160a01b03909116815260200161010f565b6101026104d3565b61012b610221366004610962565b6104e0565b6101ce6102343660046109ea565b610558565b610144610247366004610a5d565b600460209081526000928352604080842090915290825290205481565b6101ce6102723660046109c8565b6107a1565b6000805461028490610a90565b80601f01602080910402602001604051908101604052809291908181526020018280546102b090610a90565b80156102fd5780601f106102d2576101008083540402835291602001916102fd565b820191906000526020600020905b8154815290600101906020018083116102e057829003601f168201915b505050505081565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103609086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001981146103ce576103a98382610aca565b6001600160a01b03861660009081526004602090815260408083203384529091529020555b6001600160a01b038516600090815260036020526040812080548592906103f6908490610aca565b90915550506001600160a01b03808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104519087815260200190565b60405180910390a3506001949350505050565b60007f0000000000000000000000000000000000000000000000000000000000000000461461049a576104956107df565b905090565b507f000000000000000000000000000000000000000000000000000000000000000090565b6104c7610879565b6104d160006108a6565b565b6001805461028490610a90565b33600090815260036020526040812080548391908390610501908490610aca565b90915550506001600160a01b038316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906103609086815260200190565b428410156105ad5760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064015b60405180910390fd5b600060016105b9610464565b6001600160a01b038a811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa1580156106c5573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116158015906106fb5750876001600160a01b0316816001600160a01b0316145b6107385760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b60448201526064016105a4565b6001600160a01b0390811660009081526004602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6107a9610879565b6001600160a01b0381166107d357604051631e4fbdf760e01b8152600060048201526024016105a4565b6107dc816108a6565b50565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516108119190610aeb565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b6006546001600160a01b031633146104d15760405163118cdaa760e01b81523360048201526024016105a4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b8181101561092557858101830151858201604001528201610909565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461095d57600080fd5b919050565b6000806040838503121561097557600080fd5b61097e83610946565b946020939093013593505050565b6000806000606084860312156109a157600080fd5b6109aa84610946565b92506109b860208501610946565b9150604084013590509250925092565b6000602082840312156109da57600080fd5b6109e382610946565b9392505050565b600080600080600080600060e0888a031215610a0557600080fd5b610a0e88610946565b9650610a1c60208901610946565b95506040880135945060608801359350608088013560ff81168114610a4057600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610a7057600080fd5b610a7983610946565b9150610a8760208401610946565b90509250929050565b600181811c90821680610aa457607f821691505b602082108103610ac457634e487b7160e01b600052602260045260246000fd5b50919050565b8181038181111561036c57634e487b7160e01b600052601160045260246000fd5b600080835481600182811c915080831680610b0757607f831692505b60208084108203610b2657634e487b7160e01b86526022600452602486fd5b818015610b3a5760018114610b4f57610b7c565b60ff1986168952841515850289019650610b7c565b60008a81526020902060005b86811015610b745781548b820152908501908301610b5b565b505084890196505b50949897505050505050505056fea2646970667358221220bf9add818ec4ba827f4de1b79459802b416f997fcc365bbaebbe77959c1b108064736f6c634300081500330000000000000000000000001dd4fb074e9f28ca9d21c93e0aa915b487893b1c

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063715018a611610097578063a9059cbb11610066578063a9059cbb14610213578063d505accf14610226578063dd62ed3e14610239578063f2fde38b1461026457600080fd5b8063715018a6146101c65780637ecebe00146101d05780638da5cb5b146101f057806395d89b411461020b57600080fd5b806323b872dd116100d357806323b872dd14610152578063313ce567146101655780633644e5151461019e57806370a08231146101a657600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610277565b60405161010f91906108f8565b60405180910390f35b61012b610126366004610962565b610305565b604051901515815260200161010f565b61014460025481565b60405190815260200161010f565b61012b61016036600461098c565b610372565b61018c7f000000000000000000000000000000000000000000000000000000000000001281565b60405160ff909116815260200161010f565b610144610464565b6101446101b43660046109c8565b60036020526000908152604090205481565b6101ce6104bf565b005b6101446101de3660046109c8565b60056020526000908152604090205481565b6006546040516001600160a01b03909116815260200161010f565b6101026104d3565b61012b610221366004610962565b6104e0565b6101ce6102343660046109ea565b610558565b610144610247366004610a5d565b600460209081526000928352604080842090915290825290205481565b6101ce6102723660046109c8565b6107a1565b6000805461028490610a90565b80601f01602080910402602001604051908101604052809291908181526020018280546102b090610a90565b80156102fd5780601f106102d2576101008083540402835291602001916102fd565b820191906000526020600020905b8154815290600101906020018083116102e057829003601f168201915b505050505081565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103609086815260200190565b60405180910390a35060015b92915050565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001981146103ce576103a98382610aca565b6001600160a01b03861660009081526004602090815260408083203384529091529020555b6001600160a01b038516600090815260036020526040812080548592906103f6908490610aca565b90915550506001600160a01b03808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104519087815260200190565b60405180910390a3506001949350505050565b60007f0000000000000000000000000000000000000000000000000000000000013e31461461049a576104956107df565b905090565b507fdcb5b7bebec434ea66543cf169fa5fd66ccc0e27b40bcbb4440b0ce71878e5ae90565b6104c7610879565b6104d160006108a6565b565b6001805461028490610a90565b33600090815260036020526040812080548391908390610501908490610aca565b90915550506001600160a01b038316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906103609086815260200190565b428410156105ad5760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064015b60405180910390fd5b600060016105b9610464565b6001600160a01b038a811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938d166060840152608083018c905260a083019390935260c08083018b90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016020604051602081039080840390855afa1580156106c5573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116158015906106fb5750876001600160a01b0316816001600160a01b0316145b6107385760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b60448201526064016105a4565b6001600160a01b0390811660009081526004602090815260408083208a8516808552908352928190208990555188815291928a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6107a9610879565b6001600160a01b0381166107d357604051631e4fbdf760e01b8152600060048201526024016105a4565b6107dc816108a6565b50565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516108119190610aeb565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b6006546001600160a01b031633146104d15760405163118cdaa760e01b81523360048201526024016105a4565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600060208083528351808285015260005b8181101561092557858101830151858201604001528201610909565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461095d57600080fd5b919050565b6000806040838503121561097557600080fd5b61097e83610946565b946020939093013593505050565b6000806000606084860312156109a157600080fd5b6109aa84610946565b92506109b860208501610946565b9150604084013590509250925092565b6000602082840312156109da57600080fd5b6109e382610946565b9392505050565b600080600080600080600060e0888a031215610a0557600080fd5b610a0e88610946565b9650610a1c60208901610946565b95506040880135945060608801359350608088013560ff81168114610a4057600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215610a7057600080fd5b610a7983610946565b9150610a8760208401610946565b90509250929050565b600181811c90821680610aa457607f821691505b602082108103610ac457634e487b7160e01b600052602260045260246000fd5b50919050565b8181038181111561036c57634e487b7160e01b600052601160045260246000fd5b600080835481600182811c915080831680610b0757607f831692505b60208084108203610b2657634e487b7160e01b86526022600452602486fd5b818015610b3a5760018114610b4f57610b7c565b60ff1986168952841515850289019650610b7c565b60008a81526020902060005b86811015610b745781548b820152908501908301610b5b565b505084890196505b50949897505050505050505056fea2646970667358221220bf9add818ec4ba827f4de1b79459802b416f997fcc365bbaebbe77959c1b108064736f6c63430008150033

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

0000000000000000000000001dd4fb074e9f28ca9d21c93e0aa915b487893b1c

-----Decoded View---------------
Arg [0] : treasury (address): 0x1Dd4FB074e9f28cA9D21c93E0AA915B487893B1c

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000001dd4fb074e9f28ca9d21c93e0aa915b487893b1c


[ 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.