anchor.diff:                              else
                                   let keyOverflowFirstPage = nextPageNumber
                                   let kRange = writeOverflow nextPageNumber boundaryPageNumber (new MemoryStream(k))
  -                                {args with sofar=sofar + neededForOverflow; nextPage=fst kRange; boundaryPage=snd kRange; overflows=overflows.Add(i,keyOverflowFirstPage)}
  +                                {args with sofar=sofar + neededForOverflow; nextPage=fst kRange; boundaryPage=snd kRange; overflows=overflows.Add(k,keyOverflowFirstPage)}
   
   
                       // this is the body of the folder function
  
positive.code:                     // note loop bounds
                      for q in start .. (stop-1) do
                          let k = snd children.[q]
                          match overflows.TryFind(q) with
                          | Some pg ->
                              pb.PutByte(FLAG_OVERFLOW)
                              pb.PutVarint(int64 k.Length)
  
negative.code:                     let allowanceForRootNode = if couldBeRoot then sizeof<int32> else 0 // first/last Leaf, lastInt32 already
                      basicSize - allowanceForRootNode
  
                  let buildParentPage stop start (overflows:Map<byte[],int32>) =
                      // assert stop > start
                      let countKeys = stop - start
                      pb.Reset ()
  