Commit 72a62d2f authored by mergify[bot]'s avatar mergify[bot] Committed by GitHub

Merge branch 'develop' into attributes-builder

parents bf9f97b2 5354f467
...@@ -17,7 +17,7 @@ Bytes_Test:test_toNibbles_expectedResult128Bytes_works() (gas: 129885) ...@@ -17,7 +17,7 @@ Bytes_Test:test_toNibbles_expectedResult128Bytes_works() (gas: 129885)
Bytes_Test:test_toNibbles_expectedResult5Bytes_works() (gas: 6132) Bytes_Test:test_toNibbles_expectedResult5Bytes_works() (gas: 6132)
Bytes_Test:test_toNibbles_zeroLengthInput_works() (gas: 966) Bytes_Test:test_toNibbles_zeroLengthInput_works() (gas: 966)
CrossDomainMessenger_BaseGas_Test:test_baseGas_succeeds() (gas: 20120) CrossDomainMessenger_BaseGas_Test:test_baseGas_succeeds() (gas: 20120)
CrossDomainOwnableThroughPortal_Test:test_depositTransaction_crossDomainOwner_succeeds() (gas: 61876) CrossDomainOwnableThroughPortal_Test:test_depositTransaction_crossDomainOwner_succeeds() (gas: 61882)
CrossDomainOwnable_Test:test_onlyOwner_notOwner_reverts() (gas: 10530) CrossDomainOwnable_Test:test_onlyOwner_notOwner_reverts() (gas: 10530)
CrossDomainOwnable_Test:test_onlyOwner_succeeds() (gas: 34861) CrossDomainOwnable_Test:test_onlyOwner_succeeds() (gas: 34861)
CrossDomainOwnable2_Test:test_onlyOwner_notMessenger_reverts() (gas: 8416) CrossDomainOwnable2_Test:test_onlyOwner_notMessenger_reverts() (gas: 8416)
......
...@@ -6,366 +6,243 @@ ...@@ -6,366 +6,243 @@
➡ contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger ➡ contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger
======================= =======================
+--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+========================================================================================================================================+ |--------------------|--------------------------|------|--------|-------|----------------------------------------------------------------|
| spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _initialized | uint8 | 0 | 20 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | _initialized | uint8 | 0 | 20 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _initializing | bool | 0 | 21 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | _initializing | bool | 0 | 21 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[50] | 1 | 0 | 1600 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | __gap | uint256[50] | 1 | 0 | 1600 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _owner | address | 51 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | _owner | address | 51 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 52 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | __gap | uint256[49] | 52 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _paused | bool | 101 | 0 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | _paused | bool | 101 | 0 | 1 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 102 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | __gap | uint256[49] | 102 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _status | uint256 | 151 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | _status | uint256 | 151 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 152 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | __gap | uint256[49] | 152 | 0 | 1568 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| spacer_201_0_32 | mapping(bytes32 => bool) | 201 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | spacer_201_0_32 | mapping(bytes32 => bool) | 201 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| spacer_202_0_32 | mapping(bytes32 => bool) | 202 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | spacer_202_0_32 | mapping(bytes32 => bool) | 202 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| successfulMessages | mapping(bytes32 => bool) | 203 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | successfulMessages | mapping(bytes32 => bool) | 203 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| xDomainMsgSender | address | 204 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | xDomainMsgSender | address | 204 | 0 | 20 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| msgNonce | uint240 | 205 | 0 | 30 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | msgNonce | uint240 | 205 | 0 | 30 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| failedMessages | mapping(bytes32 => bool) | 206 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | failedMessages | mapping(bytes32 => bool) | 206 | 0 | 32 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[42] | 207 | 0 | 1344 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger | | __gap | uint256[42] | 207 | 0 | 1344 | contracts/L1/L1CrossDomainMessenger.sol:L1CrossDomainMessenger |
+--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------+
======================= =======================
➡ contracts/L1/L1StandardBridge.sol:L1StandardBridge ➡ contracts/L1/L1StandardBridge.sol:L1StandardBridge
======================= =======================
+---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+==============================================================================================================================================+ |---------------|-------------------------------------------------|------|--------|-------|----------------------------------------------------|
| spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L1/L1StandardBridge.sol:L1StandardBridge | | spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L1/L1StandardBridge.sol:L1StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| spacer_1_0_20 | address | 1 | 0 | 20 | contracts/L1/L1StandardBridge.sol:L1StandardBridge | | spacer_1_0_20 | address | 1 | 0 | 20 | contracts/L1/L1StandardBridge.sol:L1StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| deposits | mapping(address => mapping(address => uint256)) | 2 | 0 | 32 | contracts/L1/L1StandardBridge.sol:L1StandardBridge | | deposits | mapping(address => mapping(address => uint256)) | 2 | 0 | 32 | contracts/L1/L1StandardBridge.sol:L1StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| __gap | uint256[47] | 3 | 0 | 1504 | contracts/L1/L1StandardBridge.sol:L1StandardBridge | | __gap | uint256[47] | 3 | 0 | 1504 | contracts/L1/L1StandardBridge.sol:L1StandardBridge |
+---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
======================= =======================
➡ contracts/L1/L2OutputOracle.sol:L2OutputOracle ➡ contracts/L1/L2OutputOracle.sol:L2OutputOracle
======================= =======================
+---------------------+-------------------------------+------+--------+-------+------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+==============================================================================================================================+ |---------------------|-------------------------------|------|--------|-------|------------------------------------------------|
| _initialized | uint8 | 0 | 0 | 1 | contracts/L1/L2OutputOracle.sol:L2OutputOracle | | _initialized | uint8 | 0 | 0 | 1 | contracts/L1/L2OutputOracle.sol:L2OutputOracle |
|---------------------+-------------------------------+------+--------+-------+------------------------------------------------|
| _initializing | bool | 0 | 1 | 1 | contracts/L1/L2OutputOracle.sol:L2OutputOracle | | _initializing | bool | 0 | 1 | 1 | contracts/L1/L2OutputOracle.sol:L2OutputOracle |
|---------------------+-------------------------------+------+--------+-------+------------------------------------------------|
| startingBlockNumber | uint256 | 1 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle | | startingBlockNumber | uint256 | 1 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle |
|---------------------+-------------------------------+------+--------+-------+------------------------------------------------|
| startingTimestamp | uint256 | 2 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle | | startingTimestamp | uint256 | 2 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle |
|---------------------+-------------------------------+------+--------+-------+------------------------------------------------|
| l2Outputs | struct Types.OutputProposal[] | 3 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle | | l2Outputs | struct Types.OutputProposal[] | 3 | 0 | 32 | contracts/L1/L2OutputOracle.sol:L2OutputOracle |
+---------------------+-------------------------------+------+--------+-------+------------------------------------------------+
======================= =======================
➡ contracts/L1/OptimismPortal.sol:OptimismPortal ➡ contracts/L1/OptimismPortal.sol:OptimismPortal
======================= =======================
+----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+============================================================================================================================================================+ |----------------------|------------------------------------------------------------|------|--------|-------|------------------------------------------------|
| _initialized | uint8 | 0 | 0 | 1 | contracts/L1/OptimismPortal.sol:OptimismPortal | | _initialized | uint8 | 0 | 0 | 1 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| _initializing | bool | 0 | 1 | 1 | contracts/L1/OptimismPortal.sol:OptimismPortal | | _initializing | bool | 0 | 1 | 1 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| params | struct ResourceMetering.ResourceParams | 1 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal | | params | struct ResourceMetering.ResourceParams | 1 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| __gap | uint256[48] | 2 | 0 | 1536 | contracts/L1/OptimismPortal.sol:OptimismPortal | | __gap | uint256[48] | 2 | 0 | 1536 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| l2Sender | address | 50 | 0 | 20 | contracts/L1/OptimismPortal.sol:OptimismPortal | | l2Sender | address | 50 | 0 | 20 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| finalizedWithdrawals | mapping(bytes32 => bool) | 51 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal | | finalizedWithdrawals | mapping(bytes32 => bool) | 51 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal |
|----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------|
| provenWithdrawals | mapping(bytes32 => struct OptimismPortal.ProvenWithdrawal) | 52 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal | | provenWithdrawals | mapping(bytes32 => struct OptimismPortal.ProvenWithdrawal) | 52 | 0 | 32 | contracts/L1/OptimismPortal.sol:OptimismPortal |
+----------------------+------------------------------------------------------------+------+--------+-------+------------------------------------------------+
======================= =======================
➡ contracts/L1/SystemConfig.sol:SystemConfig ➡ contracts/L1/SystemConfig.sol:SystemConfig
======================= =======================
+---------------+-------------+------+--------+-------+--------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+==================================================================================================+ |---------------|-------------|------|--------|-------|--------------------------------------------|
| _initialized | uint8 | 0 | 0 | 1 | contracts/L1/SystemConfig.sol:SystemConfig | | _initialized | uint8 | 0 | 0 | 1 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| _initializing | bool | 0 | 1 | 1 | contracts/L1/SystemConfig.sol:SystemConfig | | _initializing | bool | 0 | 1 | 1 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| __gap | uint256[50] | 1 | 0 | 1600 | contracts/L1/SystemConfig.sol:SystemConfig | | __gap | uint256[50] | 1 | 0 | 1600 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| _owner | address | 51 | 0 | 20 | contracts/L1/SystemConfig.sol:SystemConfig | | _owner | address | 51 | 0 | 20 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| __gap | uint256[49] | 52 | 0 | 1568 | contracts/L1/SystemConfig.sol:SystemConfig | | __gap | uint256[49] | 52 | 0 | 1568 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| overhead | uint256 | 101 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig | | overhead | uint256 | 101 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| scalar | uint256 | 102 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig | | scalar | uint256 | 102 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| batcherHash | bytes32 | 103 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig | | batcherHash | bytes32 | 103 | 0 | 32 | contracts/L1/SystemConfig.sol:SystemConfig |
|---------------+-------------+------+--------+-------+--------------------------------------------|
| gasLimit | uint64 | 104 | 0 | 8 | contracts/L1/SystemConfig.sol:SystemConfig | | gasLimit | uint64 | 104 | 0 | 8 | contracts/L1/SystemConfig.sol:SystemConfig |
+---------------+-------------+------+--------+-------+--------------------------------------------+
======================= =======================
➡ contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist ➡ contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist
======================= =======================
+-----------+--------------------------+------+--------+-------+----------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+=========================================================================================================================+ |-----------|--------------------------|------|--------|-------|----------------------------------------------------------|
| owner | address | 0 | 0 | 20 | contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist | | owner | address | 0 | 0 | 20 | contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist |
|-----------+--------------------------+------+--------+-------+----------------------------------------------------------|
| whitelist | mapping(address => bool) | 1 | 0 | 32 | contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist | | whitelist | mapping(address => bool) | 1 | 0 | 32 | contracts/legacy/DeployerWhitelist.sol:DeployerWhitelist |
+-----------+--------------------------+------+--------+-------+----------------------------------------------------------+
======================= =======================
➡ contracts/L2/L1Block.sol:L1Block ➡ contracts/L2/L1Block.sol:L1Block
======================= =======================
+----------------+---------+------+--------+-------+----------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+=====================================================================================+ |----------------|---------|------|--------|-------|----------------------------------|
| number | uint64 | 0 | 0 | 8 | contracts/L2/L1Block.sol:L1Block | | number | uint64 | 0 | 0 | 8 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| timestamp | uint64 | 0 | 8 | 8 | contracts/L2/L1Block.sol:L1Block | | timestamp | uint64 | 0 | 8 | 8 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| basefee | uint256 | 1 | 0 | 32 | contracts/L2/L1Block.sol:L1Block | | basefee | uint256 | 1 | 0 | 32 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| hash | bytes32 | 2 | 0 | 32 | contracts/L2/L1Block.sol:L1Block | | hash | bytes32 | 2 | 0 | 32 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| sequenceNumber | uint64 | 3 | 0 | 8 | contracts/L2/L1Block.sol:L1Block | | sequenceNumber | uint64 | 3 | 0 | 8 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| batcherHash | bytes32 | 4 | 0 | 32 | contracts/L2/L1Block.sol:L1Block | | batcherHash | bytes32 | 4 | 0 | 32 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| l1FeeOverhead | uint256 | 5 | 0 | 32 | contracts/L2/L1Block.sol:L1Block | | l1FeeOverhead | uint256 | 5 | 0 | 32 | contracts/L2/L1Block.sol:L1Block |
|----------------+---------+------+--------+-------+----------------------------------|
| l1FeeScalar | uint256 | 6 | 0 | 32 | contracts/L2/L1Block.sol:L1Block | | l1FeeScalar | uint256 | 6 | 0 | 32 | contracts/L2/L1Block.sol:L1Block |
+----------------+---------+------+--------+-------+----------------------------------+
======================= =======================
➡ contracts/legacy/L1BlockNumber.sol:L1BlockNumber ➡ contracts/legacy/L1BlockNumber.sol:L1BlockNumber
======================= =======================
+------+------+------+--------+-------+----------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+================================================+ |------|------|------|--------|-------|----------|
+------+------+------+--------+-------+----------+
======================= =======================
➡ contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger ➡ contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger
======================= =======================
+--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+========================================================================================================================================+ |--------------------|--------------------------|------|--------|-------|----------------------------------------------------------------|
| spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _initialized | uint8 | 0 | 20 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | _initialized | uint8 | 0 | 20 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _initializing | bool | 0 | 21 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | _initializing | bool | 0 | 21 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[50] | 1 | 0 | 1600 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | __gap | uint256[50] | 1 | 0 | 1600 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _owner | address | 51 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | _owner | address | 51 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 52 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | __gap | uint256[49] | 52 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _paused | bool | 101 | 0 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | _paused | bool | 101 | 0 | 1 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 102 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | __gap | uint256[49] | 102 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| _status | uint256 | 151 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | _status | uint256 | 151 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[49] | 152 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | __gap | uint256[49] | 152 | 0 | 1568 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| spacer_201_0_32 | mapping(bytes32 => bool) | 201 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | spacer_201_0_32 | mapping(bytes32 => bool) | 201 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| spacer_202_0_32 | mapping(bytes32 => bool) | 202 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | spacer_202_0_32 | mapping(bytes32 => bool) | 202 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| successfulMessages | mapping(bytes32 => bool) | 203 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | successfulMessages | mapping(bytes32 => bool) | 203 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| xDomainMsgSender | address | 204 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | xDomainMsgSender | address | 204 | 0 | 20 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| msgNonce | uint240 | 205 | 0 | 30 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | msgNonce | uint240 | 205 | 0 | 30 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| failedMessages | mapping(bytes32 => bool) | 206 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | failedMessages | mapping(bytes32 => bool) | 206 | 0 | 32 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
|--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------|
| __gap | uint256[42] | 207 | 0 | 1344 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger | | __gap | uint256[42] | 207 | 0 | 1344 | contracts/L2/L2CrossDomainMessenger.sol:L2CrossDomainMessenger |
+--------------------+--------------------------+------+--------+-------+----------------------------------------------------------------+
======================= =======================
➡ contracts/L2/L2StandardBridge.sol:L2StandardBridge ➡ contracts/L2/L2StandardBridge.sol:L2StandardBridge
======================= =======================
+---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+==============================================================================================================================================+ |---------------|-------------------------------------------------|------|--------|-------|----------------------------------------------------|
| spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L2/L2StandardBridge.sol:L2StandardBridge | | spacer_0_0_20 | address | 0 | 0 | 20 | contracts/L2/L2StandardBridge.sol:L2StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| spacer_1_0_20 | address | 1 | 0 | 20 | contracts/L2/L2StandardBridge.sol:L2StandardBridge | | spacer_1_0_20 | address | 1 | 0 | 20 | contracts/L2/L2StandardBridge.sol:L2StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| deposits | mapping(address => mapping(address => uint256)) | 2 | 0 | 32 | contracts/L2/L2StandardBridge.sol:L2StandardBridge | | deposits | mapping(address => mapping(address => uint256)) | 2 | 0 | 32 | contracts/L2/L2StandardBridge.sol:L2StandardBridge |
|---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| __gap | uint256[47] | 3 | 0 | 1504 | contracts/L2/L2StandardBridge.sol:L2StandardBridge | | __gap | uint256[47] | 3 | 0 | 1504 | contracts/L2/L2StandardBridge.sol:L2StandardBridge |
+---------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
======================= =======================
➡ contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser ➡ contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser
======================= =======================
+--------------+--------------------------+------+--------+-------+----------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+============================================================================================================================+ |--------------|--------------------------|------|--------|-------|----------------------------------------------------------|
| sentMessages | mapping(bytes32 => bool) | 0 | 0 | 32 | contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser | | sentMessages | mapping(bytes32 => bool) | 0 | 0 | 32 | contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser |
|--------------+--------------------------+------+--------+-------+----------------------------------------------------------|
| msgNonce | uint240 | 1 | 0 | 30 | contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser | | msgNonce | uint240 | 1 | 0 | 30 | contracts/L2/L2ToL1MessagePasser.sol:L2ToL1MessagePasser |
+--------------+--------------------------+------+--------+-------+----------------------------------------------------------+
======================= =======================
➡ contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH ➡ contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH
======================= =======================
+--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+=============================================================================================================================================+ |--------------|-------------------------------------------------|------|--------|-------|----------------------------------------------------|
| _balances | mapping(address => uint256) | 0 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH | | _balances | mapping(address => uint256) | 0 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH |
|--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| _allowances | mapping(address => mapping(address => uint256)) | 1 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH | | _allowances | mapping(address => mapping(address => uint256)) | 1 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH |
|--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| _totalSupply | uint256 | 2 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH | | _totalSupply | uint256 | 2 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH |
|--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| _name | string | 3 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH | | _name | string | 3 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH |
|--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------|
| _symbol | string | 4 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH | | _symbol | string | 4 | 0 | 32 | contracts/legacy/LegacyERC20ETH.sol:LegacyERC20ETH |
+--------------+-------------------------------------------------+------+--------+-------+----------------------------------------------------+
======================= =======================
➡ contracts/L2/SequencerFeeVault.sol:SequencerFeeVault ➡ contracts/L2/SequencerFeeVault.sol:SequencerFeeVault
======================= =======================
+----------------+---------+------+--------+-------+------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+=========================================================================================================+ |----------------|---------|------|--------|-------|------------------------------------------------------|
| totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/SequencerFeeVault.sol:SequencerFeeVault | | totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/SequencerFeeVault.sol:SequencerFeeVault |
+----------------+---------+------+--------+-------+------------------------------------------------------+
======================= =======================
➡ contracts/L2/BaseFeeVault.sol:BaseFeeVault ➡ contracts/L2/BaseFeeVault.sol:BaseFeeVault
======================= =======================
+----------------+---------+------+--------+-------+--------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+===============================================================================================+ |----------------|---------|------|--------|-------|--------------------------------------------|
| totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/BaseFeeVault.sol:BaseFeeVault | | totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/BaseFeeVault.sol:BaseFeeVault |
+----------------+---------+------+--------+-------+--------------------------------------------+
======================= =======================
➡ contracts/L2/L1FeeVault.sol:L1FeeVault ➡ contracts/L2/L1FeeVault.sol:L1FeeVault
======================= =======================
+----------------+---------+------+--------+-------+----------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+===========================================================================================+ |----------------|---------|------|--------|-------|----------------------------------------|
| totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/L1FeeVault.sol:L1FeeVault | | totalProcessed | uint256 | 0 | 0 | 32 | contracts/L2/L1FeeVault.sol:L1FeeVault |
+----------------+---------+------+--------+-------+----------------------------------------+
======================= =======================
➡ contracts/vendor/WETH9.sol:WETH9 ➡ contracts/vendor/WETH9.sol:WETH9
======================= =======================
+-----------+-------------------------------------------------+------+--------+-------+----------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+========================================================================================================================+ |-----------|-------------------------------------------------|------|--------|-------|----------------------------------|
| name | string | 0 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 | | name | string | 0 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 |
|-----------+-------------------------------------------------+------+--------+-------+----------------------------------|
| symbol | string | 1 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 | | symbol | string | 1 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 |
|-----------+-------------------------------------------------+------+--------+-------+----------------------------------|
| decimals | uint8 | 2 | 0 | 1 | contracts/vendor/WETH9.sol:WETH9 | | decimals | uint8 | 2 | 0 | 1 | contracts/vendor/WETH9.sol:WETH9 |
|-----------+-------------------------------------------------+------+--------+-------+----------------------------------|
| balanceOf | mapping(address => uint256) | 3 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 | | balanceOf | mapping(address => uint256) | 3 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 |
|-----------+-------------------------------------------------+------+--------+-------+----------------------------------|
| allowance | mapping(address => mapping(address => uint256)) | 4 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 | | allowance | mapping(address => mapping(address => uint256)) | 4 | 0 | 32 | contracts/vendor/WETH9.sol:WETH9 |
+-----------+-------------------------------------------------+------+--------+-------+----------------------------------+
======================= =======================
➡ contracts/universal/ProxyAdmin.sol:ProxyAdmin ➡ contracts/universal/ProxyAdmin.sol:ProxyAdmin
======================= =======================
+--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+============================================================================================================================================+ |--------------------|-----------------------------------------------|------|--------|-------|-----------------------------------------------|
| _owner | address | 0 | 0 | 20 | contracts/universal/ProxyAdmin.sol:ProxyAdmin | | _owner | address | 0 | 0 | 20 | contracts/universal/ProxyAdmin.sol:ProxyAdmin |
|--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------|
| proxyType | mapping(address => enum ProxyAdmin.ProxyType) | 1 | 0 | 32 | contracts/universal/ProxyAdmin.sol:ProxyAdmin | | proxyType | mapping(address => enum ProxyAdmin.ProxyType) | 1 | 0 | 32 | contracts/universal/ProxyAdmin.sol:ProxyAdmin |
|--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------|
| implementationName | mapping(address => string) | 2 | 0 | 32 | contracts/universal/ProxyAdmin.sol:ProxyAdmin | | implementationName | mapping(address => string) | 2 | 0 | 32 | contracts/universal/ProxyAdmin.sol:ProxyAdmin |
|--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------|
| addressManager | contract AddressManager | 3 | 0 | 20 | contracts/universal/ProxyAdmin.sol:ProxyAdmin | | addressManager | contract AddressManager | 3 | 0 | 20 | contracts/universal/ProxyAdmin.sol:ProxyAdmin |
|--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------|
| upgrading | bool | 3 | 20 | 1 | contracts/universal/ProxyAdmin.sol:ProxyAdmin | | upgrading | bool | 3 | 20 | 1 | contracts/universal/ProxyAdmin.sol:ProxyAdmin |
+--------------------+-----------------------------------------------+------+--------+-------+-----------------------------------------------+
======================= =======================
➡ contracts/universal/Proxy.sol:Proxy ➡ contracts/universal/Proxy.sol:Proxy
======================= =======================
+------+------+------+--------+-------+----------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+================================================+ |------|------|------|--------|-------|----------|
+------+------+------+--------+-------+----------+
======================= =======================
➡ contracts/legacy/L1ChugSplashProxy.sol:L1ChugSplashProxy ➡ contracts/legacy/L1ChugSplashProxy.sol:L1ChugSplashProxy
======================= =======================
+------+------+------+--------+-------+----------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+================================================+ |------|------|------|--------|-------|----------|
+------+------+------+--------+-------+----------+
======================= =======================
➡ contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 ➡ contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20
======================= =======================
+--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+==============================================================================================================================================================+ |--------------|-------------------------------------------------|------|--------|-------|---------------------------------------------------------------------|
| _balances | mapping(address => uint256) | 0 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 | | _balances | mapping(address => uint256) | 0 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 |
|--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------|
| _allowances | mapping(address => mapping(address => uint256)) | 1 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 | | _allowances | mapping(address => mapping(address => uint256)) | 1 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 |
|--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------|
| _totalSupply | uint256 | 2 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 | | _totalSupply | uint256 | 2 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 |
|--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------|
| _name | string | 3 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 | | _name | string | 3 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 |
|--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------|
| _symbol | string | 4 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 | | _symbol | string | 4 | 0 | 32 | contracts/universal/OptimismMintableERC20.sol:OptimismMintableERC20 |
+--------------+-------------------------------------------------+------+--------+-------+---------------------------------------------------------------------+
======================= =======================
➡ contracts/universal/OptimismMintableERC20Factory.sol:OptimismMintableERC20Factory ➡ contracts/universal/OptimismMintableERC20Factory.sol:OptimismMintableERC20Factory
======================= =======================
+------+------+------+--------+-------+----------+
| Name | Type | Slot | Offset | Bytes | Contract | | Name | Type | Slot | Offset | Bytes | Contract |
+================================================+ |------|------|------|--------|-------|----------|
+------+------+------+--------+-------+----------+
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
"coverage:lcov": "yarn build:differential && yarn build:fuzz && forge coverage --report lcov", "coverage:lcov": "yarn build:differential && yarn build:fuzz && forge coverage --report lcov",
"gas-snapshot": "yarn build:differential && yarn build:fuzz && forge snapshot --no-match-test 'testDiff|testFuzz|invariant'", "gas-snapshot": "yarn build:differential && yarn build:fuzz && forge snapshot --no-match-test 'testDiff|testFuzz|invariant'",
"storage-snapshot": "./scripts/storage-snapshot.sh", "storage-snapshot": "./scripts/storage-snapshot.sh",
"validate-spacers": "hardhat validate-spacers", "validate-spacers": "hardhat compile && hardhat validate-spacers",
"slither": "./scripts/slither.sh", "slither": "./scripts/slither.sh",
"clean": "rm -rf ./dist ./artifacts ./forge-artifacts ./cache ./tsconfig.tsbuildinfo ./tsconfig.build.tsbuildinfo ./src/contract-artifacts.ts ./test-case-generator/fuzz", "clean": "rm -rf ./dist ./artifacts ./forge-artifacts ./cache ./tsconfig.tsbuildinfo ./tsconfig.build.tsbuildinfo ./src/contract-artifacts.ts ./test-case-generator/fuzz",
"lint:ts:check": "eslint . --max-warnings=0", "lint:ts:check": "eslint . --max-warnings=0",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment