Cryo Explorer Ethereum Mainnet

Address Contract Verified

Address 0x0c83EAe1FE72c390A02E426572854931EefF93BA
Balance 0 ETH
Nonce 1
Code Size 171 bytes
Last Active
Indexed Transactions 3 (24,286,56024,286,711)
Gas Used (indexed) 308,454
External Etherscan · Sourcify

Contract Bytecode

171 bytes
0x608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea264697066735822122003d1488ee65e08fa41e58e888a9865554c535f2c77126a82cb4c0f917f31441364736f6c63430007060033

Verified Source Code Full Match

Compiler: v0.7.6+commit.7338295f EVM: istanbul Optimization: No
SafeProxy.sol 50 lines
// SPDX-License-Identifier: LGPL-3.0-only
pragma solidity >=0.7.0 <0.9.0;

/**
 * @title IProxy - Helper interface to access the singleton address of the Proxy on-chain.
 * @author Richard Meissner - @rmeissner
 */
interface IProxy {
    function masterCopy() external view returns (address);
}

/**
 * @title SafeProxy - Generic proxy contract allows to execute all transactions applying the code of a master contract.
 * @author Stefan George - <[email protected]>
 * @author Richard Meissner - <[email protected]>
 */
contract SafeProxy {
    // Singleton always needs to be first declared variable, to ensure that it is at the same location in the contracts to which calls are delegated.
    // To reduce deployment costs this variable is internal and needs to be retrieved via `getStorageAt`
    address internal singleton;

    /**
     * @notice Constructor function sets address of singleton contract.
     * @param _singleton Singleton address.
     */
    constructor(address _singleton) {
        require(_singleton != address(0), "Invalid singleton address provided");
        singleton = _singleton;
    }

    /// @dev Fallback function forwards all transactions and returns all received return data.
    fallback() external payable {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            let _singleton := and(sload(0), 0xffffffffffffffffffffffffffffffffffffffff)
            // 0xa619486e == keccak("masterCopy()"). The value is right padded to 32-bytes with 0s
            if eq(calldataload(0), 0xa619486e00000000000000000000000000000000000000000000000000000000) {
                mstore(0, _singleton)
                return(0, 0x20)
            }
            calldatacopy(0, 0, calldatasize())
            let success := delegatecall(gas(), _singleton, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            if eq(success, 0) {
                revert(0, returndatasize())
            }
            return(0, returndatasize())
        }
    }
}

Top Interactions

AddressTxnsSentReceived
0x5c8c76F2...Ed42 2 2
0x566E58ac...48f5 1 1

Recent Transactions

CSV
|
Hash Method Block Age From/To Value Txn Fee Type
0x41b70127...be181c execTransaction 24,286,711 IN 0x5c8c76F2...Ed42 0 ETH 0.000005391623 ETH EIP-1559
0x5b8e602f...849fc2 execTransaction 24,286,704 IN 0x5c8c76F2...Ed42 0 ETH 0.000005273061 ETH EIP-1559
0x29e37f44...6bf98c execTransaction 24,286,560 IN 0x566E58ac...48f5 0 ETH 0.000021000546 ETH EIP-1559