ETH Price: $2,507.78 (+0.24%)
Gas: 3.19 Gwei

Contract

0xD0b7c051B7FEBc432CE47BE333AcceAdD882e4f2
 

Overview

ETH Balance

0.01075472 ETH

Eth Value

$26.97 (@ $2,507.78/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction154089632022-08-25 11:55:33799 days ago1661428533IN
0xD0b7c051...dD882e4f2
0 ETH0.000623047.16882924
Transfer153342352022-08-13 15:38:31811 days ago1660405111IN
0xD0b7c051...dD882e4f2
0.35 ETH0.0004006614.66094068
Transfer153338432022-08-13 14:04:34811 days ago1660399474IN
0xD0b7c051...dD882e4f2
0.03 ETH0.0007040125.7607439
Exec Transaction153237212022-08-11 23:57:25813 days ago1660262245IN
0xD0b7c051...dD882e4f2
0 ETH0.0013537614.92503463
Exec Transaction153226742022-08-11 20:02:44813 days ago1660248164IN
0xD0b7c051...dD882e4f2
0 ETH0.0021899237.58038144
Exec Transaction153217412022-08-11 16:25:31813 days ago1660235131IN
0xD0b7c051...dD882e4f2
0 ETH0.0015547233.9036983
Exec Transaction153217412022-08-11 16:25:31813 days ago1660235131IN
0xD0b7c051...dD882e4f2
0 ETH0.0019326829.40972776
Exec Transaction153108812022-08-09 23:21:10815 days ago1660087270IN
0xD0b7c051...dD882e4f2
0 ETH0.0011844418.02691422
Exec Transaction153080782022-08-09 12:48:55815 days ago1660049335IN
0xD0b7c051...dD882e4f2
0 ETH0.0005078211.05664886
Exec Transaction153080762022-08-09 12:48:37815 days ago1660049317IN
0xD0b7c051...dD882e4f2
0 ETH0.0008979113.66354657
Exec Transaction153048832022-08-09 0:44:53816 days ago1660005893IN
0xD0b7c051...dD882e4f2
0 ETH0.0011139418
Exec Transaction153048152022-08-09 0:27:08816 days ago1660004828IN
0xD0b7c051...dD882e4f2
0 ETH0.0008638818.8140613
Exec Transaction153048122022-08-09 0:26:41816 days ago1660004801IN
0xD0b7c051...dD882e4f2
0 ETH0.0016070724.45926877
Transfer153037812022-08-08 20:41:41816 days ago1659991301IN
0xD0b7c051...dD882e4f2
1.11 ETH0.0018574467.96604584
Exec Transaction153019312022-08-08 13:49:55816 days ago1659966595IN
0xD0b7c051...dD882e4f2
0 ETH0.0008509112.95079104
Transfer152900852022-08-06 17:37:33818 days ago1659807453IN
0xD0b7c051...dD882e4f2
1.61 ETH0.0007477827.36229049
Exec Transaction152820832022-08-05 11:39:19819 days ago1659699559IN
0xD0b7c051...dD882e4f2
0 ETH0.001815227.62191591
Transfer152820382022-08-05 11:27:48819 days ago1659698868IN
0xD0b7c051...dD882e4f2
0.02775472 ETH0.0004013114.68465617
Exec Transaction152797742022-08-05 2:59:34820 days ago1659668374IN
0xD0b7c051...dD882e4f2
0 ETH0.000606039.58498317
Exec Transaction152797412022-08-05 2:52:55820 days ago1659667975IN
0xD0b7c051...dD882e4f2
0 ETH0.0006395510.97507804
Transfer152788682022-08-04 23:45:11820 days ago1659656711IN
0xD0b7c051...dD882e4f2
0.81035 ETH0.000244248.93705523
Transfer152786802022-08-04 23:06:05820 days ago1659654365IN
0xD0b7c051...dD882e4f2
0.2 ETH0.000210657.70818781
Exec Transaction150477452022-06-30 0:39:07856 days ago1656549547IN
0xD0b7c051...dD882e4f2
0 ETH0.0040775162.04757537
Exec Transaction146930622022-05-01 16:38:37915 days ago1651423117IN
0xD0b7c051...dD882e4f2
0 ETH0.0045530273.54271694
Exec Transaction146753592022-04-28 22:01:50918 days ago1651183310IN
0xD0b7c051...dD882e4f2
0 ETH0.0045568152.43147542
View all transactions

Latest 18 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
154089632022-08-25 11:55:33799 days ago1661428533
0xD0b7c051...dD882e4f2
0.4 ETH
153237212022-08-11 23:57:25813 days ago1660262245
0xD0b7c051...dD882e4f2
0.1 ETH
153217412022-08-11 16:25:31813 days ago1660235131
0xD0b7c051...dD882e4f2
0.222 ETH
153215992022-08-11 15:51:59813 days ago1660233119
0xD0b7c051...dD882e4f2
0.35 ETH
153108812022-08-09 23:21:10815 days ago1660087270
0xD0b7c051...dD882e4f2
0.13 ETH
153080762022-08-09 12:48:37815 days ago1660049317
0xD0b7c051...dD882e4f2
0.5 ETH
153048832022-08-09 0:44:53816 days ago1660005893
0xD0b7c051...dD882e4f2
0.1 ETH
153048122022-08-09 0:26:41816 days ago1660004801
0xD0b7c051...dD882e4f2
1 ETH
153019312022-08-08 13:49:55816 days ago1659966595
0xD0b7c051...dD882e4f2
1 ETH
152820832022-08-05 11:39:19819 days ago1659699559
0xD0b7c051...dD882e4f2
0.015 ETH
152797742022-08-05 2:59:34820 days ago1659668374
0xD0b7c051...dD882e4f2
1.01035 ETH
150477452022-06-30 0:39:07856 days ago1656549547
0xD0b7c051...dD882e4f2
0.502 ETH
146930622022-05-01 16:38:37915 days ago1651423117
0xD0b7c051...dD882e4f2
0.1 ETH
146753592022-04-28 22:01:50918 days ago1651183310
0xD0b7c051...dD882e4f2
0.1 ETH
146562022022-04-25 21:34:02921 days ago1650922442
0xD0b7c051...dD882e4f2
0.083 ETH
146255032022-04-21 1:44:29926 days ago1650505469
0xD0b7c051...dD882e4f2
0.12 ETH
146244102022-04-20 21:41:57926 days ago1650490917
0xD0b7c051...dD882e4f2
0.055 ETH
145221292022-04-04 22:14:04942 days ago1649110444  Contract Creation0 ETH
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xDaB5dc22...0ba42d2a6
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
GnosisSafeProxy

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-07-09
*/

// SPDX-License-Identifier: LGPL-3.0-only
pragma solidity >=0.7.0 <0.9.0;

/// @title IProxy - Helper interface to access masterCopy of the Proxy on-chain
/// @author Richard Meissner - <[email protected]>
interface IProxy {
    function masterCopy() external view returns (address);
}

/// @title GnosisSafeProxy - 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 GnosisSafeProxy {
    // 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;

    /// @dev 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())
        }
    }
}

/// @title Proxy Factory - Allows to create new proxy contact and execute a message call to the new proxy within one transaction.
/// @author Stefan George - <[email protected]>
contract GnosisSafeProxyFactory {
    event ProxyCreation(GnosisSafeProxy proxy, address singleton);

    /// @dev Allows to create new proxy contact and execute a message call to the new proxy within one transaction.
    /// @param singleton Address of singleton contract.
    /// @param data Payload for message call sent to new proxy contract.
    function createProxy(address singleton, bytes memory data) public returns (GnosisSafeProxy proxy) {
        proxy = new GnosisSafeProxy(singleton);
        if (data.length > 0)
            // solhint-disable-next-line no-inline-assembly
            assembly {
                if eq(call(gas(), proxy, 0, add(data, 0x20), mload(data), 0, 0), 0) {
                    revert(0, 0)
                }
            }
        emit ProxyCreation(proxy, singleton);
    }

    /// @dev Allows to retrieve the runtime code of a deployed Proxy. This can be used to check that the expected Proxy was deployed.
    function proxyRuntimeCode() public pure returns (bytes memory) {
        return type(GnosisSafeProxy).runtimeCode;
    }

    /// @dev Allows to retrieve the creation code used for the Proxy deployment. With this it is easily possible to calculate predicted address.
    function proxyCreationCode() public pure returns (bytes memory) {
        return type(GnosisSafeProxy).creationCode;
    }

    /// @dev Allows to create new proxy contact using CREATE2 but it doesn't run the initializer.
    ///      This method is only meant as an utility to be called from other methods
    /// @param _singleton Address of singleton contract.
    /// @param initializer Payload for message call sent to new proxy contract.
    /// @param saltNonce Nonce that will be used to generate the salt to calculate the address of the new proxy contract.
    function deployProxyWithNonce(
        address _singleton,
        bytes memory initializer,
        uint256 saltNonce
    ) internal returns (GnosisSafeProxy proxy) {
        // If the initializer changes the proxy address should change too. Hashing the initializer data is cheaper than just concatinating it
        bytes32 salt = keccak256(abi.encodePacked(keccak256(initializer), saltNonce));
        bytes memory deploymentData = abi.encodePacked(type(GnosisSafeProxy).creationCode, uint256(uint160(_singleton)));
        // solhint-disable-next-line no-inline-assembly
        assembly {
            proxy := create2(0x0, add(0x20, deploymentData), mload(deploymentData), salt)
        }
        require(address(proxy) != address(0), "Create2 call failed");
    }

    /// @dev Allows to create new proxy contact and execute a message call to the new proxy within one transaction.
    /// @param _singleton Address of singleton contract.
    /// @param initializer Payload for message call sent to new proxy contract.
    /// @param saltNonce Nonce that will be used to generate the salt to calculate the address of the new proxy contract.
    function createProxyWithNonce(
        address _singleton,
        bytes memory initializer,
        uint256 saltNonce
    ) public returns (GnosisSafeProxy proxy) {
        proxy = deployProxyWithNonce(_singleton, initializer, saltNonce);
        if (initializer.length > 0)
            // solhint-disable-next-line no-inline-assembly
            assembly {
                if eq(call(gas(), proxy, 0, add(initializer, 0x20), mload(initializer), 0, 0), 0) {
                    revert(0, 0)
                }
            }
        emit ProxyCreation(proxy, _singleton);
    }

    /// @dev Allows to create new proxy contact, execute a message call to the new proxy and call a specified callback within one transaction
    /// @param _singleton Address of singleton contract.
    /// @param initializer Payload for message call sent to new proxy contract.
    /// @param saltNonce Nonce that will be used to generate the salt to calculate the address of the new proxy contract.
    /// @param callback Callback that will be invoced after the new proxy contract has been successfully deployed and initialized.
    function createProxyWithCallback(
        address _singleton,
        bytes memory initializer,
        uint256 saltNonce,
        IProxyCreationCallback callback
    ) public returns (GnosisSafeProxy proxy) {
        uint256 saltNonceWithCallback = uint256(keccak256(abi.encodePacked(saltNonce, callback)));
        proxy = createProxyWithNonce(_singleton, initializer, saltNonceWithCallback);
        if (address(callback) != address(0)) callback.proxyCreated(proxy, _singleton, initializer, saltNonce);
    }

    /// @dev Allows to get the address for a new proxy contact created via `createProxyWithNonce`
    ///      This method is only meant for address calculation purpose when you use an initializer that would revert,
    ///      therefore the response is returned with a revert. When calling this method set `from` to the address of the proxy factory.
    /// @param _singleton Address of singleton contract.
    /// @param initializer Payload for message call sent to new proxy contract.
    /// @param saltNonce Nonce that will be used to generate the salt to calculate the address of the new proxy contract.
    function calculateCreateProxyWithNonceAddress(
        address _singleton,
        bytes calldata initializer,
        uint256 saltNonce
    ) external returns (GnosisSafeProxy proxy) {
        proxy = deployProxyWithNonce(_singleton, initializer, saltNonce);
        revert(string(abi.encodePacked(proxy)));
    }
}

interface IProxyCreationCallback {
    function proxyCreated(
        GnosisSafeProxy proxy,
        address _singleton,
        bytes calldata initializer,
        uint256 saltNonce
    ) external;
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_singleton","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"}]

Deployed Bytecode

0x608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033

Deployed Bytecode Sourcemap

524:1528:0:-:0;;;1376:42;1372:1;1366:8;1362:57;1556:66;1552:1;1539:15;1536:87;1533:2;;;1653:10;1650:1;1643:21;1692:4;1689:1;1682:15;1533:2;1745:14;1742:1;1739;1726:34;1843:1;1840;1824:14;1821:1;1809:10;1802:5;1789:56;1880:16;1877:1;1874;1859:38;1926:1;1917:7;1914:14;1911:2;;;1958:16;1955:1;1948:27;1911:2;2014:16;2011:1;2004:27

Swarm Source

ipfs://d1429297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b9552

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  ]
[ 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.