ETH Price: $2,962.73 (+6.39%)

Transaction Decoder

Block:
18755483 at Dec-10-2023 11:22:47 AM +UTC
Transaction Fee:
0.00329439502252685 ETH $9.76
Gas Used:
131,758 Gas / 25.003377575 Gwei

Emitted Events:

98 TransparentUpgradeableProxy.0x96db5d1cee1dd2760826bb56fabd9c9f6e978083e0a8b88559c741a29e9746e7( 0x96db5d1cee1dd2760826bb56fabd9c9f6e978083e0a8b88559c741a29e9746e7, 0x000000000000000000000000884b2d521067b69b5cad884b91f9432b242eeccf, 0x000000000000000000000000884b2d521067b69b5cad884b91f9432b242eeccf, 000000000000000000000000000000000000000000000000003388de06b40836, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
99 TransparentUpgradeableProxy.0x4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c( 0x4641df4a962071e12719d8c8c8e5ac7fc4d97b927346a3d7a335b1f7517e133c, 0x1e45cc63d38f269e878d33e1a05cbe7a1a03083404fb41819b92939353cf54f3 )

Account State Difference:

  Address   Before After State Difference Code
0x6774Bcbd...2DDD8b367
(Scroll: L1 Scroll Messenger Proxy)
13,649.216404221505090956 Eth13,649.201898510516268374 Eth0.014505710988822582
0x884B2d52...b242EECCf
0.005159917951099432 Eth
Nonce: 1045
0.016371233917395164 Eth
Nonce: 1046
0.011211315966295732
(MEV Builder: 0x88c...34A)
1.077041887005256305 Eth1.077055062805256305 Eth0.0000131758

Execution Trace

TransparentUpgradeableProxy.c311b6fc( )
  • L1ScrollMessenger.relayMessageWithProof( _from=0x6EA73e05AdC79974B931123675ea8F78FfdacDF0, _to=0x7F2b8C31F88B6006c382775eea88297Ec1e3E905, _value=14505710988822582, _nonce=15843, _message=0x8EAAC8A3000000000000000000000000884B2D521067B69B5CAD884B91F9432B242EECCF000000000000000000000000884B2D521067B69B5CAD884B91F9432B242EECCF000000000000000000000000000000000000000000000000003388DE06B4083600000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000, _proof=[{name:batchIndex, type:uint256, order:1, indexed:false, value:30712, valueString:30712}, {name:merkleProof, type:bytes, order:2, indexed:false, value:0xDA49768D70B46910CBF6A1104333B96E6F6F2CEDD8D36F39AE851048C35D70DF2A12F621CDA46250ADE285C695F67CCF262259729DA31DB40653D62CE461D7DEB4C11951957C6F8F642C4AF61CD6B24640FEC6DC7FC607EE8206A99E92410D3021DDB9A356815C3FAC1026B6DEC5DF3124AFBADB485C9BA5A3E3398A04B7BA85E58769B32A1BEAF1EA27375A44095A0D1FB664CE2DD358E7FCBFB78C26A19344B81690DCCAE770E0C3C314CF6D106CC525E859893BE91FC303986D87CB0202433F32E7CAB0FAEAC63DD9A42BB833B5C7849519918781D413AD6448E964AFB1A64F4E14EA558EFC0D220AF136A6CCC1CB7BD79B1A2C2D876C139F84EF1F038BD04FAA2824EC38B2377B523A0190641C1E8F6B4A8DFAA6049AB48251F1DA0B2E04CEFAD4E508C098B9A7E1D8FEB19955FB02BA9675585078710969D3440F5054E05773EA7D4BFEB10AB90CFC207D743E681827AADA042AC433F2A685D5ABF31D53C349538EDFD13131ABF6226B97745E8A8742DA795C014F251B5F4141B8E025C3A1ED7CAC2C260D739C3AADACB73C99E8A7F684AA44ED57A084E805E0625A2E1A168A13C4F13EDC7656D7C0C39B93488FFE44967BE9B53376DC7376DDD10C20E9, valueString:0xDA49768D70B46910CBF6A1104333B96E6F6F2CEDD8D36F39AE851048C35D70DF2A12F621CDA46250ADE285C695F67CCF262259729DA31DB40653D62CE461D7DEB4C11951957C6F8F642C4AF61CD6B24640FEC6DC7FC607EE8206A99E92410D3021DDB9A356815C3FAC1026B6DEC5DF3124AFBADB485C9BA5A3E3398A04B7BA85E58769B32A1BEAF1EA27375A44095A0D1FB664CE2DD358E7FCBFB78C26A19344B81690DCCAE770E0C3C314CF6D106CC525E859893BE91FC303986D87CB0202433F32E7CAB0FAEAC63DD9A42BB833B5C7849519918781D413AD6448E964AFB1A64F4E14EA558EFC0D220AF136A6CCC1CB7BD79B1A2C2D876C139F84EF1F038BD04FAA2824EC38B2377B523A0190641C1E8F6B4A8DFAA6049AB48251F1DA0B2E04CEFAD4E508C098B9A7E1D8FEB19955FB02BA9675585078710969D3440F5054E05773EA7D4BFEB10AB90CFC207D743E681827AADA042AC433F2A685D5ABF31D53C349538EDFD13131ABF6226B97745E8A8742DA795C014F251B5F4141B8E025C3A1ED7CAC2C260D739C3AADACB73C99E8A7F684AA44ED57A084E805E0625A2E1A168A13C4F13EDC7656D7C0C39B93488FFE44967BE9B53376DC7376DDD10C20E9}] )
    • TransparentUpgradeableProxy.116a1f42( )
    • TransparentUpgradeableProxy.ea5f084f( )
      • ScrollChain.withdrawRoots( 30712 ) => ( 07F308D3784935A0467BE197B47B764FC1419874A5A05831B5AF82DAC1AF4D81 )
      • ETH 0.014505710988822582 TransparentUpgradeableProxy.8eaac8a3( )
        • ETH 0.014505710988822582 L1ETHGateway.finalizeWithdrawETH( _from=0x884B2d521067b69B5cAD884b91F9432b242EECCf, _to=0x884B2d521067b69B5cAD884b91F9432b242EECCf, _amount=14505710988822582, _data=0x )
          • TransparentUpgradeableProxy.STATICCALL( )
            • L1ScrollMessenger.DELEGATECALL( )
            • ETH 0.014505710988822582 0x884b2d521067b69b5cad884b91f9432b242eeccf.CALL( )
              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
              // OpenZeppelin Contracts (last updated v4.9.0) (proxy/transparent/TransparentUpgradeableProxy.sol)
              pragma solidity ^0.8.0;
              import "../ERC1967/ERC1967Proxy.sol";
              /**
              * @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}
              * does not implement this interface directly, and some of its functions are implemented by an internal dispatch
              * mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not
              * include them in the ABI so this interface must be used to interact with it.
              */
              interface ITransparentUpgradeableProxy is IERC1967 {
              function admin() external view returns (address);
              function implementation() external view returns (address);
              function changeAdmin(address) external;
              function upgradeTo(address) external;
              function upgradeToAndCall(address, bytes memory) external payable;
              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
              // OpenZeppelin Contracts (last updated v4.9.0) (proxy/transparent/TransparentUpgradeableProxy.sol)
              pragma solidity ^0.8.0;
              import "../ERC1967/ERC1967Proxy.sol";
              /**
              * @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}
              * does not implement this interface directly, and some of its functions are implemented by an internal dispatch
              * mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not
              * include them in the ABI so this interface must be used to interact with it.
              */
              interface ITransparentUpgradeableProxy is IERC1967 {
              function admin() external view returns (address);
              function implementation() external view returns (address);
              function changeAdmin(address) external;
              function upgradeTo(address) external;
              function upgradeToAndCall(address, bytes memory) external payable;
              XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              File 3 of 6: L1ScrollMessenger
              1
              2
              3
              4
              5
              6
              7
              8
              9
              10
              11
              12
              13
              14
              15
              16
              // SPDX-License-Identifier: MIT
              pragma solidity =0.8.16;
              import {IScrollChain} from "./rollup/IScrollChain.sol";
              import {IL1MessageQueue} from "./rollup/IL1MessageQueue.sol";
              import {IL1ScrollMessenger} from "./IL1ScrollMessenger.sol";
              import {ScrollConstants} from "../libraries/constants/ScrollConstants.sol";
              import {IScrollMessenger} from "../libraries/IScrollMessenger.sol";
              import {ScrollMessengerBase} from "../libraries/ScrollMessengerBase.sol";
              import {WithdrawTrieVerifier} from "../libraries/verifier/WithdrawTrieVerifier.sol";
              import {IMessageDropCallback} from "../libraries/callbacks/IMessageDropCallback.sol";
              // solhint-disable avoid-low-level-calls
              // solhint-disable not-rely-on-time
              // solhint-disable reason-string
              /// @title L1ScrollMessenger
              /// @notice The `L1ScrollMessenger` contract can:
              ///
              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
              // OpenZeppelin Contracts (last updated v4.9.0) (proxy/transparent/TransparentUpgradeableProxy.sol)
              pragma solidity ^0.8.0;
              import "../ERC1967/ERC1967Proxy.sol";
              /**
              * @dev Interface for {TransparentUpgradeableProxy}. In order to implement transparency, {TransparentUpgradeableProxy}
              * does not implement this interface directly, and some of its functions are implemented by an internal dispatch
              * mechanism. The compiler is unaware that these functions are implemented by {TransparentUpgradeableProxy} and will not
              * include them in the ABI so this interface must be used to interact with it.
              */
              interface ITransparentUpgradeableProxy is IERC1967 {
              function admin() external view returns (address);
              function implementation() external view returns (address);
              function changeAdmin(address) external;
              function upgradeTo(address) external;
              function upgradeToAndCall(address, bytes memory) external payable;
              XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              File 5 of 6: ScrollChain
              1
              2
              3
              4
              5
              6
              7
              8
              9
              10
              11
              12
              13
              14
              15
              16
              // SPDX-License-Identifier: MIT
              pragma solidity =0.8.16;
              import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
              import {PausableUpgradeable} from "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol";
              import {IL1MessageQueue} from "./IL1MessageQueue.sol";
              import {IScrollChain} from "./IScrollChain.sol";
              import {BatchHeaderV0Codec} from "../../libraries/codec/BatchHeaderV0Codec.sol";
              import {ChunkCodec} from "../../libraries/codec/ChunkCodec.sol";
              import {IRollupVerifier} from "../../libraries/verifier/IRollupVerifier.sol";
              // solhint-disable no-inline-assembly
              // solhint-disable reason-string
              /// @title ScrollChain
              /// @notice This contract maintains data for the Scroll rollup.
              contract ScrollChain is OwnableUpgradeable, PausableUpgradeable, IScrollChain {
              /**********
              * Events *
              XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

              File 6 of 6: L1ETHGateway
              1
              2
              3
              4
              5
              6
              7
              8
              9
              10
              11
              12
              13
              14
              15
              16
              // SPDX-License-Identifier: MIT
              pragma solidity =0.8.16;
              import {IL2ETHGateway} from "../../L2/gateways/IL2ETHGateway.sol";
              import {IL1ScrollMessenger} from "../IL1ScrollMessenger.sol";
              import {IL1ETHGateway} from "./IL1ETHGateway.sol";
              import {IMessageDropCallback} from "../../libraries/callbacks/IMessageDropCallback.sol";
              import {ScrollGatewayBase} from "../../libraries/gateway/ScrollGatewayBase.sol";
              // solhint-disable avoid-low-level-calls
              /// @title L1ETHGateway
              /// @notice The `L1ETHGateway` is used to deposit ETH on layer 1 and
              /// finalize withdraw ETH from layer 2.
              /// @dev The deposited ETH tokens are held in this gateway. On finalizing withdraw, the corresponding
              /// ETH will be transfer to the recipient directly.
              contract L1ETHGateway is ScrollGatewayBase, IL1ETHGateway, IMessageDropCallback {
              /***************
              * Constructor *
              XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX