diff --git OP/packages/contracts-bedrock/scripts/deploy/Deploy.s.sol CELO/packages/contracts-bedrock/scripts/deploy/Deploy.s.sol
+
index 6c70faab1e7962f4aac28636b60ba62cf8a2138a..d97bdfd587fa9c25b2b2c86c48fd9652de861394 100644
--- OP/packages/contracts-bedrock/scripts/deploy/Deploy.s.sol
+++ CELO/packages/contracts-bedrock/scripts/deploy/Deploy.s.sol
@@ -1,62 +1,71 @@
@@ -7552,13 +7578,13 @@
_run();
}
-
- /// @notice Internal function containing the deploy logic.
+ /// @notice Compatibility function for tests that override _run().
- function _run() internal virtual {
+
+ function _run() internal virtual {
+ _run(true);
+ }
+
-
+ /// @notice Internal function containing the deploy logic.
+ /// @notice Internal function containing the deploy logic.
+
- function _run() internal virtual {
+ function _run(bool _needsSuperchain) internal {
console.log("start of L1 Deploy!");
deploySafe("SystemOwnerSafe");
@@ -7606,35 +7632,53 @@
// Deploy the SuperchainConfigProxy
deployERC1967Proxy("SuperchainConfigProxy");
-
@@ -394,18 +454,26 @@ deployDelayedWETH();
+
@@ -394,11 +454,45 @@ deployDelayedWETH();
deployPreimageOracle();
deployMips();
deployAnchorStateRegistry();
+
+ // Multicall3
+ deployMulticall3();
+
+ }
+
+
+
+ function preInitializeOptimismPortalBalance() public broadcast {
+
+ address optimismPortalProxy = mustGetAddress("OptimismPortalProxy");
+
+ address storageSetter = mustGetAddress("StorageSetter");
+
+
+
+ // NOTE: the storage slot index should stay the same across versions
+
+ // (OptimismPortal, OptimismPortal2, ...) since slot spacers are used
+
+ // for legacy storage variables.
+
+ // We also assert correctness in a downstream ChainAssertion,
+
+ // so changing slot numbers should get detected for coming versions.
+
+ uint256 balanceStorageSlot = 61; // slot of _balance variable
+
+
+
+ address customGasTokenAddress = Constants.ETHER;
+
+ uint256 initialBalance = 0;
+
+ customGasTokenAddress = cfg.customGasTokenAddress();
+
+ IERC20 token = IERC20(customGasTokenAddress);
+
+ initialBalance = token.balanceOf(optimismPortalProxy);
+
+
+
+ _upgradeAndCallViaSafe({
+
+ _proxy: payable(optimismPortalProxy),
+
+ _implementation: storageSetter,
+
+ _innerCallData: abi.encodeCall(StorageSetter.setUint, (bytes32(balanceStorageSlot), initialBalance))
+
+ });
}
/// @notice Initialize all of the implementations
function initializeImplementations() public {
console.log("Initializing implementations");
+
-
+ setupCustomGasToken();
-
+
-
+ address storageSetter = deployStorageSetter();
+
+ if (cfg.useCustomGasToken()) {
+
+ setupCustomGasToken();
+
+ save("StorageSetter", deployStorageSetter());
+
+ preInitializeOptimismPortalBalance();
+
+ }
+
// Selectively initialize either the original OptimismPortal or the new OptimismPortal2. Since this will upgrade
// the proxy, we cannot initialize both.
if (cfg.useFaultProofs()) {
- console.log("Fault proofs enabled. Initializing the OptimismPortal proxy with the OptimismPortal2.");
- initializeOptimismPortal2();
- } else {
-
- initializeOptimismPortal();
-
+ initializeOptimismPortal(storageSetter);
- }
-
- initializeSystemConfig();
-
@@ -418,6 +486,8 @@ initializeDisputeGameFactory();
+
@@ -418,6 +512,8 @@ initializeDisputeGameFactory();
initializeDelayedWETH();
initializePermissionedDelayedWETH();
initializeAnchorStateRegistry();
@@ -7643,7 +7687,7 @@
}
/// @notice Add AltDA setup to the OP chain
-
@@ -613,23 +683,16 @@ ////////////////////////////////////////////////////////////////
+
@@ -613,23 +709,16 @@ ////////////////////////////////////////////////////////////////
/// @notice Deploy the SuperchainConfig contract
function deploySuperchainConfig() public broadcast {
@@ -7669,7 +7713,7 @@
// Override the `L1CrossDomainMessenger` contract to the deployed implementation. This is necessary
// to check the `L1CrossDomainMessenger` implementation alongside dependent contracts, which
-
@@ -643,13 +706,11 @@ }
+
@@ -643,13 +732,11 @@ }
/// @notice Deploy the OptimismPortal
function deployOptimismPortal() public broadcast returns (address addr_) {
@@ -7685,7 +7729,7 @@
// Override the `OptimismPortal` contract to the deployed implementation. This is necessary
// to check the `OptimismPortal` implementation alongside dependent contracts, which
-
@@ -661,31 +722,22 @@ }
+
@@ -661,32 +748,23 @@ }
/// @notice Deploy the OptimismPortal2
function deployOptimismPortal2() public broadcast returns (address addr_) {
@@ -7717,13 +7761,14 @@
+ "OptimismPortal2", abi.encode(cfg.proofMaturityDelaySeconds(), cfg.disputeGameFinalityDelaySeconds())
);
}
-
-
+
- save("OptimismPortal2", addr_);
- console.log("OptimismPortal2 deployed at %s", addr_);
-
+
-
// Override the `OptimismPortal2` contract to the deployed implementation. This is necessary
// to check the `OptimismPortal2` implementation alongside dependent contracts, which
-
@@ -697,11 +749,7 @@ }
+ // are always proxies.
+
@@ -697,11 +775,7 @@ }
/// @notice Deploy the L2OutputOracle
function deployL2OutputOracle() public broadcast returns (address addr_) {
@@ -7736,7 +7781,7 @@
// Override the `L2OutputOracle` contract to the deployed implementation. This is necessary
// to check the `L2OutputOracle` implementation alongside dependent contracts, which
-
@@ -720,11 +768,8 @@ }
+
@@ -720,11 +794,8 @@ }
/// @notice Deploy the OptimismMintableERC20Factory
function deployOptimismMintableERC20Factory() public broadcast returns (address addr_) {
@@ -7750,7 +7795,7 @@
// Override the `OptimismMintableERC20Factory` contract to the deployed implementation. This is necessary
// to check the `OptimismMintableERC20Factory` implementation alongside dependent contracts, which
-
@@ -738,10 +783,7 @@ }
+
@@ -738,10 +809,7 @@ }
/// @notice Deploy the DisputeGameFactory
function deployDisputeGameFactory() public broadcast returns (address addr_) {
@@ -7762,7 +7807,7 @@
// Override the `DisputeGameFactory` contract to the deployed implementation. This is necessary to check the
// `DisputeGameFactory` implementation alongside dependent contracts, which are always proxies.
-
@@ -753,10 +795,7 @@ addr_ = address(factory);
+
@@ -753,10 +821,7 @@ addr_ = address(factory);
}
function deployDelayedWETH() public broadcast returns (address addr_) {
@@ -7774,7 +7819,7 @@
// Override the `DelayedWETH` contract to the deployed implementation. This is necessary
// to check the `DelayedWETH` implementation alongside dependent contracts, which are
-
@@ -775,10 +814,7 @@ }
+
@@ -775,10 +840,7 @@ }
/// @notice Deploy the ProtocolVersions
function deployProtocolVersions() public broadcast returns (address addr_) {
@@ -7786,7 +7831,7 @@
// Override the `ProtocolVersions` contract to the deployed implementation. This is necessary
// to check the `ProtocolVersions` implementation alongside dependent contracts, which
-
@@ -803,37 +839,48 @@
+
@@ -803,37 +865,48 @@
addr_ = address(preimageOracle);
}
@@ -7807,18 +7852,18 @@
MIPS mips = new MIPS{ salt: _implSalt() }(IPreimageOracle(mustGetAddress("PreimageOracle")));
- save("Mips", address(mips));
console.log("MIPS deployed at %s", address(mips));
-
-
- addr_ = address(mips);
- }
+
+ addr_ = address(mips);
+
+ }
+
- addr_ = address(mips);
+ /// @notice Deploy MIPS2
+ function _deployMips2() internal returns (address addr_) {
+ console.log("Deploying Mips2 implementation");
+ MIPS2 mips2 = new MIPS2{ salt: _implSalt() }(IPreimageOracle(mustGetAddress("PreimageOracle")));
+ console.log("MIPS2 deployed at %s", address(mips2));
+ addr_ = address(mips2);
-
+ }
-
+
+ }
+
/// @notice Deploy the AnchorStateRegistry
function deployAnchorStateRegistry() public broadcast returns (address addr_) {
- console.log("Deploying AnchorStateRegistry implementation");
@@ -7848,7 +7893,7 @@
// Override the `SystemConfig` contract to the deployed implementation. This is necessary
// to check the `SystemConfig` implementation alongside dependent contracts, which
-
@@ -845,12 +892,7 @@ }
+
@@ -845,12 +918,7 @@ }
/// @notice Deploy the L1StandardBridge
function deployL1StandardBridge() public broadcast returns (address addr_) {
@@ -7862,7 +7907,7 @@
// Override the `L1StandardBridge` contract to the deployed implementation. This is necessary
// to check the `L1StandardBridge` implementation alongside dependent contracts, which
-
@@ -864,11 +906,7 @@ }
+
@@ -864,11 +932,7 @@ }
/// @notice Deploy the L1ERC721Bridge
function deployL1ERC721Bridge() public broadcast returns (address addr_) {
@@ -7875,7 +7920,7 @@
// Override the `L1ERC721Bridge` contract to the deployed implementation. This is necessary
// to check the `L1ERC721Bridge` implementation alongside dependent contracts, which
-
@@ -897,11 +935,8 @@ }
+
@@ -897,11 +961,8 @@ }
/// @notice Deploy the DataAvailabilityChallenge
function deployDataAvailabilityChallenge() public broadcast returns (address addr_) {
@@ -7889,7 +7934,7 @@
addr_ = address(dac);
}
-
@@ -916,7 +951,7 @@ address payable superchainConfig = mustGetAddress("SuperchainConfig");
+
@@ -916,7 +977,7 @@ address payable superchainConfig = mustGetAddress("SuperchainConfig");
_upgradeAndCallViaSafe({
_proxy: superchainConfigProxy,
_implementation: superchainConfig,
@@ -7898,7 +7943,7 @@
});
ChainAssertions.checkSuperchainConfig({ _contracts: _proxiesUnstrict(), _cfg: cfg, _isPaused: false });
-
@@ -931,10 +966,10 @@
+
@@ -931,10 +992,10 @@
_upgradeAndCallViaSafe({
_proxy: payable(disputeGameFactoryProxy),
_implementation: disputeGameFactory,
@@ -7911,7 +7956,7 @@
console.log("DisputeGameFactory version: %s", version);
ChainAssertions.checkDisputeGameFactory({ _contracts: _proxiesUnstrict(), _expectedOwner: msg.sender });
-
@@ -949,10 +984,10 @@
+
@@ -949,10 +1010,10 @@
_upgradeAndCallViaSafe({
_proxy: payable(delayedWETHProxy),
_implementation: delayedWETH,
@@ -7924,7 +7969,7 @@
console.log("DelayedWETH version: %s", version);
ChainAssertions.checkDelayedWETH({
-
@@ -972,10 +1007,10 @@
+
@@ -972,10 +1033,10 @@
_upgradeAndCallViaSafe({
_proxy: payable(delayedWETHProxy),
_implementation: delayedWETH,
@@ -7937,7 +7982,7 @@
console.log("DelayedWETH version: %s", version);
ChainAssertions.checkPermissionedDelayedWETH({
-
@@ -990,38 +1025,38 @@ function initializeAnchorStateRegistry() public broadcast {
+
@@ -990,38 +1051,38 @@ function initializeAnchorStateRegistry() public broadcast {
console.log("Upgrading and initializing AnchorStateRegistry proxy");
address anchorStateRegistryProxy = mustGetAddress("AnchorStateRegistryProxy");
address anchorStateRegistry = mustGetAddress("AnchorStateRegistry");
@@ -7983,7 +8028,7 @@
gameType: GameTypes.FAST,
outputRoot: OutputRoot({
root: Hash.wrap(cfg.faultGameGenesisOutputRoot()),
-
@@ -1032,10 +1067,10 @@
+
@@ -1032,10 +1093,10 @@
_upgradeAndCallViaSafe({
_proxy: payable(anchorStateRegistryProxy),
_implementation: anchorStateRegistry,
@@ -7996,7 +8041,7 @@
console.log("AnchorStateRegistry version: %s", version);
}
-
@@ -1056,7 +1091,7 @@ _upgradeAndCallViaSafe({
+
@@ -1056,7 +1117,7 @@ _upgradeAndCallViaSafe({
_proxy: payable(systemConfigProxy),
_implementation: systemConfig,
_innerCallData: abi.encodeCall(
@@ -8005,7 +8050,7 @@
(
cfg.finalSystemOwner(),
cfg.basefeeScalar(),
-
@@ -1066,7 +1101,7 @@ uint64(cfg.l2GenesisBlockGasLimit()),
+
@@ -1066,7 +1127,7 @@ uint64(cfg.l2GenesisBlockGasLimit()),
cfg.p2pSequencerAddress(),
Constants.DEFAULT_RESOURCE_CONFIG(),
cfg.batchInboxAddress(),
@@ -8014,7 +8059,7 @@
l1CrossDomainMessenger: mustGetAddress("L1CrossDomainMessengerProxy"),
l1ERC721Bridge: mustGetAddress("L1ERC721BridgeProxy"),
l1StandardBridge: mustGetAddress("L1StandardBridgeProxy"),
-
@@ -1079,7 +1114,7 @@ )
+
@@ -1079,7 +1140,7 @@ )
)
});
@@ -8023,7 +8068,7 @@
string memory version = config.version();
console.log("SystemConfig version: %s", version);
-
@@ -1111,16 +1146,16 @@ _upgradeAndCallViaSafe({
+
@@ -1111,16 +1172,16 @@ _upgradeAndCallViaSafe({
_proxy: payable(l1StandardBridgeProxy),
_implementation: l1StandardBridge,
_innerCallData: abi.encodeCall(
@@ -8045,7 +8090,7 @@
console.log("L1StandardBridge version: %s", version);
ChainAssertions.checkL1StandardBridge({ _contracts: _proxies(), _isProxy: true });
-
@@ -1138,12 +1173,12 @@ _upgradeAndCallViaSafe({
+
@@ -1138,12 +1199,12 @@ _upgradeAndCallViaSafe({
_proxy: payable(l1ERC721BridgeProxy),
_implementation: l1ERC721Bridge,
_innerCallData: abi.encodeCall(
@@ -8061,7 +8106,7 @@
string memory version = bridge.version();
console.log("L1ERC721Bridge version: %s", version);
-
@@ -1160,10 +1195,10 @@
+
@@ -1160,10 +1221,10 @@
_upgradeAndCallViaSafe({
_proxy: payable(optimismMintableERC20FactoryProxy),
_implementation: optimismMintableERC20Factory,
@@ -8074,7 +8119,7 @@
string memory version = factory.version();
console.log("OptimismMintableERC20Factory version: %s", version);
-
@@ -1209,16 +1244,16 @@ _upgradeAndCallViaSafe({
+
@@ -1209,16 +1270,16 @@ _upgradeAndCallViaSafe({
_proxy: payable(l1CrossDomainMessengerProxy),
_implementation: l1CrossDomainMessenger,
_innerCallData: abi.encodeCall(
@@ -8096,7 +8141,7 @@
string memory version = messenger.version();
console.log("L1CrossDomainMessenger version: %s", version);
-
@@ -1235,7 +1270,7 @@ _upgradeAndCallViaSafe({
+
@@ -1235,7 +1296,7 @@ _upgradeAndCallViaSafe({
_proxy: payable(l2OutputOracleProxy),
_implementation: l2OutputOracle,
_innerCallData: abi.encodeCall(
@@ -8105,7 +8150,7 @@
(
cfg.l2OutputOracleSubmissionInterval(),
cfg.l2BlockTime(),
-
@@ -1248,7 +1283,7 @@ )
+
@@ -1248,7 +1309,7 @@ )
)
});
@@ -8114,35 +8159,7 @@
string memory version = oracle.version();
console.log("L2OutputOracle version: %s", version);
-
@@ -1261,7 +1296,7 @@ });
- }
-
- /// @notice Initialize the OptimismPortal
-
- function initializeOptimismPortal() public broadcast {
-
+ function initializeOptimismPortal(address strorageSetter) public broadcast {
- console.log("Upgrading and initializing OptimismPortal proxy");
- address optimismPortalProxy = mustGetAddress("OptimismPortalProxy");
- address optimismPortal = mustGetAddress("OptimismPortal");
-
@@ -1269,20 +1304,35 @@ address l2OutputOracleProxy = mustGetAddress("L2OutputOracleProxy");
- address systemConfigProxy = mustGetAddress("SystemConfigProxy");
- address superchainConfigProxy = mustGetAddress("SuperchainConfigProxy");
-
-
+ address customGasTokenAddress = Constants.ETHER;
-
+ uint256 initialBalance = 0;
-
+ if (cfg.useCustomGasToken()) {
-
+ customGasTokenAddress = cfg.customGasTokenAddress();
-
+ IERC20 token = IERC20(customGasTokenAddress);
-
+ initialBalance = token.balanceOf(optimismPortalProxy);
-
+
-
+ uint256 balanceStorageSlot = 61; // slot of _balance variable
-
+ _upgradeAndCallViaSafe({
-
+ _proxy: payable(optimismPortalProxy),
-
+ _implementation: strorageSetter,
-
+ _innerCallData: abi.encodeCall(StorageSetter.setUint, (bytes32(balanceStorageSlot), initialBalance))
-
+ });
-
+ }
-
+
- _upgradeAndCallViaSafe({
+
@@ -1273,16 +1334,16 @@ _upgradeAndCallViaSafe({
_proxy: payable(optimismPortalProxy),
_implementation: optimismPortal,
_innerCallData: abi.encodeCall(
@@ -8164,7 +8181,7 @@
string memory version = portal.version();
console.log("OptimismPortal version: %s", version);
-
@@ -1302,17 +1352,17 @@ _upgradeAndCallViaSafe({
+
@@ -1302,17 +1363,17 @@ _upgradeAndCallViaSafe({
_proxy: payable(optimismPortalProxy),
_implementation: optimismPortal2,
_innerCallData: abi.encodeCall(
@@ -8187,7 +8204,7 @@
string memory version = portal.version();
console.log("OptimismPortal2 version: %s", version);
-
@@ -1332,7 +1382,7 @@ _upgradeAndCallViaSafe({
+
@@ -1332,7 +1393,7 @@ _upgradeAndCallViaSafe({
_proxy: payable(protocolVersionsProxy),
_implementation: protocolVersions,
_innerCallData: abi.encodeCall(
@@ -8196,7 +8213,7 @@
(
finalSystemOwner,
ProtocolVersion.wrap(requiredProtocolVersion),
-
@@ -1341,7 +1391,7 @@ )
+
@@ -1341,7 +1402,7 @@ )
)
});
@@ -8205,7 +8222,7 @@
string memory version = versions.version();
console.log("ProtocolVersions version: %s", version);
-
@@ -1351,7 +1401,7 @@
+
@@ -1351,7 +1412,7 @@
/// @notice Transfer ownership of the DisputeGameFactory contract to the final system owner
function transferDisputeGameFactoryOwnership() public broadcast {
console.log("Transferring DisputeGameFactory ownership to Safe");
@@ -8214,7 +8231,7 @@
address owner = disputeGameFactory.owner();
address safe = mustGetAddress("SystemOwnerSafe");
-
@@ -1365,7 +1415,7 @@
+
@@ -1365,7 +1426,7 @@
/// @notice Transfer ownership of the DelayedWETH contract to the final system owner
function transferDelayedWETHOwnership() public broadcast {
console.log("Transferring DelayedWETH ownership to Safe");
@@ -8223,7 +8240,7 @@
address owner = weth.owner();
address safe = mustGetAddress("SystemOwnerSafe");
-
@@ -1379,7 +1429,7 @@
+
@@ -1379,7 +1440,7 @@
/// @notice Transfer ownership of the permissioned DelayedWETH contract to the final system owner
function transferPermissionedDelayedWETHOwnership() public broadcast {
console.log("Transferring permissioned DelayedWETH ownership to Safe");
@@ -8232,7 +8249,7 @@
address owner = weth.owner();
address safe = mustGetAddress("SystemOwnerSafe");
-
@@ -1395,25 +1445,14 @@ _expectedOwner: safe
+
@@ -1395,25 +1456,14 @@ _expectedOwner: safe
});
}
@@ -8263,7 +8280,7 @@
} else {
console.log(
"[Cannon Dispute Game] Using absolute prestate from config: %x", cfg.faultGameAbsolutePrestate()
-
@@ -1422,18 +1461,60 @@ mipsAbsolutePrestate_ = Claim.wrap(bytes32(cfg.faultGameAbsolutePrestate()));
+
@@ -1422,18 +1472,60 @@ mipsAbsolutePrestate_ = Claim.wrap(bytes32(cfg.faultGameAbsolutePrestate()));
}
}
@@ -8327,7 +8344,7 @@
weth: weth,
gameType: GameTypes.CANNON,
absolutePrestate: loadMipsAbsolutePrestate(),
-
@@ -1447,15 +1528,15 @@
+
@@ -1447,15 +1539,15 @@
/// @notice Sets the implementation for the `PERMISSIONED_CANNON` game type in the `DisputeGameFactory`
function setPermissionedCannonFaultGameImplementation(bool _allowUpgrade) public broadcast {
console.log("Setting Cannon PermissionedDisputeGame implementation");
@@ -8346,7 +8363,7 @@
weth: weth,
gameType: GameTypes.PERMISSIONED_CANNON,
absolutePrestate: loadMipsAbsolutePrestate(),
-
@@ -1469,15 +1550,15 @@
+
@@ -1469,15 +1561,15 @@
/// @notice Sets the implementation for the `ALPHABET` game type in the `DisputeGameFactory`
function setAlphabetFaultGameImplementation(bool _allowUpgrade) public onlyDevnet broadcast {
console.log("Setting Alphabet FaultDisputeGame implementation");
@@ -8365,7 +8382,7 @@
weth: weth,
gameType: GameTypes.ALPHABET,
absolutePrestate: outputAbsolutePrestate,
-
@@ -1492,8 +1573,8 @@
+
@@ -1492,8 +1584,8 @@
/// @notice Sets the implementation for the `ALPHABET` game type in the `DisputeGameFactory`
function setFastFaultGameImplementation(bool _allowUpgrade) public onlyDevnet broadcast {
console.log("Setting Fast FaultDisputeGame implementation");
@@ -8376,7 +8393,7 @@
Claim outputAbsolutePrestate = Claim.wrap(bytes32(cfg.faultGameAbsolutePrestate()));
PreimageOracle fastOracle = new PreimageOracle(cfg.preimageOracleMinProposalSize(), 0);
-
@@ -1501,7 +1582,7 @@ _setFaultGameImplementation({
+
@@ -1501,7 +1593,7 @@ _setFaultGameImplementation({
_factory: factory,
_allowUpgrade: _allowUpgrade,
_params: FaultDisputeGameParams({
@@ -8385,7 +8402,7 @@
weth: weth,
gameType: GameTypes.FAST,
absolutePrestate: outputAbsolutePrestate,
-
@@ -1515,7 +1596,7 @@ }
+
@@ -1515,7 +1607,7 @@ }
/// @notice Sets the implementation for the given fault game type in the `DisputeGameFactory`.
function _setFaultGameImplementation(
@@ -8394,7 +8411,7 @@
bool _allowUpgrade,
FaultDisputeGameParams memory _params
)
-
@@ -1533,36 +1614,47 @@ uint32 rawGameType = GameType.unwrap(_params.gameType);
+
@@ -1533,36 +1625,47 @@ uint32 rawGameType = GameType.unwrap(_params.gameType);
if (rawGameType != GameTypes.PERMISSIONED_CANNON.raw()) {
_factory.setImplementation(
_params.gameType,
@@ -8468,7 +8485,7 @@
);
}
-
@@ -1600,12 +1692,12 @@ _upgradeAndCallViaSafe({
+
@@ -1600,12 +1703,12 @@ _upgradeAndCallViaSafe({
_proxy: payable(dataAvailabilityChallengeProxy),
_implementation: dataAvailabilityChallenge,
_innerCallData: abi.encodeCall(
@@ -8483,7 +8500,7 @@
string memory version = dac.version();
console.log("DataAvailabilityChallenge version: %s", version);
-
@@ -1614,5 +1706,86 @@ require(dac.challengeWindow() == daChallengeWindow);
+
@@ -1614,5 +1717,86 @@ require(dac.challengeWindow() == daChallengeWindow);
require(dac.resolveWindow() == daResolveWindow);
require(dac.bondSize() == daBondSize);
require(dac.resolverRefundPercentage() == daResolverRefundPercentage);
@@ -8576,8 +8593,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol CELO/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol
+
diff --git OP/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol CELO/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol
index 6433509f6764f09edd837ba2ea4c2a5fb2d139be..013a7c806a82d57570f0a692e5d7086adc610b43 100644
--- OP/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol
+++ CELO/packages/contracts-bedrock/scripts/deploy/DeployConfig.s.sol
@@ -8651,8 +8668,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol CELO/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol
+
diff --git OP/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol CELO/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol
index 05fbfd54df93711c6bed69461abda1ca4d5513a5..252b4703b2037465c7cd0026e57bdc90da62bb99 100644
--- OP/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol
+++ CELO/packages/contracts-bedrock/scripts/deploy/DeployOwnership.s.sol
@@ -8728,8 +8745,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol
+
diff --git OP/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol
index 9d6ad4b719e7320373239a38f51288cf287310a3..2dc07b525bd068e0455bba00369989fe658d15fe 100644
--- OP/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol
+++ CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS.s.sol
@@ -8916,8 +8933,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol
+
diff --git OP/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol
index 09171538010ca66fe9d991eac26be6de13d69d7b..0f5962a50d02ac4193db919a6b58e2c43173f47f 100644
--- OP/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol
+++ CELO/packages/contracts-bedrock/scripts/fpac/FPACOPS2.s.sol
@@ -9118,8 +9135,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/getting-started/config-vars-celo.sh CELO/packages/contracts-bedrock/scripts/getting-started/config-vars-celo.sh
+
diff --git OP/packages/contracts-bedrock/scripts/getting-started/config-vars-celo.sh CELO/packages/contracts-bedrock/scripts/getting-started/config-vars-celo.sh
new file mode 100755
index 0000000000000000000000000000000000000000..ad59b3c638022a2a5fd4be7b0b006ed42f10d96f
--- /dev/null
@@ -9340,8 +9357,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/getting-started/config-vars-op-stack.sh CELO/packages/contracts-bedrock/scripts/getting-started/config-vars-op-stack.sh
+
diff --git OP/packages/contracts-bedrock/scripts/getting-started/config-vars-op-stack.sh CELO/packages/contracts-bedrock/scripts/getting-started/config-vars-op-stack.sh
new file mode 100755
index 0000000000000000000000000000000000000000..2da9ac5039342a1a694c71955fa2409e7a2eab38
--- /dev/null
@@ -9492,8 +9509,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go CELO/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go
+
diff --git OP/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go CELO/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go
index 3186c88b0cba05db804b9770bab2af0d3dc62bde..af4deae5c09cb61a720c9e8c8d732b6cb1dc7a22 100644
--- OP/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go
+++ CELO/packages/contracts-bedrock/scripts/go-ffi/differential-testing.go
@@ -9616,8 +9633,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol CELO/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol
+
diff --git OP/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol CELO/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol
index 07f911e762a92c7caab33a2e097c72bef83500be..af1397d726452d0fcb980bd0f355d93500ed3b73 100644
--- OP/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol
+++ CELO/packages/contracts-bedrock/scripts/interfaces/ISystemConfigV0.sol
@@ -9677,8 +9694,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/libraries/Config.sol CELO/packages/contracts-bedrock/scripts/libraries/Config.sol
+
diff --git OP/packages/contracts-bedrock/scripts/libraries/Config.sol CELO/packages/contracts-bedrock/scripts/libraries/Config.sol
index d4253113ce8a5c0b20eb1164e9cc0cd134389c22..06e59e9022466e2a4a1823eae465be58f8267ea5 100644
--- OP/packages/contracts-bedrock/scripts/libraries/Config.sol
+++ CELO/packages/contracts-bedrock/scripts/libraries/Config.sol
@@ -9733,8 +9750,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol CELO/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol
+
diff --git OP/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol CELO/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol
index d690f0b6df6d454a80826a5b8ebd96383ff35233..92870309657eab4a34f61a3ee32803437ad581c9 100644
--- OP/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol
+++ CELO/packages/contracts-bedrock/scripts/libraries/DeployUtils.sol
@@ -10023,8 +10040,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol CELO/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol
+
diff --git OP/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol CELO/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol
index 315ed6d0c530f133477e16dff36be11cd08a04b5..4aa4309fad83326cc89e7e990c799e207b9073e7 100644
--- OP/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol
+++ CELO/packages/contracts-bedrock/scripts/libraries/ForgeArtifacts.sol
@@ -10231,8 +10248,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/libraries/Solarray.sol CELO/packages/contracts-bedrock/scripts/libraries/Solarray.sol
+
diff --git OP/packages/contracts-bedrock/scripts/libraries/Solarray.sol CELO/packages/contracts-bedrock/scripts/libraries/Solarray.sol
index d6049c5654f3e21455c4c15844a8c52162bb2905..57ef9b320bb03a93a93faa799cf30f4e4f65160a 100644
--- OP/packages/contracts-bedrock/scripts/libraries/Solarray.sol
+++ CELO/packages/contracts-bedrock/scripts/libraries/Solarray.sol
@@ -10323,8 +10340,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/libraries/Types.sol CELO/packages/contracts-bedrock/scripts/libraries/Types.sol
+
diff --git OP/packages/contracts-bedrock/scripts/libraries/Types.sol CELO/packages/contracts-bedrock/scripts/libraries/Types.sol
index 7733be34f3b57693afc0c67c9028d48ab16b3d88..e4120b7b148324a25cdd871920673f7237b40d65 100644
--- OP/packages/contracts-bedrock/scripts/libraries/Types.sol
+++ CELO/packages/contracts-bedrock/scripts/libraries/Types.sol
@@ -10374,8 +10391,8 @@
-
diff --git OP/packages/contracts-bedrock/scripts/utils/BaseDeployIO.sol CELO/packages/contracts-bedrock/scripts/utils/BaseDeployIO.sol
+
diff --git OP/packages/contracts-bedrock/scripts/utils/BaseDeployIO.sol CELO/packages/contracts-bedrock/scripts/utils/BaseDeployIO.sol
new file mode 100644
index 0000000000000000000000000000000000000000..f8157ae39241028a110f9d8c7f5c7c2209b3a05f
--- /dev/null
@@ -10429,8 +10446,8 @@
-
diff --git OP/packages/contracts-bedrock/semver-lock.json CELO/packages/contracts-bedrock/semver-lock.json
+
diff --git OP/packages/contracts-bedrock/semver-lock.json CELO/packages/contracts-bedrock/semver-lock.json
index 21f17a54a727395734354c107cbfb8452054e598..1c82bc73486b29ac4162f87db7f8053a823641cf 100644
--- OP/packages/contracts-bedrock/semver-lock.json
+++ CELO/packages/contracts-bedrock/semver-lock.json
@@ -10825,8 +10842,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json
index aaa832eb1b7039e5bec7addff71ffa878d722f06..c1a0fc693a9a5b9b7ed7277693ba22e89ba3a731 100644
--- OP/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/AnchorStateRegistry.json
@@ -10887,8 +10904,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/CalledByVm.json CELO/packages/contracts-bedrock/snapshots/abi/CalledByVm.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/CalledByVm.json CELO/packages/contracts-bedrock/snapshots/abi/CalledByVm.json
new file mode 100644
index 0000000000000000000000000000000000000000..0637a088a01e8ddab3bf3fa98dbe804cbde1a0dc
--- /dev/null
@@ -10935,8 +10952,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/CeloRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/CeloRegistry.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/CeloRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/CeloRegistry.json
new file mode 100644
index 0000000000000000000000000000000000000000..1f095b33d3bb0171ba35dfdc18e2e5361b4f3e5a
--- /dev/null
@@ -11229,8 +11246,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/CeloTokenL1.json CELO/packages/contracts-bedrock/snapshots/abi/CeloTokenL1.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/CeloTokenL1.json CELO/packages/contracts-bedrock/snapshots/abi/CeloTokenL1.json
new file mode 100644
index 0000000000000000000000000000000000000000..ea1de6d1e20933c8e19576668fc8db6e98387cbd
--- /dev/null
@@ -11574,8 +11591,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json CELO/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json CELO/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json
index 7253ac21bdcb24e4701435fb26aebcebe7ea5f8e..6f8c10e82eedfc70870d4b95761f61983639ed38 100644
--- OP/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/CrossL2Inbox.json
@@ -11630,8 +11647,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json CELO/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json CELO/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json
index fe4fd5b63f6133f74c6127f7b47eb1ed71588d66..a84394e6b0036d5241293b1cde0ec70d04d718c7 100644
--- OP/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/DelayedWETH.json
@@ -11692,8 +11709,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json CELO/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json CELO/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json
index 688d68f6f2715046470d70ef05a3dcf80c1c536d..f1006749351ea01bcd095241f232473dbfffbf45 100644
--- OP/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/DeputyGuardianModule.json
@@ -11781,8 +11798,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json CELO/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json CELO/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json
index d4ae9165f9d7a6f51c6f26e405dba7a1fcf70a23..205b9861d18b28d89609e3bd37d30d8f2798e874 100644
--- OP/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/DisputeGameFactory.json
@@ -11834,8 +11851,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeCurrency.json CELO/packages/contracts-bedrock/snapshots/abi/FeeCurrency.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeCurrency.json CELO/packages/contracts-bedrock/snapshots/abi/FeeCurrency.json
new file mode 100644
index 0000000000000000000000000000000000000000..4bdf6bbac31f355f29ff9bfdcda463d77a7b6d8e
--- /dev/null
@@ -12235,8 +12252,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeCurrencyDirectory.json CELO/packages/contracts-bedrock/snapshots/abi/FeeCurrencyDirectory.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeCurrencyDirectory.json CELO/packages/contracts-bedrock/snapshots/abi/FeeCurrencyDirectory.json
new file mode 100644
index 0000000000000000000000000000000000000000..4c4ccb64968e89d61bc9081c7cfedc3c8bc471f4
--- /dev/null
@@ -12528,8 +12545,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeHandler.json CELO/packages/contracts-bedrock/snapshots/abi/FeeHandler.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/FeeHandler.json CELO/packages/contracts-bedrock/snapshots/abi/FeeHandler.json
new file mode 100644
index 0000000000000000000000000000000000000000..a584a53f686d0c6681b11a0bdbe857415bdc3774
--- /dev/null
@@ -13388,8 +13405,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/Freezable.json CELO/packages/contracts-bedrock/snapshots/abi/Freezable.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/Freezable.json CELO/packages/contracts-bedrock/snapshots/abi/Freezable.json
new file mode 100644
index 0000000000000000000000000000000000000000..dc8fa7e0f21ca37add36efa01627337c9521293c
--- /dev/null
@@ -13528,8 +13545,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/GoldToken.json CELO/packages/contracts-bedrock/snapshots/abi/GoldToken.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/GoldToken.json CELO/packages/contracts-bedrock/snapshots/abi/GoldToken.json
new file mode 100644
index 0000000000000000000000000000000000000000..a52ef10b6a528ba8b47235bebe82741ce20d5640
--- /dev/null
@@ -14127,8 +14144,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/Initializable.json CELO/packages/contracts-bedrock/snapshots/abi/Initializable.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/Initializable.json CELO/packages/contracts-bedrock/snapshots/abi/Initializable.json
new file mode 100644
index 0000000000000000000000000000000000000000..aeef476ab67fdf303022548658b887d36bf6f042
--- /dev/null
@@ -14200,8 +14217,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1BlockInterop.json CELO/packages/contracts-bedrock/snapshots/abi/L1BlockIsthmus.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1BlockInterop.json CELO/packages/contracts-bedrock/snapshots/abi/L1BlockIsthmus.json
rename from packages/contracts-bedrock/snapshots/abi/L1BlockInterop.json
rename to packages/contracts-bedrock/snapshots/abi/L1BlockIsthmus.json
index 146691aff1a1865d630ba5c5f57ab78b704d5d77..d827b32a9cab24cea4763b68d89877f7f228f726 100644
@@ -14306,8 +14323,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json CELO/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json CELO/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json
index cc99f64c449e6840d90f9208d206fa49a3d00e36..22a4353cc65645ff55c3163f5f5565d8ff73d23d 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L1CrossDomainMessenger.json
@@ -14407,8 +14424,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json CELO/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json CELO/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json
index 386c8413a9ff560363b09c5ae271ceb105605523..33cd5b0a850b3a5b8d3c98f3e096e74f4f804e4a 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L1ERC721Bridge.json
@@ -14493,8 +14510,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json CELO/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json CELO/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json
index 2a93a9f8da24bd62b915ec0a074de830749c01eb..45480499fe9f4efccd9955c65fc1b85008f55862 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L1StandardBridge.json
@@ -14594,8 +14611,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json CELO/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json CELO/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json
index d0df33b56960cd6b65b129c37febe2c36518b6d5..e9578ad9726c79bc02dbf619a295b5e17253b418 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L2ERC721Bridge.json
@@ -14656,8 +14673,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json
index da71bae10f0653b34b394accc4f838230d2fd50c..e562034818d516358e317569c6033f0fac287af1 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridge.json
@@ -14718,8 +14735,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json
index d870c7180a30de9e1a6255eecbc3b92bbb4d4cf0..b2dc8dddd050cff59fd7a8e15bc42de120669f58 100644
--- OP/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/L2StandardBridgeInterop.json
@@ -14780,8 +14797,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/MIPS.json CELO/packages/contracts-bedrock/snapshots/abi/MIPS.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/MIPS.json CELO/packages/contracts-bedrock/snapshots/abi/MIPS.json
index 7053bcaca375b389ee4ba4ebdf522ba93cd79908..afdc8c355ddc47de9712c3bbc1cd75305f49feee 100644
--- OP/packages/contracts-bedrock/snapshots/abi/MIPS.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/MIPS.json
@@ -14841,8 +14858,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/MIPS2.json CELO/packages/contracts-bedrock/snapshots/abi/MIPS2.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/MIPS2.json CELO/packages/contracts-bedrock/snapshots/abi/MIPS2.json
index c45a8711640cb36725f05dfebe552707bf1e5c64..2294e23e754e52d17b4d0fdfe682ca108fa9cf52 100644
--- OP/packages/contracts-bedrock/snapshots/abi/MIPS2.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/MIPS2.json
@@ -14932,8 +14949,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/MentoFeeHandlerSeller.json CELO/packages/contracts-bedrock/snapshots/abi/MentoFeeHandlerSeller.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/MentoFeeHandlerSeller.json CELO/packages/contracts-bedrock/snapshots/abi/MentoFeeHandlerSeller.json
new file mode 100644
index 0000000000000000000000000000000000000000..7190d528858e5ac8ec5feae77b968b6afaca1d0e
--- /dev/null
@@ -15329,8 +15346,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/MintManager.json CELO/packages/contracts-bedrock/snapshots/abi/MintManager.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/MintManager.json CELO/packages/contracts-bedrock/snapshots/abi/MintManager.json
index 36afd1e16719426297f997e4b36549d1ebcd87e8..e942fbd3eddc8b58180cf3b4d28368a7016c8bba 100644
--- OP/packages/contracts-bedrock/snapshots/abi/MintManager.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/MintManager.json
@@ -15382,8 +15399,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/MockSortedOracles.json CELO/packages/contracts-bedrock/snapshots/abi/MockSortedOracles.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/MockSortedOracles.json CELO/packages/contracts-bedrock/snapshots/abi/MockSortedOracles.json
new file mode 100644
index 0000000000000000000000000000000000000000..f56f9b579aa578b992b3f8960a77db6c768cbac9
--- /dev/null
@@ -15678,8 +15695,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPContractsManager.json CELO/packages/contracts-bedrock/snapshots/abi/OPContractsManager.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPContractsManager.json CELO/packages/contracts-bedrock/snapshots/abi/OPContractsManager.json
new file mode 100644
index 0000000000000000000000000000000000000000..57900b34e8e3c3cbbd79a5639fad0896b1aeafad
--- /dev/null
@@ -16330,8 +16347,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPContractsManagerInterop.json CELO/packages/contracts-bedrock/snapshots/abi/OPContractsManagerInterop.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPContractsManagerInterop.json CELO/packages/contracts-bedrock/snapshots/abi/OPContractsManagerInterop.json
new file mode 100644
index 0000000000000000000000000000000000000000..57900b34e8e3c3cbbd79a5639fad0896b1aeafad
--- /dev/null
@@ -16982,8 +16999,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPStackManager.json CELO/packages/contracts-bedrock/snapshots/abi/OPStackManager.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OPStackManager.json CELO/packages/contracts-bedrock/snapshots/abi/OPStackManager.json
deleted file mode 100644
index 3f3a48ded1ffa8647bceb028eb44d722b098874b..0000000000000000000000000000000000000000
--- OP/packages/contracts-bedrock/snapshots/abi/OPStackManager.json
@@ -17150,8 +17167,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json
index 3c6f5e9ab34802a95d672b4b5a34ca3f431645f9..57523467d292e719efe14c05acd3804c55b6c232 100644
--- OP/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/OptimismMintableERC20.json
@@ -17402,8 +17419,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json
index 88531b87da44aeb6fed56721470412df51bb343c..7ccee328a9841e63731fa73d24893176e0cb5d4b 100644
--- OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal.json
@@ -17494,8 +17511,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json
index 92610763d6f0e784f8d44052a349fd041a85c7e6..2f52ed573d37c5d1a6bb7241e6615be52bc163b1 100644
--- OP/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortal2.json
@@ -17586,8 +17603,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json
index 4d9979bee34431c2a8e5cbe601784fb32b31fd90..5b9f72b9446c8aeacb9fc184907e5e4259186257 100644
--- OP/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/OptimismPortalInterop.json
@@ -17690,8 +17707,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Beacon.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Beacon.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Beacon.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Beacon.json
new file mode 100644
index 0000000000000000000000000000000000000000..0bdfc64ed2fe589eb1855d61d54c93142a02e57d
--- /dev/null
@@ -17776,8 +17793,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Factory.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Factory.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Factory.json CELO/packages/contracts-bedrock/snapshots/abi/OptimismSuperchainERC20Factory.json
new file mode 100644
index 0000000000000000000000000000000000000000..7171cf1f31984a7c09325e22fac3373dd3d94aac
--- /dev/null
@@ -17916,8 +17933,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/SortedOracles.json CELO/packages/contracts-bedrock/snapshots/abi/SortedOracles.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/SortedOracles.json CELO/packages/contracts-bedrock/snapshots/abi/SortedOracles.json
new file mode 100644
index 0000000000000000000000000000000000000000..12a253c5c08be2f7b7d727d99d56c5499b5ed43a
--- /dev/null
@@ -18795,8 +18812,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/StableTokenV2.json CELO/packages/contracts-bedrock/snapshots/abi/StableTokenV2.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/StableTokenV2.json CELO/packages/contracts-bedrock/snapshots/abi/StableTokenV2.json
new file mode 100644
index 0000000000000000000000000000000000000000..693b960cea99c0c7b6d9ab45341f3f56eda21853
--- /dev/null
@@ -19584,8 +19601,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/SystemConfig.json CELO/packages/contracts-bedrock/snapshots/abi/SystemConfig.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/SystemConfig.json CELO/packages/contracts-bedrock/snapshots/abi/SystemConfig.json
index 4b4ddd6c70a11bf402c69f9f25176289c57f1d53..695231b9b1196444c72b6e100e0e7fc19f0f273c 100644
--- OP/packages/contracts-bedrock/snapshots/abi/SystemConfig.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/SystemConfig.json
@@ -19646,8 +19663,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json CELO/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json CELO/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json
index b32316ec9e423a8de881608b8af9e4e7ac6a7837..64f72945615b4df56db9df4b327f8776249826eb 100644
--- OP/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json
+++ CELO/packages/contracts-bedrock/snapshots/abi/SystemConfigInterop.json
@@ -19717,8 +19734,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/UniswapFeeHandlerSeller.json CELO/packages/contracts-bedrock/snapshots/abi/UniswapFeeHandlerSeller.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/UniswapFeeHandlerSeller.json CELO/packages/contracts-bedrock/snapshots/abi/UniswapFeeHandlerSeller.json
new file mode 100644
index 0000000000000000000000000000000000000000..19c31c979af28ecd9ffcfcda9095f993e30b3ed1
--- /dev/null
@@ -20245,8 +20262,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/abi/UsingRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/UsingRegistry.json
+
diff --git OP/packages/contracts-bedrock/snapshots/abi/UsingRegistry.json CELO/packages/contracts-bedrock/snapshots/abi/UsingRegistry.json
new file mode 100644
index 0000000000000000000000000000000000000000..dc8fa7e0f21ca37add36efa01627337c9521293c
--- /dev/null
@@ -20385,8 +20402,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json CELO/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json CELO/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json
index 3511e68eb8797cee10bd391c8f8d4ab1c8f3b08a..3900f4552584449ac3cc3a1fbba1575ebe45d928 100644
--- OP/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json
+++ CELO/packages/contracts-bedrock/snapshots/storageLayout/AnchorStateRegistry.json
@@ -20438,8 +20455,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/OPStackManager.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CalledByVm.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/OPStackManager.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CalledByVm.json
rename from packages/contracts-bedrock/snapshots/storageLayout/OPStackManager.json
rename to packages/contracts-bedrock/snapshots/storageLayout/CalledByVm.json
@@ -20481,8 +20498,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/CeloRegistry.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CeloRegistry.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/CeloRegistry.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CeloRegistry.json
new file mode 100644
index 0000000000000000000000000000000000000000..17b0df2bd7f9e8254e7ac4730d34917b70b3063b
--- /dev/null
@@ -20551,8 +20568,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/CeloTokenL1.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CeloTokenL1.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/CeloTokenL1.json CELO/packages/contracts-bedrock/snapshots/storageLayout/CeloTokenL1.json
new file mode 100644
index 0000000000000000000000000000000000000000..e3c218589ca31c3e34d65496c25c72a83d999397
--- /dev/null
@@ -20663,8 +20680,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json CELO/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json CELO/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json
index efc43f45893cbdf8d304e5c0a4607f5183f2ab27..4e8b771cd9bb3faa61c9d64914d75e76c9ae1c67 100644
--- OP/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json
+++ CELO/packages/contracts-bedrock/snapshots/storageLayout/DelayedWETH.json
@@ -20724,8 +20741,8 @@
-
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json CELO/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json
+
diff --git OP/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json CELO/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json
index f87fa588ed9c5af7f0b0601cb4cea3f8a3ddf5b6..ec02f23d2e6d294c373d07500d1b34877860aeaf 100644
--- OP/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json
+++ CELO/packages/contracts-bedrock/snapshots/storageLayout/FaultDisputeGame.json
@@ -20786,8 +20803,8 @@