ETH Price: $3,156.41 (-1.48%)
 

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction225779622025-05-28 1:21:23190 days ago1748395283IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.000189711.65130741
Transfer217738632025-02-04 14:54:35303 days ago1738680875IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.0127487 ETH0.000151555.54557631
Transfer217684602025-02-03 20:46:47304 days ago1738615607IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.00124365 ETH0.000231688.47774305
Exec Transaction208296132024-09-25 19:10:23435 days ago1727291423IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0026616932.47558349
Transfer206722572024-09-03 19:50:59457 days ago1725393059IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.00667352 ETH0.000087763.21160644
Transfer206720202024-09-03 19:03:35457 days ago1725390215IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
1.4685 ETH0.000053271.94937947
Exec Transaction206717632024-09-03 18:12:11457 days ago1725387131IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.000244072.67384519
Exec Transaction206717572024-09-03 18:10:59457 days ago1725387059IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.000254882.71225662
Exec Transaction206715712024-09-03 17:33:47457 days ago1725384827IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.000223952.0687239
Exec Transaction193423252024-03-01 19:10:11643 days ago1709320211IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0051561866.21530008
Exec Transaction193422812024-03-01 19:01:23643 days ago1709319683IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0053335170.13808003
Exec Transaction187676982023-12-12 4:23:11723 days ago1702354991IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0028681126.05221575
Exec Transaction187676942023-12-12 4:22:23723 days ago1702354943IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0027573824
Transfer184350092023-10-26 14:33:11770 days ago1698330791IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
6.653 ETH0.0011542.08002984
Exec Transaction164518172023-01-21 1:12:351048 days ago1674263555IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0017288418
Transfer164221232023-01-16 21:45:351053 days ago1673905535IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
1.330914 ETH0.0006584824.09489499
Transfer163876192023-01-12 2:04:471057 days ago1673489087IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.2236701 ETH0.0005464719.99598766
Transfer162382972022-12-22 5:57:351078 days ago1671688655IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.72986484 ETH0.000322111.78626006
Transfer162003622022-12-16 22:53:231084 days ago1671231203IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.624234 ETH0.0007667128.05515537
Exec Transaction161797512022-12-14 1:48:111086 days ago1670982491IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0036918914.08196225
Transfer160166622022-11-21 6:40:471109 days ago1669012847IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.80634 ETH0.0002958610.82594681
Exec Transaction156348232022-09-28 22:28:231163 days ago1664404103IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0011534711
Exec Transaction156348182022-09-28 22:27:231163 days ago1664404043IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.000864429
Exec Transaction145869542022-04-15 1:16:281329 days ago1649985388IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0100613934.45636699
Exec Transaction145789042022-04-13 19:04:371331 days ago1649876677IN
Smart Account by Safe 0x4Eb40136...F0066Bf89
0 ETH0.0059952259
View all transactions

Latest 19 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer225779622025-05-28 1:21:23190 days ago1748395283
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.64992488 ETH
Transfer225779622025-05-28 1:21:23190 days ago1748395283
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.64992488 ETH
Transfer225779622025-05-28 1:21:23190 days ago1748395283
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.59819856 ETH
Transfer225779622025-05-28 1:21:23190 days ago1748395283
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.44641683 ETH
Transfer225779622025-05-28 1:21:23190 days ago1748395283
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.59819856 ETH
Transfer208712962024-10-01 14:39:11429 days ago1727793551
Smart Account by Safe 0x4Eb40136...F0066Bf89
3.47 ETH
Transfer206717572024-09-03 18:10:59457 days ago1725387059
Smart Account by Safe 0x4Eb40136...F0066Bf89
12.5 ETH
Transfer193422812024-03-01 19:01:23643 days ago1709319683
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.04339407 ETH
Transfer169508402023-04-01 0:47:47979 days ago1680310067
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.1509287 ETH
Transfer156348232022-09-28 22:28:231163 days ago1664404103
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.1 ETH
-141738272022-02-09 19:44:421394 days ago1644435882
Smart Account by Safe 0x4Eb40136...F0066Bf89
1.5 ETH
-141223682022-02-01 20:46:521402 days ago1643748412
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.16 ETH
-141223682022-02-01 20:46:521402 days ago1643748412
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.24 ETH
-139927652022-01-12 19:59:051422 days ago1642017545
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.069 ETH
-139740772022-01-09 22:41:291425 days ago1641768089
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.4815 ETH
-138521052021-12-22 1:38:581443 days ago1640137138
Smart Account by Safe 0x4Eb40136...F0066Bf89
0.57935 ETH
-138520982021-12-22 1:37:041443 days ago1640137024
Smart Account by Safe 0x4Eb40136...F0066Bf89
1.875 ETH
-137812772021-12-11 2:53:161454 days ago1639191196
Smart Account by Safe 0x4Eb40136...F0066Bf89
6.85 ETH
-136980372021-11-27 19:55:061468 days ago1638042906  Contract Creation0 ETH
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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

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

0x608060405234801561001057600080fd5b506040516101e63803806101e68339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806101c46022913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060ab806101196000396000f3fe608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e76616c69642073696e676c65746f6e20616464726573732070726f7669646564000000000000000000000000d9db270c1b5e3bd161e8c8503c55ceabee709552

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 Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.