ETH Price: $2,341.42 (+4.28%)

Contract

0xbDae145015086058aab5F9c60Cbcef3E2dDc9BCB
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Exec Transaction194215982024-03-12 21:10:47355 days ago1710277847IN
0xbDae1450...E2dDc9BCB
0 ETH0.0057646271.05332634
Exec Transaction194087862024-03-11 2:11:23357 days ago1710123083IN
0xbDae1450...E2dDc9BCB
0 ETH0.0038873445.66628703
Exec Transaction194087792024-03-11 2:09:59357 days ago1710122999IN
0xbDae1450...E2dDc9BCB
0 ETH0.0038473845.20958859
Exec Transaction194087492024-03-11 2:03:59357 days ago1710122639IN
0xbDae1450...E2dDc9BCB
0 ETH0.0039597446.5233501
Exec Transaction194087372024-03-11 2:01:35357 days ago1710122495IN
0xbDae1450...E2dDc9BCB
0 ETH0.004097748.14427081
Exec Transaction193052462024-02-25 14:38:23371 days ago1708871903IN
0xbDae1450...E2dDc9BCB
0 ETH0.0026120532.19552287
Exec Transaction193052292024-02-25 14:34:59371 days ago1708871699IN
0xbDae1450...E2dDc9BCB
0 ETH0.0035501934.74148075
Exec Transaction188991422023-12-30 15:12:35428 days ago1703949155IN
0xbDae1450...E2dDc9BCB
0 ETH0.0017846122
Exec Transaction186221172023-11-21 19:06:59467 days ago1700593619IN
0xbDae1450...E2dDc9BCB
0 ETH0.0050115161.77061204
Exec Transaction186220962023-11-21 19:02:47467 days ago1700593367IN
0xbDae1450...E2dDc9BCB
0 ETH0.0047393858.43372079
Exec Transaction185227172023-11-07 21:18:47481 days ago1699391927IN
0xbDae1450...E2dDc9BCB
0 ETH0.0023313628.74432121
Exec Transaction183291172023-10-11 18:56:23508 days ago1697050583IN
0xbDae1450...E2dDc9BCB
0 ETH0.0009653710.90742766
Exec Transaction177876092023-07-27 23:14:23584 days ago1690499663IN
0xbDae1450...E2dDc9BCB
0 ETH0.0028981129.51385269
Exec Transaction177868312023-07-27 20:37:11584 days ago1690490231IN
0xbDae1450...E2dDc9BCB
0 ETH0.0028576129.09789619
Exec Transaction176143632023-07-03 15:35:59608 days ago1688398559IN
0xbDae1450...E2dDc9BCB
0 ETH0.0033148740.85225633
Exec Transaction176143592023-07-03 15:35:11608 days ago1688398511IN
0xbDae1450...E2dDc9BCB
0 ETH0.0031588838.92981537
Exec Transaction175820042023-06-29 2:32:11613 days ago1688005931IN
0xbDae1450...E2dDc9BCB
0 ETH0.0026503932.67298057
Exec Transaction175819902023-06-29 2:29:11613 days ago1688005751IN
0xbDae1450...E2dDc9BCB
0 ETH0.002038925.13479583
Exec Transaction175819842023-06-29 2:27:59613 days ago1688005679IN
0xbDae1450...E2dDc9BCB
0 ETH0.0022964923.38997641
Exec Transaction175390032023-06-23 1:25:35619 days ago1687483535IN
0xbDae1450...E2dDc9BCB
0 ETH0.000887116.23571004
Exec Transaction175389942023-06-23 1:23:35619 days ago1687483415IN
0xbDae1450...E2dDc9BCB
0 ETH0.0012459115.35687757
Exec Transaction175388392023-06-23 0:52:23619 days ago1687481543IN
0xbDae1450...E2dDc9BCB
0 ETH0.000819415
Exec Transaction175388292023-06-23 0:50:23619 days ago1687481423IN
0xbDae1450...E2dDc9BCB
0 ETH0.0016693117
Exec Transaction175388082023-06-23 0:46:11619 days ago1687481171IN
0xbDae1450...E2dDc9BCB
0 ETH0.0012858715.84935075
Exec Transaction175387872023-06-23 0:41:59619 days ago1687480919IN
0xbDae1450...E2dDc9BCB
0 ETH0.0014882718.34686733
View all transactions

Latest 2 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
146621192022-04-26 20:03:491041 days ago1651003429
0xbDae1450...E2dDc9BCB
0.25 ETH
145295222022-04-06 1:50:411062 days ago1649209841  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
[ 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.