anchor.diff:                          if flushThisPage then
                               // assert sofar > 0
                               let thisPageNumber = nextPageNumber
  -                            let subList = children |> Seq.skip first |> Seq.take (i - first) |> Seq.toList
  -                            buildParentPage subList (fst children.[i]) overflows
  +                            // TODO needing to reverse the items list is rather unfortunate
  +                            buildParentPage (List.rev items) (fst children.[i]) overflows
                               let isRootNode = isLastChild && couldBeRoot
                               let (nextN,nextB) =
                                   if isRootNode then
  
positive.code:                             pb.Flush(fs)
                              if nextN <> (thisPageNumber+1) then utils.SeekPage(fs, pageSize, nextN)
                              nextGeneration.Add(thisPageNumber, snd children.[i-1])
                              {sofar=0; first=0; nextPage=nextN; boundaryPage=nextB; overflows=Map.empty}
                          else
                              args
  
  
negative.code:     type writeParentPagesState = 
          { 
              sofar:int; 
              items:(int32*byte[]) list; 
              nextPage:int; 
              boundaryPage:int; 
              //children:(int32*byte[]); 
  