ETH Price: $3,456.55 (+4.18%)

Contract

0xEd72F6384c3D8CB39E12859C0e2FA6c25c3c595A
 

Overview

ETH Balance

0.000716515451525333 ETH

Eth Value

$2.48 (@ $3,456.55/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction209383942024-10-10 23:06:5943 days ago1728601619IN
0xEd72F638...25c3c595A
0 ETH0.0005572510.88244685
Exec Transaction209383902024-10-10 23:06:1143 days ago1728601571IN
0xEd72F638...25c3c595A
0 ETH0.0005438610.62093169
Exec Transaction209383862024-10-10 23:05:2343 days ago1728601523IN
0xEd72F638...25c3c595A
0 ETH0.0005618910.97549684
Exec Transaction209383772024-10-10 23:03:3543 days ago1728601415IN
0xEd72F638...25c3c595A
0 ETH0.0005921410.09823113
Exec Transaction209383712024-10-10 23:02:2343 days ago1728601343IN
0xEd72F638...25c3c595A
0 ETH0.000492999.62757835
Exec Transaction209383632024-10-10 23:00:4743 days ago1728601247IN
0xEd72F638...25c3c595A
0 ETH0.0004839.43233878
Exec Transaction209383602024-10-10 23:00:1143 days ago1728601211IN
0xEd72F638...25c3c595A
0 ETH0.0005151410.0601464
Exec Transaction209383532024-10-10 22:58:4743 days ago1728601127IN
0xEd72F638...25c3c595A
0 ETH0.0005227710.21151636
Exec Transaction199838412024-05-30 16:27:11176 days ago1717086431IN
0xEd72F638...25c3c595A
0 ETH0.001171119.97178111
Exec Transaction197620382024-04-29 16:04:11207 days ago1714406651IN
0xEd72F638...25c3c595A
0 ETH0.0016650228.38335176
Exec Transaction197563172024-04-28 20:52:23208 days ago1714337543IN
0xEd72F638...25c3c595A
0 ETH0.000571146.8288027
Exec Transaction194547332024-03-17 13:02:59251 days ago1710680579IN
0xEd72F638...25c3c595A
0 ETH0.0019213232.75243384
Exec Transaction193815382024-03-07 6:35:35261 days ago1709793335IN
0xEd72F638...25c3c595A
0 ETH0.0031132653.08211139
Exec Transaction193814792024-03-07 6:23:47261 days ago1709792627IN
0xEd72F638...25c3c595A
0 ETH0.0030279551.63813848
Exec Transaction192856892024-02-22 21:00:59274 days ago1708635659IN
0xEd72F638...25c3c595A
0 ETH0.0035950861.30984197
Exec Transaction180490232023-09-02 13:06:59448 days ago1693660019IN
0xEd72F638...25c3c595A
0 ETH0.0009544716.27738357
Exec Transaction180069072023-08-27 15:31:11454 days ago1693150271IN
0xEd72F638...25c3c595A
0 ETH0.0011153519.02106875
Exec Transaction178569202023-08-06 15:50:35474 days ago1691337035IN
0xEd72F638...25c3c595A
0 ETH0.0016585419.83291816
Exec Transaction178569162023-08-06 15:49:47475 days ago1691336987IN
0xEd72F638...25c3c595A
0 ETH0.0010264120.04917641
Exec Transaction178148822023-07-31 18:48:35480 days ago1690829315IN
0xEd72F638...25c3c595A
0 ETH0.0025090529.99462432
Exec Transaction178071522023-07-30 16:52:11481 days ago1690735931IN
0xEd72F638...25c3c595A
0 ETH0.0016261827.7325621
Exec Transaction177513132023-07-22 21:21:23489 days ago1690060883IN
0xEd72F638...25c3c595A
0 ETH0.0010723218.28717286
Exec Transaction177217882023-07-18 18:07:47493 days ago1689703667IN
0xEd72F638...25c3c595A
0 ETH0.0019984534.08126449
Exec Transaction176839312023-07-13 10:16:23499 days ago1689243383IN
0xEd72F638...25c3c595A
0 ETH0.0010065217.16157285
Exec Transaction176350882023-07-06 13:25:35506 days ago1688649935IN
0xEd72F638...25c3c595A
0 ETH0.0016336727.86028814
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
209383772024-10-10 23:03:3543 days ago1728601415
0xEd72F638...25c3c595A
0.043 ETH
206541752024-09-01 7:17:3583 days ago1725175055
0xEd72F638...25c3c595A
0.02702371 ETH
205136452024-08-12 16:12:11102 days ago1723479131
0xEd72F638...25c3c595A
0.00962521 ETH
199838412024-05-30 16:27:11176 days ago1717086431
0xEd72F638...25c3c595A
0.055 ETH
197900662024-05-03 14:04:47204 days ago1714745087
0xEd72F638...25c3c595A
0.05984041 ETH
197620382024-04-29 16:04:11207 days ago1714406651
0xEd72F638...25c3c595A
0.081 ETH
197620152024-04-29 15:59:35207 days ago1714406375
0xEd72F638...25c3c595A
0.08246738 ETH
197563172024-04-28 20:52:23208 days ago1714337543
0xEd72F638...25c3c595A
0.03 ETH
196447262024-04-13 5:59:59224 days ago1712987999
0xEd72F638...25c3c595A
0.03075978 ETH
194547332024-03-17 13:02:59251 days ago1710680579
0xEd72F638...25c3c595A
0.04113325 ETH
194546792024-03-17 12:51:59251 days ago1710679919
0xEd72F638...25c3c595A
0.04009883 ETH
193815382024-03-07 6:35:35261 days ago1709793335
0xEd72F638...25c3c595A
0.16 ETH
193814792024-03-07 6:23:47261 days ago1709792627
0xEd72F638...25c3c595A
0.05 ETH
193814392024-03-07 6:15:47261 days ago1709792147
0xEd72F638...25c3c595A
0.05751221 ETH
193813612024-03-07 5:59:59261 days ago1709791199
0xEd72F638...25c3c595A
0.13288624 ETH
193558122024-03-03 16:23:23264 days ago1709483003
0xEd72F638...25c3c595A
0.01590926 ETH
192856892024-02-22 21:00:59274 days ago1708635659
0xEd72F638...25c3c595A
0.012 ETH
180645862023-09-04 17:24:11445 days ago1693848251
0xEd72F638...25c3c595A
0.00998948 ETH
180490232023-09-02 13:06:59448 days ago1693660019
0xEd72F638...25c3c595A
0.042 ETH
180485472023-09-02 11:31:23448 days ago1693654283
0xEd72F638...25c3c595A
0.0435723 ETH
180069072023-08-27 15:31:11454 days ago1693150271
0xEd72F638...25c3c595A
0.065 ETH
180067992023-08-27 15:09:23454 days ago1693148963
0xEd72F638...25c3c595A
0.04248319 ETH
179423232023-08-18 14:39:11463 days ago1692369551
0xEd72F638...25c3c595A
0.01342097 ETH
178569202023-08-06 15:50:35474 days ago1691337035
0xEd72F638...25c3c595A
0.04 ETH
178568432023-08-06 15:34:35475 days ago1691336075
0xEd72F638...25c3c595A
0.02227953 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.