anchor.diff:    Node:= nil;
     NodeParent:= nil;
     NLevelPrev:= 1;
  +  NCounter:= 0;
  +
  +  //StatusProgress.Show;
  +  //StatusProgress.Progress:= 0;
   
     while NPos<=Length(Str) do
     begin
  
positive.code:     Node.SelectedIndex:= NIcon;
  
      NLevelPrev:= NLevel;
    end;
  
    Tree.EndUpdate;
  end;
  
  
  
negative.code:   Tree: TTreeView;
    Node, NodeParent: TTreeNode;
    Range: TATRangeInCodeTree;
    NCounter, i: integer;
  begin
    //Str = '[ ((x1, y1, x2, y2), level, 'title', icon), ... ]'
    //code gets fixed number of numbers/strings from result, ignoring brackets
  
   Tree:= CodeTree.Tree;
   Tree.BeginUpdate;
  
   try
    Tree.Items.Clear;
  
    {
  