anchor.diff:  -define(DEFAULT_R, default).
   -define(DEFAULT_PR, 0).
   
  +%% ===================================================================
  +%% Public API
  +%% ===================================================================
  +
   %% In place only for backwards compatibility
   start(ReqId,Bucket,Key,R,Timeout,From) ->
       start_link({raw, ReqId, From}, Bucket, Key, [{r, R}, {timeout, Timeout}]).
  
positive.code:     client_reply({error,timeout}, StateData),
      really_finalize(StateData#state{final_obj=merge(Replied, AllowMult)}).
  
  waiting_read_repair({r, VnodeResult, Idx, _ReqId}, StateData) ->
      NewStateData1 = add_vnode_result(Idx, VnodeResult, StateData),
      finalize(NewStateData1#state{final_obj = undefined});
  waiting_read_repair(request_timeout, StateData) ->
      really_finalize(StateData).
  
  has_all_replies(#state{replied_r=R,replied_fail=F,replied_notfound=NF, n=N}) ->
      length(R) + length(F) + length(NF) >= N.
  
  
negative.code:     end.
  
  
  fail_reply(_R, _NumR, 0, NumNotFound, []) when NumNotFound > 0 ->
      {error, notfound};
  fail_reply(R, NumR, _NumNotDeleted, _NumNotFound, _Fails) ->
  