anchor.diff:      %% be an external interface concern and are only used for sibling selection
       %% and if-modified type tests so they could be generated on retrieval instead.
       %% This changes from being a hash on the value to a likely-to-be-unique value
  -    %% which should serve the same purpose.  It was possible to generate two 
  +    %% which should serve the same purpose.  It was possible to generate two
       %% objects with the same vclock on 0.14.2 if the same clientid was used in
       %% the same second.  It can be revisited post-1.0.0.
       Now = erlang:now(),
  
positive.code:         Hooks when is_list(Hooks) ->
              Hooks
      end.
     
  get_option(Name, Options, Default) ->
      proplists:get_value(Name, Options, Default).
  
  
negative.code:             %% This node is not in the preference list
              %% forward on to the first node
              [{{_Idx, CoordNode},_Type}|_] = Preflist2,
              Timeout = get_option(timeout, Options, ?DEFAULT_TIMEOUT),
              case rpc:call(CoordNode,riak_kv_put_fsm_sup,start_put_fsm,[CoordNode,[From,RObj,Options]],Timeout) of
                  {ok, _Pid} ->
                      riak_kv_stat:update(coord_redir),
                      {stop, normal, StateData0};
                  {_, Reason} -> % {error,_} or {badrpc,_}
                      lager:error("Unable to forward put for ~p to ~p - ~p\n",
                                  [BKey, CoordNode, Reason]),
                      process_reply({error, {coord_handoff_failed, Reason}}, StateData0)
  