anchor.diff:      type private LeafState =
           {
               keys:(byte[] list);
  +            firstLeaf:int32;
               leaves:(int32*byte[]) list; 
               nextPage:int; 
               boundaryPage:int; 
  
positive.code:                 pb.Flush(fs)
                  pb.Reset()
                  if nextN <> (thisPageNumber+1) then utils.SeekPage(fs, pageSize, nextN)
                  {keys=[]; nextPage=nextN; boundaryPage=nextB; leaves=(thisPageNumber,List.head st.keys)::st.leaves}
  
              let folder st (pair:(byte[]*Stream)) = 
                  let (k,v) = pair
  
negative.code:             pb.PutInt32(overflowFirstPage)
              newRange
  
          let writeLeaves leavesFirstPage leavesBoundaryPage :int*int*((int32*byte[]) list)*int =
              // 2 for the page type and flags
              // 4 for the prev page
              // 2 for the stored count
  