anchor.diff:  find_fallbacks([{Partition, _Node}|Rest]=Pangs, [{_,FN}|Fallbacks], UpNodes, Secondaries) ->
       case is_up(FN, UpNodes) of
           true ->
  -            find_fallbacks(Rest, Fallbacks, UpNodes, [{Partition, FN} | Secondaries]);
  +            find_fallbacks(Rest, Fallbacks, UpNodes,
  +                           [{{Partition, FN}, fallback} | Secondaries]);
           false ->
               find_fallbacks(Pangs, Fallbacks, UpNodes, Secondaries)
       end.
  -        
  +
   %% Return true if a node is up
   is_up(Node, UpNodes) ->
       ordsets:is_element(Node, UpNodes).
  
positive.code: %% for a given ring/upnodes list
  -spec get_apl(binary(), n_val(), ring(), [node()]) -> preflist().
  get_apl(DocIdx, N, Ring, UpNodes) ->
      UpNodes1 = ordsets:from_list(UpNodes),
      Preflist = riak_core_ring:preflist(DocIdx, Ring),
      {Primaries, Fallbacks} = lists:split(N, Preflist),
  
negative.code: %% -------------------------------------------------------------------
  -module(riak_core_apl).
  -export([active_owners/1, active_owners/2,
           get_apl/3, get_apl/4, get_apl2/4,
           get_primary_apl/3, get_primary_apl/4
          ]).
  
  