ETH Price: $3,149.51 (-0.96%)

Contract

0xdb8a44358095014e9633DF209E917D2E31892EbB
 
Transaction Hash
Method
Block
From
To
Transfer211464342024-11-09 0:13:232 days ago1731111203IN
0xdb8a4435...E31892EbB
293 ETH0.0003031611.0930302
Transfer211464232024-11-09 0:11:112 days ago1731111071IN
0xdb8a4435...E31892EbB
1 ETH0.0003162311.57132669
Exec Transaction211458272024-11-08 22:11:472 days ago1731103907IN
0xdb8a4435...E31892EbB
0 ETH0.0010484110.85514901
Exec Transaction211450812024-11-08 19:41:472 days ago1731094907IN
0xdb8a4435...E31892EbB
0 ETH0.0012311414.16576899
Exec Transaction211161992024-11-04 18:52:596 days ago1730746379IN
0xdb8a4435...E31892EbB
0 ETH0.000453215.21479284
Exec Transaction211161922024-11-04 18:51:356 days ago1730746295IN
0xdb8a4435...E31892EbB
0 ETH0.000568855.89056169
Exec Transaction210726572024-10-29 17:02:3512 days ago1730221355IN
0xdb8a4435...E31892EbB
0 ETH0.0018178622.86794757
Exec Transaction210446432024-10-25 19:12:2316 days ago1729883543IN
0xdb8a4435...E31892EbB
0 ETH0.000828068.57583135
Exec Transaction210446372024-10-25 19:11:1116 days ago1729883471IN
0xdb8a4435...E31892EbB
0 ETH0.000825078.54488889
Exec Transaction210446242024-10-25 19:08:3516 days ago1729883315IN
0xdb8a4435...E31892EbB
0 ETH0.000934619.6780813
Exec Transaction210444522024-10-25 18:33:5916 days ago1729881239IN
0xdb8a4435...E31892EbB
0 ETH0.0011258411.65687804
Exec Transaction210444462024-10-25 18:32:4716 days ago1729881167IN
0xdb8a4435...E31892EbB
0 ETH0.001174112.15808085
Exec Transaction210444262024-10-25 18:28:4716 days ago1729880927IN
0xdb8a4435...E31892EbB
0 ETH0.0013275813.74391918
Exec Transaction210298032024-10-23 17:32:3518 days ago1729704755IN
0xdb8a4435...E31892EbB
0 ETH0.0014286817.76815025
Exec Transaction210233522024-10-22 19:56:5919 days ago1729627019IN
0xdb8a4435...E31892EbB
0 ETH0.0010336510.70235321
Exec Transaction210148582024-10-21 15:29:3520 days ago1729524575IN
0xdb8a4435...E31892EbB
0 ETH0.0011463914.42331311
Exec Transaction209302072024-10-09 19:44:1132 days ago1728503051IN
0xdb8a4435...E31892EbB
0 ETH0.0024844729.8342037
Exec Transaction209302022024-10-09 19:43:1132 days ago1728502991IN
0xdb8a4435...E31892EbB
0 ETH0.0023616928.04428137
Exec Transaction209301992024-10-09 19:42:3532 days ago1728502955IN
0xdb8a4435...E31892EbB
0 ETH0.0014853125.48893881
Exec Transaction209301952024-10-09 19:41:3532 days ago1728502895IN
0xdb8a4435...E31892EbB
0 ETH0.0023547128.2760538
Exec Transaction209233282024-10-08 20:43:4733 days ago1728420227IN
0xdb8a4435...E31892EbB
0 ETH0.0019919520.62447939
Exec Transaction209233082024-10-08 20:39:4733 days ago1728419987IN
0xdb8a4435...E31892EbB
0 ETH0.0021252824.45384425
Exec Transaction208215372024-09-24 16:05:4747 days ago1727193947IN
0xdb8a4435...E31892EbB
0 ETH0.0020890926.29179282
Exec Transaction207236042024-09-10 23:50:5961 days ago1726012259IN
0xdb8a4435...E31892EbB
0 ETH0.000151021.90014873
Exec Transaction207159882024-09-09 22:17:5962 days ago1725920279IN
0xdb8a4435...E31892EbB
0 ETH0.000202482.09651585
View all transactions

Latest 18 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
211450812024-11-08 19:41:472 days ago1731094907
0xdb8a4435...E31892EbB
15 ETH
211161992024-11-04 18:52:596 days ago1730746379
0xdb8a4435...E31892EbB
0.2 ETH
209233082024-10-08 20:39:4733 days ago1728419987
0xdb8a4435...E31892EbB
0.1 ETH
205798832024-08-21 22:09:4781 days ago1724278187
0xdb8a4435...E31892EbB
1 ETH
202914372024-07-12 15:51:59121 days ago1720799519
0xdb8a4435...E31892EbB
0.5 ETH
202858702024-07-11 21:11:23122 days ago1720732283
0xdb8a4435...E31892EbB
0.3 ETH
202085762024-07-01 2:06:35133 days ago1719799595
0xdb8a4435...E31892EbB
0.5 ETH
200644252024-06-10 22:31:11153 days ago1718058671
0xdb8a4435...E31892EbB
0.4 ETH
200373692024-06-07 3:49:47157 days ago1717732187
0xdb8a4435...E31892EbB
0.2 ETH
196769472024-04-17 18:21:11207 days ago1713378071
0xdb8a4435...E31892EbB
0.06 ETH
196767662024-04-17 17:44:23207 days ago1713375863
0xdb8a4435...E31892EbB
0.2 ETH
193099582024-02-26 6:29:59259 days ago1708928999
0xdb8a4435...E31892EbB
0.3 ETH
191344202024-02-01 15:18:11283 days ago1706800691
0xdb8a4435...E31892EbB
2.17608671 ETH
191088682024-01-29 1:20:11287 days ago1706491211
0xdb8a4435...E31892EbB
0.5 ETH
190795682024-01-24 22:47:23291 days ago1706136443
0xdb8a4435...E31892EbB
0.15 ETH
190596272024-01-22 3:31:47294 days ago1705894307
0xdb8a4435...E31892EbB
2 ETH
186745302023-11-29 3:16:11348 days ago1701227771
0xdb8a4435...E31892EbB
0.07229966 ETH
186730352023-11-28 22:14:59348 days ago1701209699  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

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.