anchor.diff:    FExSize         := ASource.FExSize       ;
     Props           := ASource.Props         ;
     Originals       := ASource.Originals     ;
  -  FIArray         := ASource.FIArray       ;
     ID              := ASource.ID            ;
  +  if ASource.FIArray <> nil then
  +  begin
  +    FIArray := TFontInfoArray.Create;
  +    FIArray.Assign(ASource.FIArray);
  +  end;
     if ASource.TheFont <> nil then
     begin
       TheFont := TMyFont.Create;
  
positive.code: 
    // in the following, lowest priority on top, highest towards bottom.
  
      if (Tag = 'a') and (Pseudo <> '') then
        MergeItems('::' + Pseudo); {default Pseudo definition}
  
      if NoHoverVisited then
  
negative.code:       end
      end;
  
      procedure MergeItems(const Item: ThtString; Reverse: Boolean = False);
      {look up items in the Style list.  If found, merge them in this TProperties.
       Items may be duplicated in which case the last has priority.  Items may be
       simple tags like 'p', 'blockquote', 'em', etc or they may be more complex
       like  p.class, em#id, a.class:link, etc}
      var
        X, Y: Integer;
      begin
        if Styles.Find(Item, X) then
        begin
          if Reverse then
          begin
            // Reverse is used to set unassigned values only.
            Y := X;
            Inc(X);
            while (X < Styles.Count) and (Styles[X] = Item) do
            begin //duplicates, last one has highest priority
              Inc(X);
            end;
            // merge in reverse order
            while X > Y do
            begin
              Dec(X);
              Merge(Styles.Objects[X] as TProperties, Reverse);
            end;
          end
          else
          begin
            Merge(Styles.Objects[X] as TProperties);
            Inc(X);
            while (X < Styles.Count) and (Styles[X] = Item) do
            begin //duplicates, last one has highest priority
              Merge(Styles.Objects[X] as TProperties);
              Inc(X);
            end;
          end;
        end;
      end;
  