Contract 0xc4fF327949466909d6C5b32640f44a21E9e1AfFF

 
 
Txn Hash
Method
Block
From
To
Value
0xfc7928e75d0f9d65c592382c64c810b7d7fec89a75e08034cde52c6144a16d0aSet Approval For...160923922022-12-01 20:38:351 day 2 hrs agoENS Name danhawk.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.0007373 14.4419441
0x6b28e160bca96a8d51e00bf49423b5c075551ee3ef72fb679d7b76d95eb22e8cSafe Transfer Fr...160891462022-12-01 9:45:231 day 13 hrs ago0x739d3de2fb4d78ef53a4bc9b555ca9fc6799b1b3 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00053309 11.81530903
0x13bbc46e8ad25464faeb67b50e6bd266c31955f1209a50e12b58c7349c4f19f5Set Approval For...160475492022-11-25 14:18:237 days 8 hrs ago0x6fd9d1cae4eacde36980bd8080e76b8b820c3510 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.0006653 13.03174202
0x7333bbc9dd7e9faa2693741574afabe8be9f606d1cd0898d35fcb2d084352d91Set Approval For...160350282022-11-23 20:18:599 days 2 hrs agoENS Name 4five6.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00040131 13.77135856
0x732e0b9848decd08c91d33a7e9a32c40032463c1655e24765b64789bd8a30972Set Approval For...160170312022-11-21 7:54:5911 days 15 hrs agoENS Name tropicvibes.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00056826 11.13085053
0x61410c475effeb2342776d695952104729ae8498a93989d448c76efb2db7874fSafe Transfer Fr...160159902022-11-21 4:25:5911 days 18 hrs ago0xe5317e9175b98bac93fe02ca26f4de8b9f886440 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00040549 9
0x67a1bf0949ba93c7b92f5f61462cfeb0a8adcb882f705b53d66b88a612125bdeSafe Transfer Fr...159918132022-11-17 19:24:5915 days 3 hrs ago0x3db7d31fe5fd5e20ae40ab31cd774d367ad11231 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00136404 21.94587531
0x4d13de4aed360d24264cc6b4ed49acb728cd463a32a285a044d1d6cd98cff8aaSet Approval For...159520622022-11-12 6:12:2320 days 16 hrs ago0x6bdc48c6dd9b4623221a5b2466ce3cbf44df7833 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00086123 16.86952566
0x4d5e46c8068e361f5a8961420f7475c9452cdbc050d968d60edff3fd50152358Set Approval For...159043332022-11-05 14:12:1127 days 8 hrs agoENS Name tivuel.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00036794 12.62624993
0x6e8f4e264e5fec39341bce58f6a4e20d27da31b9426c800c4d1080695baab74aSafe Transfer Fr...158622872022-10-30 17:11:2333 days 5 hrs ago0xf9252f4abfaa6fc29900f6c9d48a077bf59c9f75 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00051272 8.25069905
0xd6b3798fddf04db15fdce12614e538799958664d80025bb7b642836ab0667855Set Approval For...158505882022-10-29 1:58:1134 days 21 hrs agoENS Name ciirocii.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00046381 9.08495222
0xd730b7571cfd6626596aa9bc9bbdbb0104226f2d8ee7cad493436e7c8f1feb23Set Approval For...158473522022-10-28 15:07:1135 days 7 hrs ago0xde7efa7ff8146760c23ba649f2a6ea0648a12024 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00079009 15.47593339
0x621ca16f9a80dd3dc8158923bd958cfc92ee41e98ea0ee8f835ace21412f75a8Set Approval For...158438322022-10-28 3:19:3535 days 19 hrs agoENS Name paulpistol44.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00066677 13.06035673
0x563ab1787c7f328d25175269dca905eae072d1c644b70e00812b72faf3a7c2f9Set Approval For...158412592022-10-27 18:40:3536 days 4 hrs agoENS Name brem1.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00145153 28.43182918
0x62fa640d74a950b755b5118f13184c1ffe4c04bc6c5e68ef300553a0cfe3185bSet Approval For...157933292022-10-21 1:55:1142 days 21 hrs agoENS Name alpinelifer.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00108731 21.29771283
0x743775a914250eb0fe6b0bd680e77d59c9e4eb599c4d52de7ac0d32f61eccf9eSet Approval For...157918852022-10-20 21:06:1143 days 1 hr agoENS Name moby.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00166065 32.52809434
0xc0bd982be42e3308551c4987fbe322bedbf6c9ead12564a68148751aa793d056Set Approval For...157642462022-10-17 0:26:5946 days 22 hrs agoENS Name cryptoneil.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00071199 13.94613623
0xdbed86657a430660e30c3755929e75fafa2450dcb855b9582b6a44ec3462ae47Safe Transfer Fr...157351112022-10-12 22:47:5951 days 11 mins agoENS Name arwinlevinson.eth IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00096605 15.54267538
0xca303edc5ebc8de671d323d37eb1fd9031ae72cd7f152f8327b60120a4eda55cSafe Transfer Fr...157012822022-10-08 5:28:5955 days 17 hrs ago0xacaf5248d299279b2dbe1b68aa5eb2d74624abc3 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00038015 6.11628649
0xb6dcf018bcb6dbfaaacf299c992b27b1236455da0746d04fc554a7d9347fc208Safe Transfer Fr...157012722022-10-08 5:26:5955 days 17 hrs ago0xacaf5248d299279b2dbe1b68aa5eb2d74624abc3 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00035989 5.79034416
0x9b75c70b7a88a770db282b1663f3ad09fc3992a4173201a0202ea3693182cff5Safe Transfer Fr...157012642022-10-08 5:25:2355 days 17 hrs ago0xacaf5248d299279b2dbe1b68aa5eb2d74624abc3 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00040701 6.54846032
0x97013c27fdf8ac112c4ec94cd9ad5f73c978dca3dc56e559ef0f02cf9c1120f1Safe Transfer Fr...157012552022-10-08 5:23:3555 days 17 hrs ago0xacaf5248d299279b2dbe1b68aa5eb2d74624abc3 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.0003669 5.90307343
0x23b28057ce9cc04e632900a56978866d97e43f1ca6d3f3b2e168984c53747b49Set Approval For...156865552022-10-06 4:03:4757 days 18 hrs ago0x28c684be427a91b5efc07691917798f96d94020d IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00032124 6.29231757
0xf333b40b1811f8bfa023a3ca0464c078ea25e544d5c4d23a2629157c0505d988Safe Transfer Fr...156795982022-10-05 4:43:4758 days 18 hrs ago0x77245553fce15cd02f598f68007dba9ed5dea013 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00050165 8.07408841
0x29f0c38afe06daf4db6d8f503de637f98c5d01297250ed3212c26a8913596f0fSet Approval For...156554482022-10-01 19:40:4762 days 3 hrs ago0x94e567d8ce475af211b0c60e9936cb321dc5f2a9 IN  0xc4ff327949466909d6c5b32640f44a21e9e1afff0 Ether0.00038977 7.6348073
[ Download CSV Export 
View more zero value Internal Transactions in Advanced View mode
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
MJP

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 300 runs

Other Settings:
default evmVersion
File 1 of 5 : MJP.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/// @title: MojoPals
/// @author: manifold.xyz

import "./ERC1155Creator.sol";

////////////////////////////////////////////////////////////////////////
//                                                                    //
//                                                                    //
//                                                                    //
//                                                                    //
//       _____             __      __________        .__              //
//      /     \   ____    |__| ____\______   \_____  |  |   ______    //
//     /  \ /  \ /  _ \   |  |/  _ \|     ___/\__  \ |  |  /  ___/    //
//    /    Y    (  <_> )  |  (  <_> )    |     / __ \|  |__\___ \     //
//    \____|__  /\____/\__|  |\____/|____|    (____  /____/____  >    //
//            \/      \______|                     \/          \/     //
//                                                                    //
//                                                                    //
//                                                                    //
//                                                                    //
////////////////////////////////////////////////////////////////////////


contract MJP is ERC1155Creator {
    constructor() ERC1155Creator() {}
}

File 2 of 5 : ERC1155Creator.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

/// @author: manifold.xyz

import "@openzeppelin/contracts/proxy/Proxy.sol";
import "@openzeppelin/contracts/utils/Address.sol";
import "@openzeppelin/contracts/utils/StorageSlot.sol";

contract ERC1155Creator is Proxy {

    constructor() {
        assert(_IMPLEMENTATION_SLOT == bytes32(uint256(keccak256("eip1967.proxy.implementation")) - 1));
        StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = 0x142FD5b9d67721EfDA3A5E2E9be47A96c9B724A4;
        Address.functionDelegateCall(
            0x142FD5b9d67721EfDA3A5E2E9be47A96c9B724A4,
            abi.encodeWithSignature("initialize()")
        );
    }

    /**
     * @dev Storage slot with the address of the current implementation.
     * This is the keccak-256 hash of "eip1967.proxy.implementation" subtracted by 1, and is
     * validated in the constructor.
     */
    bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;

    /**
     * @dev Returns the current implementation address.
     */
     function implementation() public view returns (address) {
        return _implementation();
    }

    function _implementation() internal override view returns (address) {
        return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
    }    

}

File 3 of 5 : Proxy.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.5.0) (proxy/Proxy.sol)

pragma solidity ^0.8.0;

/**
 * @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
 * instruction `delegatecall`. We refer to the second contract as the _implementation_ behind the proxy, and it has to
 * be specified by overriding the virtual {_implementation} function.
 *
 * Additionally, delegation to the implementation can be triggered manually through the {_fallback} function, or to a
 * different contract through the {_delegate} function.
 *
 * The success and return data of the delegated call will be returned back to the caller of the proxy.
 */
abstract contract Proxy {
    /**
     * @dev Delegates the current call to `implementation`.
     *
     * This function does not return to its internal call site, it will return directly to the external caller.
     */
    function _delegate(address implementation) internal virtual {
        assembly {
            // Copy msg.data. We take full control of memory in this inline assembly
            // block because it will not return to Solidity code. We overwrite the
            // Solidity scratch pad at memory position 0.
            calldatacopy(0, 0, calldatasize())

            // Call the implementation.
            // out and outsize are 0 because we don't know the size yet.
            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

            // Copy the returned data.
            returndatacopy(0, 0, returndatasize())

            switch result
            // delegatecall returns 0 on error.
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @dev This is a virtual function that should be overriden so it returns the address to which the fallback function
     * and {_fallback} should delegate.
     */
    function _implementation() internal view virtual returns (address);

    /**
     * @dev Delegates the current call to the address returned by `_implementation()`.
     *
     * This function does not return to its internall call site, it will return directly to the external caller.
     */
    function _fallback() internal virtual {
        _beforeFallback();
        _delegate(_implementation());
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if no other
     * function in the contract matches the call data.
     */
    fallback() external payable virtual {
        _fallback();
    }

    /**
     * @dev Fallback function that delegates calls to the address returned by `_implementation()`. Will run if call data
     * is empty.
     */
    receive() external payable virtual {
        _fallback();
    }

    /**
     * @dev Hook that is called before falling back to the implementation. Can happen as part of a manual `_fallback`
     * call, or as part of the Solidity `fallback` or `receive` functions.
     *
     * If overriden should call `super._beforeFallback()`.
     */
    function _beforeFallback() internal virtual {}
}

File 4 of 5 : Address.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.5.0) (utils/Address.sol)

pragma solidity ^0.8.1;

/**
 * @dev Collection of functions related to the address type
 */
library Address {
    /**
     * @dev Returns true if `account` is a contract.
     *
     * [IMPORTANT]
     * ====
     * It is unsafe to assume that an address for which this function returns
     * false is an externally-owned account (EOA) and not a contract.
     *
     * Among others, `isContract` will return false for the following
     * types of addresses:
     *
     *  - an externally-owned account
     *  - a contract in construction
     *  - an address where a contract will be created
     *  - an address where a contract lived, but was destroyed
     * ====
     *
     * [IMPORTANT]
     * ====
     * You shouldn't rely on `isContract` to protect against flash loan attacks!
     *
     * Preventing calls from contracts is highly discouraged. It breaks composability, breaks support for smart wallets
     * like Gnosis Safe, and does not provide security since it can be circumvented by calling from a contract
     * constructor.
     * ====
     */
    function isContract(address account) internal view returns (bool) {
        // This method relies on extcodesize/address.code.length, which returns 0
        // for contracts in construction, since the code is only stored at the end
        // of the constructor execution.

        return account.code.length > 0;
    }

    /**
     * @dev Replacement for Solidity's `transfer`: sends `amount` wei to
     * `recipient`, forwarding all available gas and reverting on errors.
     *
     * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost
     * of certain opcodes, possibly making contracts go over the 2300 gas limit
     * imposed by `transfer`, making them unable to receive funds via
     * `transfer`. {sendValue} removes this limitation.
     *
     * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more].
     *
     * IMPORTANT: because control is transferred to `recipient`, care must be
     * taken to not create reentrancy vulnerabilities. Consider using
     * {ReentrancyGuard} or the
     * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern].
     */
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    /**
     * @dev Performs a Solidity function call using a low level `call`. A
     * plain `call` is an unsafe replacement for a function call: use this
     * function instead.
     *
     * If `target` reverts with a revert reason, it is bubbled up by this
     * function (like regular Solidity function calls).
     *
     * Returns the raw returned data. To convert to the expected return value,
     * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`].
     *
     * Requirements:
     *
     * - `target` must be a contract.
     * - calling `target` with `data` must not revert.
     *
     * _Available since v3.1._
     */
    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with
     * `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    function functionCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, 0, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but also transferring `value` wei to `target`.
     *
     * Requirements:
     *
     * - the calling contract must have an ETH balance of at least `value`.
     * - the called Solidity function must be `payable`.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    /**
     * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but
     * with `errorMessage` as a fallback revert reason when `target` reverts.
     *
     * _Available since v3.1._
     */
    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        require(isContract(target), "Address: call to non-contract");

        (bool success, bytes memory returndata) = target.call{value: value}(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) {
        return functionStaticCall(target, data, "Address: low-level static call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a static call.
     *
     * _Available since v3.3._
     */
    function functionStaticCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal view returns (bytes memory) {
        require(isContract(target), "Address: static call to non-contract");

        (bool success, bytes memory returndata) = target.staticcall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionDelegateCall(target, data, "Address: low-level delegate call failed");
    }

    /**
     * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`],
     * but performing a delegate call.
     *
     * _Available since v3.4._
     */
    function functionDelegateCall(
        address target,
        bytes memory data,
        string memory errorMessage
    ) internal returns (bytes memory) {
        require(isContract(target), "Address: delegate call to non-contract");

        (bool success, bytes memory returndata) = target.delegatecall(data);
        return verifyCallResult(success, returndata, errorMessage);
    }

    /**
     * @dev Tool to verifies that a low level call was successful, and revert if it wasn't, either by bubbling the
     * revert reason using the provided one.
     *
     * _Available since v4.3._
     */
    function verifyCallResult(
        bool success,
        bytes memory returndata,
        string memory errorMessage
    ) internal pure returns (bytes memory) {
        if (success) {
            return returndata;
        } else {
            // Look for revert reason and bubble it up if present
            if (returndata.length > 0) {
                // The easiest way to bubble the revert reason is using memory via assembly

                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

File 5 of 5 : StorageSlot.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/StorageSlot.sol)

pragma solidity ^0.8.0;

/**
 * @dev Library for reading and writing primitive types to specific storage slots.
 *
 * Storage slots are often used to avoid storage conflict when dealing with upgradeable contracts.
 * This library helps with reading and writing to such slots without the need for inline assembly.
 *
 * The functions in this library return Slot structs that contain a `value` member that can be used to read or write.
 *
 * Example usage to set ERC1967 implementation slot:
 * ```
 * contract ERC1967 {
 *     bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
 *
 *     function _getImplementation() internal view returns (address) {
 *         return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
 *     }
 *
 *     function _setImplementation(address newImplementation) internal {
 *         require(Address.isContract(newImplementation), "ERC1967: new implementation is not a contract");
 *         StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = newImplementation;
 *     }
 * }
 * ```
 *
 * _Available since v4.1 for `address`, `bool`, `bytes32`, and `uint256`._
 */
library StorageSlot {
    struct AddressSlot {
        address value;
    }

    struct BooleanSlot {
        bool value;
    }

    struct Bytes32Slot {
        bytes32 value;
    }

    struct Uint256Slot {
        uint256 value;
    }

    /**
     * @dev Returns an `AddressSlot` with member `value` located at `slot`.
     */
    function getAddressSlot(bytes32 slot) internal pure returns (AddressSlot storage r) {
        assembly {
            r.slot := slot
        }
    }

    /**
     * @dev Returns an `BooleanSlot` with member `value` located at `slot`.
     */
    function getBooleanSlot(bytes32 slot) internal pure returns (BooleanSlot storage r) {
        assembly {
            r.slot := slot
        }
    }

    /**
     * @dev Returns an `Bytes32Slot` with member `value` located at `slot`.
     */
    function getBytes32Slot(bytes32 slot) internal pure returns (Bytes32Slot storage r) {
        assembly {
            r.slot := slot
        }
    }

    /**
     * @dev Returns an `Uint256Slot` with member `value` located at `slot`.
     */
    function getUint256Slot(bytes32 slot) internal pure returns (Uint256Slot storage r) {
        assembly {
            r.slot := slot
        }
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b5061003c60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6102a2565b60008051602061064383398151915214610058576100586102f7565b73142fd5b9d67721efda3a5e2e9be47a96c9b724a461009160008051602061064383398151915260001b61010860201b6100dd1760201c565b80546001600160a01b03929092166001600160a01b0319909216919091179055604080516004815260248101909152602080820180516001600160e01b031663204a7f0760e21b1790526101029173142fd5b9d67721efda3a5e2e9be47a96c9b724a4916100e061010b821b17901c565b5061030d565b90565b6060610130838360405180606001604052806027815260200161066360279139610137565b9392505050565b60606001600160a01b0384163b6101a45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b0316856040516101bf9190610253565b600060405180830381855af49150503d80600081146101fa576040519150601f19603f3d011682016040523d82523d6000602084013e6101ff565b606091505b50909250905061021082828661021a565b9695505050505050565b60608315610229575081610130565b8251156102395782518084602001fd5b8160405162461bcd60e51b815260040161019b919061026f565b600082516102658184602087016102c7565b9190910192915050565b602081526000825180602084015261028e8160408501602087016102c7565b601f01601f19169190910160400192915050565b6000828210156102c257634e487b7160e01b600052601160045260246000fd5b500390565b60005b838110156102e25781810151838201526020016102ca565b838111156102f1576000848401525b50505050565b634e487b7160e01b600052600160045260246000fd5b6103278061031c6000396000f3fe6080604052600436106100225760003560e01c80635c60da1b1461003957610031565b366100315761002f61006a565b005b61002f61006a565b34801561004557600080fd5b5061004e6100a5565b6040516001600160a01b03909116815260200160405180910390f35b6100a361009e7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b61010c565b565b60006100d87f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b90565b606061010583836040518060600160405280602781526020016102cb60279139610130565b9392505050565b3660008037600080366000845af43d6000803e80801561012b573d6000f35b3d6000fd5b60606001600160a01b0384163b61019d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b0316856040516101b8919061024b565b600060405180830381855af49150503d80600081146101f3576040519150601f19603f3d011682016040523d82523d6000602084013e6101f8565b606091505b5091509150610208828286610212565b9695505050505050565b60608315610221575081610105565b8251156102315782518084602001fd5b8160405162461bcd60e51b81526004016101949190610267565b6000825161025d81846020870161029a565b9190910192915050565b602081526000825180602084015261028681604085016020870161029a565b601f01601f19169190910160400192915050565b60005b838110156102b557818101518382015260200161029d565b838111156102c4576000848401525b5050505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122057c8bc54d25372f2ce283374bf398019fff290338d459c29c3da79cd9f60114764736f6c63430008070033360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564

Block Transaction Difficulty Gas Used Reward
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.

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.