anchor.diff:                      case lists:all(fun erlang:is_binary/1, Realms)
                       of  true ->
                               T = #t
  -                                { token  = Token
  +                                { client = Client
                                   , realms = Realms
                                   },
                               {ok, T}
  
positive.code: -spec store(t()) ->
      hope_result:t(ok, oauth1_storage:error()).
  store(#t
      { token  = {token, <<Token/binary>>}
      , realms = Realms
      }
  ) ->
      Key   = Token,
      Value = jsx:encode(Realms),
      oauth1_storage:put(?STORAGE_BUCKET, Key, Value).
  
  -spec fetch(token()) ->
      hope_result:t(t(), Error)
      when Error :: oauth1_storage:error()
                  | {data_format_invalid, Data :: binary()}
         .
  fetch({token, <<TokenID/binary>>}=Token) ->
      Key = TokenID,
      case oauth1_storage:get(?STORAGE_BUCKET, Key)
      of  {error, _}=Error ->
              Error
  
negative.code: -define(STORAGE_BUCKET, oauth1_config:get(storage_bucket_authorization)).
  
  
  -spec cons(client()) ->
      t().
  cons({client, <<_/binary>>}=Client) ->
      #t
      { client = Client
      , realms = ordsets:new()
      }.
  
  