Sepolia Testnet

Token

Dyson Sphere (DYSN)
ERC-20 Source Code

Overview

Max Total Supply

76,063,676.326974586700025841 DYSN

Holders

2,052

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
10,091.434537460916490998 DYSN
0x6f108fcce5f2d3731f5a8ed7f3671b6f31c4bd64
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x5928A372...02E0a6dFa
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
Token

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 2100 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity Standard Json-Input format)

pragma solidity 0.8.17;

// SPDX-License-Identifier: AGPL-3.0

import "./TransferHelper.sol";

contract Token {
    using TransferHelper for address;

    // For EIP-2612 permit()
    bytes32 public immutable DOMAIN_SEPARATOR;
    // keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)")
    bytes32 public constant PERMIT_TYPEHASH = 0x6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9;
    string public symbol;
    string public name;
    uint8 public immutable decimals;
    uint public totalSupply;
    address public owner;

    mapping(address => uint) public balanceOf;
    mapping(address => mapping(address => uint)) public allowance;
    mapping(address => bool) public isMinter;
    mapping(address => bool) public allowTransfer;

    mapping(address => uint256) public nonces;

    event TransferOwnership(address newOwner);
    event Transfer(address indexed from, address indexed to, uint amount);
    event Approval(address indexed owner, address indexed spender, uint amount);

    constructor(address _owner, string memory _name, string memory _symbol, uint8 _decimals) {
        require(_owner != address(0), "INVALID_OWNER");
        owner = _owner;
        name = _name;
        symbol = _symbol;
        decimals = _decimals;

        uint256 chainId;
        assembly {
            chainId := chainid()
        }
        DOMAIN_SEPARATOR = keccak256(
            abi.encode(
                keccak256("EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"),
                keccak256(bytes(_name)),
                keccak256(bytes("1")),
                chainId,
                address(this)
            )
        );
    }

    modifier onlyOwner() {
        require(msg.sender == owner, "FORBIDDEN");
        _;
    }

    /// @notice rescue token stucked in this contract
    /// @param tokenAddress Address of token to be rescued
    /// @param to Address that will receive token
    /// @param amount Amount of token to be rescued
    function rescueERC20(address tokenAddress, address to, uint256 amount) onlyOwner external {
        tokenAddress.safeTransfer(to, amount);
    }

    function transferOwnership(address _owner) external onlyOwner {
        require(_owner != address(0), "INVALID_OWNER");
        owner = _owner;
        emit TransferOwnership(_owner);
    }

    function addMinter(address _minter) external onlyOwner {
        isMinter[_minter] = true;
    }

    function removeMinter(address _minter) external onlyOwner {
        isMinter[_minter] = false;
    }

    function addAllowTransfer(address _addr) external onlyOwner {
        allowTransfer[_addr] = true;
    }

    function removeAllowTransfer(address _addr) external onlyOwner {
        allowTransfer[_addr] = false;
    }

    function approve(address spender, uint amount) external returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }

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

        allowance[_owner][_spender] = _amount;
        emit Approval(_owner, _spender, _amount);
    }

    function _mint(address to, uint amount) internal returns (bool) {
        balanceOf[to] += amount;
        totalSupply += amount;
        emit Transfer(address(0), to, amount);
        return true;
    }

    function _burn(address from, uint256 amount) internal returns (bool) {
        balanceOf[from] -= amount;
        totalSupply -= amount;
        emit Transfer(from, address(0), amount);
        return true;
    }

    function _transfer(address from, address to, uint amount) internal returns (bool) {
        require(allowTransfer[from] || allowTransfer[to], "ERC20: transfer is not allowed");
        balanceOf[from] -= amount;
        balanceOf[to] += amount;
        emit Transfer(from, to, amount);
        return true;
    }

    function transfer(address to, uint amount) external returns (bool) {
        return _transfer(msg.sender, to, amount);
    }

    function transferFrom(address from, address to, uint amount) external returns (bool) {
        if (allowance[from][msg.sender] != type(uint).max) {
            allowance[from][msg.sender] -= amount;
        }
        return _transfer(from, to, amount);
    }

    function mint(address to, uint amount) external returns (bool) {
        require(isMinter[msg.sender] || (owner == msg.sender), "FORBIDDEN");
        return _mint(to, amount);
    }

    function burn(address from, uint amount) external returns (bool) {
        if (allowance[from][msg.sender] != type(uint).max) {
            allowance[from][msg.sender] -= amount;
        }
        return _burn(from, amount);
    }

    // implement the eip-2612
    function permit(
        address _owner,
        address _spender,
        uint256 _amount,
        uint256 _deadline,
        uint8 _v,
        bytes32 _r,
        bytes32 _s
    ) external {
        require(_owner != address(0), "zero address");
        require(block.timestamp <= _deadline || _deadline == 0, "permit is expired");
        bytes32 digest = keccak256(
            abi.encodePacked(uint16(0x1901), DOMAIN_SEPARATOR, keccak256(abi.encode(PERMIT_TYPEHASH, _owner, _spender, _amount, nonces[_owner]++, _deadline)))
        );
        require(_owner == ecrecover(digest, _v, _r, _s), "invalid signature");
        _approve(_owner, _spender, _amount);
    }
}

pragma solidity 0.8.17;

// SPDX-License-Identifier: AGPL-3.0

library TransferHelper {
    function safeApprove(address token, address to, uint value) internal {
        // bytes4(keccak256(bytes('approve(address,uint256)')));
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x095ea7b3, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: APPROVE_FAILED');
    }

    function safeTransfer(address token, address to, uint value) internal {
        // bytes4(keccak256(bytes('transfer(address,uint256)')));
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0xa9059cbb, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FAILED');
    }

    function safeTransferFrom(address token, address from, address to, uint value) internal {
        // bytes4(keccak256(bytes('transferFrom(address,address,uint256)')));
        (bool success, bytes memory data) = token.call(abi.encodeWithSelector(0x23b872dd, from, to, value));
        require(success && (data.length == 0 || abi.decode(data, (bool))), 'TransferHelper: TRANSFER_FROM_FAILED');
    }

    function safeTransferETH(address to, uint value) internal {
        (bool success,) = to.call{value:value}(new bytes(0));
        require(success, 'TransferHelper: ETH_TRANSFER_FAILED');
    }
}

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

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"},{"internalType":"uint8","name":"_decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approval","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newOwner","type":"address"}],"name":"TransferOwnership","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERMIT_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"addAllowTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"addMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"allowTransfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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":"_amount","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":[{"internalType":"address","name":"_addr","type":"address"}],"name":"removeAllowTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"removeMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueERC20","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":"_owner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

0x60c06040523480156200001157600080fd5b506040516200181b3803806200181b83398101604081905262000034916200022a565b6001600160a01b0384166200007f5760405162461bcd60e51b815260206004820152600d60248201526c24a72b20a624a22fa7aba722a960991b604482015260640160405180910390fd5b600380546001600160a01b0319166001600160a01b0386161790556001620000a884826200035d565b506000620000b783826200035d565b5060ff1660a0908152825160209384012060408051808201825260018152603160f81b9086015280517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f81870152808201929092527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808084019190915230838501528151808403909401845260c090920190528151919093012090915250620004299050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200018d57600080fd5b81516001600160401b0380821115620001aa57620001aa62000165565b604051601f8301601f19908116603f01168101908282118183101715620001d557620001d562000165565b81604052838152602092508683858801011115620001f257600080fd5b600091505b83821015620002165785820183015181830184015290820190620001f7565b600093810190920192909252949350505050565b600080600080608085870312156200024157600080fd5b84516001600160a01b03811681146200025957600080fd5b60208601519094506001600160401b03808211156200027757600080fd5b62000285888389016200017b565b945060408701519150808211156200029c57600080fd5b50620002ab878288016200017b565b925050606085015160ff81168114620002c357600080fd5b939692955090935050565b600181811c90821680620002e357607f821691505b6020821081036200030457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200035857600081815260208120601f850160051c81016020861015620003335750805b601f850160051c820191505b8181101562000354578281556001016200033f565b5050505b505050565b81516001600160401b0381111562000379576200037962000165565b62000391816200038a8454620002ce565b846200030a565b602080601f831160018114620003c95760008415620003b05750858301515b600019600386901b1c1916600185901b17855562000354565b600085815260208120601f198616915b82811015620003fa57888601518255948401946001909101908401620003d9565b5085821015620004195787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a0516113c5620004566000396000610249015260008181610282015261084e01526113c56000f3fe608060405234801561001057600080fd5b50600436106101985760003560e01c806395d89b41116100e3578063b3490bfc1161008c578063e2a330e111610066578063e2a330e1146103fa578063e7d8c54f1461040d578063f2fde38b1461042057600080fd5b8063b3490bfc14610399578063d505accf146103bc578063dd62ed3e146103cf57600080fd5b8063a9059cbb116100bd578063a9059cbb14610350578063aa271e1a14610363578063b2118a8d1461038657600080fd5b806395d89b4114610322578063983b2d561461032a5780639dc29fac1461033d57600080fd5b8063313ce5671161014557806370a082311161011f57806370a08231146102b75780637ecebe00146102d75780638da5cb5b146102f757600080fd5b8063313ce567146102445780633644e5151461027d57806340c10f19146102a457600080fd5b806323b872dd1161017657806323b872dd146101f55780633092afd51461020857806330adf81f1461021d57600080fd5b806306fdde031461019d578063095ea7b3146101bb57806318160ddd146101de575b600080fd5b6101a5610433565b6040516101b29190611119565b60405180910390f35b6101ce6101c9366004611168565b6104c1565b60405190151581526020016101b2565b6101e760025481565b6040519081526020016101b2565b6101ce610203366004611192565b6104d8565b61021b6102163660046111ce565b610550565b005b6101e77f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b61026b7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101b2565b6101e77f000000000000000000000000000000000000000000000000000000000000000081565b6101ce6102b2366004611168565b6105bc565b6101e76102c53660046111ce565b60046020526000908152604090205481565b6101e76102e53660046111ce565b60086020526000908152604090205481565b60035461030a906001600160a01b031681565b6040516001600160a01b0390911681526020016101b2565b6101a561062d565b61021b6103383660046111ce565b61063a565b6101ce61034b366004611168565b6106a4565b6101ce61035e366004611168565b610713565b6101ce6103713660046111ce565b60066020526000908152604090205460ff1681565b61021b610394366004611192565b610720565b6101ce6103a73660046111ce565b60076020526000908152604090205460ff1681565b61021b6103ca3660046111e9565b61077f565b6101e76103dd36600461125c565b600560209081526000928352604080842090915290825290205481565b61021b6104083660046111ce565b610a24565b61021b61041b3660046111ce565b610a8e565b61021b61042e3660046111ce565b610af5565b600180546104409061128f565b80601f016020809104026020016040519081016040528092919081815260200182805461046c9061128f565b80156104b95780601f1061048e576101008083540402835291602001916104b9565b820191906000526020600020905b81548152906001019060200180831161049c57829003601f168201915b505050505081565b60006104ce338484610bfd565b5060015b92915050565b6001600160a01b03831660009081526005602090815260408083203384529091528120546000191461053d576001600160a01b038416600090815260056020908152604080832033845290915281208054849290610537908490611311565b90915550505b610548848484610d55565b949350505050565b6003546001600160a01b0316331461059b5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b60448201526064015b60405180910390fd5b6001600160a01b03166000908152600660205260409020805460ff19169055565b3360009081526006602052604081205460ff16806105e457506003546001600160a01b031633145b61061c5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6106268383610e93565b9392505050565b600080546104409061128f565b6003546001600160a01b031633146106805760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600660205260409020805460ff19166001179055565b6001600160a01b038216600090815260056020908152604080832033845290915281205460001914610709576001600160a01b038316600090815260056020908152604080832033845290915281208054849290610703908490611311565b90915550505b6106268383610f26565b6000610626338484610d55565b6003546001600160a01b031633146107665760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b61077a6001600160a01b0384168383610fac565b505050565b6001600160a01b0387166107d55760405162461bcd60e51b815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610592565b83421115806107e2575083155b61082e5760405162461bcd60e51b815260206004820152601160248201527f7065726d697420697320657870697265640000000000000000000000000000006044820152606401610592565b6001600160a01b03871660009081526008602052604081208054611901917f0000000000000000000000000000000000000000000000000000000000000000917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918c918c918c9190886108a183611324565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810188905260e0016040516020818303038152906040528051906020012060405160200161093d9392919060f09390931b7fffff0000000000000000000000000000000000000000000000000000000000001683526002830191909152602282015260420190565b60408051601f1981840301815282825280516020918201206000845290830180835281905260ff8716918301919091526060820185905260808201849052915060019060a0016020604051602081039080840390855afa1580156109a5573d6000803e3d6000fd5b505050602060405103516001600160a01b0316886001600160a01b031614610a0f5760405162461bcd60e51b815260206004820152601160248201527f696e76616c6964207369676e61747572650000000000000000000000000000006044820152606401610592565b610a1a888888610bfd565b5050505050505050565b6003546001600160a01b03163314610a6a5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600760205260409020805460ff19166001179055565b6003546001600160a01b03163314610ad45760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600760205260409020805460ff19169055565b6003546001600160a01b03163314610b3b5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b038116610b915760405162461bcd60e51b815260206004820152600d60248201527f494e56414c49445f4f574e4552000000000000000000000000000000000000006044820152606401610592565b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040519081527fcfaaa26691e16e66e73290fc725eee1a6b4e0e693a1640484937aac25ffb55a49060200160405180910390a150565b6001600160a01b038316610c785760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610592565b6001600160a01b038216610cf45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610592565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526007602052604081205460ff1680610d9457506001600160a01b03831660009081526007602052604090205460ff165b610de05760405162461bcd60e51b815260206004820152601e60248201527f45524332303a207472616e73666572206973206e6f7420616c6c6f77656400006044820152606401610592565b6001600160a01b03841660009081526004602052604081208054849290610e08908490611311565b90915550506001600160a01b03831660009081526004602052604081208054849290610e3590849061133e565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610e8191815260200190565b60405180910390a35060019392505050565b6001600160a01b038216600090815260046020526040812080548391908390610ebd90849061133e565b925050819055508160026000828254610ed6919061133e565b90915550506040518281526001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a350600192915050565b6001600160a01b038216600090815260046020526040812080548391908390610f50908490611311565b925050819055508160026000828254610f699190611311565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610f15565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905291516000928392908716916110369190611351565b6000604051808303816000865af19150503d8060008114611073576040519150601f19603f3d011682016040523d82523d6000602084013e611078565b606091505b50915091508180156110a25750805115806110a25750808060200190518101906110a2919061136d565b6110ee5760405162461bcd60e51b815260206004820152601f60248201527f5472616e7366657248656c7065723a205452414e534645525f4641494c4544006044820152606401610592565b5050505050565b60005b838110156111105781810151838201526020016110f8565b50506000910152565b60208152600082518060208401526111388160408501602087016110f5565b601f01601f19169190910160400192915050565b80356001600160a01b038116811461116357600080fd5b919050565b6000806040838503121561117b57600080fd5b6111848361114c565b946020939093013593505050565b6000806000606084860312156111a757600080fd5b6111b08461114c565b92506111be6020850161114c565b9150604084013590509250925092565b6000602082840312156111e057600080fd5b6106268261114c565b600080600080600080600060e0888a03121561120457600080fd5b61120d8861114c565b965061121b6020890161114c565b95506040880135945060608801359350608088013560ff8116811461123f57600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561126f57600080fd5b6112788361114c565b91506112866020840161114c565b90509250929050565b600181811c908216806112a357607f821691505b6020821081036112dc577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156104d2576104d26112e2565b60006000198203611337576113376112e2565b5060010190565b808201808211156104d2576104d26112e2565b600082516113638184602087016110f5565b9190910192915050565b60006020828403121561137f57600080fd5b8151801515811461062657600080fdfea2646970667358221220607e6e21d05cb25d9aaecfb2e5e075a066b7fe8a01b89da43fcd848da5f43d8464736f6c63430008110033000000000000000000000000d87764fcb9067bf36e2da3adad601c4ad86902e1000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000000c4479736f6e20537068657265000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044459534e00000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101985760003560e01c806395d89b41116100e3578063b3490bfc1161008c578063e2a330e111610066578063e2a330e1146103fa578063e7d8c54f1461040d578063f2fde38b1461042057600080fd5b8063b3490bfc14610399578063d505accf146103bc578063dd62ed3e146103cf57600080fd5b8063a9059cbb116100bd578063a9059cbb14610350578063aa271e1a14610363578063b2118a8d1461038657600080fd5b806395d89b4114610322578063983b2d561461032a5780639dc29fac1461033d57600080fd5b8063313ce5671161014557806370a082311161011f57806370a08231146102b75780637ecebe00146102d75780638da5cb5b146102f757600080fd5b8063313ce567146102445780633644e5151461027d57806340c10f19146102a457600080fd5b806323b872dd1161017657806323b872dd146101f55780633092afd51461020857806330adf81f1461021d57600080fd5b806306fdde031461019d578063095ea7b3146101bb57806318160ddd146101de575b600080fd5b6101a5610433565b6040516101b29190611119565b60405180910390f35b6101ce6101c9366004611168565b6104c1565b60405190151581526020016101b2565b6101e760025481565b6040519081526020016101b2565b6101ce610203366004611192565b6104d8565b61021b6102163660046111ce565b610550565b005b6101e77f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b61026b7f000000000000000000000000000000000000000000000000000000000000001281565b60405160ff90911681526020016101b2565b6101e77f4d2a4c6b9298f20e7343c8d42e15d26a0ddeabf8e20ac2f3c5e77329bec1f0bf81565b6101ce6102b2366004611168565b6105bc565b6101e76102c53660046111ce565b60046020526000908152604090205481565b6101e76102e53660046111ce565b60086020526000908152604090205481565b60035461030a906001600160a01b031681565b6040516001600160a01b0390911681526020016101b2565b6101a561062d565b61021b6103383660046111ce565b61063a565b6101ce61034b366004611168565b6106a4565b6101ce61035e366004611168565b610713565b6101ce6103713660046111ce565b60066020526000908152604090205460ff1681565b61021b610394366004611192565b610720565b6101ce6103a73660046111ce565b60076020526000908152604090205460ff1681565b61021b6103ca3660046111e9565b61077f565b6101e76103dd36600461125c565b600560209081526000928352604080842090915290825290205481565b61021b6104083660046111ce565b610a24565b61021b61041b3660046111ce565b610a8e565b61021b61042e3660046111ce565b610af5565b600180546104409061128f565b80601f016020809104026020016040519081016040528092919081815260200182805461046c9061128f565b80156104b95780601f1061048e576101008083540402835291602001916104b9565b820191906000526020600020905b81548152906001019060200180831161049c57829003601f168201915b505050505081565b60006104ce338484610bfd565b5060015b92915050565b6001600160a01b03831660009081526005602090815260408083203384529091528120546000191461053d576001600160a01b038416600090815260056020908152604080832033845290915281208054849290610537908490611311565b90915550505b610548848484610d55565b949350505050565b6003546001600160a01b0316331461059b5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b60448201526064015b60405180910390fd5b6001600160a01b03166000908152600660205260409020805460ff19169055565b3360009081526006602052604081205460ff16806105e457506003546001600160a01b031633145b61061c5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6106268383610e93565b9392505050565b600080546104409061128f565b6003546001600160a01b031633146106805760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600660205260409020805460ff19166001179055565b6001600160a01b038216600090815260056020908152604080832033845290915281205460001914610709576001600160a01b038316600090815260056020908152604080832033845290915281208054849290610703908490611311565b90915550505b6106268383610f26565b6000610626338484610d55565b6003546001600160a01b031633146107665760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b61077a6001600160a01b0384168383610fac565b505050565b6001600160a01b0387166107d55760405162461bcd60e51b815260206004820152600c60248201527f7a65726f206164647265737300000000000000000000000000000000000000006044820152606401610592565b83421115806107e2575083155b61082e5760405162461bcd60e51b815260206004820152601160248201527f7065726d697420697320657870697265640000000000000000000000000000006044820152606401610592565b6001600160a01b03871660009081526008602052604081208054611901917f4d2a4c6b9298f20e7343c8d42e15d26a0ddeabf8e20ac2f3c5e77329bec1f0bf917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9918c918c918c9190886108a183611324565b909155506040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810188905260e0016040516020818303038152906040528051906020012060405160200161093d9392919060f09390931b7fffff0000000000000000000000000000000000000000000000000000000000001683526002830191909152602282015260420190565b60408051601f1981840301815282825280516020918201206000845290830180835281905260ff8716918301919091526060820185905260808201849052915060019060a0016020604051602081039080840390855afa1580156109a5573d6000803e3d6000fd5b505050602060405103516001600160a01b0316886001600160a01b031614610a0f5760405162461bcd60e51b815260206004820152601160248201527f696e76616c6964207369676e61747572650000000000000000000000000000006044820152606401610592565b610a1a888888610bfd565b5050505050505050565b6003546001600160a01b03163314610a6a5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600760205260409020805460ff19166001179055565b6003546001600160a01b03163314610ad45760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b03166000908152600760205260409020805460ff19169055565b6003546001600160a01b03163314610b3b5760405162461bcd60e51b81526020600482015260096024820152682327a92124a22222a760b91b6044820152606401610592565b6001600160a01b038116610b915760405162461bcd60e51b815260206004820152600d60248201527f494e56414c49445f4f574e4552000000000000000000000000000000000000006044820152606401610592565b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040519081527fcfaaa26691e16e66e73290fc725eee1a6b4e0e693a1640484937aac25ffb55a49060200160405180910390a150565b6001600160a01b038316610c785760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610592565b6001600160a01b038216610cf45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f73730000000000000000000000000000000000000000000000000000000000006064820152608401610592565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526007602052604081205460ff1680610d9457506001600160a01b03831660009081526007602052604090205460ff165b610de05760405162461bcd60e51b815260206004820152601e60248201527f45524332303a207472616e73666572206973206e6f7420616c6c6f77656400006044820152606401610592565b6001600160a01b03841660009081526004602052604081208054849290610e08908490611311565b90915550506001600160a01b03831660009081526004602052604081208054849290610e3590849061133e565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610e8191815260200190565b60405180910390a35060019392505050565b6001600160a01b038216600090815260046020526040812080548391908390610ebd90849061133e565b925050819055508160026000828254610ed6919061133e565b90915550506040518281526001600160a01b038416906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020015b60405180910390a350600192915050565b6001600160a01b038216600090815260046020526040812080548391908390610f50908490611311565b925050819055508160026000828254610f699190611311565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001610f15565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905291516000928392908716916110369190611351565b6000604051808303816000865af19150503d8060008114611073576040519150601f19603f3d011682016040523d82523d6000602084013e611078565b606091505b50915091508180156110a25750805115806110a25750808060200190518101906110a2919061136d565b6110ee5760405162461bcd60e51b815260206004820152601f60248201527f5472616e7366657248656c7065723a205452414e534645525f4641494c4544006044820152606401610592565b5050505050565b60005b838110156111105781810151838201526020016110f8565b50506000910152565b60208152600082518060208401526111388160408501602087016110f5565b601f01601f19169190910160400192915050565b80356001600160a01b038116811461116357600080fd5b919050565b6000806040838503121561117b57600080fd5b6111848361114c565b946020939093013593505050565b6000806000606084860312156111a757600080fd5b6111b08461114c565b92506111be6020850161114c565b9150604084013590509250925092565b6000602082840312156111e057600080fd5b6106268261114c565b600080600080600080600060e0888a03121561120457600080fd5b61120d8861114c565b965061121b6020890161114c565b95506040880135945060608801359350608088013560ff8116811461123f57600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561126f57600080fd5b6112788361114c565b91506112866020840161114c565b90509250929050565b600181811c908216806112a357607f821691505b6020821081036112dc577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156104d2576104d26112e2565b60006000198203611337576113376112e2565b5060010190565b808201808211156104d2576104d26112e2565b600082516113638184602087016110f5565b9190910192915050565b60006020828403121561137f57600080fd5b8151801515811461062657600080fdfea2646970667358221220607e6e21d05cb25d9aaecfb2e5e075a066b7fe8a01b89da43fcd848da5f43d8464736f6c63430008110033

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