ETH Price: $2,799.02 (+4.51%)

Transaction Decoder

Block:
21845360 at Feb-14-2025 02:41:11 PM +UTC
Transaction Fee:
0.00013008715520236 ETH $0.36
Gas Used:
72,980 Gas / 1.782504182 Gwei

Emitted Events:

542 AppProxyUpgradeable.0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef( 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, 0x000000000000000000000000704377f719651c3ee6902ff3c9d5522e5054d429, 0x000000000000000000000000cabfcebd15a1138e3ac80249f6807905d2c0973f, 000000000000000000000000000000000000000000000000009480e0e79c8000 )
543 AppProxyUpgradeable.0x9d9c909296d9c674451c0c24f02cb64981eb3b727f99865939192f880a755dcb( 0x9d9c909296d9c674451c0c24f02cb64981eb3b727f99865939192f880a755dcb, 0x000000000000000000000000704377f719651c3ee6902ff3c9d5522e5054d429, 0x000000000000000000000000cabfcebd15a1138e3ac80249f6807905d2c0973f, 000000000000000000000000000000000000000000000000007c6169e00881e5 )

Account State Difference:

  Address   Before After State Difference Code
(beaverbuild)
19.490624016538076213 Eth19.490624378933037713 Eth0.0000003623949615
0xae7ab965...312D7fE84
0xcaBFcebd...5d2c0973f
29.584534690644362533 Eth
Nonce: 82543
29.584404603489160173 Eth
Nonce: 82544
0.00013008715520236

Execution Trace

AppProxyUpgradeable.23b872dd( )
  • KernelProxy.be00bbd8( )
    • Kernel.getApp( _namespace=F1F3EB40F5BC1AD1344716CED8B8A0431D840B5783AEA1FD01786BC26F35AC0F, _appId=3CA7C3E38968823CCB4C78EA688DF41356F182AE1D159E4EE608D30D68CEF320 ) => ( 0x17144556fd3424EDC8Fc8A4C940B2D04936d17eb )
    • Lido.transferFrom( _sender=0x704377f719651C3eE6902Ff3C9D5522e5054d429, _recipient=0xcaBFcebd15A1138E3aC80249F6807905d2c0973f, _amount=41800000000000000 ) => ( True )
      File 1 of 4: AppProxyUpgradeable
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // File: contracts/common/UnstructuredStorage.sol
      /*
      * SPDX-License-Identitifer: MIT
      */
      pragma solidity ^0.4.24;
      library UnstructuredStorage {
      function getStorageBool(bytes32 position) internal view returns (bool data) {
      assembly { data := sload(position) }
      }
      function getStorageAddress(bytes32 position) internal view returns (address data) {
      assembly { data := sload(position) }
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 2 of 4: KernelProxy
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      /**
      *Submitted for verification at Etherscan.io on 2020-02-06
      */
      // File: contracts/acl/IACL.sol
      /*
      * SPDX-License-Identifier: MIT
      */
      pragma solidity ^0.4.24;
      interface IACL {
      function initialize(address permissionsCreator) external;
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 3 of 4: Kernel
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      // File: contracts/acl/IACL.sol
      /*
      * SPDX-License-Identitifer: MIT
      */
      pragma solidity ^0.4.24;
      interface IACL {
      function initialize(address permissionsCreator) external;
      // TODO: this should be external
      // See https://github.com/ethereum/solidity/issues/4832
      function hasPermission(address who, address where, bytes32 what, bytes how) public view returns (bool);
      }
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

      File 4 of 4: Lido
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      /*
      * SPDX-License-Identifier: MIT
      */
      pragma solidity ^0.4.24;
      contract ACLSyntaxSugar {
      function arr() internal pure returns (uint256[]) {
      return new uint256[](0);
      }
      function arr(bytes32 _a) internal pure returns (uint256[] r) {
      return arr(uint256(_a));
      }
      function arr(bytes32 _a, bytes32 _b) internal pure returns (uint256[] r) {
      return arr(uint256(_a), uint256(_b));
      }
      function arr(address _a) internal pure returns (uint256[] r) {
      return arr(uint256(_a));
      XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX