ETH Price: $3,350.29 (-3.73%)

Contract

0xebe5f549D1a2Ed0DDD49BD82797D981cf00D6eE8
 
Transaction Hash
Method
Block
From
To
Exec Transaction214216422024-12-17 10:25:119 days ago1734431111IN
0xebe5f549...cf00D6eE8
0 ETH0.000960099.98620175
Exec Transaction213429382024-12-06 10:44:3520 days ago1733481875IN
0xebe5f549...cf00D6eE8
0 ETH0.0033544315.40674001
Exec Transaction213429232024-12-06 10:41:3520 days ago1733481695IN
0xebe5f549...cf00D6eE8
0 ETH0.0009189815.77027209
Exec Transaction162620352022-12-25 13:24:11731 days ago1671974651IN
0xebe5f549...cf00D6eE8
0 ETH0.0025051911.88912173
Exec Transaction162329022022-12-21 11:53:23736 days ago1671623603IN
0xebe5f549...cf00D6eE8
0 ETH0.003224513
Transfer152822672022-08-05 12:17:41874 days ago1659701861IN
0xebe5f549...cf00D6eE8
0.0173225 ETH0.0004306615.75847246
Exec Transaction146899882022-05-01 5:00:41970 days ago1651381241IN
0xebe5f549...cf00D6eE8
0 ETH0.01558024237.08448965
Exec Transaction146887812022-05-01 0:36:20970 days ago1651365380IN
0xebe5f549...cf00D6eE8
0 ETH0.0094193129.6977706
Transfer146823502022-04-30 0:17:28971 days ago1651277848IN
0xebe5f549...cf00D6eE8
0.61353174 ETH0.0010216437.3831985
Exec Transaction146822662022-04-29 23:56:13971 days ago1651276573IN
0xebe5f549...cf00D6eE8
0 ETH0.0024892427.43997745
Exec Transaction146821932022-04-29 23:40:12971 days ago1651275612IN
0xebe5f549...cf00D6eE8
0 ETH0.0021080636.17563998
Exec Transaction145140892022-04-03 16:07:52997 days ago1649002072IN
0xebe5f549...cf00D6eE8
0 ETH0.0085132861.65831153
Exec Transaction144751172022-03-28 14:11:261003 days ago1648476686IN
0xebe5f549...cf00D6eE8
0 ETH0.0048986654
Transfer141788712022-02-10 14:30:511049 days ago1644503451IN
0xebe5f549...cf00D6eE8
0.020425 ETH0.0020455574.84932169
Exec Transaction140353062022-01-19 10:01:401072 days ago1642586500IN
0xebe5f549...cf00D6eE8
0 ETH0.0060871698.32279644
Transfer139866882022-01-11 21:30:411079 days ago1641936641IN
0xebe5f549...cf00D6eE8
0.06015 ETH0.00419962153.66913778
Exec Transaction139720972022-01-09 15:19:481081 days ago1641741588IN
0xebe5f549...cf00D6eE8
0 ETH0.01887449153.47112123
Transfer139384842022-01-04 10:30:341087 days ago1641292234IN
0xebe5f549...cf00D6eE8
0.01752 ETH0.001804866.03978555
Exec Transaction138243042021-12-17 18:44:531104 days ago1639766693IN
0xebe5f549...cf00D6eE8
0 ETH0.0070139577.3176857
Transfer138043672021-12-14 16:25:511107 days ago1639499151IN
0xebe5f549...cf00D6eE8
0.01655 ETH0.0019527871.45451348
Exec Transaction137799472021-12-10 21:52:081111 days ago1639173128IN
0xebe5f549...cf00D6eE8
0 ETH0.0116699592.79542537
Exec Transaction137799332021-12-10 21:47:311111 days ago1639172851IN
0xebe5f549...cf00D6eE8
0 ETH0.0067120974
Exec Transaction137799292021-12-10 21:46:161111 days ago1639172776IN
0xebe5f549...cf00D6eE8
0 ETH0.0090072868
Exec Transaction137794512021-12-10 19:52:351111 days ago1639165955IN
0xebe5f549...cf00D6eE8
0 ETH0.0035372953.83679346
Exec Transaction137705562021-12-09 10:38:161113 days ago1639046296IN
0xebe5f549...cf00D6eE8
0 ETH0.0061230667.49705442
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
213429382024-12-06 10:44:3520 days ago1733481875
0xebe5f549...cf00D6eE8
1.97 ETH
163807742023-01-11 3:06:47715 days ago1673406407
0xebe5f549...cf00D6eE8
0.00045 ETH
162949832022-12-30 3:45:23727 days ago1672371923
0xebe5f549...cf00D6eE8
0.00025 ETH
162857082022-12-28 20:41:23728 days ago1672260083
0xebe5f549...cf00D6eE8
0.00025 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
162620352022-12-25 13:24:11731 days ago1671974651
0xebe5f549...cf00D6eE8
0.1 ETH
155761382022-09-20 17:20:35827 days ago1663694435
0xebe5f549...cf00D6eE8
0.00045 ETH
154714312022-09-04 11:41:09844 days ago1662291669
0xebe5f549...cf00D6eE8
0.00045 ETH
154713492022-09-04 11:22:22844 days ago1662290542
0xebe5f549...cf00D6eE8
0.00025 ETH
153455302022-08-15 10:32:45864 days ago1660559565
0xebe5f549...cf00D6eE8
0.0005 ETH
153406702022-08-14 15:52:02864 days ago1660492322
0xebe5f549...cf00D6eE8
0.001125 ETH
153406672022-08-14 15:49:50864 days ago1660492190
0xebe5f549...cf00D6eE8
0.00075 ETH
153406622022-08-14 15:48:34864 days ago1660492114
0xebe5f549...cf00D6eE8
0.0005 ETH
151489132022-07-15 18:26:46894 days ago1657909606
0xebe5f549...cf00D6eE8
0.0007 ETH
150875762022-07-06 7:19:48904 days ago1657091988
0xebe5f549...cf00D6eE8
0.00075 ETH
150559402022-07-01 9:58:19909 days ago1656669499
0xebe5f549...cf00D6eE8
0.0005 ETH
150558102022-07-01 9:28:33909 days ago1656667713
0xebe5f549...cf00D6eE8
0.0005 ETH
150503352022-06-30 12:24:53910 days ago1656591893
0xebe5f549...cf00D6eE8
0.0005 ETH
146899882022-05-01 5:00:41970 days ago1651381241
0xebe5f549...cf00D6eE8
2 ETH
146822662022-04-29 23:56:13971 days ago1651276573
0xebe5f549...cf00D6eE8
4 ETH
144751172022-03-28 14:11:261003 days ago1648476686
0xebe5f549...cf00D6eE8
0.54 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.