ETH Price: $3,441.06 (+3.19%)

Contract

0x472123a46ef6D73bDaC4492576F68b1397f646Df
 

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction237206602025-11-03 18:43:112 days ago1762195391IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000072850.82459579
Exec Transaction233904462025-09-18 14:05:2348 days ago1758204323IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000271123.21899701
Exec Transaction232968342025-09-05 12:13:3561 days ago1757074415IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000029430.36597903
Exec Transaction232439892025-08-29 3:07:1169 days ago1756436831IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000032060.4293397
Exec Transaction230235852025-07-29 8:24:5999 days ago1753777499IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000049670.62494804
Exec Transaction228200202025-06-30 21:48:23128 days ago1751320103IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000141891.78529956
Exec Transaction226890722025-06-12 14:26:11146 days ago1749738371IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000539516.78891881
Exec Transaction226678832025-06-09 15:22:23149 days ago1749482543IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000655038.24250441
Exec Transaction226523762025-06-07 11:21:11151 days ago1749295271IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000123191.55015206
Exec Transaction226189012025-06-02 18:54:47156 days ago1748890487IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000292623.68159208
Exec Transaction225758612025-05-27 18:18:11162 days ago1748369891IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.001207174.24083518
Exec Transaction225757012025-05-27 17:46:11162 days ago1748367971IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.002368559.28337171
Exec Transaction225756512025-05-27 17:36:11162 days ago1748367371IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.001866397.31521712
Exec Transaction225756072025-05-27 17:27:23162 days ago1748366843IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.001662686.51676851
Exec Transaction225755932025-05-27 17:24:35162 days ago1748366675IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.001742816.83084951
0x68747470225484412025-05-23 22:08:23166 days ago1748038103IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000066712
0x68747470225480732025-05-23 20:53:35166 days ago1748033615IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000066712
0x68747470225477022025-05-23 19:38:35166 days ago1748029115IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000066712
0x68747470225473302025-05-23 18:23:35166 days ago1748024615IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000066712
Exec Transaction225469842025-05-23 17:13:59166 days ago1748020439IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000204242.57014976
Exec Transaction224890602025-05-15 14:18:11174 days ago1747318691IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.0008444410.62430374
Exec Transaction224808962025-05-14 10:45:11175 days ago1747219511IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000245972.82841152
Exec Transaction224692542025-05-12 19:25:23177 days ago1747077923IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000625277.19247759
0x68747470224132862025-05-04 22:11:35185 days ago1746396695IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000032861
Exec Transaction224131362025-05-04 21:41:23185 days ago1746394883IN
Smart Account by Safe 0x472123a4...397f646Df
0 ETH0.000050620.58208703
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer224808962025-05-14 10:45:11175 days ago1747219511
Smart Account by Safe 0x472123a4...397f646Df
0.00025296 ETH
Transfer224692542025-05-12 19:25:23177 days ago1747077923
Smart Account by Safe 0x472123a4...397f646Df
0.00061475 ETH
Transfer224131362025-05-04 21:41:23185 days ago1746394883
Smart Account by Safe 0x472123a4...397f646Df
0.00005206 ETH
Transfer223900682025-05-01 16:03:35188 days ago1746115415
Smart Account by Safe 0x472123a4...397f646Df
0.2 ETH
Transfer223814082025-04-30 10:56:47189 days ago1746010607
Smart Account by Safe 0x472123a4...397f646Df
0.0000631 ETH
Transfer223746442025-04-29 12:13:35190 days ago1745928815
Smart Account by Safe 0x472123a4...397f646Df
1 ETH
Transfer223687212025-04-28 16:22:47191 days ago1745857367
Smart Account by Safe 0x472123a4...397f646Df
0.00017569 ETH
Transfer223687162025-04-28 16:21:47191 days ago1745857307
Smart Account by Safe 0x472123a4...397f646Df
0.00018535 ETH
Transfer223687122025-04-28 16:20:59191 days ago1745857259
Smart Account by Safe 0x472123a4...397f646Df
0.00021227 ETH
Transfer223467292025-04-25 14:47:35194 days ago1745592455
Smart Account by Safe 0x472123a4...397f646Df
0.00047577 ETH
Transfer223396052025-04-24 14:57:23195 days ago1745506643
Smart Account by Safe 0x472123a4...397f646Df
0.00060781 ETH
Transfer222588522025-04-13 8:27:35206 days ago1744532855
Smart Account by Safe 0x472123a4...397f646Df
0.00006213 ETH
Transfer222221492025-04-08 5:40:11211 days ago1744090811
Smart Account by Safe 0x472123a4...397f646Df
0.3 ETH
Transfer222221492025-04-08 5:40:11211 days ago1744090811
Smart Account by Safe 0x472123a4...397f646Df
0.3 ETH
Transfer222221492025-04-08 5:40:11211 days ago1744090811
Smart Account by Safe 0x472123a4...397f646Df
0.3 ETH
Transfer221820632025-04-02 15:16:35217 days ago1743606995
Smart Account by Safe 0x472123a4...397f646Df
0.00013463 ETH
Transfer221657632025-03-31 8:40:11219 days ago1743410411
Smart Account by Safe 0x472123a4...397f646Df
0.0003339 ETH
Transfer221532512025-03-29 14:47:23221 days ago1743259643
Smart Account by Safe 0x472123a4...397f646Df
0.0000656 ETH
Transfer221378252025-03-27 11:02:59223 days ago1743073379
Smart Account by Safe 0x472123a4...397f646Df
0.00013022 ETH
Transfer220010732025-03-08 8:50:11242 days ago1741423811
Smart Account by Safe 0x472123a4...397f646Df
0.5 ETH
Transfer220010732025-03-08 8:50:11242 days ago1741423811
Smart Account by Safe 0x472123a4...397f646Df
0.5 ETH
Transfer219691912025-03-03 21:57:35247 days ago1741039055
Smart Account by Safe 0x472123a4...397f646Df
0.00013294 ETH
Transfer219593602025-03-02 13:03:11248 days ago1740920591
Smart Account by Safe 0x472123a4...397f646Df
0.00007124 ETH
Transfer219454722025-02-28 14:34:47250 days ago1740753287
Smart Account by Safe 0x472123a4...397f646Df
0.00094157 ETH
Transfer219109222025-02-23 18:50:47255 days ago1740336647
Smart Account by Safe 0x472123a4...397f646Df
0.00008303 ETH
View All Internal Transactions
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.