anchor.diff:                      sloppy_quorum=SloppyQ, n_val=NVal,
                       type=BType, include_context=InclCtx},
           #state{client=C} = State) ->
  -    Type = bucket_type_to_type(BType),
  +    {AllowMult, Type} = bucket_type_to_type(B, BType),
       Mod = riak_kv_crdt:to_mod(Type),
  -    case riak_kv_crdt:supported(Mod) of
  -        true ->
  +    case {AllowMult, riak_kv_crdt:supported(Mod)} of
  +        {true, true} ->
               R = decode_quorum(R0),
               PR = decode_quorum(PR0),
               case C:get(B, K, make_option(r, R) ++
  
positive.code:                 {error, Reason} ->
                      {error, {format,Reason}, State}
              end;
          false ->
              {error, {format, "~p is not supported", [Type]}, State}
      end;
  process(#dtupdatereq{bucket=B, key=K, type=BType,
                       w=W0, dw=DW0, pw=PW0, context=Ctx,
  
negative.code:                 {error, Reason} ->
                      {error, {format, Reason}, State}
              end;
          {false, _} ->
              {error, {format, "Bucket must be allow_mult=true"}, State};
          {true, false} ->
              {error, {format, "`~p` is not a supported type", [Type]}, State}
      end.
  
  %% @doc process_stream/3 callback. This service does not create any
  %% streaming responses and so ignores all incoming messages.
  