ETH Price: $3,594.05 (+1.28%)
Gas: 0.49 Gwei

Transaction Decoder

Block:
19755598 at Apr-28-2024 06:26:59 PM +UTC
Transaction Fee:
0.000877873069526544 ETH $3.16
Gas Used:
107,289 Gas / 8.182321296 Gwei

Emitted Events:

353 TransparentUpgradeableProxy.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x0000000000000000000000000000000000000000000000000000000000000000, 0x0000000000000000000000002fbe02c3983e4c06d38574186fae3a77f3655ae4, 0000000000000000000000000000000000000000000000000015e425ce48ebdd )
354 TransparentUpgradeableProxy.0xbfe611b001dfcd411432f7bf0d79b82b4b2ee81511edac123a3403c357fb972a( 0xbfe611b001dfcd411432f7bf0d79b82b4b2ee81511edac123a3403c357fb972a, 0x000000000000000000000000fae103dc9cf190ed75350761e95403b7b8afa6c0, 000000000000000000000000000000000000000000000000001606ddfd9b8000 )
355 TransparentUpgradeableProxy.0xe28a9e1df63912c0c77b586c53595df741cbbc554d6831e40f1b5453199a9630( 0xe28a9e1df63912c0c77b586c53595df741cbbc554d6831e40f1b5453199a9630, 0x0000000000000000000000002fbe02c3983e4c06d38574186fae3a77f3655ae4, 0x0000000000000000000000000000000000000000000000000000000000000000, 000000000000000000000000000000000000000000000000001606ddfd9b8000, 0000000000000000000000000000000000000000000000000015e425ce48ebdd, 0000000000000000000000000000000000000000000019856c749f5a04e31ce2 )

Account State Difference:

  Address   Before After State Difference Code
0x2FBe02c3...7F3655Ae4
0.023080146571496396 Eth
Nonce: 276
0.016002273501969852 Eth
Nonce: 277
0.007077873069526544
0x5e6342D8...7249a4889
(Fee Recipient: 0x5e63...889)
262.108187537713385332 Eth262.114387537713385332 Eth0.0062
0x95222290...5CC4BAfe5
(beaverbuild)
19.259413929665604358 Eth19.259418977076609358 Eth0.000005047411005
0xFAe103DC...7b8aFa6c0

Execution Trace

ETH 0.0062 TransparentUpgradeableProxy.CALL( )
  • ETH 0.0062 RswETH.DELEGATECALL( )
    • TransparentUpgradeableProxy.CALL( )
      • AccessControlManager.DELEGATECALL( )
      • TransparentUpgradeableProxy.CALL( )
        • AccessControlManager.DELEGATECALL( )
        • ETH 0.0062 TransparentUpgradeableProxy.CALL( )
          • ETH 0.0062 DepositManager.DELEGATECALL( )
            File 1 of 6: TransparentUpgradeableProxy
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol";
            import "@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol";
            import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
            // Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.
            contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {
            constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}
            }
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "./IBeacon.sol";
            import "../Proxy.sol";
            import "../ERC1967/ERC1967Upgrade.sol";
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 2 of 6: TransparentUpgradeableProxy
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol";
            import "@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol";
            import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
            // Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.
            contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {
            constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}
            }
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "./IBeacon.sol";
            import "../Proxy.sol";
            import "../ERC1967/ERC1967Upgrade.sol";
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 3 of 6: RswETH
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            // OpenZeppelin Contracts v4.4.1 (access/IAccessControlEnumerable.sol)
            pragma solidity ^0.8.0;
            import "./IAccessControlUpgradeable.sol";
            /**
            * @dev External interface of AccessControlEnumerable declared to support ERC165 detection.
            */
            interface IAccessControlEnumerableUpgradeable is IAccessControlUpgradeable {
            /**
            * @dev Returns one of the accounts that have `role`. `index` must be a
            * value between 0 and {getRoleMemberCount}, non-inclusive.
            *
            * Role bearers are not sorted in any particular way, and their ordering may
            * change at any point.
            *
            * WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 4 of 6: TransparentUpgradeableProxy
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "@openzeppelin/contracts/proxy/beacon/BeaconProxy.sol";
            import "@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol";
            import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol";
            import "@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol";
            // Kept for backwards compatibility with older versions of Hardhat and Truffle plugins.
            contract AdminUpgradeabilityProxy is TransparentUpgradeableProxy {
            constructor(address logic, address admin, bytes memory data) payable TransparentUpgradeableProxy(logic, admin, data) {}
            }
            // SPDX-License-Identifier: MIT
            pragma solidity ^0.8.0;
            import "./IBeacon.sol";
            import "../Proxy.sol";
            import "../ERC1967/ERC1967Upgrade.sol";
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 5 of 6: AccessControlManager
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            // OpenZeppelin Contracts (last updated v4.5.0) (access/AccessControlEnumerable.sol)
            pragma solidity ^0.8.0;
            import "./IAccessControlEnumerableUpgradeable.sol";
            import "./AccessControlUpgradeable.sol";
            import "../utils/structs/EnumerableSetUpgradeable.sol";
            import "../proxy/utils/Initializable.sol";
            /**
            * @dev Extension of {AccessControl} that allows enumerating the members of each role.
            */
            abstract contract AccessControlEnumerableUpgradeable is Initializable, IAccessControlEnumerableUpgradeable, AccessControlUpgradeable {
            function __AccessControlEnumerable_init() internal onlyInitializing {
            }
            function __AccessControlEnumerable_init_unchained() internal onlyInitializing {
            }
            using EnumerableSetUpgradeable for EnumerableSetUpgradeable.AddressSet;
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

            File 6 of 6: DepositManager
            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            // SPDX-License-Identifier: MIT
            // OpenZeppelin Contracts v4.4.1 (access/IAccessControlEnumerable.sol)
            pragma solidity ^0.8.0;
            import "./IAccessControlUpgradeable.sol";
            /**
            * @dev External interface of AccessControlEnumerable declared to support ERC165 detection.
            */
            interface IAccessControlEnumerableUpgradeable is IAccessControlUpgradeable {
            /**
            * @dev Returns one of the accounts that have `role`. `index` must be a
            * value between 0 and {getRoleMemberCount}, non-inclusive.
            *
            * Role bearers are not sorted in any particular way, and their ordering may
            * change at any point.
            *
            * WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure
            XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX