anchor.diff:    s: String;
     line: TLine;
     temp: TStringBuilder;
  -  pos, t: integer;
  +  position, t: integer;
   begin
     line := lines;
     if (FConfig.safeMode) then
  
positive.code:             begin
                if (element[1 + 1] = '/') then
                begin
                  if (tags.Last <> tag) then
                    exit(false);
                  tags.Delete(tags.count - 1);
                end
  
negative.code: 
  end;
  
  {$IFDEF FPC}
  { TStringBuilder }
  
  constructor TStringBuilder.Create;
  begin
    Inherited;
    FBufferSize := BUFFER_INCREMENT_SIZE;
  end;
  
  procedure TStringBuilder.Append(value: TStringBuilder);
  begin
    append(value.ToString);
  end;
  
  procedure TStringBuilder.Append(value: integer);
  begin
    append(inttostr(value));
  end;
  
  procedure TStringBuilder.Append(value: String);
  begin
    If (value <> '') Then
    Begin
      If FLength + System.Length(value) > System.Length(FContent) Then
        SetLength(FContent, System.Length(FContent) + Math.Max(FBufferSize, System.Length(value)));
  
      Move(value[1], FContent[FLength + 1], System.Length(value) * SizeOf(Char));
  
      Inc(FLength, System.Length(value));
    End;
  end;
  
  procedure TStringBuilder.Clear;
  begin
    FContent := '';
    FLength := 0;
  end;
  
  function TStringBuilder.GetChar(index: integer): char;
  begin
    if (index < 0) or (index >= Length) then
      raise Exception.Create('Out of bounds');
    result := FContent[index+1];
  end;
  
  
  function TStringBuilder.toString: String;
  begin
    Result := Copy(FContent, 1, FLength);
  end;
  
  {$ENDIF}
  
  end.
  