ETH Price: $3,461.74 (+6.61%)
Gas: 6 Gwei

Contract

0x2a7e6951EacBe25A0E6e7cb34AdcC5d9C57D97C4
 
Transaction Hash
Method
Block
From
To
Exec Transaction202422422024-07-05 18:57:3510 days ago1720205855IN
0x2a7e6951...9C57D97C4
0 ETH0.000455047
Exec Transaction202422272024-07-05 18:54:2310 days ago1720205663IN
0x2a7e6951...9C57D97C4
0 ETH0.000441795
Exec Transaction188928902023-12-29 18:03:35199 days ago1703873015IN
0x2a7e6951...9C57D97C4
0 ETH0.0015279824.68075375
Exec Transaction186737902023-11-29 0:47:47229 days ago1701218867IN
0x2a7e6951...9C57D97C4
0 ETH0.0022287636
Exec Transaction184641952023-10-30 16:34:59259 days ago1698683699IN
0x2a7e6951...9C57D97C4
0 ETH0.0040893565.85743036
Exec Transaction184429862023-10-27 17:18:35262 days ago1698427115IN
0x2a7e6951...9C57D97C4
0 ETH0.0019971730.30058001
Exec Transaction183569782023-10-15 16:29:59274 days ago1697387399IN
0x2a7e6951...9C57D97C4
0 ETH0.000392835.96113077
Transfer182728002023-10-03 21:51:59286 days ago1696369919IN
0x2a7e6951...9C57D97C4
1.45 ETH0.0003213711.75931316
Exec Transaction182368602023-09-28 21:17:35291 days ago1695935855IN
0x2a7e6951...9C57D97C4
0 ETH0.000607329.21423708
Exec Transaction182160152023-09-25 23:15:11293 days ago1695683711IN
0x2a7e6951...9C57D97C4
0 ETH0.000563958.55923155
Exec Transaction181595842023-09-18 1:30:11301 days ago1695000611IN
0x2a7e6951...9C57D97C4
0 ETH0.000842529.50479613
Exec Transaction181595772023-09-18 1:28:47301 days ago1695000527IN
0x2a7e6951...9C57D97C4
0 ETH0.0005889610.07732305
Exec Transaction181593882023-09-18 0:50:35301 days ago1694998235IN
0x2a7e6951...9C57D97C4
0 ETH0.0007655411.61682209
Exec Transaction180119802023-08-28 8:33:59322 days ago1693211639IN
0x2a7e6951...9C57D97C4
0 ETH0.0014951122.69171938
Exec Transaction179375152023-08-17 22:28:47333 days ago1692311327IN
0x2a7e6951...9C57D97C4
0 ETH0.00972989120.21126674
Exec Transaction178229472023-08-01 21:49:47349 days ago1690926587IN
0x2a7e6951...9C57D97C4
0 ETH0.0015307623.22867095
Exec Transaction177833302023-07-27 8:51:35354 days ago1690447895IN
0x2a7e6951...9C57D97C4
0 ETH0.0012264818.61462715
Exec Transaction177148422023-07-17 18:44:23364 days ago1689619463IN
0x2a7e6951...9C57D97C4
0 ETH0.0021040625.99532721
Exec Transaction176740542023-07-12 0:53:47369 days ago1689123227IN
0x2a7e6951...9C57D97C4
0 ETH0.0009496414.4104594
Exec Transaction175738052023-06-27 22:58:35383 days ago1687906715IN
0x2a7e6951...9C57D97C4
0 ETH0.0009351714.19605967
Exec Transaction175082912023-06-18 17:57:23393 days ago1687111043IN
0x2a7e6951...9C57D97C4
0 ETH0.0016734618.36108923
Exec Transaction173733772023-05-30 17:59:35412 days ago1685469575IN
0x2a7e6951...9C57D97C4
0 ETH0.004831459.55363743
Exec Transaction172827682023-05-18 0:04:47424 days ago1684368287IN
0x2a7e6951...9C57D97C4
0 ETH0.002736646.82360101
Exec Transaction172827602023-05-18 0:03:11424 days ago1684368191IN
0x2a7e6951...9C57D97C4
0 ETH0.0039140844.52883771
Exec Transaction172666572023-05-15 17:27:47427 days ago1684171667IN
0x2a7e6951...9C57D97C4
0 ETH0.0066644173.00906796
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
202937562024-07-12 23:37:352 days ago1720827455
0x2a7e6951...9C57D97C4
0.0003048 ETH
199404732024-05-24 14:55:4752 days ago1716562547
0x2a7e6951...9C57D97C4
0.00055 ETH
199112292024-05-20 12:46:4756 days ago1716209207
0x2a7e6951...9C57D97C4
0.00004349 ETH
199057322024-05-19 18:20:5957 days ago1716142859
0x2a7e6951...9C57D97C4
0.000087 ETH
199033152024-05-19 10:13:3557 days ago1716113615
0x2a7e6951...9C57D97C4
0.0005 ETH
198960082024-05-18 9:42:3558 days ago1716025355
0x2a7e6951...9C57D97C4
0.00004349 ETH
198886582024-05-17 9:00:1159 days ago1715936411
0x2a7e6951...9C57D97C4
0.0005 ETH
198783062024-05-15 22:15:4761 days ago1715811347
0x2a7e6951...9C57D97C4
0.000435 ETH
198777572024-05-15 20:25:3561 days ago1715804735
0x2a7e6951...9C57D97C4
0.000435 ETH
198688742024-05-14 14:37:2362 days ago1715697443
0x2a7e6951...9C57D97C4
0.00045 ETH
197927842024-05-03 23:11:5972 days ago1714777919
0x2a7e6951...9C57D97C4
0.00045 ETH
197620282024-04-29 16:02:1177 days ago1714406531
0x2a7e6951...9C57D97C4
0.00087 ETH
197584662024-04-29 4:04:3577 days ago1714363475
0x2a7e6951...9C57D97C4
0.001 ETH
197528732024-04-28 9:18:2378 days ago1714295903
0x2a7e6951...9C57D97C4
0.00004426 ETH
197231942024-04-24 5:35:5982 days ago1713936959
0x2a7e6951...9C57D97C4
0.0005 ETH
197221992024-04-24 2:15:4782 days ago1713924947
0x2a7e6951...9C57D97C4
0.000445 ETH
197221992024-04-24 2:15:4782 days ago1713924947
0x2a7e6951...9C57D97C4
0.00044 ETH
196898312024-04-19 13:38:3587 days ago1713533915
0x2a7e6951...9C57D97C4
0.005 ETH
196161502024-04-09 5:57:2397 days ago1712642243
0x2a7e6951...9C57D97C4
0.00176 ETH
195014292024-03-24 2:24:59113 days ago1711247099
0x2a7e6951...9C57D97C4
0.00045 ETH
194407912024-03-15 13:57:47122 days ago1710511067
0x2a7e6951...9C57D97C4
0.00015 ETH
194230952024-03-13 2:12:11124 days ago1710295931
0x2a7e6951...9C57D97C4
0.00045 ETH
193945792024-03-09 2:32:23128 days ago1709951543
0x2a7e6951...9C57D97C4
0.0008 ETH
192987482024-02-24 16:50:59142 days ago1708793459
0x2a7e6951...9C57D97C4
0.0005 ETH
192731212024-02-21 2:37:59145 days ago1708483079
0x2a7e6951...9C57D97C4
0.0009 ETH
View All Internal Transactions
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.