anchor.diff:      [db_entry:new(K, Value, Version) || K <- ?RT:get_replica_keys(Key)].
   
   -spec get_failure_rep_group(?RT:key(), failure_type(), failure_dest()) ->
  -          {[db_entry:entry()], Outdated::non_neg_integer()}.
  +          {[db_entry:entry()], Outdated::0 | 1}.
   get_failure_rep_group(Key, FType, FDest) ->
       RepKeys = ?RT:get_replica_keys(Key),
       EKey = get_error_key(Key, RepKeys, FDest),
  
positive.code:     _ = lists:foldl(
            fun(Node, ActKVV) ->
                    comm:send(Node, {get_state, comm:this(), my_range}),
                    % note: receive wrapped in anonymous functions to allow
                    %       ?SCALARIS_RECV in multiple receive statements
                    NRange = fun() ->
                                     trace_mpath:thread_yield(),
                                     receive
                                 ?SCALARIS_RECV(
                                     {get_state_response, Range}, %% ->
                                     Range
                                   )
                             end end(),
                    {NKVV, RestKVV} = lists:partition(
                                        fun(Entry) ->
                                                intervals:in(db_entry:get_key(Entry), NRange)
  
negative.code:     ?DBG_ASSERT(Distribution =:= feeder_fix_rangen(Distribution, ItemCount)),
      OutputType = proplists:get_value(output, Options, list_key),
      case Distribution of
          random -> gen_random(Interval, ItemCount, OutputType);
          uniform -> uniform_key_list([{Interval, ItemCount}], [], OutputType);
          {non_uniform, RanGen} -> non_uniform_key_list(Interval, ItemCount, RanGen, [], OutputType)
      end.
  