anchor.diff:                  %% no majority yet
                   {false, R3}
           end,
  -    {Result, R4, R4#rr_replies.highest_r_round}.
  +    {Result, R4, R4#rr_replies.highest_read_round}.
   
   -spec add_read_reply(replies(), dht_node_state:db_selector(),
                        pr:pr(),  client_value(),  pr:pr(),
  
positive.code: -spec new_rr_replies() -> #rr_replies{}.
  new_rr_replies() ->
      #rr_replies{reply_count = 0,
                  newest_r_reply_count = 0, highest_r_round = pr:new(0,0),
                  newest_w_reply_count = 0, highest_w_round = pr:new(0,0),
                  read_value = nwe_empty_rr_replies}.
  
  -spec new_read_replies() -> gen_replies().
  new_read_replies() ->
  
negative.code: %% TODO: add support for *consistent* quorum by counting the number of
  %% same-round-number replies
  
  %% Aggregator for round_request replies.
  %% rr_replies are received after executing a read without round number
  %% to receive the currently highest rounds. If the replies are a
  %% consistent quorum, the read value can be directly delivered, otherwise
  %% a read with the highest round number is executed.
  -record(rr_replies, {reply_count :: non_neg_integer(),          %% total number of replies recieved
                       highest_read_count :: non_neg_integer(),   %% number of replies with current highest read round
                       highest_read_round :: pr:pr(),             %% highest read round received in replies
                       highest_write_count :: non_neg_integer(),  %% number of replies with current highest write round
                       highest_write_round :: pr:pr(),            %% highest write round recieved in replies
                       read_value :: any()                        %% value returned from the round_request
                      }).
  
  -type replies() :: gen_replies() | #rr_replies{}.
  