ETH Price: $3,159.37 (-4.12%)
 
Transaction Hash
Method
Block
From
To
Exec Transaction215704712025-01-07 5:21:5925 days ago1736227319IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000617725.20614532
Exec Transaction215704662025-01-07 5:20:5925 days ago1736227259IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000479515.64656702
Exec Transaction215646272025-01-06 9:47:4726 days ago1736156867IN
0x7fC3b05E...bCf9Eef88
0 ETH0.001872818.63393881
Exec Transaction215646172025-01-06 9:45:4726 days ago1736156747IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000646799.84769123
Exec Transaction215645652025-01-06 9:35:2326 days ago1736156123IN
0x7fC3b05E...bCf9Eef88
0 ETH0.00063727.52126502
Exec Transaction215645612025-01-06 9:34:3526 days ago1736156075IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000471367.17412067
Exec Transaction215645372025-01-06 9:29:4726 days ago1736155787IN
0x7fC3b05E...bCf9Eef88
0 ETH0.001988087.64694427
Transfer214839552024-12-26 3:28:2337 days ago1735183703IN
0x7fC3b05E...bCf9Eef88
0.000165 ETH0.000123154.50634223
Exec Transaction214839522024-12-26 3:27:4737 days ago1735183667IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000297484.52685665
Transfer214781142024-12-25 7:52:1138 days ago1735113131IN
0x7fC3b05E...bCf9Eef88
164.9985 ETH0.000191246.997873
Exec Transaction212637342024-11-25 8:59:1168 days ago1732525151IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000541467.46183522
Exec Transaction212636742024-11-25 8:47:1168 days ago1732524431IN
0x7fC3b05E...bCf9Eef88
0 ETH0.001783797.22844216
Exec Transaction211621122024-11-11 4:40:4782 days ago1731300047IN
0x7fC3b05E...bCf9Eef88
0 ETH0.0008954210.55884027
Exec Transaction211349412024-11-07 9:40:3586 days ago1730972435IN
0x7fC3b05E...bCf9Eef88
0 ETH0.0018179921.40483343
Exec Transaction211349362024-11-07 9:39:3586 days ago1730972375IN
0x7fC3b05E...bCf9Eef88
0 ETH0.0019907722.20240758
Exec Transaction211349122024-11-07 9:34:4786 days ago1730972087IN
0x7fC3b05E...bCf9Eef88
0 ETH0.0065066123.15539436
Exec Transaction210973152024-11-02 3:36:3591 days ago1730518595IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000456513.53265512
Exec Transaction210973052024-11-02 3:34:3591 days ago1730518475IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000331543.9328934
Exec Transaction210972962024-11-02 3:32:4791 days ago1730518367IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000965253.12364716
Exec Transaction210972822024-11-02 3:29:5991 days ago1730518199IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000342884.05139316
Exec Transaction210972782024-11-02 3:29:1191 days ago1730518151IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000323333.82037247
Exec Transaction210972212024-11-02 3:17:4791 days ago1730517467IN
0x7fC3b05E...bCf9Eef88
0 ETH0.001418083.85080161
Exec Transaction210917272024-11-01 8:53:3592 days ago1730451215IN
0x7fC3b05E...bCf9Eef88
0 ETH0.000575346.81314694
Exec Transaction210911512024-11-01 6:57:5992 days ago1730444279IN
0x7fC3b05E...bCf9Eef88
0 ETH0.002552535.07414096
Exec Transaction210908392024-11-01 5:55:2392 days ago1730440523IN
0x7fC3b05E...bCf9Eef88
0 ETH0.002305114.56900249
View all transactions

Latest 9 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
215646172025-01-06 9:45:4726 days ago1736156747
0x7fC3b05E...bCf9Eef88
0 ETH
215645612025-01-06 9:34:3526 days ago1736156075
0x7fC3b05E...bCf9Eef88
0.00001 ETH
214839522024-12-26 3:27:4737 days ago1735183667
0x7fC3b05E...bCf9Eef88
165 ETH
210121432024-10-21 6:24:47103 days ago1729491887
0x7fC3b05E...bCf9Eef88
0.000001 ETH
199319702024-05-23 10:24:59254 days ago1716459899
0x7fC3b05E...bCf9Eef88
0x7fC3b05E...bCf9Eef88
0 ETH
198583832024-05-13 3:22:23264 days ago1715570543
0x7fC3b05E...bCf9Eef88
0x7fC3b05E...bCf9Eef88
0.00001 ETH
197303612024-04-25 5:41:47282 days ago1714023707
0x7fC3b05E...bCf9Eef88
0.00283507 ETH
197303212024-04-25 5:33:47282 days ago1714023227
0x7fC3b05E...bCf9Eef88
0.00174404 ETH
196663222024-04-16 6:41:11291 days ago1713249671  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.