`vtkExtractSelection()` removes hidden cells with VTK 9.4

Hi,

It seems that hidden cells are removed when using vtkExtractSelection() with VTK 9.4. The MRE creates an 8-cell grid, hide cell 0 and 1, then extracts all cells except cell 7, so the output mesh should have 7 cells. With VTK 9.3, it returns 7 cells, but VTK 9.4 returns 5 cells.

import vtk

# Create a structured grid
x = vtk.vtkDoubleArray()
y = vtk.vtkDoubleArray()
z = vtk.vtkDoubleArray()

for i in range(3):
    x.InsertNextValue(i)
    y.InsertNextValue(i)
    z.InsertNextValue(i)

rgrid = vtk.vtkRectilinearGrid()
rgrid.SetDimensions(3, 3, 3)
rgrid.SetXCoordinates(x)
rgrid.SetYCoordinates(y)
rgrid.SetZCoordinates(z)

sgrid = vtk.vtkRectilinearGridToPointSet()
sgrid.SetInputData(rgrid)
sgrid.Update()
mesh = sgrid.GetOutput()

# Hide cells 0 and 1
arr = [0] * 8
arr[0] = vtk.vtkDataSetAttributes.HIDDENCELL
arr[1] = vtk.vtkDataSetAttributes.HIDDENCELL
vtk_arr = vtk.vtkUnsignedCharArray()
vtk_arr.SetName(vtk.vtkDataSetAttributes.GhostArrayName())
vtk_arr.SetNumberOfComponents(1)
vtk_arr.SetNumberOfTuples(8)
for i in range(len(arr)):
    vtk_arr.SetValue(i, arr[i])
mesh.GetCellData().AddArray(vtk_arr)

# Extract cells 0 to 6
selectionNode = vtk.vtkSelectionNode()
selectionNode.SetFieldType(vtk.vtkSelectionNode.CELL)
selectionNode.SetContentType(vtk.vtkSelectionNode.INDICES)

ids_array = vtk.vtkIdTypeArray()
ids_array.SetNumberOfComponents(1)
ids_array.SetNumberOfTuples(7)
for i in range(7):
    ids_array.SetValue(i, i)
selectionNode.SetSelectionList(ids_array)

selection = vtk.vtkSelection()
selection.AddNode(selectionNode)

extract_sel = vtk.vtkExtractSelection()
extract_sel.SetInputData(0, mesh)
extract_sel.SetInputData(1, selection)
extract_sel.Update()

assert extract_sel.GetOutput().GetNumberOfCells() == 7