ETH Price: $2,678.51 (-0.63%)

Contract

0x29fF3B5Ad788477a460873dD1FCF78aE95cA565a
 

Overview

ETH Balance

4.570385842239635746 ETH

Eth Value

$12,241.83 (@ $2,678.51/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction207983932024-09-21 10:35:597 days ago1726914959IN
0x29fF3B5A...E95cA565a
0 ETH0.00117448.72314855
Exec Transaction207983742024-09-21 10:32:117 days ago1726914731IN
0x29fF3B5A...E95cA565a
0 ETH0.003301779.40528801
Exec Transaction207983652024-09-21 10:30:237 days ago1726914623IN
0x29fF3B5A...E95cA565a
0 ETH0.001329978.39296126
Exec Transaction202562112024-07-07 17:45:3583 days ago1720374335IN
0x29fF3B5A...E95cA565a
0 ETH0.001640594
Exec Transaction202561572024-07-07 17:34:4783 days ago1720373687IN
0x29fF3B5A...E95cA565a
0 ETH0.000829915.96797218
Exec Transaction202327882024-07-04 11:15:3586 days ago1720091735IN
0x29fF3B5A...E95cA565a
0 ETH0.0026972913
Exec Transaction202327552024-07-04 11:08:5986 days ago1720091339IN
0x29fF3B5A...E95cA565a
0 ETH0.0010357312
Exec Transaction197192402024-04-23 16:19:35158 days ago1713889175IN
0x29fF3B5A...E95cA565a
0 ETH0.0015533818
Exec Transaction197191982024-04-23 16:11:11158 days ago1713888671IN
0x29fF3B5A...E95cA565a
0 ETH0.0036087327.88954032
Exec Transaction195745922024-04-03 10:16:23178 days ago1712139383IN
0x29fF3B5A...E95cA565a
0 ETH0.0023273926.97275771
Exec Transaction195333302024-03-28 14:57:35184 days ago1711637855IN
0x29fF3B5A...E95cA565a
0 ETH0.0066199257
Exec Transaction194326532024-03-14 10:27:35198 days ago1710412055IN
0x29fF3B5A...E95cA565a
0 ETH0.0036873544.69250699
Exec Transaction194326382024-03-14 10:24:35198 days ago1710411875IN
0x29fF3B5A...E95cA565a
0 ETH0.0063120754.48303354
Exec Transaction193892982024-03-08 8:37:23204 days ago1709887043IN
0x29fF3B5A...E95cA565a
0 ETH0.0048943256.70571119
Exec Transaction190772722024-01-24 15:04:23248 days ago1706108663IN
0x29fF3B5A...E95cA565a
0 ETH0.0018151122
Exec Transaction188341782023-12-21 12:15:47282 days ago1703160947IN
0x29fF3B5A...E95cA565a
0 ETH0.0045975646
Exec Transaction188335172023-12-21 10:02:35282 days ago1703152955IN
0x29fF3B5A...E95cA565a
0 ETH0.0041190841.20771906
Exec Transaction188334392023-12-21 9:46:59282 days ago1703152019IN
0x29fF3B5A...E95cA565a
0 ETH0.0028775234.87700661
Exec Transaction187278292023-12-06 14:17:11297 days ago1701872231IN
0x29fF3B5A...E95cA565a
0 ETH0.0179739357.07896623
Exec Transaction187277722023-12-06 14:05:47297 days ago1701871547IN
0x29fF3B5A...E95cA565a
0 ETH0.0068920559.50099686
Exec Transaction187277212023-12-06 13:55:11297 days ago1701870911IN
0x29fF3B5A...E95cA565a
0 ETH0.0145656856.86299414
Exec Transaction186057182023-11-19 12:00:11314 days ago1700395211IN
0x29fF3B5A...E95cA565a
0 ETH0.0037869318.76950054
Exec Transaction186057152023-11-19 11:59:35314 days ago1700395175IN
0x29fF3B5A...E95cA565a
0 ETH0.0044980420
Exec Transaction186057072023-11-19 11:57:59314 days ago1700395079IN
0x29fF3B5A...E95cA565a
0 ETH0.0048330216
Exec Transaction186056432023-11-19 11:45:11314 days ago1700394311IN
0x29fF3B5A...E95cA565a
0 ETH0.0032658516
View all transactions

Latest 20 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
207983932024-09-21 10:35:597 days ago1726914959
0x29fF3B5A...E95cA565a
20 ETH
207983652024-09-21 10:30:237 days ago1726914623
0x29fF3B5A...E95cA565a
2 ETH
207983432024-09-21 10:25:597 days ago1726914359
0x29fF3B5A...E95cA565a
25.9788143 ETH
187278292023-12-06 14:17:11297 days ago1701872231
0x29fF3B5A...E95cA565a
0.59057153 ETH
186056432023-11-19 11:45:11314 days ago1700394311
0x29fF3B5A...E95cA565a
9.38159483 ETH
186055712023-11-19 11:30:35314 days ago1700393435
0x29fF3B5A...E95cA565a
9.38159483 ETH
184914062023-11-03 12:02:35330 days ago1699012955
0x29fF3B5A...E95cA565a
5.99740712 ETH
177116482023-07-17 7:59:47439 days ago1689580787
0x29fF3B5A...E95cA565a
5 ETH
176484642023-07-08 10:31:11448 days ago1688812271
0x29fF3B5A...E95cA565a
5 ETH
175083352023-06-18 18:06:23468 days ago1687111583
0x29fF3B5A...E95cA565a
16.71853161 ETH
175083122023-06-18 18:01:47468 days ago1687111307
0x29fF3B5A...E95cA565a
16.71853161 ETH
174487752023-06-10 9:06:11476 days ago1686387971
0x29fF3B5A...E95cA565a
32 ETH
174305122023-06-07 19:17:59479 days ago1686165479
0x29fF3B5A...E95cA565a
20 ETH
173234622023-05-23 17:38:47494 days ago1684863527
0x29fF3B5A...E95cA565a
6.95610964 ETH
172995362023-05-20 8:45:47497 days ago1684572347
0x29fF3B5A...E95cA565a
7.01854093 ETH
171583092023-04-30 10:36:35517 days ago1682850995
0x29fF3B5A...E95cA565a
7.81496256 ETH
170195852023-04-10 18:34:59537 days ago1681151699
0x29fF3B5A...E95cA565a
12.31602611 ETH
170035942023-04-08 12:10:47539 days ago1680955847
0x29fF3B5A...E95cA565a
12.58103196 ETH
169820332023-04-05 10:37:47542 days ago1680691067
0x29fF3B5A...E95cA565a
12.58424283 ETH
167980802023-03-10 13:39:47568 days ago1678455587  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.