CrossDomainEnabled.sol- a helper contract that enables cross-domain communications.
ICrossDomainMessenger.sol- an interface for cross-messenger contracts.
IL1ERC20Bridge.sol- an interface for L1 ERC20 bridge.
IL1StandardBridge.sol- an interface for L1 bridge.
IL2ERC20Bridge.sol- an interface for L2 ERC20 bridge.
IL2StandardERC20.sol- an interface for L2 bridge.
L1ChugSplashProxy.sol- a contract with proxy implementation functionality.
L1StandardBridge.sol- the L1 bridge with functionality for depositing ETH, depositing ERC20 tokens, finalizing ETH and ERC20 withdrawal.
L2StandardBridge.sol- the L2 bridge with functionality for withdrawing ETH and finalizing deposit.
Lib_AddressManager.sol- a library for setting and getting the address and name hash.
Lib_AddressResolver.sol- a library that resolves the address associated with a given name.
Lib_PredeployAddresses.sol- constant predeploy addresses.
OVM_GasPriceOracle.sol- a gas price oracle with functionality to update fees, gas price, ERC20 bridging parameters.
iL1ChugSplashDeployer.sol- an interface for the proxy contract.
iMVM_DiscountOracle.sol- an interface for the discount oracle.
iOVM_SequencerFeeVault.sol- a contract holding fees paid to the Sequencer.
onlyFromCrossDomainAccountis a role used to finalize deposits, ETH or ERC20 withdrawals, and finalize chain switching and chain configuration.