anchor.diff:  
       // reinitialize NodeInfo (from parentflags, mask, parentmask, tile):
       //   - bit hexagonal << 1
  +    //   - bit simple << 2
       //   - mask
       //   - stored childs counter
       //   - tile
  -    NodeInfo := ((NodeInfo and (NodeInfo shr 8)) and Integer($ff00ff00)) or Store.HexagonalFlag;
  +    NodeInfo := ((NodeInfo and (NodeInfo shr 8)) and Integer($ff00ff00)) or Store.MapKindFlags;
   
       // each child cell loop
       goto nextchild;
  
positive.code:   Store: record
      Buffer: TMapNodeBuffer;
      Self: Pointer;
      HexagonalFlag: NativeUInt;
      Info: TCPFInfo;
  
      {$ifdef CPUX86}
  
negative.code:   {$endif}
  begin
    Store.Self := Pointer({$ifdef CPFLIB}@Self{$else}Self{$endif});
    // (bit simple << 2) | (bit hexagonal << 1)
    X := NativeInt(Self.FKind);
    Store.MapKindFlags := ((X - 1) and 4) + (((X + 1) and 4) shr 1);
    Move(Self.FInfo, Store.Info,
      (SizeOf(Store.Info) - 32 * SizeOf(Pointer)) +
      (Self.FInfo.NodeAllocator.Count * SizeOf(Pointer)) );
  