Transaction Hash:
Block:
18375037 at Oct-18-2023 05:03:59 AM +UTC
Transaction Fee:
0.001987083335271921 ETH
$4.99
Gas Used:
297,489 Gas / 6.679518689 Gwei
Emitted Events:
183 |
GnosisSafeProxy.0x3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d1ad7c3d( 0x3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d1ad7c3d, 0x0000000000000000000000006774bcbd5cecef1336b5300fb5186a12ddd8b367, 00000000000000000000000000000000000000000000000000004c65c6294000 )
|
184 |
TransparentUpgradeableProxy.0x69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e( 0x69cfcb8e6d4192b8aba9902243912587f37e550d75c1fa801491fce26717f37e, 0x0000000000000000000000007885bcbd5cecef1336b5300fb5186a12ddd8c478, 0x000000000000000000000000781e90f1c8fc4611c9b7497c3b47f99ef6969cbc, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000001325, 0000000000000000000000000000000000000000000000000000000000029040, 0000000000000000000000000000000000000000000000000000000000000080, 0000000000000000000000000000000000000000000000000000000000000184, 8ef1332e0000000000000000000000007f2b8c31f88b6006c382775eea88297e, c1e3e9050000000000000000000000006ea73e05adc79974b931123675ea8f78, ffdacdf0000000000000000000000000000000000000000000000000002386f2, 6fc1000000000000000000000000000000000000000000000000000000000000, 0000132500000000000000000000000000000000000000000000000000000000, 000000a000000000000000000000000000000000000000000000000000000000, 000000a4232e874800000000000000000000000007f5813f95462da339f57e40, 1e5cc12a7f602e5000000000000000000000000007f5813f95462da339f57e40, 1e5cc12a7f602e50000000000000000000000000000000000000000000000000, 002386f26fc10000000000000000000000000000000000000000000000000000, 0000000000000080000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000 )
|
185 |
TransparentUpgradeableProxy.0x104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e( 0x104371f3b442861a2a7b82a070afbbaab748bb13757bf47769e170e37809ec1e, 0x0000000000000000000000007f2b8c31f88b6006c382775eea88297ec1e3e905, 0x0000000000000000000000006ea73e05adc79974b931123675ea8f78ffdacdf0, 000000000000000000000000000000000000000000000000002386f26fc10000, 0000000000000000000000000000000000000000000000000000000000001325, 0000000000000000000000000000000000000000000000000000000000029040, 0000000000000000000000000000000000000000000000000000000000000080, 00000000000000000000000000000000000000000000000000000000000000a4, 232e874800000000000000000000000007f5813f95462da339f57e401e5cc12a, 7f602e5000000000000000000000000007f5813f95462da339f57e401e5cc12a, 7f602e50000000000000000000000000000000000000000000000000002386f2, 6fc1000000000000000000000000000000000000000000000000000000000000, 0000008000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000 )
|
186 |
TransparentUpgradeableProxy.0x6670de856ec8bf5cb2b7e957c5dc24759716056f79d97ea5e7c939ca0ba5a675( 0x6670de856ec8bf5cb2b7e957c5dc24759716056f79d97ea5e7c939ca0ba5a675, 0x00000000000000000000000007f5813f95462da339f57e401e5cc12a7f602e50, 0x00000000000000000000000007f5813f95462da339f57e401e5cc12a7f602e50, 000000000000000000000000000000000000000000000000002386f26fc10000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x07F5813f...A7F602e50 |
0.018543870034211638 Eth
Nonce: 65
|
0.006472786698939717 Eth
Nonce: 66
| 0.012071083335271921 | ||
0x0d7E906B...54E39AF9B | (Scroll: L1 Message Queue Proxy) | ||||
0x6774Bcbd...2DDD8b367 | (Scroll: L1 Scroll Messenger Proxy) | 1,937.049761839998732345 Eth | 1,937.059761839998732345 Eth | 0.01 | |
0x8FA3b457...5867eEB48 | 11.58669665050483037 Eth | 11.58678065050483037 Eth | 0.000084 | ||
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 5.073766362619673784 Eth | 5.073796111519673784 Eth | 0.0000297489 |
Execution Trace
ETH 0.010084
TransparentUpgradeableProxy.9f8420b3( )
ETH 0.010084
L1GatewayRouter.depositETH( _amount=10000000000000000, _gasLimit=168000 )
ETH 0.010084
TransparentUpgradeableProxy.aac476f8( )
ETH 0.010084
L1ETHGateway.depositETHAndCall( _to=0x07F5813f95462Da339F57e401e5cc12A7F602e50, _amount=10000000000000000, _data=0x00000000000000000000000007F5813F95462DA339F57E401E5CC12A7F602E5000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000, _gasLimit=168000 )
ETH 0.010084
TransparentUpgradeableProxy.5f7b1577( )
ETH 0.010084
L1ScrollMessenger.sendMessage( _to=0x6EA73e05AdC79974B931123675ea8F78FfdacDF0, _value=10000000000000000, _message=0x232E874800000000000000000000000007F5813F95462DA339F57E401E5CC12A7F602E5000000000000000000000000007F5813F95462DA339F57E401E5CC12A7F602E50000000000000000000000000000000000000000000000000002386F26FC1000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000, _gasLimit=168000, _refundAddress=0x07F5813f95462Da339F57e401e5cc12A7F602e50 )
-
TransparentUpgradeableProxy.STATICCALL( )
-
TransparentUpgradeableProxy.d7704bae( )
- ETH 0.000084
GnosisSafeProxy.CALL( )
-
TransparentUpgradeableProxy.9b159782( )
-
depositETH[L1GatewayRouter (ln:149)]
depositETHAndCall[L1GatewayRouter (ln:150)]
encode[L1GatewayRouter (ln:170)]
_msgSender[L1GatewayRouter (ln:170)]
depositETHAndCall[L1GatewayRouter (ln:171)]
_msgSender[L1GatewayRouter (ln:150)]
File 1 of 8: TransparentUpgradeableProxy
File 2 of 8: GnosisSafeProxy
File 3 of 8: TransparentUpgradeableProxy
File 4 of 8: TransparentUpgradeableProxy
File 5 of 8: TransparentUpgradeableProxy
File 6 of 8: L1GatewayRouter
File 7 of 8: L1ETHGateway
File 8 of 8: L1ScrollMessenger
12345678910111213141516// 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;
File 2 of 8: GnosisSafeProxy
12345678910111213141516// SPDX-License-Identifier: LGPL-3.0-onlypragma solidity >=0.7.0 <0.9.0;/// @title IProxy - Helper interface to access masterCopy of the Proxy on-chain/// @author Richard Meissner - <richard@gnosis.io>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 - <stefan@gnosis.io>/// @author Richard Meissner - <richard@gnosis.io>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;
File 3 of 8: TransparentUpgradeableProxy
12345678910111213141516// 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;
File 4 of 8: TransparentUpgradeableProxy
12345678910111213141516// 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;
File 5 of 8: TransparentUpgradeableProxy
12345678910111213141516// 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;
File 6 of 8: L1GatewayRouter
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity =0.8.16;import {OwnableUpgradeable} from "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";import {IERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol";import {SafeERC20Upgradeable} from "@openzeppelin/contracts-upgradeable/token/ERC20/utils/SafeERC20Upgradeable.sol";import {IL1ETHGateway} from "./IL1ETHGateway.sol";import {IL1ERC20Gateway} from "./IL1ERC20Gateway.sol";import {IL1GatewayRouter} from "./IL1GatewayRouter.sol";/// @title L1GatewayRouter/// @notice The `L1GatewayRouter` is the main entry for depositing Ether and ERC20 tokens./// All deposited tokens are routed to corresponding gateways./// @dev One can also use this contract to query L1/L2 token address mapping./// In the future, ERC-721 and ERC-1155 tokens will be added to the router too.contract L1GatewayRouter is OwnableUpgradeable, IL1GatewayRouter {using SafeERC20Upgradeable for IERC20Upgradeable;/*************
File 7 of 8: L1ETHGateway
12345678910111213141516// SPDX-License-Identifier: MITpragma 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 *
File 8 of 8: L1ScrollMessenger
12345678910111213141516// SPDX-License-Identifier: MITpragma 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:///