ETH Price: $1,613.77 (-1.71%)
 

Overview

ETH Balance

0.24 ETH

Eth Value

$387.31 (@ $1,613.77/ETH)

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction148328822022-05-24 1:16:411055 days ago1653355001IN
0x2Db39c01...7e81db1Ae
0 ETH0.001492421.64041549
Exec Transaction148328762022-05-24 1:15:301055 days ago1653354930IN
0x2Db39c01...7e81db1Ae
0 ETH0.0014272720.69600431
Exec Transaction148328622022-05-24 1:11:211055 days ago1653354681IN
0x2Db39c01...7e81db1Ae
0 ETH0.0012294217.823891
Exec Transaction148326172022-05-24 0:15:041056 days ago1653351304IN
0x2Db39c01...7e81db1Ae
0 ETH0.0022019931.9240427
Exec Transaction148325932022-05-24 0:09:061056 days ago1653350946IN
0x2Db39c01...7e81db1Ae
0 ETH0.0018209526.41361467
Exec Transaction148325752022-05-24 0:04:071056 days ago1653350647IN
0x2Db39c01...7e81db1Ae
0 ETH0.0016534923.97202903
Exec Transaction148325622022-05-23 23:59:361056 days ago1653350376IN
0x2Db39c01...7e81db1Ae
0 ETH0.0009063813.1450928
Exec Transaction148325472022-05-23 23:56:321056 days ago1653350192IN
0x2Db39c01...7e81db1Ae
0 ETH0.00063749.2441917
Exec Transaction148325202022-05-23 23:52:511056 days ago1653349971IN
0x2Db39c01...7e81db1Ae
0 ETH0.0008191511.87802503
Exec Transaction148324852022-05-23 23:44:451056 days ago1653349485IN
0x2Db39c01...7e81db1Ae
0 ETH0.0008006611.61194414
Exec Transaction148324592022-05-23 23:40:221056 days ago1653349222IN
0x2Db39c01...7e81db1Ae
0 ETH0.0012065417.49228109
Exec Transaction148324262022-05-23 23:32:191056 days ago1653348739IN
0x2Db39c01...7e81db1Ae
0 ETH0.0012858118.64145616
Exec Transaction148323582022-05-23 23:16:051056 days ago1653347765IN
0x2Db39c01...7e81db1Ae
0 ETH0.0014591221.15774739
Exec Transaction148323342022-05-23 23:10:151056 days ago1653347415IN
0x2Db39c01...7e81db1Ae
0 ETH0.0017397225.22657189
Exec Transaction146834182022-04-30 4:15:331079 days ago1651292133IN
0x2Db39c01...7e81db1Ae
0 ETH0.004851335.7299719
Exec Transaction146834102022-04-30 4:13:561079 days ago1651292036IN
0x2Db39c01...7e81db1Ae
0 ETH0.004222635.58425986
Exec Transaction146832362022-04-30 3:37:011079 days ago1651289821IN
0x2Db39c01...7e81db1Ae
0 ETH0.0016471934.6675741
Exec Transaction146832362022-04-30 3:37:011079 days ago1651289821IN
0x2Db39c01...7e81db1Ae
0 ETH0.0036314427.55288279
Exec Transaction146763512022-04-29 1:39:021080 days ago1651196342IN
0x2Db39c01...7e81db1Ae
0 ETH0.0040333335
Exec Transaction146718262022-04-28 8:31:131081 days ago1651134673IN
0x2Db39c01...7e81db1Ae
0 ETH0.0035719223
Exec Transaction146715872022-04-28 7:41:031081 days ago1651131663IN
0x2Db39c01...7e81db1Ae
0 ETH0.0036656527
Exec Transaction146715732022-04-28 7:38:191081 days ago1651131499IN
0x2Db39c01...7e81db1Ae
0 ETH0.003538326.06195117
Exec Transaction146715562022-04-28 7:35:271081 days ago1651131327IN
0x2Db39c01...7e81db1Ae
0 ETH0.0014286829.73830318
Exec Transaction146715562022-04-28 7:35:271081 days ago1651131327IN
0x2Db39c01...7e81db1Ae
0 ETH0.0039375329
Exec Transaction146707772022-04-28 4:33:421081 days ago1651120422IN
0x2Db39c01...7e81db1Ae
0 ETH0.0052084438.36364641
View all transactions

Latest 22 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-148328822022-05-24 1:16:411055 days ago1653355001
0x2Db39c01...7e81db1Ae
0.07 ETH
-148328762022-05-24 1:15:301055 days ago1653354930
0x2Db39c01...7e81db1Ae
0.14 ETH
-148328622022-05-24 1:11:211055 days ago1653354681
0x2Db39c01...7e81db1Ae
0.14 ETH
-148326172022-05-24 0:15:041056 days ago1653351304
0x2Db39c01...7e81db1Ae
0.21 ETH
-148325932022-05-24 0:09:061056 days ago1653350946
0x2Db39c01...7e81db1Ae
0.14 ETH
-148325752022-05-24 0:04:071056 days ago1653350647
0x2Db39c01...7e81db1Ae
0.21 ETH
-148325622022-05-23 23:59:361056 days ago1653350376
0x2Db39c01...7e81db1Ae
0.07 ETH
-148325472022-05-23 23:56:321056 days ago1653350192
0x2Db39c01...7e81db1Ae
0.07 ETH
-148325202022-05-23 23:52:511056 days ago1653349971
0x2Db39c01...7e81db1Ae
0.14 ETH
-148324852022-05-23 23:44:451056 days ago1653349485
0x2Db39c01...7e81db1Ae
0.07 ETH
-148324592022-05-23 23:40:221056 days ago1653349222
0x2Db39c01...7e81db1Ae
0.21 ETH
-148324262022-05-23 23:32:191056 days ago1653348739
0x2Db39c01...7e81db1Ae
0.14 ETH
-148323582022-05-23 23:16:051056 days ago1653347765
0x2Db39c01...7e81db1Ae
0.07 ETH
-148323342022-05-23 23:10:151056 days ago1653347415
0x2Db39c01...7e81db1Ae
0.07 ETH
-148048182022-05-19 11:54:321060 days ago1652961272
0x2Db39c01...7e81db1Ae
1.96 ETH
-146514732022-04-25 3:34:261084 days ago1650857666
0x2Db39c01...7e81db1Ae
0.2 ETH
-146514432022-04-25 3:26:541084 days ago1650857214
0x2Db39c01...7e81db1Ae
0.1 ETH
-146514252022-04-25 3:23:401084 days ago1650857020
0x2Db39c01...7e81db1Ae
0.1 ETH
-146513742022-04-25 3:11:141084 days ago1650856274
0x2Db39c01...7e81db1Ae
0.1 ETH
-146513382022-04-25 3:03:351084 days ago1650855815
0x2Db39c01...7e81db1Ae
0.1 ETH
-146325032022-04-22 4:19:031087 days ago1650601143
0x2Db39c01...7e81db1Ae
0.63 ETH
-146079112022-04-18 7:41:351091 days ago1650267695  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

API
[{"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
Loading...
Loading
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.