ETH Price: $2,300.75 (-0.77%)

Contract

0x556D5664176C0FA054dE8C32D042fAB1D41E396d
 

Overview

ETH Balance

0.299380463 ETH

Eth Value

$688.80 (@ $2,300.75/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction207573872024-09-15 17:03:472 days ago1726419827IN
0x556D5664...1D41E396d
0 ETH0.000702713.35412155
Exec Transaction198488002024-05-11 19:12:47129 days ago1715454767IN
0x556D5664...1D41E396d
0 ETH0.001795426.74645092
Exec Transaction198487882024-05-11 19:10:23129 days ago1715454623IN
0x556D5664...1D41E396d
0 ETH0.000380624
Exec Transaction198487592024-05-11 19:04:35129 days ago1715454275IN
0x556D5664...1D41E396d
0 ETH0.000635744
Exec Transaction197769602024-05-01 18:05:47139 days ago1714586747IN
0x556D5664...1D41E396d
0 ETH0.0023140316.73081799
Exec Transaction197769392024-05-01 18:01:35139 days ago1714586495IN
0x556D5664...1D41E396d
0 ETH0.0030870611.8504604
Exec Transaction197757122024-05-01 13:55:23139 days ago1714571723IN
0x556D5664...1D41E396d
0 ETH0.0024302513
Exec Transaction197188432024-04-23 14:59:35147 days ago1713884375IN
0x556D5664...1D41E396d
0 ETH0.0021129624
Exec Transaction197188152024-04-23 14:53:59147 days ago1713884039IN
0x556D5664...1D41E396d
0 ETH0.0029602624.39929834
Exec Transaction197188092024-04-23 14:52:47147 days ago1713883967IN
0x556D5664...1D41E396d
0 ETH0.0016574525.37162864
Transfer197187802024-04-23 14:46:59147 days ago1713883619IN
0x556D5664...1D41E396d
0.01 ETH0.0006690324.48064108
Exec Transaction190940342024-01-26 23:25:23235 days ago1706311523IN
0x556D5664...1D41E396d
0 ETH0.001104912.20886941
Exec Transaction190940032024-01-26 23:19:11235 days ago1706311151IN
0x556D5664...1D41E396d
0 ETH0.0018613611.37450261
Exec Transaction189985152024-01-13 14:17:59248 days ago1705155479IN
0x556D5664...1D41E396d
0 ETH0.0012988818.82763974
Exec Transaction188854452023-12-28 16:58:59264 days ago1703782739IN
0x556D5664...1D41E396d
0 ETH0.0021367930.9788789
Exec Transaction188445732023-12-22 23:12:47270 days ago1703286767IN
0x556D5664...1D41E396d
0 ETH0.0104283925.44752279

Latest 5 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
207305452024-09-11 23:06:476 days ago1726096007
0x556D5664...1D41E396d
0.29038046 ETH
197188152024-04-23 14:53:59147 days ago1713884039
0x556D5664...1D41E396d
0.001 ETH
189985152024-01-13 14:17:59248 days ago1705155479
0x556D5664...1D41E396d
0.33234229 ETH
188854452023-12-28 16:58:59264 days ago1703782739
0x556D5664...1D41E396d
32 ETH
175079442023-06-18 16:47:11457 days ago1687106831  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

Latest 22 from a total of 22 withdrawals (32.332342292 ETH withdrawn)

Validator Index Block Amount
784992188835532023-12-28 10:36:11265 days ago170375977132.005653021 ETH
784992188284442023-12-20 16:55:35272 days ago17030913350.017090045 ETH
784992187735582023-12-13 0:04:11280 days ago17024258510.017199957 ETH
784992187187992023-12-05 7:57:11288 days ago17017630310.017238995 ETH
784992186644252023-11-27 17:19:35295 days ago17011055750.017049212 ETH
784992186104402023-11-20 3:52:47303 days ago17004523670.017067699 ETH
784992185563482023-11-12 14:12:23310 days ago16997983430.016874012 ETH
784992185029482023-11-05 2:51:11318 days ago16991526710.016785169 ETH
784992184502082023-10-28 17:32:59325 days ago16985143790.016459122 ETH
784992183976672023-10-21 9:02:59333 days ago16978789790.016731227 ETH
784992183454442023-10-14 1:47:59340 days ago16972480790.016545004 ETH
784992182940282023-10-06 21:05:47347 days ago16966263470.015263639 ETH
784992182436542023-09-29 20:08:23354 days ago16960181030.016034352 ETH
784992181942692023-09-22 22:11:47361 days ago16954207070.016003565 ETH
784992181459962023-09-16 3:17:47368 days ago16948342670.015924645 ETH
784992180986862023-09-09 11:58:47375 days ago16942607270.015690943 ETH
784992180523162023-09-03 0:13:11381 days ago16936999910.015451059 ETH
784992180068282023-08-27 15:15:11387 days ago16931493110.015110161 ETH
784992179622552023-08-21 9:36:59394 days ago16926106190.014997338 ETH
784992179185562023-08-15 6:48:59400 days ago16920821390.013857516 ETH
784992178757092023-08-09 6:58:35406 days ago16915643150.01480229 ETH
784992178336162023-08-03 9:36:11412 days ago16910553710.004513321 ETH

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.