anchor.diff:        begin
           HLine := FInfo.HeuristicsLine;
           HDiagonal := FInfo.HeuristicsDiagonal;
  -        if (not ActualizeWeights(nil, True{Flags???})) then goto weights_flags;
  +        if (not ActualizeWeights(nil, 0 = Flags and (FLAG_CACHING or FLAG_FINISH or FLAG_TILES))) then goto weights_flags;
         end;
       end else
       if (FActualInfo.Weights.Current <> Params.Weights.FInfo) or
  
positive.code: 
      Cell := @Cells[(Coordinates shr 16){X} + MapWidth * {Y}Word(Coordinates)];
      Cell.NodePtr := Cell.NodePtr and (not NODEPTR_FLAG_HEURISTED);
    end;
  end;
  
  
negative.code:     end;
    end;
  
    // cleanup initialized nodes
    if (Flags and FLAG_CLEAN = 0) then
    begin
      // attainable points
      if (Flags <> 0) then
      begin
        // flag has attanable? todo
        if (FActualInfo.FinishPoint.X >= 0) then
          ReleaseAttainableNodes;
      end;
  
  