ETH Price: $3,460.34 (+1.54%)
Gas: 8 Gwei

Contract

0xeDE21d217E29b0f345AfC9EFcb6018287B7A46fB
 

Overview

ETH Balance

0.071566169210835952 ETH

Eth Value

$247.64 (@ $3,460.34/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Exec Transaction169411022023-03-30 15:59:23459 days ago1680191963IN
0xeDE21d21...87B7A46fB
0 ETH0.0029828233.95281625
Exec Transaction169410932023-03-30 15:57:35459 days ago1680191855IN
0xeDE21d21...87B7A46fB
0 ETH0.002967633.7842344
Exec Transaction169410822023-03-30 15:55:11459 days ago1680191711IN
0xeDE21d21...87B7A46fB
0 ETH0.0024318336
Exec Transaction169212692023-03-27 21:04:11461 days ago1679951051IN
0xeDE21d21...87B7A46fB
0 ETH0.0020305833
Exec Transaction169203242023-03-27 17:52:23461 days ago1679939543IN
0xeDE21d21...87B7A46fB
0 ETH0.0024600537
Exec Transaction168782842023-03-21 20:08:59467 days ago1679429339IN
0xeDE21d21...87B7A46fB
0 ETH0.0040815622.39332132
Exec Transaction160859162022-11-30 22:55:59578 days ago1669848959IN
0xeDE21d21...87B7A46fB
0 ETH0.0010654612
Exec Transaction160714622022-11-28 22:26:11580 days ago1669674371IN
0xeDE21d21...87B7A46fB
0 ETH0.000843510.87915449
Exec Transaction160705542022-11-28 19:23:59580 days ago1669663439IN
0xeDE21d21...87B7A46fB
0 ETH0.0009603413.66921857
Exec Transaction159990922022-11-18 19:49:35590 days ago1668800975IN
0xeDE21d21...87B7A46fB
0 ETH0.0008574412.42894535
Exec Transaction156909012022-10-06 18:38:59633 days ago1665081539IN
0xeDE21d21...87B7A46fB
0 ETH0.0009226315
Exec Transaction156487582022-09-30 21:11:59639 days ago1664572319IN
0xeDE21d21...87B7A46fB
0 ETH0.0012378817
Exec Transaction155478332022-09-16 18:03:35653 days ago1663351415IN
0xeDE21d21...87B7A46fB
0 ETH0.0027203228.94704772
Exec Transaction155478252022-09-16 18:01:59653 days ago1663351319IN
0xeDE21d21...87B7A46fB
0 ETH0.0014762124
Exec Transaction150509002022-06-30 14:47:06732 days ago1656600426IN
0xeDE21d21...87B7A46fB
0 ETH0.0034627739
Exec Transaction150508852022-06-30 14:42:58732 days ago1656600178IN
0xeDE21d21...87B7A46fB
0 ETH0.0021663335.10738801
Exec Transaction150410472022-06-28 18:39:57733 days ago1656441597IN
0xeDE21d21...87B7A46fB
0 ETH0.0048160240.9710329
Exec Transaction150409842022-06-28 18:21:27733 days ago1656440487IN
0xeDE21d21...87B7A46fB
0 ETH0.0037291342
Exec Transaction150370052022-06-28 0:14:37734 days ago1656375277IN
0xeDE21d21...87B7A46fB
0 ETH0.0038214432.50993915
Exec Transaction148008732022-05-18 20:26:41774 days ago1652905601IN
0xeDE21d21...87B7A46fB
0 ETH0.0022677531.06433326
Transfer147816702022-05-15 19:00:36777 days ago1652641236IN
0xeDE21d21...87B7A46fB
0.42592255 ETH0.0004173615.27174464
Exec Transaction147811892022-05-15 17:14:53777 days ago1652634893IN
0xeDE21d21...87B7A46fB
0 ETH0.0016499417.557061
Exec Transaction147440092022-05-09 18:46:49783 days ago1652122009IN
0xeDE21d21...87B7A46fB
0 ETH0.01671241203.34865369
Exec Transaction147439642022-05-09 18:35:48783 days ago1652121348IN
0xeDE21d21...87B7A46fB
0 ETH0.0081565399.31007145
Exec Transaction146566522022-04-25 23:15:28797 days ago1650928528IN
0xeDE21d21...87B7A46fB
0 ETH0.0038072657.13443294
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
169424622023-03-30 20:34:11458 days ago1680208451
0xeDE21d21...87B7A46fB
0.00032728 ETH
169424592023-03-30 20:33:35458 days ago1680208415
0xeDE21d21...87B7A46fB
0.00037341 ETH
169424542023-03-30 20:32:35458 days ago1680208355
0xeDE21d21...87B7A46fB
0.00046151 ETH
169424502023-03-30 20:31:47458 days ago1680208307
0xeDE21d21...87B7A46fB
0.00058496 ETH
169424452023-03-30 20:30:47458 days ago1680208247
0xeDE21d21...87B7A46fB
0.00073128 ETH
169420472023-03-30 19:10:11458 days ago1680203411
0xeDE21d21...87B7A46fB
0.0039806 ETH
169411442023-03-30 16:07:47459 days ago1680192467
0xeDE21d21...87B7A46fB
0.00462713 ETH
169411412023-03-30 16:07:11459 days ago1680192431
0xeDE21d21...87B7A46fB
0.0053773 ETH
169411382023-03-30 16:06:35459 days ago1680192395
0xeDE21d21...87B7A46fB
0.00632602 ETH
169411352023-03-30 16:05:59459 days ago1680192359
0xeDE21d21...87B7A46fB
0.00755013 ETH
169411312023-03-30 16:05:11459 days ago1680192311
0xeDE21d21...87B7A46fB
0.00916758 ETH
169411282023-03-30 16:04:35459 days ago1680192275
0xeDE21d21...87B7A46fB
0.01136697 ETH
169411232023-03-30 16:03:35459 days ago1680192215
0xeDE21d21...87B7A46fB
0.01446518 ETH
169352992023-03-29 20:26:11459 days ago1680121571
0xeDE21d21...87B7A46fB
0.00205244 ETH
169250762023-03-28 9:54:47461 days ago1679997287
0xeDE21d21...87B7A46fB
0.0041743 ETH
169203242023-03-27 17:52:23461 days ago1679939543
0xeDE21d21...87B7A46fB
0.5214496 ETH
169069852023-03-25 20:55:11463 days ago1679777711
0xeDE21d21...87B7A46fB
0.00313238 ETH
169049882023-03-25 14:11:35464 days ago1679753495
0xeDE21d21...87B7A46fB
0.01038749 ETH
169047542023-03-25 13:23:59464 days ago1679750639
0xeDE21d21...87B7A46fB
0.00493206 ETH
169039942023-03-25 10:50:23464 days ago1679741423
0xeDE21d21...87B7A46fB
0.00361361 ETH
169031772023-03-25 8:05:35464 days ago1679731535
0xeDE21d21...87B7A46fB
0.00658436 ETH
169013172023-03-25 1:49:11464 days ago1679708951
0xeDE21d21...87B7A46fB
0.00358789 ETH
168654112023-03-20 0:46:59469 days ago1679273219
0xeDE21d21...87B7A46fB
0.01027678 ETH
168394192023-03-16 9:07:47473 days ago1678957667
0xeDE21d21...87B7A46fB
0.01312135 ETH
168392732023-03-16 8:37:59473 days ago1678955879
0xeDE21d21...87B7A46fB
0.02219916 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.