anchor.diff:      raise EArgumentException.CreateResFmt(@SParamIsNil, ['Encoding']); // DO NOT LOCALIZE
   
     FBufferedData := TStringBuilder.Create;
  +  FBufferOffset := 0;
     FEncoding := Encoding;
     FBufferSize := BufferSize;
     if FBufferSize < 128 then
  
positive.code:   Result := -1;
    if (FBufferedData <> nil) and (not EndOfStream) then
    begin
      if FBufferedData.Length < 1 then
        FillBuffer(FEncoding);
      Result := Integer(FBufferedData.Chars[0]);
      FBufferedData.Remove(0, 1);
    end;
  end;
  
  
negative.code: begin
    if FBufferedData <> nil then
    begin
      FBufferedData.Clear;
      FBufferOffset := 0;
      FNoDataInStream := False;
    end;
  end;
  