anchor.diff:                          binary:split(Resources, <<",">>, [global]));
                   (<<"providerId = ", PID/binary>>) ->
                       PID =:= ProviderId;
  -                (_) -> false
  +                () ->
  +                    false
               end,
   
               macaroon_verifier:satisfy_general(V, VerifyFun),
  
positive.code:     {ok, Location} = application:get_env(?APP_Name, http_domain),
      {ok, Identifier} = ?DB(save_auth, #auth{secret = Secret, user_id = UserId}),
      {ok, M} = create_macaroon(Secret, utils:ensure_binary(Identifier),
          [["provider = ", ProviderId]]),
  
      CaveatKey = crypto:rand_bytes(macaroon:suggested_secret_length()),
      {ok, CaveatId} = ?DB(save_auth, #auth{secret = CaveatKey, user_id = UserId}),
  
negative.code:     RootResource :: atom()) ->
      {ok, UserId :: binary()} | {error, Reason :: any()}.
  validate_token(ProviderId, Macaroon, DischargeMacaroons, Method, RootResource) ->
      {ok, Identifier} = macaroon:identifier(Macaroon),
      case ?DB(get_auth, Identifier) of
          {ok, #db_document{record = #auth{secret = Secret, user_id = UserId}}} ->
              {ok, V} = macaroon_verifier:create(),
  
  