anchor.diff:  
         // allocated nodes
         Inc(FActualInfo.ChangedFinishCount);
  -      if (FActualInfo.ChangedFinishCount = CHANGED_FINISH_INTERVAL) then
  +      if (FActualInfo.ChangedFinishCount shl (Flags and 1) >= CHANGED_FINISH_INTERVAL) then
         begin
           FActualInfo.ChangedFinishCount := 0;
   
  
positive.code:       Storage: record
          Buffers: array[0..31] of Pointer;
          Count: NativeUInt;
        end;
        HeuristedPool: record
          First: TCPFNode;
  
negative.code:   TTileMapPtr(Store.Self).FInfo.NodeAllocator.NewNode := Store.Info.NodeAllocator.NewNode;
  end;
  
  function TTileMap.DoFindPath(const ParamsPtr: NativeUInt{high bit is FullPath}): TTileMapPath;
  const
    FLAG_CACHING = (1 shl 0);
  