Contract 0x20F780A973856B93f63670377900C1d2a50a77c4 5

 

Contract Overview

Element: Marketplace
Balance:
0.01 Ether

EtherValue:
$16.86 (@ $1,686.00/ETH)

Token:
 
Txn Hash
Method
Block
From
To
Value
0x36979f87a281e7fad5ed671549d52e25dae55f7cff56085ef98d8d0edb6e1a02Buy ERC721(pending)2023-02-05 2:55:102 days 22 hrs ago0x3baf147b4979ec9ef7bcfe1461c9ba868f56f5a6 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0xa9e0eaa5eb6f006ab9914053d52ba0106847f3e3d5226d3de8fce6d2e0197e95Buy ERC721(pending)2023-02-05 2:55:102 days 22 hrs ago0x3baf147b4979ec9ef7bcfe1461c9ba868f56f5a6 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0xaca4f6697cf73597b29c69be640e189e76eb6a675cb44f76d9242e8a8e023491Buy ERC721(pending)2023-02-05 2:38:402 days 22 hrs ago0x2b7665d3b1d92052c7a7e6ff5ce58c8349ae1670 IN Element: Marketplace0.04 Ether(Pending)(Pending)
0x12a512646a502e341427b2da6f6969eddee3af1334568872ccaa5ee1bf43e8d9Buy ERC721(pending)2023-02-05 2:31:042 days 23 hrs ago0xda21ceb3278216b13221fa07fbbebfc2129ae21d IN Element: Marketplace0.0003 Ether(Pending)(Pending)
0x0730fdae5f3ecf87d504d628d088c4f142951cf0bddcabfee5f14e558064db4cBuy ERC721(pending)2023-02-05 2:02:142 days 23 hrs ago0x446f86a4ea7967f21f6ea2c79b5a97127e6943c6 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0xf3c05541ba22213d11b3c0872a3265f7daba65a60a486eefe86c4100b5f0b4faBuy ERC721(pending)2023-02-05 1:54:082 days 23 hrs ago0xe144531f543119490a547fe28e0219e4c164d9e6 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0x4b7c45a8d8008560b27fca9fcc0d1331533e5e205a667c69205c0bbd5ad45330Buy ERC721(pending)2023-02-05 1:43:022 days 23 hrs ago0xc1a74f566365eee120e978a57d5134fbe54e702e IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0xd60750488c11e87a39bc849f578fb6942c00e9f440c24fd0f743ffa538204a3bBuy ERC721(pending)2023-02-05 1:42:122 days 23 hrs ago0x3aa9d0348ede5c0b6b5a3c8832eea1505bc3d226 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0x1e29af03a53bb411595f3d19b304bd4de05f2a5dc9949b7bc760f2473cf704fdBuy ERC721(pending)2023-02-02 5:02:595 days 20 hrs ago0x3592d71deae14ea0bd29a0e95e5465fcd88c51f6 IN Element: Marketplace0.000002 Ether(Pending)(Pending)
0x114b616e89119b1d1885127027064cb5228d47495eb0ba9881984c6b2011eeecFill Basic ERC72...165784862023-02-07 17:46:477 hrs 48 mins agoENS Name imckk.eth IN Element: Marketplace0.7079 Ether0.00721915 43.85826152
0xcff1ddcf7abd121f6f026f23baa36ee2d69ce7a97701df7a46111cf775011befBatch Cancel ERC...165781342023-02-07 16:36:118 hrs 59 mins agoENS Name tonystarknet.eth IN Element: Marketplace0 Ether0.00218615 42.48005845
0x87f8c9eceb1dd9a7043562cfb40a94aaed701c5a677cd67f637a78fb3673878eFill Basic ERC72...165773102023-02-07 13:50:5911 hrs 44 mins ago0x91c39d644dc71ce440c25ac36e7053c987c673f1 IN Element: Marketplace0.0004 Ether0.00258933 26.94977731
0x947ac4034eccf03ccd42a7b814be4f736b68fe0a761b6e182a61286694ee9985Cancel ERC721Ord...165772822023-02-07 13:45:2311 hrs 50 mins ago0xafb7e144d36c8ecca77bc40a6f4da19d6ba9eebe IN Element: Marketplace0 Ether0.00085044 27.64136981
0xe026ddbbcff5ce0bf2c95756c2c11cc0a987fe6a5cd29e270c37d182372bea08Cancel ERC721Ord...165771032023-02-07 13:09:1112 hrs 26 mins ago0x4a75f0a32d4d9115c8634d9de1d9183af0c3ce0f IN Element: Marketplace0 Ether0.00109247 32.54614459
0x1585b897ce878917b82c32b0888bb2f9987630fde99aa8284358a5d522a89d6aCancel ERC721Ord...165770992023-02-07 13:08:2312 hrs 27 mins ago0x4a75f0a32d4d9115c8634d9de1d9183af0c3ce0f IN Element: Marketplace0 Ether0.00169468 33.4474194
0xb967ef6559641be3ecaa36297290f0473c2b14501fa299f12fee38a933dd4ac5Transfer Items165769902023-02-07 12:45:4712 hrs 49 mins ago0x753892a0e16718a7b26cc1726f236902c91d30fd IN Element: Marketplace0 Ether0.00703975 22.87158395
0x3f12e4a9b67fbe25f97c334cde4f30a82c0485f43406bc3d13919e907d205b10Increment Hash N...165764342023-02-07 10:53:4714 hrs 41 mins ago0x266f5a62a72908f8045d3cb9e0790f1d98684c39 IN Element: Marketplace0 Ether0.00070249 21.17220685
0x77054e3e6c8843f104da963a0412d16b324d2c14ced1b12dce3cfa9f3f32333dCancel ERC721Ord...165763412023-02-07 10:35:1115 hrs ago0x331c8014a62297e8f4a2f8c17e81516d76fcbc4d IN Element: Marketplace0 Ether0.00066368 21.57126518
0x20ed1b7492b3958ef065e353cb558b2e7a757425f4ba52256f065b59fc2bbdc7Fill Basic ERC72...165762602023-02-07 10:18:4715 hrs 16 mins ago0x9cdc4389f4d5b15fa7e7939ac1fdb594ef2fdab1 IN Element: Marketplace0.0068 Ether0.00214309 22.51054558
0x26fd73ac358fcb18db427c2372dd62f50a0c01f4307d77ad891a6389a9fe21a4Cancel ERC721Ord...165761352023-02-07 9:53:3515 hrs 41 mins ago0x20fd542369db2c80fa744d07e6e6b3824d9f469a IN Element: Marketplace0 Ether0.00069909 22.72238541
0x16627bccb02b83ec3ebf5b8c53973f07ca6ad24e780fc6ac9faeb38bc15311e2Increment Hash N...165760862023-02-07 9:43:4715 hrs 51 mins ago0x0c3ae65414b211bc690ed7a6e3888aca1e9d2bf7 IN Element: Marketplace0 Ether0.00074668 22.50392195
0xd96ebcc76584ce3b36e2cbec2594d7bc0207d5e3504535b62524cf277a44b685Increment Hash N...165760422023-02-07 9:34:4716 hrs ago0x567343b9e326f960e5f0faea33d79820b9ac73b8 IN Element: Marketplace0 Ether0.00079781 24.04507061
0x0a0d763f4658a559fa750eab5b1de017b0a96b99d434eb7ce0901d01912160e1Increment Hash N...165760232023-02-07 9:30:4716 hrs 4 mins ago0x88935c6cef312e65847709104c5d2c8914b3bdf3 IN Element: Marketplace0 Ether0.00097871 29.49727309
0xacccdacc60196a6d37895cdd61fa2a2fc40f58ae57b4285dfa9d924f3376d971Transfer ERC721s165760182023-02-07 9:29:4716 hrs 5 mins ago0x1b4aae3918bd9c183ee0bc61bbebaf412a39412c IN Element: Marketplace0 Ether0.00329929 24.13902303
0x7d6cd0112113c71725dd99337dd85f2163fbdc367ea705277ac0f5f6d6ce9819Fill Basic ERC72...165759612023-02-07 9:18:2316 hrs 17 mins ago0x045f059c2c2a741dafdaa505bbec1ea4ec4af5d5 IN Element: Marketplace0.79 Ether0.00242448 23.43789784
[ Download CSV Export 

OVERVIEW

Element is a decentralized NFT marketplace based on Ethereum, BSC, Polygon, and Avalanche, that helps user create, discover, and exchange. Element provides a value trading platform for both NFT creators and investors.

Latest 25 internal transaction
Parent Txn Hash Block From To Value
0x114b616e89119b1d1885127027064cb5228d47495eb0ba9881984c6b2011eeec165784862023-02-07 17:46:477 hrs 48 mins ago Element: Marketplace 0x00ca62445b06a9adc1879a44485b4efdcb7b75f30.0035395 Ether
0x114b616e89119b1d1885127027064cb5228d47495eb0ba9881984c6b2011eeec165784862023-02-07 17:46:477 hrs 48 mins ago Element: Marketplace0x4bb992d49421999d1a3a40b5b55545d32e682d9f0.7043605 Ether
0x5e2c4831b2180fd3bde8661807525f252ad1f87998caba2fce5473d51e4bcf77165778432023-02-07 15:37:599 hrs 57 mins ago Element: Marketplace 0x00ca62445b06a9adc1879a44485b4efdcb7b75f30.000625 Ether
0x5e2c4831b2180fd3bde8661807525f252ad1f87998caba2fce5473d51e4bcf77165778432023-02-07 15:37:599 hrs 57 mins ago Element: MarketplaceENS Name chiou231.eth0.124375 Ether
0x5e2c4831b2180fd3bde8661807525f252ad1f87998caba2fce5473d51e4bcf77165778432023-02-07 15:37:599 hrs 57 mins ago 0xef82b43719dd13ba33ef7d93e6f0d1f690eea5b2Element: Marketplace0.125 Ether
0xf91fa8208049f2add14ecdd09c1e2e529194cff4f68958458c2363ea32b9705d165776902023-02-07 15:07:1110 hrs 28 mins ago Element: Marketplace 0x00ca62445b06a9adc1879a44485b4efdcb7b75f30.0062 Ether
0xf91fa8208049f2add14ecdd09c1e2e529194cff4f68958458c2363ea32b9705d165776902023-02-07 15:07:1110 hrs 28 mins ago Element: Marketplace0xb645e20021b5d1003378e933dcbb9ba241c7a8820.42785 Ether
0xf91fa8208049f2add14ecdd09c1e2e529194cff4f68958458c2363ea32b9705d165776902023-02-07 15:07:1110 hrs 28 mins ago Element: Marketplace0xb645e20021b5d1003378e933dcbb9ba241c7a8820.38805 Ether
0xf91fa8208049f2add14ecdd09c1e2e529194cff4f68958458c2363ea32b9705d165776902023-02-07 15:07:1110 hrs 28 mins ago Element: Marketplace0xd0f49a3831f8b652ebdf74a6abc4a688afec08760.4179 Ether
0xf91fa8208049f2add14ecdd09c1e2e529194cff4f68958458c2363ea32b9705d165776902023-02-07 15:07:1110 hrs 28 mins ago Element: Element Swap 2Element: Marketplace1.24 Ether
0x87f8c9eceb1dd9a7043562cfb40a94aaed701c5a677cd67f637a78fb3673878e165773102023-02-07 13:50:5911 hrs 44 mins ago Element: Marketplace0xdad23f5f00f6aeafa66c4aef9c655102af9d6c4c0.0004 Ether
0x932ba9e28f50a92132d46e9753289c48c9d09e7eae15431675cbc94a9ece3914165762962023-02-07 10:26:1115 hrs 9 mins ago Element: Marketplace 0x00ca62445b06a9adc1879a44485b4efdcb7b75f30.0001745 Ether
0x932ba9e28f50a92132d46e9753289c48c9d09e7eae15431675cbc94a9ece3914165762962023-02-07 10:26:1115 hrs 9 mins ago Element: Marketplace0x70c6025ee4032afdde768136d7bdee1cb20697ed0.032108 Ether
0x932ba9e28f50a92132d46e9753289c48c9d09e7eae15431675cbc94a9ece3914165762962023-02-07 10:26:1115 hrs 9 mins ago Element: Marketplace0x8426726666f8eaae88c41c9f2b404af3fa8bc58a0.0026175 Ether
0x932ba9e28f50a92132d46e9753289c48c9d09e7eae15431675cbc94a9ece3914165762962023-02-07 10:26:1115 hrs 9 mins ago 0xef82b43719dd13ba33ef7d93e6f0d1f690eea5b2Element: Marketplace0.0349 Ether
0x20ed1b7492b3958ef065e353cb558b2e7a757425f4ba52256f065b59fc2bbdc7165762602023-02-07 10:18:4715 hrs 16 mins ago Element: Marketplace0x0da9859c8f1668ccd7ed73c940800c21159c35930.0068 Ether
0x7d6cd0112113c71725dd99337dd85f2163fbdc367ea705277ac0f5f6d6ce9819165759612023-02-07 9:18:2316 hrs 17 mins ago Element: Marketplace0x53749af3990747a354f10ba8854dffc2f64ef70e0.79 Ether
0x9615a2e29566c78cd58cd2b7495db3d8699c52177a0e0f65e02e5881c8c21b05165759332023-02-07 9:12:4716 hrs 22 mins ago Element: Marketplace0x50489533e7342d6215b07654eb91d114b85b2b690.9 Ether
0x4a7b3568c41a8834e6e05140ab2498c4b61660087391d0e33f3da1eb30a0f5a8165755812023-02-07 8:02:1117 hrs 33 mins ago Element: Marketplace0x8a27f15e647ce93fec1c12c05efb0016771df88c0.001 Ether
0xff95bb7784d9dda2818c33c5d052459ba1ade2cae89794f3a3377557639bc37c165751512023-02-07 6:35:1119 hrs ago Element: Marketplace0x1fb6aac851924ccf6c5d2382f9e08d65d68102281.02 Ether
0x7136e788bce3d4a6602a2b3c31faf23f3f5505568092b32846c70fc4b831d623165750092023-02-07 6:06:1119 hrs 29 mins ago Element: Marketplace0xa31266d276671aa2b6f49840033cd9ed44f377570.01 Ether
0xcbef86163848ad20bb43e84285394177fa4ac691b4fd7dfefed946aa43d7d0b4165745932023-02-07 4:42:2320 hrs 53 mins ago Element: Marketplace0x8426726666f8eaae88c41c9f2b404af3fa8bc58a0.00285 Ether
0xcbef86163848ad20bb43e84285394177fa4ac691b4fd7dfefed946aa43d7d0b4165745932023-02-07 4:42:2320 hrs 53 mins ago Element: Marketplace 0x00ca62445b06a9adc1879a44485b4efdcb7b75f30.00019 Ether
0xcbef86163848ad20bb43e84285394177fa4ac691b4fd7dfefed946aa43d7d0b4165745932023-02-07 4:42:2320 hrs 53 mins ago Element: Marketplace0x99f1b5ae6285b3057b17171ea36711ef004e39ea0.03496 Ether
0xcbef86163848ad20bb43e84285394177fa4ac691b4fd7dfefed946aa43d7d0b4165745932023-02-07 4:42:2320 hrs 53 mins ago Element: Element Swap 2Element: Marketplace0.038 Ether
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ElementEx

Compiler Version
v0.8.13+commit.abaa5c0e

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 6 : ElementEx.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;

import "./migrations/LibBootstrap.sol";
import "./features/BootstrapFeature.sol";
import "./storage/LibProxyStorage.sol";


/// @dev An extensible proxy contract that serves as a universal entry point for
///      interacting with the 0x protocol.
contract ElementEx {

    /// @dev Construct this contract and register the `BootstrapFeature` feature.
    ///      After constructing this contract, `bootstrap()` should be called
    ///      by `bootstrap()` to seed the initial feature set.
    /// @param bootstrapper Who can call `bootstrap()`.
    constructor(address bootstrapper) {
        // Temporarily create and register the bootstrap feature.
        // It will deregister itself after `bootstrap()` has been called.
        BootstrapFeature bootstrap = new BootstrapFeature(bootstrapper);
        LibProxyStorage.getStorage().impls[bootstrap.bootstrap.selector] =
            address(bootstrap);
    }

    // solhint-disable state-visibility

    /// @dev Forwards calls to the appropriate implementation contract.
    fallback() external payable {
        bytes memory b = msg.data;
        bytes4 selector;
        assembly {
            selector := mload(add(b, 32))
            // Solidity does not require us to clean the trailing bytes.
            // We do it anyway
            selector := and(selector, 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000)
        }

        address impl = LibProxyStorage.getStorage().impls[selector];
        if (impl == address(0)) {
            revert("METHOD_NOT_IMPLEMENTED");
        }

        (bool success, bytes memory resultData) = impl.delegatecall(msg.data);
        if (!success) {
            _revertWithData(resultData);
        }
        _returnWithData(resultData);
    }

    /// @dev Fallback for just receiving ether.
    receive() external payable {}

    // solhint-enable state-visibility

    /// @dev Get the implementation contract of a registered function.
    /// @param selector The function selector.
    /// @return impl The implementation contract address.
    function getFunctionImplementation(bytes4 selector) public view returns (address impl) {
        return LibProxyStorage.getStorage().impls[selector];
    }

    /// @dev Revert with arbitrary bytes.
    /// @param data Revert data.
    function _revertWithData(bytes memory data) private pure {
        assembly { revert(add(data, 32), mload(data)) }
    }

    /// @dev Return with arbitrary bytes.
    /// @param data Return data.
    function _returnWithData(bytes memory data) private pure {
        assembly { return(add(data, 32), mload(data)) }
    }
}

File 2 of 6 : LibBootstrap.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;

library LibBootstrap {

    /// @dev Magic bytes returned by the bootstrapper to indicate success.
    ///      This is `keccack('BOOTSTRAP_SUCCESS')`.
    bytes4 internal constant BOOTSTRAP_SUCCESS = 0xd150751b;

    /// @dev Perform a delegatecall and ensure it returns the magic bytes.
    /// @param target The call target.
    /// @param data The call data.
    function delegatecallBootstrapFunction(address target, bytes memory data) internal {
        (bool success, bytes memory resultData) = target.delegatecall(data);
        if (!success ||
            resultData.length != 32 ||
            abi.decode(resultData, (bytes4)) != BOOTSTRAP_SUCCESS)
        {
            revert("BOOTSTRAP_CALL_FAILED");
        }
    }
}

File 3 of 6 : BootstrapFeature.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;

import "../migrations/LibBootstrap.sol";
import "../storage/LibProxyStorage.sol";
import "./interfaces/IBootstrapFeature.sol";


/// @dev Detachable `bootstrap()` feature.
contract BootstrapFeature is IBootstrapFeature {

    // solhint-disable state-visibility,indent
    /// @dev The ZeroEx contract.
    ///      This has to be immutable to persist across delegatecalls.
    address immutable private _deployer;
    /// @dev The implementation address of this contract.
    ///      This has to be immutable to persist across delegatecalls.
    address immutable private _implementation;
    /// @dev The deployer.
    ///      This has to be immutable to persist across delegatecalls.
    address immutable private _bootstrapCaller;
    // solhint-enable state-visibility,indent

    /// @dev Construct this contract and set the bootstrap migration contract.
    ///      After constructing this contract, `bootstrap()` should be called
    ///      to seed the initial feature set.
    /// @param bootstrapCaller The allowed caller of `bootstrap()`.
    constructor(address bootstrapCaller) {
        _deployer = msg.sender;
        _implementation = address(this);
        _bootstrapCaller = bootstrapCaller;
    }

    /// @dev Bootstrap the initial feature set of this contract by delegatecalling
    ///      into `target`. Before exiting the `bootstrap()` function will
    ///      deregister itself from the proxy to prevent being called again.
    /// @param target The bootstrapper contract address.
    /// @param callData The call data to execute on `target`.
    function bootstrap(address target, bytes calldata callData) external override {
        // Only the bootstrap caller can call this function.
        if (msg.sender != _bootstrapCaller) {
            revert("INVALID_BOOTSTRAP_CALLER");
        }
        // Deregister.
        LibProxyStorage.getStorage().impls[this.bootstrap.selector] = address(0);
        // Self-destruct.
        BootstrapFeature(_implementation).die();
        // Call the bootstrapper.
        LibBootstrap.delegatecallBootstrapFunction(target, callData);
    }

    /// @dev Self-destructs this contract.
    ///      Can only be called by the deployer.
    function die() external {
        require(address(this) == _implementation);
        if (msg.sender != _deployer) {
            revert("INVALID_DIE_CALLER");
        }
        selfdestruct(payable(msg.sender));
    }
}

File 4 of 6 : LibProxyStorage.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;

import "./LibStorage.sol";


/// @dev Storage helpers for the proxy contract.
library LibProxyStorage {

    /// @dev Storage bucket for proxy contract.
    struct Storage {
        // Mapping of function selector -> function implementation
        mapping(bytes4 => address) impls;
    }

    /// @dev Get the storage bucket for this contract.
    function getStorage() internal pure returns (Storage storage stor) {
        uint256 storageSlot = LibStorage.STORAGE_ID_PROXY;
        // Dip into assembly to change the slot pointed to by the local
        // variable `stor`.
        // See https://solidity.readthedocs.io/en/v0.6.8/assembly.html?highlight=slot#access-to-external-variables-functions-and-libraries
        assembly { stor.slot := storageSlot }
    }
}

File 5 of 6 : IBootstrapFeature.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;


/// @dev Detachable `bootstrap()` feature.
interface IBootstrapFeature {

    /// @dev Bootstrap the initial feature set of this contract by delegatecalling
    ///      into `target`. Before exiting the `bootstrap()` function will
    ///      deregister itself from the proxy to prevent being called again.
    /// @param target The bootstrapper contract address.
    /// @param callData The call data to execute on `target`.
    function bootstrap(address target, bytes calldata callData) external;
}

File 6 of 6 : LibStorage.sol
// SPDX-License-Identifier: Apache-2.0
/*

  Modifications Copyright 2022 Element.Market
  Copyright 2020 ZeroEx Intl.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

*/

pragma solidity ^0.8.13;


/// @dev Common storage helpers
library LibStorage {

    /// @dev What to bit-shift a storage ID by to get its slot.
    ///      This gives us a maximum of 2**128 inline fields in each bucket.
    uint256 constant STORAGE_ID_PROXY = 1 << 128;
    uint256 constant STORAGE_ID_SIMPLE_FUNCTION_REGISTRY = 2 << 128;
    uint256 constant STORAGE_ID_OWNABLE = 3 << 128;
    uint256 constant STORAGE_ID_COMMON_NFT_ORDERS = 4 << 128;
    uint256 constant STORAGE_ID_ERC721_ORDERS = 5 << 128;
    uint256 constant STORAGE_ID_ERC1155_ORDERS = 6 << 128;
}

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"bootstrapper","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"getFunctionImplementation","outputs":[{"internalType":"address","name":"impl","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b506040516108ad3803806108ad83398101604081905261002f916100d2565b60008160405161003e906100c5565b6001600160a01b039091168152602001604051809103906000f08015801561006a573d6000803e3d6000fd5b509050806100806100bd60201b6101cb1760201c565b6373f208d560e01b60009081526020919091526040902080546001600160a01b0319166001600160a01b0392909216919091179055506101029050565b600160801b90565b6105428061036b83390190565b6000602082840312156100e457600080fd5b81516001600160a01b03811681146100fb57600080fd5b9392505050565b61025a806101116000396000f3fe6080604052600436106100225760003560e01c8063972fdd261461016c57610029565b3661002957005b600080368080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525060208501519495506001600160e01b031990941693925061008091506101cb9050565b6001600160e01b03198316600090815260209190915260409020546001600160a01b03169050806100f05760405162461bcd60e51b81526020600482015260166024820152751351551213d117d393d517d25354131153515395115160521b604482015260640160405180910390fd5b600080826001600160a01b031660003660405161010e9291906101e3565b600060405180830381855af49150503d8060008114610149576040519150601f19603f3d011682016040523d82523d6000602084013e61014e565b606091505b50915091508161016157610161816101d3565b61016a816101db565b005b34801561017857600080fd5b506101af6101873660046101f3565b6001600160e01b0319166000908152600160801b60205260409020546001600160a01b031690565b6040516001600160a01b03909116815260200160405180910390f35b600160801b90565b805160208201fd5b805160208201f35b8183823760009101908152919050565b60006020828403121561020557600080fd5b81356001600160e01b03198116811461021d57600080fd5b939250505056fea2646970667358221220ca6fda6f1b862cb394f87edad802e2fdacf0e4f8dbe19f92b9b6d14aee21938c64736f6c634300080d003360e060405234801561001057600080fd5b5060405161054238038061054283398101604081905261002f91610048565b336080523060a0526001600160a01b031660c052610078565b60006020828403121561005a57600080fd5b81516001600160a01b038116811461007157600080fd5b9392505050565b60805160a05160c0516104966100ac600039600061010d015260008181606301526101d001526000609801526104966000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806335f469941461003b57806373f208d514610045575b600080fd5b610043610058565b005b610043610053366004610363565b610102565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461008d57600080fd5b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146100ff5760405162461bcd60e51b815260206004820152601260248201527124a72b20a624a22fa224a2afa1a0a62622a960711b60448201526064015b60405180910390fd5b33ff5b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461017a5760405162461bcd60e51b815260206004820152601860248201527f494e56414c49445f424f4f5453545241505f43414c4c4552000000000000000060448201526064016100f6565b6373f208d560e01b6000908152600160801b6020527f3cba3862c67f9aae9c92a5ad503323900246e6d62bb2b9cdec744cdc2d4c0e6380546001600160a01b031916905560408051630d7d1a6560e21b815290517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316926335f46994926004808201939182900301818387803b15801561021b57600080fd5b505af115801561022f573d6000803e3d6000fd5b505050506102738383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061027892505050565b505050565b600080836001600160a01b03168360405161029391906103f4565b600060405180830381855af49150503d80600081146102ce576040519150601f19603f3d011682016040523d82523d6000602084013e6102d3565b606091505b50915091508115806102e757508051602014155b806103185750805163d150751b60e01b9061030b908301602090810190840161042f565b6001600160e01b03191614155b1561035d5760405162461bcd60e51b81526020600482015260156024820152741093d3d514d514905417d0d0531317d19052531151605a1b60448201526064016100f6565b50505050565b60008060006040848603121561037857600080fd5b83356001600160a01b038116811461038f57600080fd5b9250602084013567ffffffffffffffff808211156103ac57600080fd5b818601915086601f8301126103c057600080fd5b8135818111156103cf57600080fd5b8760208285010111156103e157600080fd5b6020830194508093505050509250925092565b6000825160005b8181101561041557602081860181015185830152016103fb565b81811115610424576000828501525b509190910192915050565b60006020828403121561044157600080fd5b81516001600160e01b03198116811461045957600080fd5b939250505056fea26469706673582212204d6b3c2f3c6cb28781f4f7205b52a31550d8b9a120a68119442acf90c8f5073764736f6c634300080d0033000000000000000000000000f52c51ab9e773e9e162b962d0d0ee6f552601d2a

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

000000000000000000000000f52c51ab9e773e9e162b962d0d0ee6f552601d2a

-----Decoded View---------------
Arg [0] : bootstrapper (address): 0xF52C51ab9E773E9e162b962D0D0ee6F552601d2A

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f52c51ab9e773e9e162b962d0d0ee6f552601d2a


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.