Contract 0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba 2

 

Contract Overview

Balance:
0 MATIC

MATIC Value:
$0.00

Token:
Txn Hash Method
Block
From
To
Value [Txn Fee]
0x8fb2c9029d327e236d9959c3189897f46ed4f89c43fc592b1462c2352ad8a028Exec Transaction199635712021-10-08 0:23:0714 days 6 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00457026
0xcabf842f4528c10680b5fb99a495e4e3e74c4021bd769286ad67a7413b7f7dcdExec Transaction199610682021-10-07 22:48:3314 days 8 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00257061
0x55ac0083e1507affa7dfdb6e0806db0419f0633ebdc90212ba2a94bce3920fb5Exec Transaction199512232021-10-07 16:38:4014 days 14 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.01047084
0x4114f81485db4b0a9ec7efcb2bf14ec0b3f21bdef821a63d6c514987a2b25e95Exec Transaction199511332021-10-07 16:35:3614 days 14 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00816096
0x081c7ae13684ab53430321404981ce0f7f10c57abd8e4b46c60447ab5a686c30Exec Transaction199394222021-10-07 9:02:0214 days 21 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00613902
0x6d167b621ae80872e7d3c6151f8df1f550eee10588cadc432ba83f05777cb6afExec Transaction199269472021-10-07 1:17:4515 days 5 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00531531
0xb9e1f8e698878a787d5eec8f97747175699980aa31d3b16a8fea3628c5de610aExec Transaction198891482021-10-06 0:14:5916 days 6 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00308466
0x17e06ffecf5f1fd858426d50288a75525fe236c22b19637017eb8023a23ce58bExec Transaction196913592021-09-30 19:39:4621 days 11 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.0021027
0x284b00f364c96bdfdb06eac51c40706eac5c349cc2c8962257c941e57dda2405Exec Transaction193856602021-09-22 13:36:3229 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00315835
0xcb3cff3b351b452ae47390474659b7c9aa8370b49c5840949c81695252fac939Exec Transaction193856442021-09-22 13:35:2829 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00442127
0xb3ea36ec61436b10e6068cf95265a992d06501af655fb45efd52bc0af150029fExec Transaction193856252021-09-22 13:34:1229 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00378966
0x53386cb6ea324fc5756f362663da357577a1d6bd1d4a1f5ff27524dd7d19f4ddExec Transaction193856082021-09-22 13:33:0429 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.000933848017
0xf759693de9129c2040d7e45f704a2eeed40c85deee7891a62858ad3f1f99ff11Exec Transaction193856002021-09-22 13:32:2029 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.000505288
0xdb43d8cf556b2e5d403514b7ab6d988a5a8875e5b748054b51fc54551fc5b342Exec Transaction193855832021-09-22 13:31:3729 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.000933848017
0xff895f5ab2790bc29bc0f958655c8e115ce1926cf91a783856c205998f588f0bExec Transaction193855112021-09-22 13:29:0929 days 17 hrs ago0x3027a0c4e35272c0707de2651a0638c3df1c37ac IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00126322
0x328c2dc2896664116cc2a2845bade48d65fc9a3a77a272e76418c9ba51cc28c1Exec Transaction193491202021-09-21 13:03:4430 days 17 hrs ago0xfbb3a85603c398ff22435dd40873ec190134e1f6 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.001577205
0xcabd581ffc23c7d7f5b52a4c76057cd39b4e2fe5383afc73c499c419e367fecdExec Transaction188967382021-09-08 22:33:1543 days 8 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.000579371603
0x4be5db3ccc5c09afe965b3ab0890716f761b3ef57c7ee729936c2dd0d8e6c9cdExec Transaction188964152021-09-08 22:18:5743 days 8 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.031276973
0xc3f90e3f00a2be99c7562d57c6935ae57396e1bea7f3a5f41fad626b94a859edExec Transaction188963762021-09-08 22:16:3143 days 8 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.02742169
0x9b355d4aec4cbda170fc53164f5107f8d27a7ddff9e59d9cbebd3b88ae8fb3d8Exec Transaction188963302021-09-08 22:14:5943 days 8 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00282594
0xb605dcc9df3b7980c06435791a8e3ebe6bd552a18e87503c0f421cce2f193afcExec Transaction185588862021-08-30 15:57:4252 days 14 hrs ago0xfbb3a85603c398ff22435dd40873ec190134e1f6 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.000856771264
0x3ef7442ca5d19dbf2f0e73d2ecbf27d0d1cf612528010e5c8239cc30cdb74c99Exec Transaction185586412021-08-30 15:48:4852 days 15 hrs ago0xfbb3a85603c398ff22435dd40873ec190134e1f6 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.001162293
0x2ffbc7ee67305f3c42d5fa2c01d8bab146229e5a08b9e0e4b61527c07ce4e03dExec Transaction185579122021-08-30 15:16:3252 days 15 hrs ago0xb4a3f907ec1611f22543219ae9bb33ec5e96e116 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.0026869
0xa6e63b00cf956d1f55e3363d627ec4d53a9898e28ca98b414f840e695334dd23Exec Transaction185579022021-08-30 15:15:5252 days 15 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.0026869
0xe82e87bee3350c7104fe15d5e5365c9dc4792f9752d3421585a215d20d291002Exec Transaction185577662021-08-30 15:10:4252 days 15 hrs ago0x4bb4c1b0745ef7b4642feeccd0740dec417ca0a0 IN  0x2b23d9b02fffa1f5441ef951b4b95c09faa57eba0 MATIC0.00203755
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x9bd43934517f3f84007db91a727303dd6a0082cdbdd4931e6c893b6f0518c2a7167643832021-07-12 3:04:22102 days 3 hrs ago Gnosis Safe: Proxy Factory 1.3.0  Contract Creation0 MATIC
[ Download CSV Export 
Loading

Contract Source Code Verified (Similar Match)
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xb412684F4F0B5d27cC4A4D287F42595aB3ae124D

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 polygonscan.com on 2021-07-05
*/

/**
 *Submitted for verification at polygonscan.com on 2021-06-16
*/

// 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"}]

608060405234801561001057600080fd5b506040516101e63803806101e68339818101604052602081101561003357600080fd5b8101908080519060200190929190505050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806101c46022913960400191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060ab806101196000396000f3fe608060405273ffffffffffffffffffffffffffffffffffffffff600054167fa619486e0000000000000000000000000000000000000000000000000000000060003514156050578060005260206000f35b3660008037600080366000845af43d6000803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e76616c69642073696e676c65746f6e20616464726573732070726f76696465640000000000000000000000003e5c63644e683549055b9be8653de26e0b4cd36e

Deployed ByteCode Sourcemap

598:1528:0:-:0;;;1450:42;1446:1;1440:8;1436:57;1630:66;1626:1;1613:15;1610:87;1607:2;;;1727:10;1724:1;1717:21;1766:4;1763:1;1756:15;1607:2;1819:14;1816:1;1813;1800:34;1917:1;1914;1898:14;1895:1;1883:10;1876:5;1863:56;1954:16;1951:1;1948;1933:38;2000:1;1991:7;1988:14;1985:2;;;2032:16;2029:1;2022:27;1985:2;2088:16;2085:1;2078:27

Swarm Source

ipfs://d1429297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b9552
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.