ETH Price: $3,635.93 (-0.37%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer From186202312023-11-21 12:47:47411 days ago1700570867IN
0N1 Comics: COMICS Token
0 ETH0.0005699923.12147357
Transfer From186196612023-11-21 10:52:11411 days ago1700563931IN
0N1 Comics: COMICS Token
0 ETH0.0006792427.55328665
Transfer From180595962023-09-04 0:39:47490 days ago1693787987IN
0N1 Comics: COMICS Token
0 ETH0.0002476510.04611034
Transfer Ownersh...166832742023-02-22 10:04:11683 days ago1677060251IN
0N1 Comics: COMICS Token
0 ETH0.0008488729.60644623
Safe Transfer Fr...161269322022-12-06 16:25:11761 days ago1670343911IN
0N1 Comics: COMICS Token
0 ETH0.0004442720.04310993
Safe Transfer Fr...154728002022-09-04 17:01:26854 days ago1662310886IN
0N1 Comics: COMICS Token
0 ETH0.0002591611.692
Safe Transfer Fr...154726382022-09-04 16:25:22854 days ago1662308722IN
0N1 Comics: COMICS Token
0 ETH0.000201449.088
Safe Transfer Fr...154726262022-09-04 16:23:19854 days ago1662308599IN
0N1 Comics: COMICS Token
0 ETH0.0002659912
Safe Transfer Fr...154726182022-09-04 16:21:41854 days ago1662308501IN
0N1 Comics: COMICS Token
0 ETH0.0002365110.67
Transfer150993002022-07-08 2:40:34912 days ago1657248034IN
0N1 Comics: COMICS Token
0 ETH0.0004359620
Safe Transfer Fr...150781752022-07-04 20:19:46916 days ago1656965986IN
0N1 Comics: COMICS Token
0 ETH0.0006110327
Transfer From150332482022-06-27 7:33:22923 days ago1656315202IN
0N1 Comics: COMICS Token
0 ETH0.0006504926.38721489
Transfer From149295862022-06-09 0:06:25942 days ago1654733185IN
0N1 Comics: COMICS Token
0 ETH0.0016234865.85612696
Set NANOHUB149219602022-06-07 16:59:22943 days ago1654621162IN
0N1 Comics: COMICS Token
0 ETH0.0021741574.97591884
Set CID149219522022-06-07 16:57:44943 days ago1654621064IN
0N1 Comics: COMICS Token
0 ETH0.0026628870.60355064
Transfer From149160092022-06-06 16:54:26944 days ago1654534466IN
0N1 Comics: COMICS Token
0 ETH0.0021757188.25704135
Set NANOHUB148592092022-05-28 8:17:22953 days ago1653725842IN
0N1 Comics: COMICS Token
0 ETH0.0006513214.13291941
Set CID148592052022-05-28 8:16:42953 days ago1653725802IN
0N1 Comics: COMICS Token
0 ETH0.0013058614.22047758

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Comics

Compiler Version
v0.8.5+commit.a4f2e591

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 2 : Comics.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8;

import "./Ownable.sol";

interface ERC721TokenReceiver {
    function onERC721Received(
        address operator,
        address from,
        uint256 tokenId,
        bytes calldata data
    ) external returns (bytes4);
}

// @author: jolan.eth
contract Comics is Ownable {
    string public symbol = "COMICS";
    string public name = "0N1 Comics";
    string public CID;

    address public NANOHUB;

    uint256 private currentId = 1;

    mapping(uint256 => uint256) private packedOwnerships;
    mapping(address => uint256) private packedAddressData;

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

    constructor() {}

    function setCID(string memory _CID)
    public onlyOwner {
        CID = _CID;
    }

    function setNANOHUB(address _NANOHUB)
    public onlyOwner {
        NANOHUB = _NANOHUB;
    }

    function mintComics(address to)
    public {
        require(msg.sender == NANOHUB, "error NANOHUB");
        _mint(to, 1);
    }

    function transferFrom(address from, address to, uint tokenId)
    public {
        require(msg.sender == NANOHUB, "error NANOHUB");
        _transfer(from, to, tokenId);
    }

    function exist(uint256 tokenId)
    public view returns (bool) {
        return 1 <= tokenId && tokenId < currentId && (
            packedOwnerships[tokenId] & (1 << 224) == 0
        );
    }

    function supportsInterface(bytes4 interfaceId)
    public pure returns (bool) {
        return interfaceId == 0x80ac58cd || interfaceId == 0x5b5e139f;
    }

    function totalSupply()
    public view returns (uint256) {
        unchecked {
            return currentId - 1;
        }
    }

    function balanceOf(address owner)
    public view returns (uint256) {
        if (owner == address(0)) revert BalanceQueryForZeroAddress();
        return packedAddressData[owner] & ((1 << 64) - 1);
    }

    function ownerOf(uint256 tokenId)
    public view returns (address) {
        return address(uint160(_packedOwnershipOf(tokenId)));
    }

    function tokenURI(uint256 tokenId)
    public view returns (string memory) {
        if (!exist(tokenId)) revert URIQueryForNonexistentToken();
        return string(
            abi.encodePacked("ipfs://", CID, "/", _toString(tokenId))
        );
    }

    function _mint(address to, uint256 quantity)
    internal {
        uint256 startTokenId = currentId;
        if (to == address(0)) revert MintToZeroAddress();
        if (quantity == 0) revert MintZeroQuantity();

        unchecked {
            packedAddressData[to] += quantity * ((1 << 64) | 1);
            packedOwnerships[startTokenId] = (
                _addressToUint256(to) |
                (block.timestamp << 160) |
                (_boolToUint256(quantity == 1) << 225)
            );

            uint256 updatedIndex = startTokenId;
            uint256 end = updatedIndex + quantity;

            while (updatedIndex < end)
                emit Transfer(address(0), to, updatedIndex++);

            currentId = updatedIndex;
        }
    }

    function _transfer(address from, address to, uint256 tokenId)
    private {
        uint256 prevOwnershipPacked = _packedOwnershipOf(tokenId);

        if (address(uint160(prevOwnershipPacked)) != from)
            revert TransferFromIncorrectOwner();
        if (to == address(0))
            revert TransferToZeroAddress();

        unchecked {
            --packedAddressData[from];
            ++packedAddressData[to];

            packedOwnerships[tokenId] =
                _addressToUint256(to) | (block.timestamp << 160) | (1 << 225);

            if (prevOwnershipPacked & (1 << 225) == 0) {
                uint256 nextTokenId = tokenId + 1;
                if (packedOwnerships[nextTokenId] == 0)
                    if (nextTokenId != currentId)
                        packedOwnerships[nextTokenId] = prevOwnershipPacked;
            }
        }

        emit Transfer(from, to, tokenId);

        if (to.code.length != 0)
            if (!_checkContractOnERC721Received(from, to, tokenId, ''))
                revert TransferToNonERC721ReceiverImplementer();
    }

    function _packedOwnershipOf(uint256 tokenId)
    private view returns (uint256) {
        uint256 curr = tokenId;

        unchecked {
            if (1 <= curr)
                if (curr < currentId) {
                    uint256 packed = packedOwnerships[curr];
                    if (packed & (1 << 224) == 0) {
                        while (packed == 0) {
                            packed = packedOwnerships[--curr];
                        }
                        return packed;
                    }
                }
        }
        revert OwnerQueryForNonexistentToken();
    }

    function _unpackedOwnership(uint256 packed)
    private pure returns (address, uint64, bool) {
        return (
            address(uint160(packed)),
            uint64(packed >> 160),
            packed & (1 << 224) != 0
        );
    }

    function _initializeOwnershipAt(uint256 index)
    internal {
        if (packedOwnerships[index] == 0)
            packedOwnerships[index] = _packedOwnershipOf(index);
    }

    function _ownershipOf(uint256 tokenId)
    internal view returns (address, uint64, bool) {
        return _unpackedOwnership(_packedOwnershipOf(tokenId));
    }

    function _checkContractOnERC721Received(
        address from,
        address to,
        uint256 tokenId,
        bytes memory _data
    ) private returns (bool) {
        try ERC721TokenReceiver(to).onERC721Received(
            msg.sender, from, tokenId, _data
        ) returns (bytes4 retval) {
            return retval == ERC721TokenReceiver(to).onERC721Received.selector;
        } catch (bytes memory reason) {
            if (reason.length == 0)
                revert TransferToNonERC721ReceiverImplementer();
            else assembly {
                revert(add(32, reason), mload(reason))
            }
        }
    }

    function _toString(uint256 value)
    private pure returns (string memory) {
        if (value == 0) return "0";

        uint256 digits;
        uint256 tmp = value;

        while (tmp != 0) {
            digits++;
            tmp /= 10;
        }

        bytes memory buffer = new bytes(digits);
        while (value != 0) {
            digits -= 1;
            buffer[digits] = bytes1(uint8(48 + uint256(value % 10)));
            value /= 10;
        }

        return string(buffer);
    }

    function _addressToUint256(address value)
    private pure returns (uint256 result) {
        assembly {
            result := value
        }
    }

    function _boolToUint256(bool value)
    private pure returns (uint256 result) {
        assembly {
            result := value
        }
    }

    error TransferToNonERC721ReceiverImplementer();
    error OwnerQueryForNonexistentToken();
    error URIQueryForNonexistentToken();
    error BalanceQueryForZeroAddress();
    error TransferFromIncorrectOwner();
    error TransferToZeroAddress();
    error MintToZeroAddress();
    error MintZeroQuantity();
}

File 2 of 2 : Ownable.sol
//SPDX-License-Identifier: MIT
pragma solidity ^0.8;

abstract contract Ownable {
    address private _owner;
    
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    
    modifier onlyOwner() {
        require(owner() == msg.sender, "error owner()");
        _;
    }

    constructor() { _transferOwnership(msg.sender); }

    function owner() public view virtual returns (address) {
        return _owner;
    }

    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "error newOwner");
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BalanceQueryForZeroAddress","type":"error"},{"inputs":[],"name":"MintToZeroAddress","type":"error"},{"inputs":[],"name":"MintZeroQuantity","type":"error"},{"inputs":[],"name":"OwnerQueryForNonexistentToken","type":"error"},{"inputs":[],"name":"TransferFromIncorrectOwner","type":"error"},{"inputs":[],"name":"TransferToNonERC721ReceiverImplementer","type":"error"},{"inputs":[],"name":"TransferToZeroAddress","type":"error"},{"inputs":[],"name":"URIQueryForNonexistentToken","type":"error"},{"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":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"CID","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NANOHUB","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"exist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"mintComics","outputs":[],"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":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_CID","type":"string"}],"name":"setCID","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_NANOHUB","type":"address"}],"name":"setNANOHUB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","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":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60c06040526006608081905265434f4d49435360d01b60a0908152620000299160019190620000d2565b5060408051808201909152600a80825269304e3120436f6d69637360b01b60209092019182526200005d91600291620000d2565b5060016005553480156200007057600080fd5b506200007c3362000082565b620001b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620000e09062000178565b90600052602060002090601f0160209004810192826200010457600085556200014f565b82601f106200011f57805160ff19168380011785556200014f565b828001600101855582156200014f579182015b828111156200014f57825182559160200191906001019062000132565b506200015d92915062000161565b5090565b5b808211156200015d576000815560010162000162565b600181811c908216806200018d57607f821691505b60208210811415620001af57634e487b7160e01b600052602260045260246000fd5b50919050565b61108c80620001c56000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a2578063b461802211610071578063b461802214610210578063c098004c14610223578063c3d6ee7f1461022b578063c87b56dd1461023e578063f2fde38b1461025157600080fd5b806370a08231146101dc578063715018a6146101ef5780638da5cb5b146101f757806395d89b411461020857600080fd5b806323b872dd116100de57806323b872dd146101785780634add9fb51461018b5780634ebbc92a146101b65780636352211e146101c957600080fd5b806301ffc9a71461011057806306fdde031461013857806318160ddd1461014d5780631ebe8c5814610163575b600080fd5b61012361011e366004610c86565b610264565b60405190151581526020015b60405180910390f35b61014061029b565b60405161012f9190610ed5565b600554600019015b60405190815260200161012f565b610176610171366004610c2f565b610329565b005b610176610186366004610c4a565b610386565b60045461019e906001600160a01b031681565b6040516001600160a01b03909116815260200161012f565b6101236101c4366004610d71565b6103e0565b61019e6101d7366004610d71565b610415565b6101556101ea366004610c2f565b610420565b61017661046f565b6000546001600160a01b031661019e565b6101406104b4565b61017661021e366004610c2f565b6104c1565b61014061051c565b610176610239366004610cc0565b610529565b61014061024c366004610d71565b610579565b61017661025f366004610c2f565b6105d3565b60006380ac58cd60e01b6001600160e01b0319831614806102955750635b5e139f60e01b6001600160e01b03198316145b92915050565b600280546102a890610f7e565b80601f01602080910402602001604051908101604052809291908181526020018280546102d490610f7e565b80156103215780601f106102f657610100808354040283529160200191610321565b820191906000526020600020905b81548152906001019060200180831161030457829003601f168201915b505050505081565b6004546001600160a01b031633146103785760405162461bcd60e51b815260206004820152600d60248201526c32b93937b9102720a727a42aa160991b60448201526064015b60405180910390fd5b61038381600161065c565b50565b6004546001600160a01b031633146103d05760405162461bcd60e51b815260206004820152600d60248201526c32b93937b9102720a727a42aa160991b604482015260640161036f565b6103db838383610740565b505050565b6000816001111580156103f4575060055482105b8015610295575050600090815260066020526040902054600160e01b161590565b6000610295826108bd565b60006001600160a01b038216610449576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b031660009081526007602052604090205467ffffffffffffffff1690565b336104826000546001600160a01b031690565b6001600160a01b0316146104a85760405162461bcd60e51b815260040161036f90610ee8565b6104b2600061092d565b565b600180546102a890610f7e565b336104d46000546001600160a01b031690565b6001600160a01b0316146104fa5760405162461bcd60e51b815260040161036f90610ee8565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b600380546102a890610f7e565b3361053c6000546001600160a01b031690565b6001600160a01b0316146105625760405162461bcd60e51b815260040161036f90610ee8565b8051610575906003906020840190610b7a565b5050565b6060610584826103e0565b6105a157604051630a14c4b560e41b815260040160405180910390fd5b60036105ac8361097d565b6040516020016105bd929190610dd2565b6040516020818303038152906040529050919050565b336105e66000546001600160a01b031690565b6001600160a01b03161461060c5760405162461bcd60e51b815260040161036f90610ee8565b6001600160a01b0381166106535760405162461bcd60e51b815260206004820152600e60248201526d32b93937b9103732bba7bbb732b960911b604482015260640161036f565b6103838161092d565b6005546001600160a01b03831661068557604051622e076360e81b815260040160405180910390fd5b816106a35760405163b562e8dd60e01b815260040160405180910390fd5b6001600160a01b03831660009081526007602090815260408083208054680100000000000000018702019055838352600690915290204260a01b84176001841460e11b179055808083015b80821015610737576040516001830192906001600160a01b038716906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46106ee565b50600555505050565b600061074b826108bd565b9050836001600160a01b0316816001600160a01b03161461077e5760405162a1148160e81b815260040160405180910390fd5b6001600160a01b0383166107a557604051633a954ecd60e21b815260040160405180910390fd5b6001600160a01b038481166000908152600760205260408082208054600019019055918516815220805460010190554260a01b836000848152600660205260409020600160e11b9290911782179055811661082e576001820160008181526006602052604090205461082c57600554811461082c5760008181526006602052604090208290555b505b81836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46001600160a01b0383163b156108b75761089a84848460405180602001604052806000815250610a83565b6108b7576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b600081600181106109145760055481101561091457600081815260066020526040902054600160e01b8116610912575b8061090b5750600019016000818152600660205260409020546108ed565b9392505050565b505b604051636f96cda160e11b815260040160405180910390fd5b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060816109a15750506040805180820190915260018152600360fc1b602082015290565b6000825b80156109cb57816109b581610fb9565b92506109c49050600a82610f27565b90506109a5565b60008267ffffffffffffffff8111156109e6576109e661102a565b6040519080825280601f01601f191660200182016040528015610a10576020820181803683370190505b5090505b8415610a7b57610a25600184610f3b565b9250610a32600a86610fd4565b610a3d906030610f0f565b60f81b818481518110610a5257610a52611014565b60200101906001600160f81b031916908160001a905350610a74600a86610f27565b9450610a14565b949350505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290610ab8903390899088908890600401610ea2565b602060405180830381600087803b158015610ad257600080fd5b505af1925050508015610b02575060408051601f3d908101601f19168201909252610aff91810190610ca3565b60015b610b5d573d808015610b30576040519150601f19603f3d011682016040523d82523d6000602084013e610b35565b606091505b508051610b55576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b828054610b8690610f7e565b90600052602060002090601f016020900481019282610ba85760008555610bee565b82601f10610bc157805160ff1916838001178555610bee565b82800160010185558215610bee579182015b82811115610bee578251825591602001919060010190610bd3565b50610bfa929150610bfe565b5090565b5b80821115610bfa5760008155600101610bff565b80356001600160a01b0381168114610c2a57600080fd5b919050565b600060208284031215610c4157600080fd5b61090b82610c13565b600080600060608486031215610c5f57600080fd5b610c6884610c13565b9250610c7660208501610c13565b9150604084013590509250925092565b600060208284031215610c9857600080fd5b813561090b81611040565b600060208284031215610cb557600080fd5b815161090b81611040565b600060208284031215610cd257600080fd5b813567ffffffffffffffff80821115610cea57600080fd5b818401915084601f830112610cfe57600080fd5b813581811115610d1057610d1061102a565b604051601f8201601f19908116603f01168101908382118183101715610d3857610d3861102a565b81604052828152876020848701011115610d5157600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208284031215610d8357600080fd5b5035919050565b60008151808452610da2816020860160208601610f52565b601f01601f19169290920160200192915050565b60008151610dc8818560208601610f52565b9290920192915050565b66697066733a2f2f60c81b8152600060076000855481600182811c915080831680610dfe57607f831692505b6020808410821415610e1e57634e487b7160e01b86526022600452602486fd5b818015610e325760018114610e4757610e78565b60ff1986168a890152848a0188019650610e78565b60008c81526020902060005b86811015610e6e5781548c82018b0152908501908301610e53565b505087858b010196505b505050505050610e98610e9282602f60f81b815260010190565b86610db6565b9695505050505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610e9890830184610d8a565b60208152600061090b6020830184610d8a565b6020808252600d908201526c6572726f72206f776e6572282960981b604082015260600190565b60008219821115610f2257610f22610fe8565b500190565b600082610f3657610f36610ffe565b500490565b600082821015610f4d57610f4d610fe8565b500390565b60005b83811015610f6d578181015183820152602001610f55565b838111156108b75750506000910152565b600181811c90821680610f9257607f821691505b60208210811415610fb357634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415610fcd57610fcd610fe8565b5060010190565b600082610fe357610fe3610ffe565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b03198116811461038357600080fdfea264697066735822122025c9929f39a824604955499baaf00bac7ba36abcaad7aa84784cd9cd9ebb532364736f6c63430008050033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a2578063b461802211610071578063b461802214610210578063c098004c14610223578063c3d6ee7f1461022b578063c87b56dd1461023e578063f2fde38b1461025157600080fd5b806370a08231146101dc578063715018a6146101ef5780638da5cb5b146101f757806395d89b411461020857600080fd5b806323b872dd116100de57806323b872dd146101785780634add9fb51461018b5780634ebbc92a146101b65780636352211e146101c957600080fd5b806301ffc9a71461011057806306fdde031461013857806318160ddd1461014d5780631ebe8c5814610163575b600080fd5b61012361011e366004610c86565b610264565b60405190151581526020015b60405180910390f35b61014061029b565b60405161012f9190610ed5565b600554600019015b60405190815260200161012f565b610176610171366004610c2f565b610329565b005b610176610186366004610c4a565b610386565b60045461019e906001600160a01b031681565b6040516001600160a01b03909116815260200161012f565b6101236101c4366004610d71565b6103e0565b61019e6101d7366004610d71565b610415565b6101556101ea366004610c2f565b610420565b61017661046f565b6000546001600160a01b031661019e565b6101406104b4565b61017661021e366004610c2f565b6104c1565b61014061051c565b610176610239366004610cc0565b610529565b61014061024c366004610d71565b610579565b61017661025f366004610c2f565b6105d3565b60006380ac58cd60e01b6001600160e01b0319831614806102955750635b5e139f60e01b6001600160e01b03198316145b92915050565b600280546102a890610f7e565b80601f01602080910402602001604051908101604052809291908181526020018280546102d490610f7e565b80156103215780601f106102f657610100808354040283529160200191610321565b820191906000526020600020905b81548152906001019060200180831161030457829003601f168201915b505050505081565b6004546001600160a01b031633146103785760405162461bcd60e51b815260206004820152600d60248201526c32b93937b9102720a727a42aa160991b60448201526064015b60405180910390fd5b61038381600161065c565b50565b6004546001600160a01b031633146103d05760405162461bcd60e51b815260206004820152600d60248201526c32b93937b9102720a727a42aa160991b604482015260640161036f565b6103db838383610740565b505050565b6000816001111580156103f4575060055482105b8015610295575050600090815260066020526040902054600160e01b161590565b6000610295826108bd565b60006001600160a01b038216610449576040516323d3ad8160e21b815260040160405180910390fd5b506001600160a01b031660009081526007602052604090205467ffffffffffffffff1690565b336104826000546001600160a01b031690565b6001600160a01b0316146104a85760405162461bcd60e51b815260040161036f90610ee8565b6104b2600061092d565b565b600180546102a890610f7e565b336104d46000546001600160a01b031690565b6001600160a01b0316146104fa5760405162461bcd60e51b815260040161036f90610ee8565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b600380546102a890610f7e565b3361053c6000546001600160a01b031690565b6001600160a01b0316146105625760405162461bcd60e51b815260040161036f90610ee8565b8051610575906003906020840190610b7a565b5050565b6060610584826103e0565b6105a157604051630a14c4b560e41b815260040160405180910390fd5b60036105ac8361097d565b6040516020016105bd929190610dd2565b6040516020818303038152906040529050919050565b336105e66000546001600160a01b031690565b6001600160a01b03161461060c5760405162461bcd60e51b815260040161036f90610ee8565b6001600160a01b0381166106535760405162461bcd60e51b815260206004820152600e60248201526d32b93937b9103732bba7bbb732b960911b604482015260640161036f565b6103838161092d565b6005546001600160a01b03831661068557604051622e076360e81b815260040160405180910390fd5b816106a35760405163b562e8dd60e01b815260040160405180910390fd5b6001600160a01b03831660009081526007602090815260408083208054680100000000000000018702019055838352600690915290204260a01b84176001841460e11b179055808083015b80821015610737576040516001830192906001600160a01b038716906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46106ee565b50600555505050565b600061074b826108bd565b9050836001600160a01b0316816001600160a01b03161461077e5760405162a1148160e81b815260040160405180910390fd5b6001600160a01b0383166107a557604051633a954ecd60e21b815260040160405180910390fd5b6001600160a01b038481166000908152600760205260408082208054600019019055918516815220805460010190554260a01b836000848152600660205260409020600160e11b9290911782179055811661082e576001820160008181526006602052604090205461082c57600554811461082c5760008181526006602052604090208290555b505b81836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46001600160a01b0383163b156108b75761089a84848460405180602001604052806000815250610a83565b6108b7576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b600081600181106109145760055481101561091457600081815260066020526040902054600160e01b8116610912575b8061090b5750600019016000818152600660205260409020546108ed565b9392505050565b505b604051636f96cda160e11b815260040160405180910390fd5b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060816109a15750506040805180820190915260018152600360fc1b602082015290565b6000825b80156109cb57816109b581610fb9565b92506109c49050600a82610f27565b90506109a5565b60008267ffffffffffffffff8111156109e6576109e661102a565b6040519080825280601f01601f191660200182016040528015610a10576020820181803683370190505b5090505b8415610a7b57610a25600184610f3b565b9250610a32600a86610fd4565b610a3d906030610f0f565b60f81b818481518110610a5257610a52611014565b60200101906001600160f81b031916908160001a905350610a74600a86610f27565b9450610a14565b949350505050565b604051630a85bd0160e11b81526000906001600160a01b0385169063150b7a0290610ab8903390899088908890600401610ea2565b602060405180830381600087803b158015610ad257600080fd5b505af1925050508015610b02575060408051601f3d908101601f19168201909252610aff91810190610ca3565b60015b610b5d573d808015610b30576040519150601f19603f3d011682016040523d82523d6000602084013e610b35565b606091505b508051610b55576040516368d2bf6b60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050949350505050565b828054610b8690610f7e565b90600052602060002090601f016020900481019282610ba85760008555610bee565b82601f10610bc157805160ff1916838001178555610bee565b82800160010185558215610bee579182015b82811115610bee578251825591602001919060010190610bd3565b50610bfa929150610bfe565b5090565b5b80821115610bfa5760008155600101610bff565b80356001600160a01b0381168114610c2a57600080fd5b919050565b600060208284031215610c4157600080fd5b61090b82610c13565b600080600060608486031215610c5f57600080fd5b610c6884610c13565b9250610c7660208501610c13565b9150604084013590509250925092565b600060208284031215610c9857600080fd5b813561090b81611040565b600060208284031215610cb557600080fd5b815161090b81611040565b600060208284031215610cd257600080fd5b813567ffffffffffffffff80821115610cea57600080fd5b818401915084601f830112610cfe57600080fd5b813581811115610d1057610d1061102a565b604051601f8201601f19908116603f01168101908382118183101715610d3857610d3861102a565b81604052828152876020848701011115610d5157600080fd5b826020860160208301376000928101602001929092525095945050505050565b600060208284031215610d8357600080fd5b5035919050565b60008151808452610da2816020860160208601610f52565b601f01601f19169290920160200192915050565b60008151610dc8818560208601610f52565b9290920192915050565b66697066733a2f2f60c81b8152600060076000855481600182811c915080831680610dfe57607f831692505b6020808410821415610e1e57634e487b7160e01b86526022600452602486fd5b818015610e325760018114610e4757610e78565b60ff1986168a890152848a0188019650610e78565b60008c81526020902060005b86811015610e6e5781548c82018b0152908501908301610e53565b505087858b010196505b505050505050610e98610e9282602f60f81b815260010190565b86610db6565b9695505050505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090610e9890830184610d8a565b60208152600061090b6020830184610d8a565b6020808252600d908201526c6572726f72206f776e6572282960981b604082015260600190565b60008219821115610f2257610f22610fe8565b500190565b600082610f3657610f36610ffe565b500490565b600082821015610f4d57610f4d610fe8565b500390565b60005b83811015610f6d578181015183820152602001610f55565b838111156108b75750506000910152565b600181811c90821680610f9257607f821691505b60208210811415610fb357634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415610fcd57610fcd610fe8565b5060010190565b600082610fe357610fe3610ffe565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b03198116811461038357600080fdfea264697066735822122025c9929f39a824604955499baaf00bac7ba36abcaad7aa84784cd9cd9ebb532364736f6c63430008050033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

0N1 COMICS NFT are part of the next evolution in the storytelling universe that we are building called the 0N1VERSE. The 0N1 COMICS are a direct extension of the original 0N1 FORCE NFT and are bound both in DNA and ownership. 0N1 COMICS are directly linked to it's owner. With ...

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.