anchor.diff:        line := self;
         while (line <> nil) do
         begin
  -        while (pos < Length(line.value)) and (line.value[1 + pos] <> '<') do
  -          inc(FPos);
  -        if (pos >= Length(line.value)) then
  +        while (position < Length(line.value)) and (line.value[1 + position] <> '<') do
  +          inc(FPosition);
  +        if (position >= Length(line.value)) then
           begin
             line := line.next;
  -          pos := 0;
  +          position := 0;
           end
           else
           begin
             temp.Clear;
  -          newPos := TUtils.readXML(temp, line.value, pos, false);
  +          newPos := TUtils.readXML(temp, line.value, position, false);
             if (newPos > 0) then
             begin
               element := temp.ToString();
  
positive.code:           // No multi-line linkRef, store line
            if (comment = '') then
            begin
              line.pos := 0;
              block.AppendLine(line);
              lineAdded := true;
            end;
  
negative.code: 
  class function TEmitter.checkEntity(out_: TStringBuilder; s: String; start: integer): integer;
  var
    position, i: integer;
    c: char;
  begin
    position := TUtils.readUntil(out_, s, start, ';');
    if (position < 0) or (out_.length < 3) then
      exit(-1);
    if (out_[1] = '#') then
    begin
  