anchor.diff:  -type bucket() :: {binary(), binary()} | binary().
   -type permission() :: {string()} | {string(), bucket()}.
   -type userlist() :: all | [string()].
  --type username() :: string().
   -type metadata_key() :: string().
   -type metadata_value() :: term().
   -type options() :: [{metadata_key(), metadata_value()}].
   
  --spec find_user_by_metadata(metadata_key(), metadata_value()) -> [{username(), options()}].
  +-spec find_user_by_metadata(metadata_key(), metadata_value()) -> [{Username :: string(), options()}].
   find_user_by_metadata(Key, Value) ->
       riak_core_metadata:fold(
         fun({_Username, [?TOMBSTONE]}, Acc) ->
  
positive.code:     end.
  
  
  -spec alter_user(username(), options()) ->
      ok | {error, term()}.
  alter_user("all", _Options) ->
      {error, reserved_name};
  
negative.code:             end
      end.
  
  -spec add_user(Username :: string(), options()) ->
      ok | {error, term()}.
  add_user(Username, Options) ->
      add_role(name2bin(Username), Options,
  