Transaction Hash:
Block:
19157037 at Feb-04-2024 07:31:11 PM +UTC
Transaction Fee:
0.002105248971564794 ETH
$5.28
Gas Used:
122,662 Gas / 17.163008687 Gwei
Emitted Events:
238 |
L1ChugSplashProxy.0x35d79ab81f2b2017e19afb5c5571778877782d7a8786f5907f93b0f4702f4f23( 0x35d79ab81f2b2017e19afb5c5571778877782d7a8786f5907f93b0f4702f4f23, 0x00000000000000000000000057f74425a20736a315bf6983e9c427ecd9c3a00a, 0x00000000000000000000000057f74425a20736a315bf6983e9c427ecd9c3a00a, 000000000000000000000000000000000000000000000000003c6568f12e8000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
239 |
L1ChugSplashProxy.0x2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af5( 0x2849b43074093a05396b6f2a937dee8565b15a48a7b3d4bffb732a5017380af5, 0x00000000000000000000000057f74425a20736a315bf6983e9c427ecd9c3a00a, 0x00000000000000000000000057f74425a20736a315bf6983e9c427ecd9c3a00a, 000000000000000000000000000000000000000000000000003c6568f12e8000, 0000000000000000000000000000000000000000000000000000000000000040, 0000000000000000000000000000000000000000000000000000000000000000 )
|
240 |
Proxy.0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32( 0xb3813568d9991fc951961fcb4c784893574240a28925604d09fc577c55bb7c32, 0x000000000000000000000000a6ceca6c8edeb69c98bd5bd17660bacef1299b80, 0x0000000000000000000000004200000000000000000000000000000000000007, 0x0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000020, 00000000000000000000000000000000000000000000000000000000000001ed, 000000000000000000000000000000000000000000000000003c6568f12e8000, 000000000000000000000000000000000000000000000000003c6568f12e8000, 000000000004638800d764ad0b00010000000000000000000000000000000000, 00000000000000000000011cc7000000000000000000000000735adbbe72226b, d52e818e7181953f42e3b0ff2100000000000000000000000042000000000000, 0000000000000000000000001000000000000000000000000000000000000000, 0000000000003c6568f12e800000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000, 000000000000000000000000c000000000000000000000000000000000000000, 000000000000000000000000a41635f5fd00000000000000000000000057f744, 25a20736a315bf6983e9c427ecd9c3a00a00000000000000000000000057f744, 25a20736a315bf6983e9c427ecd9c3a00a000000000000000000000000000000, 000000000000000000003c6568f12e8000000000000000000000000000000000, 0000000000000000000000000000000080000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000 )
|
241 |
ResolvedDelegateProxy.0xcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a( 0xcb0f7ffd78f9aee47a248fae8db181db6eee833039123e026dcbff529522e52a, 0x0000000000000000000000004200000000000000000000000000000000000010, 000000000000000000000000735adbbe72226bd52e818e7181953f42e3b0ff21, 0000000000000000000000000000000000000000000000000000000000000080, 0001000000000000000000000000000000000000000000000000000000011cc7, 0000000000000000000000000000000000000000000000000000000000000000, 00000000000000000000000000000000000000000000000000000000000000a4, 1635f5fd00000000000000000000000057f74425a20736a315bf6983e9c427ec, d9c3a00a00000000000000000000000057f74425a20736a315bf6983e9c427ec, d9c3a00a000000000000000000000000000000000000000000000000003c6568, f12e800000000000000000000000000000000000000000000000000000000000, 0000008000000000000000000000000000000000000000000000000000000000, 0000000000000000000000000000000000000000000000000000000000000000 )
|
242 |
ResolvedDelegateProxy.0x8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d546( 0x8ebb2ec2465bdb2a06a66fc37a0963af8a2a6a1479d81d56fdb8cbb98096d546, 0x000000000000000000000000735adbbe72226bd52e818e7181953f42e3b0ff21, 000000000000000000000000000000000000000000000000003c6568f12e8000 )
|
Account State Difference:
Address | Before | After | State Difference | ||
---|---|---|---|---|---|
0x57f74425...cd9C3A00A |
0.02119485 Eth
Nonce: 0
|
0.002089601028435206 Eth
Nonce: 1
| 0.019105248971564794 | ||
0x8B34b14c...E097d0C07 | (Mode: Optimism Portal Proxy) | 15,378.441194829142455009 Eth | 15,378.458194829142455009 Eth | 0.017 | |
0x95222290...5CC4BAfe5
Miner
| (beaverbuild) | 5.805723441150527492 Eth | 5.805725949077294938 Eth | 0.000002507926767446 | |
0x95bDCA6c...ef1298A6f | (Mode: L1 Cross Domain Messenger Proxy) |
Execution Trace
ETH 0.017
L1ChugSplashProxy.b1a1a882( )
-
ProxyAdmin.STATICCALL( )
ETH 0.017
L1StandardBridge.depositETH( _minGasLimit=0, _extraData=0x )
ETH 0.017
ResolvedDelegateProxy.3dbb202b( )
-
AddressManager.getAddress( _name=OVM_L1CrossDomainMessenger ) => ( 0x14DdD08c0e28764FC89a266eC95A93619b0EE835 )
ETH 0.017
L1CrossDomainMessenger.sendMessage( _target=0x4200000000000000000000000000000000000010, _message=0x1635F5FD00000000000000000000000057F74425A20736A315BF6983E9C427ECD9C3A00A00000000000000000000000057F74425A20736A315BF6983E9C427ECD9C3A00A000000000000000000000000000000000000000000000000003C6568F12E800000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000, _minGasLimit=0 )
ETH 0.017
Proxy.e9e05c42( )
ETH 0.017
OptimismPortal.depositTransaction( _to=0x4200000000000000000000000000000000000007, _value=17000000000000000, _gasLimit=287624, _isCreation=False, _data=0xD764AD0B0001000000000000000000000000000000000000000000000000000000011CC7000000000000000000000000735ADBBE72226BD52E818E7181953F42E3B0FF210000000000000000000000004200000000000000000000000000000000000010000000000000000000000000000000000000000000000000003C6568F12E8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000C000000000000000000000000000000000000000000000000000000000000000A41635F5FD00000000000000000000000057F74425A20736A315BF6983E9C427ECD9C3A00A00000000000000000000000057F74425A20736A315BF6983E9C427ECD9C3A00A000000000000000000000000000000000000000000000000003C6568F12E80000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 )
-
Proxy.STATICCALL( )
-
-
File 1 of 9: L1ChugSplashProxy
File 2 of 9: Proxy
File 3 of 9: ResolvedDelegateProxy
File 4 of 9: ProxyAdmin
File 5 of 9: L1StandardBridge
File 6 of 9: AddressManager
File 7 of 9: L1CrossDomainMessenger
File 8 of 9: OptimismPortal
File 9 of 9: Proxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;/*** @title IL1ChugSplashDeployer*/interface IL1ChugSplashDeployer {function isUpgrading() external view returns (bool);}/*** @custom:legacy* @title L1ChugSplashProxy* @notice Basic ChugSplash proxy contract for L1. Very close to being a normal proxy but has added* functions `setCode` and `setStorage` for changing the code or storage of the contract.** Note for future developers: do NOT make anything in this contract 'public' unless you* know what you're doing. Anything public can potentially have a function signature that
File 2 of 9: Proxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;/*** @title Proxy* @notice Proxy is a transparent proxy that passes through the call if the caller is the owner or* if the caller is address(0), meaning that the call originated from an off-chain* simulation.*/contract Proxy {/*** @notice The storage slot that holds the address of the implementation.* bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)*/bytes32 internal constant IMPLEMENTATION_KEY =0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;/**
File 3 of 9: ResolvedDelegateProxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { AddressManager } from "./AddressManager.sol";/*** @custom:legacy* @title ResolvedDelegateProxy* @notice ResolvedDelegateProxy is a legacy proxy contract that makes use of the AddressManager to* resolve the implementation address. We're maintaining this contract for backwards* compatibility so we can manage all legacy proxies where necessary.*/contract ResolvedDelegateProxy {/*** @notice Mapping used to store the implementation name that corresponds to this contract. A* mapping was originally used as a way to bypass the same issue normally solved by* storing the implementation address in a specific storage slot that does not conflict* with any other storage slot. Generally NOT a safe solution but works as long as the
File 4 of 9: ProxyAdmin
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";/*** @custom:legacy* @title AddressManager* @notice AddressManager is a legacy contract that was used in the old version of the Optimism* system to manage a registry of string names to addresses. We now use a more standard* proxy system instead, but this contract is still necessary for backwards compatibility* with several older contracts.*/contract AddressManager is Ownable {/*** @notice Mapping of the hashes of string names to addresses.*/mapping(bytes32 => address) private addresses;
File 5 of 9: L1StandardBridge
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { Predeploys } from "../libraries/Predeploys.sol";import { StandardBridge } from "../universal/StandardBridge.sol";import { Semver } from "../universal/Semver.sol";/*** @custom:proxied* @title L1StandardBridge* @notice The L1StandardBridge is responsible for transfering ETH and ERC20 tokens between L1 and* L2. In the case that an ERC20 token is native to L1, it will be escrowed within this* contract. If the ERC20 token is native to L2, it will be burnt. Before Bedrock, ETH was* stored within this contract. After Bedrock, ETH is instead stored inside the* OptimismPortal contract.* NOTE: this contract is not intended to support all variations of ERC20 tokens. Examples* of some token types that may not be properly supported by this contract include, but are* not limited to: tokens with transfer fees, rebasing tokens, and tokens with blocklists.
File 6 of 9: AddressManager
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";/*** @custom:legacy* @title AddressManager* @notice AddressManager is a legacy contract that was used in the old version of the Optimism* system to manage a registry of string names to addresses. We now use a more standard* proxy system instead, but this contract is still necessary for backwards compatibility* with several older contracts.*/contract AddressManager is Ownable {/*** @notice Mapping of the hashes of string names to addresses.*/mapping(bytes32 => address) private addresses;
File 7 of 9: L1CrossDomainMessenger
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { Predeploys } from "../libraries/Predeploys.sol";import { OptimismPortal } from "./OptimismPortal.sol";import { CrossDomainMessenger } from "../universal/CrossDomainMessenger.sol";import { Semver } from "../universal/Semver.sol";/*** @custom:proxied* @title L1CrossDomainMessenger* @notice The L1CrossDomainMessenger is a message passing interface between L1 and L2 responsible* for sending and receiving data on the L1 side. Users are encouraged to use this* interface instead of interacting with lower-level contracts directly.*/contract L1CrossDomainMessenger is CrossDomainMessenger, Semver {/*** @notice Address of the OptimismPortal.
File 8 of 9: OptimismPortal
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";import { SafeCall } from "../libraries/SafeCall.sol";import { L2OutputOracle } from "./L2OutputOracle.sol";import { SystemConfig } from "./SystemConfig.sol";import { Constants } from "../libraries/Constants.sol";import { Types } from "../libraries/Types.sol";import { Hashing } from "../libraries/Hashing.sol";import { SecureMerkleTrie } from "../libraries/trie/SecureMerkleTrie.sol";import { AddressAliasHelper } from "../vendor/AddressAliasHelper.sol";import { ResourceMetering } from "./ResourceMetering.sol";import { Semver } from "../universal/Semver.sol";/// @custom:proxied/// @title OptimismPortal/// @notice The OptimismPortal is a low-level contract responsible for passing messages between L1
File 9 of 9: Proxy
12345678910111213141516// SPDX-License-Identifier: MITpragma solidity 0.8.15;/*** @title Proxy* @notice Proxy is a transparent proxy that passes through the call if the caller is the owner or* if the caller is address(0), meaning that the call originated from an off-chain* simulation.*/contract Proxy {/*** @notice The storage slot that holds the address of the implementation.* bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)*/bytes32 internal constant IMPLEMENTATION_KEY =0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;/**