anchor.diff:  begin
     if FBufferedData <> nil then
     begin
  -    FBufferedData.Remove(0, FBufferedData.Length);
  +    FBufferedData.Clear;
  +    FBufferOffset := 0;
       FNoDataInStream := False;
     end;
   end;
  
positive.code:   begin
      FBufferedData.Free;
      FBufferedData := nil;
    end;
  end;
  
  
negative.code:     repeat
        FillBuffer(FEncoding);
      until FNoDataInStream;
      Result := FBufferedData.ToString.Substring(FBufferOffset);
      FBufferedData.Clear;
      FBufferOffset := 0;
    end;
  end;
  
  