ETH Price: $3,256.29 (-0.94%)

Contract

0x2fA65be64E6f443BA6F883183eF71EcE8F3Fb60b
 

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction209666592024-10-14 22:02:3590 days ago1728943355IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0017403614.33141855
Exec Transaction209666452024-10-14 21:59:4790 days ago1728943187IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0018658215.3645572
Exec Transaction209666312024-10-14 21:56:5990 days ago1728943019IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0019800716.30539189
Transfer209665402024-10-14 21:38:3590 days ago1728941915IN
0x2fA65be6...E8F3Fb60b
29.898 ETH0.0004542516.6217233
Transfer209665322024-10-14 21:36:5990 days ago1728941819IN
0x2fA65be6...E8F3Fb60b
0.098 ETH0.0005023318.38111844
Exec Transaction204929662024-08-09 18:54:59156 days ago1723229699IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000223382.70748813
Exec Transaction204859132024-08-08 19:18:47157 days ago1723144727IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000459053.85767829
Exec Transaction204858902024-08-08 19:14:11157 days ago1723144451IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000253823.67717417
Exec Transaction204789512024-08-07 20:00:59158 days ago1723060859IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000446343.75082055
Exec Transaction204789322024-08-07 19:57:11158 days ago1723060631IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000313673.64252838
Exec Transaction204715312024-08-06 19:11:11159 days ago1722971471IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000570764.7963617
Exec Transaction204715102024-08-06 19:06:47159 days ago1722971207IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000415194.82145108
Exec Transaction204642662024-08-05 18:50:35160 days ago1722883835IN
0x2fA65be6...E8F3Fb60b
0 ETH0.001122629.43392937
Exec Transaction204572502024-08-04 19:21:47161 days ago1722799307IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0021256213.91185643
Exec Transaction204502242024-08-03 19:51:59162 days ago1722714719IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000618213.7140587
Exec Transaction204501462024-08-03 19:36:23162 days ago1722713783IN
0x2fA65be6...E8F3Fb60b
0 ETH0.00034664.04886378
Exec Transaction204431232024-08-02 20:03:35163 days ago1722629015IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000889454.82422199
Exec Transaction203893372024-07-26 7:49:35170 days ago1721980175IN
0x2fA65be6...E8F3Fb60b
0 ETH0.00057541.85669253
Exec Transaction203892702024-07-26 7:36:11170 days ago1721979371IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000217641.9026057
Exec Transaction203892582024-07-26 7:33:47170 days ago1721979227IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000249942.18517912
Exec Transaction203892472024-07-26 7:31:35170 days ago1721979095IN
0x2fA65be6...E8F3Fb60b
0 ETH0.000233732.04347642
Transfer203891992024-07-26 7:21:59170 days ago1721978519IN
0x2fA65be6...E8F3Fb60b
80.9987 ETH0.000133894.89936927
Exec Transaction203142102024-07-15 20:10:47181 days ago1721074247IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0017645415.42524458
Exec Transaction203141992024-07-15 20:08:35181 days ago1721074115IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0018528416.1989266
Exec Transaction203141902024-07-15 20:06:47181 days ago1721074007IN
0x2fA65be6...E8F3Fb60b
0 ETH0.0019370816.93533463
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
209666592024-10-14 22:02:3590 days ago1728943355
0x2fA65be6...E8F3Fb60b
9.996 ETH
209666452024-10-14 21:59:4790 days ago1728943187
0x2fA65be6...E8F3Fb60b
10 ETH
209666312024-10-14 21:56:5990 days ago1728943019
0x2fA65be6...E8F3Fb60b
10 ETH
204858902024-08-08 19:14:11157 days ago1723144451
0x2fA65be6...E8F3Fb60b
59.75956697 ETH
204789322024-08-07 19:57:11158 days ago1723060631
0x2fA65be6...E8F3Fb60b
59.75956697 ETH
204715102024-08-06 19:06:47159 days ago1722971207
0x2fA65be6...E8F3Fb60b
59.75956697 ETH
204648672024-08-05 20:51:47160 days ago1722891107
0x2fA65be6...E8F3Fb60b
2.49457669 ETH
204645692024-08-05 19:51:35160 days ago1722887495
0x2fA65be6...E8F3Fb60b
2.49310238 ETH
204642702024-08-05 18:51:23160 days ago1722883883
0x2fA65be6...E8F3Fb60b
2.48964902 ETH
204641302024-08-05 18:22:59160 days ago1722882179
0x2fA65be6...E8F3Fb60b
2.49448195 ETH
204638302024-08-05 17:22:35160 days ago1722878555
0x2fA65be6...E8F3Fb60b
2.49589452 ETH
204635302024-08-05 16:22:23160 days ago1722874943
0x2fA65be6...E8F3Fb60b
2.49165857 ETH
204632322024-08-05 15:22:23160 days ago1722871343
0x2fA65be6...E8F3Fb60b
2.48612645 ETH
204629442024-08-05 14:24:47160 days ago1722867887
0x2fA65be6...E8F3Fb60b
2.47817336 ETH
204626342024-08-05 13:22:23160 days ago1722864143
0x2fA65be6...E8F3Fb60b
2.4824364 ETH
204623382024-08-05 12:22:59160 days ago1722860579
0x2fA65be6...E8F3Fb60b
2.48309387 ETH
204620382024-08-05 11:22:47160 days ago1722856967
0x2fA65be6...E8F3Fb60b
2.48188407 ETH
204617402024-08-05 10:22:47160 days ago1722853367
0x2fA65be6...E8F3Fb60b
2.48510851 ETH
204614422024-08-05 9:22:47160 days ago1722849767
0x2fA65be6...E8F3Fb60b
2.48341107 ETH
204611432024-08-05 8:22:35160 days ago1722846155
0x2fA65be6...E8F3Fb60b
2.47542933 ETH
204609912024-08-05 7:51:59160 days ago1722844319
0x2fA65be6...E8F3Fb60b
2.47208584 ETH
204602662024-08-05 5:26:23160 days ago1722835583
0x2fA65be6...E8F3Fb60b
2.47446432 ETH
204599852024-08-05 4:30:11160 days ago1722832211
0x2fA65be6...E8F3Fb60b
2.48252649 ETH
204597312024-08-05 3:39:23160 days ago1722829163
0x2fA65be6...E8F3Fb60b
2.48109023 ETH
204587512024-08-05 0:22:47161 days ago1722817367
0x2fA65be6...E8F3Fb60b
2.49621838 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.