ETH Price: $1,849.06 (-2.68%)

Contract

0x93249D69636124ab311798F047dC1a8a94dd0a9E
 
Transaction Hash
Method
Block
From
To
Exec Transaction217960092025-02-07 17:05:4749 days ago1738947947IN
Concave: CO-OP Treasury Address
0 ETH0.000205961.91322293
Exec Transaction217958952025-02-07 16:42:4749 days ago1738946567IN
Concave: CO-OP Treasury Address
0 ETH0.001062681.20943722
Exec Transaction217852952025-02-06 5:13:1151 days ago1738818791IN
Concave: CO-OP Treasury Address
0 ETH0.000141361.48156633
Exec Transaction217852102025-02-06 4:55:5951 days ago1738817759IN
Concave: CO-OP Treasury Address
0 ETH0.00007681.06581944
Exec Transaction213902262024-12-13 1:12:11106 days ago1734052331IN
Concave: CO-OP Treasury Address
0 ETH0.0011546411.24904389
Exec Transaction212693172024-11-26 3:44:23123 days ago1732592663IN
Concave: CO-OP Treasury Address
0 ETH0.000706926.57947769
Exec Transaction211749962024-11-12 23:49:59136 days ago1731455399IN
Concave: CO-OP Treasury Address
0 ETH0.0016860618.66025981
Exec Transaction211749182024-11-12 23:34:11136 days ago1731454451IN
Concave: CO-OP Treasury Address
0 ETH0.0024585822.88756567
Exec Transaction209678492024-10-15 2:01:11165 days ago1728957671IN
Concave: CO-OP Treasury Address
0 ETH0.0013921315.40930128
Exec Transaction209678382024-10-15 1:58:59165 days ago1728957539IN
Concave: CO-OP Treasury Address
0 ETH0.0016600415.45549933
Exec Transaction209546022024-10-13 5:32:59167 days ago1728797579IN
Concave: CO-OP Treasury Address
0 ETH0.000641467.10021851
Exec Transaction209545832024-10-13 5:29:11167 days ago1728797351IN
Concave: CO-OP Treasury Address
0 ETH0.000803137.4757789
Exec Transaction207895122024-09-20 4:47:47190 days ago1726807667IN
Concave: CO-OP Treasury Address
0 ETH0.001062949.8761128
Exec Transaction201354762024-06-20 20:59:59281 days ago1718917199IN
Concave: CO-OP Treasury Address
0 ETH0.000942638.92032706
Exec Transaction201354642024-06-20 20:57:35281 days ago1718917055IN
Concave: CO-OP Treasury Address
0 ETH0.000788948.99859332
Exec Transaction201354302024-06-20 20:50:23281 days ago1718916623IN
Concave: CO-OP Treasury Address
0 ETH0.0011409510.55720508
Exec Transaction197624352024-04-29 17:24:23333 days ago1714411463IN
Concave: CO-OP Treasury Address
0 ETH0.0017554915
Exec Transaction194796232024-03-21 0:56:35373 days ago1710982595IN
Concave: CO-OP Treasury Address
0 ETH0.0020348429
Exec Transaction194166912024-03-12 4:43:59382 days ago1710218639IN
Concave: CO-OP Treasury Address
0 ETH0.0037907240
Exec Transaction193286892024-02-28 21:24:11394 days ago1709155451IN
Concave: CO-OP Treasury Address
0 ETH0.0023256246.42235037
Exec Transaction193286892024-02-28 21:24:11394 days ago1709155451IN
Concave: CO-OP Treasury Address
0 ETH0.0088850946.42235037
Exec Transaction193230872024-02-28 2:34:47395 days ago1709087687IN
Concave: CO-OP Treasury Address
0 ETH0.0019422431.56422311
Exec Transaction192795562024-02-22 0:19:47401 days ago1708561187IN
Concave: CO-OP Treasury Address
0 ETH0.0026369433.78400617
Exec Transaction190802902024-01-25 1:13:59429 days ago1706145239IN
Concave: CO-OP Treasury Address
0 ETH0.0020292724.82662274
Exec Transaction190802862024-01-25 1:13:11429 days ago1706145191IN
Concave: CO-OP Treasury Address
0 ETH0.001795527
View all transactions

Latest 16 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer190802862024-01-25 1:13:11429 days ago1706145191
Concave: CO-OP Treasury Address
1.12261601 ETH
Transfer180659032023-09-04 21:48:35571 days ago1693864115
Concave: CO-OP Treasury Address
0.1 ETH
Transfer174865352023-06-15 16:42:11652 days ago1686847331
Concave: CO-OP Treasury Address
1.21261601 ETH
Execute168289452023-03-14 21:45:23745 days ago1678830323
Concave: CO-OP Treasury Address
200.07854224 ETH
Transfer168020932023-03-11 3:11:59749 days ago1678504319
Concave: CO-OP Treasury Address
199.16176332 ETH
Transfer168020452023-03-11 3:02:11749 days ago1678503731
Concave: CO-OP Treasury Address
199.47248246 ETH
Transfer166301992023-02-14 23:15:11773 days ago1676416511
Concave: CO-OP Treasury Address
0.2 ETH
Transfer166301662023-02-14 23:08:35773 days ago1676416115
Concave: CO-OP Treasury Address
1.02782915 ETH
Transfer165726092023-02-06 22:03:35781 days ago1675721015
Concave: CO-OP Treasury Address
0.48571393 ETH
Transfer163279272023-01-03 18:03:47815 days ago1672769027
Concave: CO-OP Treasury Address
0.52668412 ETH
Repay ETH163279272023-01-03 18:03:47815 days ago1672769027
Concave: CO-OP Treasury Address
211.21502042 ETH
Transfer163279112023-01-03 18:00:35815 days ago1672768835
Concave: CO-OP Treasury Address
8 ETH
Transfer160777972022-11-29 19:40:35850 days ago1669750835
Concave: CO-OP Treasury Address
210 ETH
Transfer160777572022-11-29 19:32:35850 days ago1669750355
Concave: CO-OP Treasury Address
210 ETH
Transfer150482372022-06-30 2:56:011003 days ago1656557761
Concave: CO-OP Treasury Address
0.1 ETH
-148706422022-05-30 4:53:071034 days ago1653886387  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.