```\nfunction finalizeBlocks(\n BlockData[] calldata \_blocksData,\n bytes calldata \_proof,\n uint256 \_proofType,\n bytes32 \_parentStateRootHash\n)\n external\n whenTypeNotPaused(PROVING\_SYSTEM\_PAUSE\_TYPE)\n whenTypeNotPaused(GENERAL\_PAUSE\_TYPE)\n onlyRole(OPERATOR\_ROLE)\n{\n if (stateRootHashes[currentL2BlockNumber] != \_parentStateRootHash) {\n revert StartingRootHashDoesNotMatch();\n }\n\n \_finalizeBlocks(\_blocksData, \_proof, \_proofType, \_parentStateRootHash, true);\n}\n```\n