[
    "event BlockCommit(uint256 indexed)",
    "event BlockExecution(uint256 indexed)",
    "event BlocksRevert(uint256,uint256,uint256)",
    "event DiamondCutProposal(tuple(address,uint8,bool,bytes4[])[],address)",
    "event DiamondCutProposalCancelation()",
    "event DiamondCutProposalExecution(tuple(tuple(address,uint8,bool,bytes4[])[],address,bytes))",
    "event EmergencyDiamondCutApproved(address)",
    "event EmergencyFreeze()",
    "event IsPorterAvailableStatusUpdate(bool)",
    "event NewGovernor(address indexed)",
    "event NewL2BootloaderBytecodeHash(bytes32 indexed,bytes32 indexed)",
    "event NewL2DefaultAccountBytecodeHash(bytes32 indexed,bytes32 indexed)",
    "event NewPendingGovernor(address indexed,address indexed)",
    "event NewPriorityRequest(uint256,bytes32,uint64,tuple(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256[6],bytes,bytes,uint256[],bytes,bytes),bytes[])",
    "event Unfreeze()",
    "event ValidatorStatusUpdate(address indexed,bool)",
    "function acceptGovernor()",
    "function approveEmergencyDiamondCutAsSecurityCouncilMember(bytes32)",
    "function cancelDiamondCutProposal()",
    "function commitBlocks(tuple(uint64,bytes32,uint64,uint256,bytes32,bytes32,uint256,bytes32),tuple(uint64,uint64,uint64,bytes32,uint16,uint256,bytes32,bytes32,bytes,bytes,bytes,bytes[],bytes[])[])",
    "function emergencyFreezeDiamond()",
    "function executeBlocks(tuple(uint64,bytes32,uint64,uint256,bytes32,bytes32,uint256,bytes32)[])",
    "function executeDiamondCutProposal(tuple(tuple(address,uint8,bool,bytes4[])[],address,bytes))",
    "function facetAddress(bytes4) view returns (address)",
    "function facetAddresses() view returns (address[])",
    "function facetFunctionSelectors(address) view returns (bytes4[])",
    "function facets() view returns (tuple(address,bytes4[])[])",
    "function getFirstUnprocessedPriorityTx() view returns (uint256)",
    "function getGovernor() view returns (address)",
    "function getTotalBlocksCommitted() view returns (uint256)",
    "function getTotalBlocksExecuted() view returns (uint256)",
    "function getTotalBlocksVerified() view returns (uint256)",
    "function getTotalPriorityTxs() view returns (uint256)",
    "function getVerifier() view returns (address)",
    "function isFacetFreezable(address) view returns (bool)",
    "function isFunctionFreezable(bytes4) view returns (bool)",
    "function isValidator(address) view returns (bool)",
    "function l2LogsRootHash(uint32) view returns (bytes32)",
    "function l2TransactionBaseCost(uint256,uint256,uint32) view returns (uint256)",
    "function proposeDiamondCut(tuple(address,uint8,bool,bytes4[])[],address)",
    "function proveBlocks(tuple(uint64,bytes32,uint64,uint256,bytes32,bytes32,uint256,bytes32),tuple(uint64,bytes32,uint64,uint256,bytes32,bytes32,uint256,bytes32)[],tuple(uint256[],uint256[]))",
    "function proveL2LogInclusion(uint256,uint256,tuple(uint8,bool,uint16,address,bytes32,bytes32),bytes32[]) view returns (bool)",
    "function proveL2MessageInclusion(uint256,uint256,tuple(uint16,address,bytes),bytes32[]) view returns (bool)",
    "function requestL2Transaction(address,uint256,bytes,uint256,bytes[]) payable returns (bytes32)",
    "function revertBlocks(uint256)",
    "function serializeL2Transaction(uint256,uint256,address,address,bytes,uint256,bytes[]) pure returns (tuple(uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256[6],bytes,bytes,uint256[],bytes,bytes))",
    "function setL2BootloaderBytecodeHash(bytes32)",
    "function setL2DefaultAccountBytecodeHash(bytes32)",
    "function setPendingGovernor(address)",
    "function setPorterAvailability(bool)",
    "function setValidator(address,bool)",
    "function unfreezeDiamond()"
]
