def METHOD_NAME(ds, ds2):
    EPSILON = 1.e-6
    assert(ds.GetNumberOfPoints() == ds2.GetNumberOfPoints())
    assert(ds.GetNumberOfCells() == ds2.GetNumberOfCells())
    it = ds.NewCellIterator()
    it2 = ds2.NewCellIterator()
    it.InitTraversal()
    it2.InitTraversal()
    while True:
        if it.IsDoneWithTraversal() or it2.IsDoneWithTraversal():
            break
        assert(it.GetCellType() == it2.GetCellType())
        assert(it.GetNumberOfPoints() == it2.GetNumberOfPoints())
        points = it.GetPoints()
        points2 = it2.GetPoints()
        xyz = [0., 0., 0.]
        xyz2 = [0., 0., 0.]
        for i in range(points.GetNumberOfPoints()):
            points.GetPoint(i, xyz)
            points2.GetPoint(i, xyz2)
            for j in range(3):
                assert(abs(xyz[j] - xyz2[j]) < EPSILON)
        it.GoToNextCell()
        it2.GoToNextCell()