anchor.diff:                       bkey={Bucket, Key},
                        reqid=ReqID,
                        index_specs=IndexSpecs}) ->
  -    case encode_and_Mod_put(Obj, Mod, Bucket, Key, IndexSpecs, ModState) of
  +    case encode_and_put(Obj, Mod, Bucket, Key, IndexSpecs, ModState) of
           {{ok, UpdModState}, EncodedVal} ->
               update_hashtree(Bucket, Key, EncodedVal, State),
               case RB of
  
positive.code:                 false ->
                      IndexSpecs = []
              end,
              case encode_and_Mod_put(DiffObj, Mod, Bucket, Key,
                                      IndexSpecs, ModState) of
                  {{ok, _UpdModState} = InnerRes, EncodedVal} ->
                      update_hashtree(Bucket, Key, EncodedVal, StateData),
                      update_index_write_stats(IndexBackend, IndexSpecs),
  
negative.code:     Hash = riak_core_util:chash_key(BKey),
      {Bucket, Hash}.
  
  -spec encode_and_put(
        Obj::riak_object:riak_object(), Mod::term(), Bucket::riak_object:bucket(),
        Key::riak_object:key(), IndexSpecs::list(), ModState::term()) ->
             {{ok, UpdModState::term()}, EncodedObj::binary()} |
             {{error, Reason::term(), UpdModState::term()}, EncodedObj::binary()}.
  
  encode_and_put(Obj, Mod, Bucket, Key, IndexSpecs, ModState) ->
      case uses_r_object(Mod, ModState, Bucket) of
          true ->
              Mod:put_object(Bucket, Key, IndexSpecs, Obj, ModState);
          false ->
  