ETH Price: $2,641.04 (+0.36%)

Contract

0x11986f428b22c011082820825ca29B21a3C11295
 
Transaction Hash
Method
Block
From
To
Exec Transaction216381972025-01-16 16:19:4724 days ago1737044387IN
Sipher: General Management
0 ETH0.0011355914.81512547
Exec Transaction215837402025-01-09 1:47:5931 days ago1736387279IN
Sipher: General Management
0 ETH0.000429885.33405989
Exec Transaction212002932024-11-16 12:35:2385 days ago1731760523IN
Sipher: General Management
0 ETH0.0012165310.81350453
Exec Transaction212002692024-11-16 12:30:3585 days ago1731760235IN
Sipher: General Management
0 ETH0.0012580211.18475291
Exec Transaction201441452024-06-22 2:03:47232 days ago1719021827IN
Sipher: General Management
0 ETH0.000266383.30432343
Exec Transaction200083932024-06-03 2:44:35251 days ago1717382675IN
Sipher: General Management
0 ETH0.0013678714
Exec Transaction199474842024-05-25 14:27:47260 days ago1716647267IN
Sipher: General Management
0 ETH0.000766979
Exec Transaction199474782024-05-25 14:26:23260 days ago1716647183IN
Sipher: General Management
0 ETH0.000600088.32589177
Exec Transaction199153782024-05-21 2:44:23264 days ago1716259463IN
Sipher: General Management
0 ETH0.0016139715.99361622
Exec Transaction198329552024-05-09 14:01:59276 days ago1715263319IN
Sipher: General Management
0 ETH0.000731327
Exec Transaction194250142024-03-13 8:39:11333 days ago1710319151IN
Sipher: General Management
0 ETH0.0053852555.11075062
Exec Transaction194239892024-03-13 5:13:23333 days ago1710306803IN
Sipher: General Management
0 ETH0.0040196842.89265783
Exec Transaction194231722024-03-13 2:27:35333 days ago1710296855IN
Sipher: General Management
0 ETH0.0043536243
Exec Transaction194231442024-03-13 2:21:59333 days ago1710296519IN
Sipher: General Management
0 ETH0.0030855947
Exec Transaction194193692024-03-12 13:42:35334 days ago1710250955IN
Sipher: General Management
0 ETH0.006031563.1003399
Exec Transaction162655582022-12-26 1:10:59776 days ago1672017059IN
Sipher: General Management
0 ETH0.001045710.6834243
Exec Transaction161807062022-12-14 4:59:23788 days ago1670993963IN
Sipher: General Management
0 ETH0.0028587913.10788553
Exec Transaction161747432022-12-13 8:58:59789 days ago1670921939IN
Sipher: General Management
0 ETH0.0055503125.11534925
Exec Transaction159650492022-11-14 1:39:59818 days ago1668389999IN
Sipher: General Management
0 ETH0.0038988217.64132855
Exec Transaction159259502022-11-08 14:35:47824 days ago1667918147IN
Sipher: General Management
0 ETH0.0022546519.83247208
Exec Transaction159158992022-11-07 4:56:59825 days ago1667797019IN
Sipher: General Management
0 ETH0.0011476310.48915041
Exec Transaction159158892022-11-07 4:54:59825 days ago1667796899IN
Sipher: General Management
0 ETH0.0028106911
Exec Transaction157445642022-10-14 6:29:11849 days ago1665728951IN
Sipher: General Management
0 ETH0.0036588616.82469011
Exec Transaction155310722022-09-14 4:56:23879 days ago1663131383IN
Sipher: General Management
0 ETH0.001949448.96372925
Exec Transaction153377302022-08-14 4:56:11910 days ago1660452971IN
Sipher: General Management
0 ETH0.001060424.46759822
View all transactions

Latest 11 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
148709512022-05-30 6:01:39986 days ago1653890499
Sipher: General Management
2,444.79771398 ETH
148708552022-05-30 5:40:44986 days ago1653889244
Sipher: General Management
0.01 ETH
148661192022-05-29 11:08:45987 days ago1653822525
Sipher: General Management
1,466.63457293 ETH
148639732022-05-29 2:44:11987 days ago1653792251
Sipher: General Management
978.04171492 ETH
145062632022-04-02 10:42:431044 days ago1648896163
Sipher: General Management
5,600 ETH
144561272022-03-25 15:00:051052 days ago1648220405
Sipher: General Management
500 ETH
144176362022-03-19 15:27:011058 days ago1647703621
Sipher: General Management
3,000 ETH
137705772021-12-09 10:41:201158 days ago1639046480
Sipher: General Management
600 ETH
137690242021-12-09 4:44:071158 days ago1639025047
Sipher: General Management
250 ETH
137680832021-12-09 1:07:501158 days ago1639012070
Sipher: General Management
9,950.13142612 ETH
137315632021-12-03 4:42:411164 days ago1638506561  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.