ETH Price: $2,472.14 (+0.50%)

Contract

0x2AC62cFf912c2890927cbafcDBD87C036b23E403
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00
Transaction Hash
Method
Block
From
To
Set Approval For...190771732024-01-24 14:44:35262 days ago1706107475IN
0x2AC62cFf...36b23E403
0 ETH0.0011886423.18401584
Safe Transfer Fr...183668282023-10-17 1:30:23361 days ago1697506223IN
0x2AC62cFf...36b23E403
0 ETH0.000284625.8352815
Safe Transfer Fr...183665142023-10-17 0:27:11361 days ago1697502431IN
0x2AC62cFf...36b23E403
0 ETH0.000328446.73381876
Set Approval For...174551312023-06-11 6:35:47489 days ago1686465347IN
0x2AC62cFf...36b23E403
0 ETH0.0010021819.57927655
Set Approval For...173509902023-05-27 14:29:23504 days ago1685197763IN
0x2AC62cFf...36b23E403
0 ETH0.0011645922.7148589
Set Approval For...173455322023-05-26 20:05:47504 days ago1685131547IN
0x2AC62cFf...36b23E403
0 ETH0.0020880540.72658849
Set Approval For...171542162023-04-29 20:49:23531 days ago1682801363IN
0x2AC62cFf...36b23E403
0 ETH0.0018377235.84399616
Transfer From171398582023-04-27 20:22:23533 days ago1682626943IN
0x2AC62cFf...36b23E403
0 ETH0.0020144840
Transfer From171398192023-04-27 20:14:35533 days ago1682626475IN
0x2AC62cFf...36b23E403
0 ETH0.0026984840
Set Approval For...170811502023-04-19 14:10:11542 days ago1681913411IN
0x2AC62cFf...36b23E403
0 ETH0.0046767591.21809193
Transfer From169800132023-04-05 3:42:47556 days ago1680666167IN
0x2AC62cFf...36b23E403
0 ETH0.0018704137.13948206
Transfer From169471752023-03-31 12:26:35561 days ago1680265595IN
0x2AC62cFf...36b23E403
0 ETH0.0012137924.10136812
Transfer From169364692023-03-30 0:21:59562 days ago1680135719IN
0x2AC62cFf...36b23E403
0 ETH0.0013305226.4192112
Transfer From169357612023-03-29 21:59:23562 days ago1680127163IN
0x2AC62cFf...36b23E403
0 ETH0.0015108630
Transfer From168752312023-03-21 9:50:11571 days ago1679392211IN
0x2AC62cFf...36b23E403
0 ETH0.0008314216.50895812
Transfer From168309902023-03-15 4:39:59577 days ago1678855199IN
0x2AC62cFf...36b23E403
0 ETH0.000981719.49768622
Transfer From167709922023-03-06 18:07:47586 days ago1678126067IN
0x2AC62cFf...36b23E403
0 ETH0.0029647147.31277363
Set Approval For...167706162023-03-06 16:51:59586 days ago1678121519IN
0x2AC62cFf...36b23E403
0 ETH0.0009529732.52698599
Safe Transfer Fr...167106112023-02-26 6:25:11594 days ago1677392711IN
0x2AC62cFf...36b23E403
0 ETH0.0012523217.58617418
Set Approval For...167035172023-02-25 6:26:23595 days ago1677306383IN
0x2AC62cFf...36b23E403
0 ETH0.0010641720.79026255
Set Approval For...167025522023-02-25 3:11:23595 days ago1677294683IN
0x2AC62cFf...36b23E403
0 ETH0.0011704522.866651
Set Approval For...166303422023-02-14 23:43:47605 days ago1676418227IN
0x2AC62cFf...36b23E403
0 ETH0.0020868240.76938151
Set Approval For...165969632023-02-10 7:48:11610 days ago1676015291IN
0x2AC62cFf...36b23E403
0 ETH0.0009093817.7372171
Set Approval For...165861852023-02-08 19:40:23611 days ago1675885223IN
0x2AC62cFf...36b23E403
0 ETH0.0021734242.46141342
Set Approval For...165634522023-02-05 15:22:35615 days ago1675610555IN
0x2AC62cFf...36b23E403
0 ETH0.001194923.34433162
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771742024-01-24 14:44:47262 days ago1706107487
0x2AC62cFf...36b23E403
0 ETH
190771732024-01-24 14:44:35262 days ago1706107475
0x2AC62cFf...36b23E403
0 ETH
185673092023-11-14 2:59:11333 days ago1699930751
0x2AC62cFf...36b23E403
0 ETH
185673092023-11-14 2:59:11333 days ago1699930751
0x2AC62cFf...36b23E403
0 ETH
185673092023-11-14 2:59:11333 days ago1699930751
0x2AC62cFf...36b23E403
0 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DeadLinkzProxy

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
File 1 of 15 : DeadLinkzProxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.17;

import {UpgradeableProxyOwnable} from "@solidstate-solidity/proxy/upgradeable/UpgradeableProxyOwnable.sol";
import {OwnableStorage} from "@solidstate-solidity/access/ownable/OwnableStorage.sol";

contract DeadLinkzProxy is UpgradeableProxyOwnable {
    constructor(address implementation) {
        _setImplementation(implementation);
        OwnableStorage.layout().owner = msg.sender;
    }

    /**
     * @dev suppress compiler warning
     */
    receive() external payable {}
}

File 2 of 15 : IOwnableInternal.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { IERC173Internal } from '../../interfaces/IERC173Internal.sol';

interface IOwnableInternal is IERC173Internal {
    error Ownable__NotOwner();
    error Ownable__NotTransitiveOwner();
}

File 3 of 15 : OwnableInternal.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { IERC173 } from '../../interfaces/IERC173.sol';
import { AddressUtils } from '../../utils/AddressUtils.sol';
import { IOwnableInternal } from './IOwnableInternal.sol';
import { OwnableStorage } from './OwnableStorage.sol';

abstract contract OwnableInternal is IOwnableInternal {
    using AddressUtils for address;
    using OwnableStorage for OwnableStorage.Layout;

    modifier onlyOwner() {
        if (msg.sender != _owner()) revert Ownable__NotOwner();
        _;
    }

    modifier onlyTransitiveOwner() {
        if (msg.sender != _transitiveOwner())
            revert Ownable__NotTransitiveOwner();
        _;
    }

    function _owner() internal view virtual returns (address) {
        return OwnableStorage.layout().owner;
    }

    function _transitiveOwner() internal view virtual returns (address) {
        address owner = _owner();

        while (owner.isContract()) {
            try IERC173(owner).owner() returns (address transitiveOwner) {
                owner = transitiveOwner;
            } catch {
                return owner;
            }
        }

        return owner;
    }

    function _transferOwnership(address account) internal virtual {
        OwnableStorage.layout().setOwner(account);
        emit OwnershipTransferred(msg.sender, account);
    }
}

File 4 of 15 : OwnableStorage.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

library OwnableStorage {
    struct Layout {
        address owner;
    }

    bytes32 internal constant STORAGE_SLOT =
        keccak256('solidstate.contracts.storage.Ownable');

    function layout() internal pure returns (Layout storage l) {
        bytes32 slot = STORAGE_SLOT;
        assembly {
            l.slot := slot
        }
    }

    function setOwner(Layout storage l, address owner) internal {
        l.owner = owner;
    }
}

File 5 of 15 : IERC173.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { IERC173Internal } from './IERC173Internal.sol';

/**
 * @title Contract ownership standard interface
 * @dev see https://eips.ethereum.org/EIPS/eip-173
 */
interface IERC173 is IERC173Internal {
    /**
     * @notice get the ERC173 contract owner
     * @return conrtact owner
     */
    function owner() external view returns (address);

    /**
     * @notice transfer contract ownership to new account
     * @param account address of new owner
     */
    function transferOwnership(address account) external;
}

File 6 of 15 : IERC173Internal.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

/**
 * @title Partial ERC173 interface needed by internal functions
 */
interface IERC173Internal {
    event OwnershipTransferred(
        address indexed previousOwner,
        address indexed newOwner
    );
}

File 7 of 15 : IProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

interface IProxy {
    error Proxy__ImplementationIsNotContract();

    fallback() external payable;
}

File 8 of 15 : Proxy.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { AddressUtils } from '../utils/AddressUtils.sol';
import { IProxy } from './IProxy.sol';

/**
 * @title Base proxy contract
 */
abstract contract Proxy is IProxy {
    using AddressUtils for address;

    /**
     * @notice delegate all calls to implementation contract
     * @dev reverts if implementation address contains no code, for compatibility with metamorphic contracts
     * @dev memory location in use by assembly may be unsafe in other contexts
     */
    fallback() external payable virtual {
        address implementation = _getImplementation();

        if (!implementation.isContract())
            revert Proxy__ImplementationIsNotContract();

        assembly {
            calldatacopy(0, 0, calldatasize())
            let result := delegatecall(
                gas(),
                implementation,
                0,
                calldatasize(),
                0,
                0
            )
            returndatacopy(0, 0, returndatasize())

            switch result
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    /**
     * @notice get logic implementation address
     * @return implementation address
     */
    function _getImplementation() internal virtual returns (address);
}

File 9 of 15 : IUpgradeableProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { IProxy } from '../IProxy.sol';

interface IUpgradeableProxy is IProxy {}

File 10 of 15 : IUpgradeableProxyOwnable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { IUpgradeableProxy } from './IUpgradeableProxy.sol';

interface IUpgradeableProxyOwnable is IUpgradeableProxy {
    /**
     * TODO: add to IUpgradeableProxy or remove from here
     */
    function setImplementation(address implementation) external;
}

File 11 of 15 : UpgradeableProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { Proxy } from '../Proxy.sol';
import { IUpgradeableProxy } from './IUpgradeableProxy.sol';
import { UpgradeableProxyStorage } from './UpgradeableProxyStorage.sol';

/**
 * @title Proxy with upgradeable implementation
 */
abstract contract UpgradeableProxy is IUpgradeableProxy, Proxy {
    using UpgradeableProxyStorage for UpgradeableProxyStorage.Layout;

    /**
     * @inheritdoc Proxy
     */
    function _getImplementation() internal view override returns (address) {
        // inline storage layout retrieval uses less gas
        UpgradeableProxyStorage.Layout storage l;
        bytes32 slot = UpgradeableProxyStorage.STORAGE_SLOT;
        assembly {
            l.slot := slot
        }

        return l.implementation;
    }

    /**
     * @notice set logic implementation address
     * @param implementation implementation address
     */
    function _setImplementation(address implementation) internal {
        UpgradeableProxyStorage.layout().setImplementation(implementation);
    }
}

File 12 of 15 : UpgradeableProxyOwnable.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { OwnableInternal } from '../../access/ownable/OwnableInternal.sol';
import { IUpgradeableProxyOwnable } from './IUpgradeableProxyOwnable.sol';
import { UpgradeableProxy } from './UpgradeableProxy.sol';

/**
 * @title Proxy with upgradeable implementation controlled by ERC171 owner
 */
abstract contract UpgradeableProxyOwnable is
    IUpgradeableProxyOwnable,
    UpgradeableProxy,
    OwnableInternal
{
    /**
     * @notice set logic implementation address
     * @param implementation implementation address
     */
    function setImplementation(address implementation) external onlyOwner {
        _setImplementation(implementation);
    }
}

File 13 of 15 : UpgradeableProxyStorage.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

library UpgradeableProxyStorage {
    struct Layout {
        address implementation;
    }

    bytes32 internal constant STORAGE_SLOT =
        keccak256('solidstate.contracts.storage.UpgradeableProxy');

    function layout() internal pure returns (Layout storage l) {
        bytes32 slot = STORAGE_SLOT;
        assembly {
            l.slot := slot
        }
    }

    function setImplementation(Layout storage l, address implementation)
        internal
    {
        l.implementation = implementation;
    }
}

File 14 of 15 : AddressUtils.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

import { UintUtils } from './UintUtils.sol';

library AddressUtils {
    using UintUtils for uint256;

    error AddressUtils__InsufficientBalance();
    error AddressUtils__NotContract();
    error AddressUtils__SendValueFailed();

    function toString(address account) internal pure returns (string memory) {
        return uint256(uint160(account)).toHexString(20);
    }

    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(account)
        }
        return size > 0;
    }

    function sendValue(address payable account, uint256 amount) internal {
        (bool success, ) = account.call{ value: amount }('');
        if (!success) revert AddressUtils__SendValueFailed();
    }

    function functionCall(address target, bytes memory data)
        internal
        returns (bytes memory)
    {
        return
            functionCall(target, data, 'AddressUtils: failed low-level call');
    }

    function functionCall(
        address target,
        bytes memory data,
        string memory error
    ) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, error);
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value
    ) internal returns (bytes memory) {
        return
            functionCallWithValue(
                target,
                data,
                value,
                'AddressUtils: failed low-level call with value'
            );
    }

    function functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory error
    ) internal returns (bytes memory) {
        if (value > address(this).balance)
            revert AddressUtils__InsufficientBalance();
        return _functionCallWithValue(target, data, value, error);
    }

    function _functionCallWithValue(
        address target,
        bytes memory data,
        uint256 value,
        string memory error
    ) private returns (bytes memory) {
        if (!isContract(target)) revert AddressUtils__NotContract();

        (bool success, bytes memory returnData) = target.call{ value: value }(
            data
        );

        if (success) {
            return returnData;
        } else if (returnData.length > 0) {
            assembly {
                let returnData_size := mload(returnData)
                revert(add(32, returnData), returnData_size)
            }
        } else {
            revert(error);
        }
    }
}

File 15 of 15 : UintUtils.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;

/**
 * @title utility functions for uint256 operations
 * @dev derived from https://github.com/OpenZeppelin/openzeppelin-contracts/ (MIT license)
 */
library UintUtils {
    error UintUtils__InsufficientHexLength();

    bytes16 private constant HEX_SYMBOLS = '0123456789abcdef';

    function add(uint256 a, int256 b) internal pure returns (uint256) {
        return b < 0 ? sub(a, -b) : a + uint256(b);
    }

    function sub(uint256 a, int256 b) internal pure returns (uint256) {
        return b < 0 ? add(a, -b) : a - uint256(b);
    }

    function toString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return '0';
        }

        uint256 temp = value;
        uint256 digits;

        while (temp != 0) {
            digits++;
            temp /= 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 toHexString(uint256 value) internal pure returns (string memory) {
        if (value == 0) {
            return '0x00';
        }

        uint256 length = 0;

        for (uint256 temp = value; temp != 0; temp >>= 8) {
            unchecked {
                length++;
            }
        }

        return toHexString(value, length);
    }

    function toHexString(uint256 value, uint256 length)
        internal
        pure
        returns (string memory)
    {
        bytes memory buffer = new bytes(2 * length + 2);
        buffer[0] = '0';
        buffer[1] = 'x';

        unchecked {
            for (uint256 i = 2 * length + 1; i > 1; --i) {
                buffer[i] = HEX_SYMBOLS[value & 0xf];
                value >>= 4;
            }
        }

        if (value != 0) revert UintUtils__InsufficientHexLength();

        return string(buffer);
    }
}

Settings
{
  "remappings": [
    "@erc721a-upgradable/=lib/ERC721A-Upgradeable/contracts/",
    "@solady/=lib/solady/src/",
    "@solidstate-solidity/=lib/solidstate-solidity/contracts/",
    "@std/=lib/forge-std/src/",
    "ERC721A-Upgradeable/=lib/ERC721A-Upgradeable/contracts/",
    "ds-test/=lib/forge-std/lib/ds-test/src/",
    "forge-std/=lib/forge-std/src/",
    "solady/=lib/solady/src/",
    "solidstate-solidity/=lib/solidstate-solidity/contracts/",
    "solmate/=lib/solady/lib/solmate/src/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 200
  },
  "metadata": {
    "bytecodeHash": "ipfs"
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "london",
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"Ownable__NotOwner","type":"error"},{"inputs":[],"name":"Ownable__NotTransitiveOwner","type":"error"},{"inputs":[],"name":"Proxy__ImplementationIsNotContract","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"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"implementation","type":"address"}],"name":"setImplementation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b5060405161034038038061034083398101604081905261002f916100ff565b6100388161006f565b3361004b61009a60201b61010c1760201c565b80546001600160a01b0319166001600160a01b03929092169190911790555061012f565b610097816100856100be60201b6101301760201c565b6100e260201b6101541790919060201c565b50565b7f8a22373512790c48b83a1fe2efdd2888d4a917bcdc24d0adf63e60f67168046090565b7ff7f483ff1916e63c14790f9c8bd1f715e1ffa6a089843b606bbc96607229b80490565b81546001600160a01b0319166001600160a01b0391909116179055565b60006020828403121561011157600080fd5b81516001600160a01b038116811461012857600080fd5b9392505050565b6102028061013e6000396000f3fe6080604052600436106100225760003560e01c8063d784d426146100ac57610029565b3661002957005b600061005c7ff7f483ff1916e63c14790f9c8bd1f715e1ffa6a089843b606bbc96607229b804546001600160a01b031690565b90506001600160a01b0381163b610086576040516321f27f0d60e21b815260040160405180910390fd5b3660008037600080366000845af43d6000803e8080156100a5573d6000f35b3d6000fd5b005b3480156100b857600080fd5b506100aa6100c736600461019c565b6100cf610171565b6001600160a01b0316336001600160a01b03161461010057604051632f7a8ee160e01b815260040160405180910390fd5b6101098161018a565b50565b7f8a22373512790c48b83a1fe2efdd2888d4a917bcdc24d0adf63e60f67168046090565b7ff7f483ff1916e63c14790f9c8bd1f715e1ffa6a089843b606bbc96607229b80490565b81546001600160a01b0319166001600160a01b0391909116179055565b600061017b61010c565b546001600160a01b0316919050565b61010981610196610130565b90610154565b6000602082840312156101ae57600080fd5b81356001600160a01b03811681146101c557600080fd5b939250505056fea2646970667358221220498a1516dccf00d43816d29acf003ac7bde58d65cd3c147a2e63b6d65407bfbe64736f6c634300081100330000000000000000000000000c6e6bb5d22d9c27f7375f50c4d1b4e14bd9411f

Deployed Bytecode

0x6080604052600436106100225760003560e01c8063d784d426146100ac57610029565b3661002957005b600061005c7ff7f483ff1916e63c14790f9c8bd1f715e1ffa6a089843b606bbc96607229b804546001600160a01b031690565b90506001600160a01b0381163b610086576040516321f27f0d60e21b815260040160405180910390fd5b3660008037600080366000845af43d6000803e8080156100a5573d6000f35b3d6000fd5b005b3480156100b857600080fd5b506100aa6100c736600461019c565b6100cf610171565b6001600160a01b0316336001600160a01b03161461010057604051632f7a8ee160e01b815260040160405180910390fd5b6101098161018a565b50565b7f8a22373512790c48b83a1fe2efdd2888d4a917bcdc24d0adf63e60f67168046090565b7ff7f483ff1916e63c14790f9c8bd1f715e1ffa6a089843b606bbc96607229b80490565b81546001600160a01b0319166001600160a01b0391909116179055565b600061017b61010c565b546001600160a01b0316919050565b61010981610196610130565b90610154565b6000602082840312156101ae57600080fd5b81356001600160a01b03811681146101c557600080fd5b939250505056fea2646970667358221220498a1516dccf00d43816d29acf003ac7bde58d65cd3c147a2e63b6d65407bfbe64736f6c63430008110033

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

0000000000000000000000000c6e6bb5d22d9c27f7375f50c4d1b4e14bd9411f

-----Decoded View---------------
Arg [0] : implementation (address): 0x0C6E6Bb5d22d9c27F7375F50C4d1b4E14bd9411f

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000c6e6bb5d22d9c27f7375f50c4d1b4e14bd9411f


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

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.