anchor.diff:          X ->
               Reply = X
       end,
  -    Client ! {ReqId, Reply},
  -    Merged.
  +    {Reply, Merged}.
   
   merge_robjs([], _) ->
       {error, notfound};
  
positive.code: 
  waiting_vnode_r({r, {ok, RObj}, Idx, ReqId},
                    StateData=#state{r=R,allowmult=AllowMult,
                                     req_id=ReqId,client=Client,
                                     replied_r=Replied0}) ->
      Replied = [{RObj,Idx}|Replied0],
      case length(Replied) >= R of
          true ->
              Final = respond(Client,Replied,AllowMult,ReqId),
              update_stats(StateData),
              NewStateData = StateData#state{replied_r=Replied,final_obj=Final},
              finalize(NewStateData);
  
negative.code:                 0 ->
                      FullErr = [E || {E,_I} <- Failed],
                      update_stats(StateData),
                      client_reply({error,FullErr}, StateData);
                  _ ->
                      update_stats(StateData),
                      client_reply({error,notfound}, StateData)
              end,
              Final = merge(Replied,AllowMult),
              finalize(NewStateData#state{final_obj=Final})
      end;
  waiting_vnode_r(timeout, StateData=#state{replied_r=Replied,allowmult=AllowMult}) ->
      update_stats(StateData),
      client_reply({error,timeout}, StateData),
      really_finalize(StateData#state{final_obj=merge(Replied, AllowMult)}).
  
  waiting_read_repair({r, {ok, RObj}, Idx, ReqId},
  