          """
          for authenticator in self.authenticators:
              user_auth_tuple = authenticator.authenticate(self)
              if not user_auth_tuple is None:
                  user, auth = user_auth_tuple
                  return (authenticator, user, auth)
          return self._not_authenticated()
  
      def _not_authenticated(self):
          """
          Return a three-tuple of (authenticator, user, authtoken), representing
          an unauthenticated request.
 
</s> remove             user_auth_tuple = authenticator.authenticate(self)
 </s> add             try:
                user_auth_tuple = authenticator.authenticate(self)
            except exceptions.APIException:
                self._not_authenticated()
                raise
 </s> remove             auth = None

        return (None, user, auth)
 </s> add             self._auth = None </s> remove             auth = api_settings.UNAUTHENTICATED_TOKEN()
 </s> add             self._auth = api_settings.UNAUTHENTICATED_TOKEN() </s> remove             self._authenticator, self._user, self._auth = self._authenticate()
 </s> add             self._authenticate() </s> remove             self._authenticator, self._user, self._auth = self._authenticate()
 </s> add             self._authenticate()
                self._authenticator = authenticator
                self._user, self._auth = user_auth_tuple
                return

        self._not_authenticated()
          """
          for authenticator in self.authenticators:
              user_auth_tuple = authenticator.authenticate(self)
              if not user_auth_tuple is None:
                self._authenticator = authenticator
                self._user, self._auth = user_auth_tuple
                return

        self._not_authenticated()
                self._authenticator = authenticator
                self._user, self._auth = user_auth_tuple
                return

        self._not_authenticated()
                self._authenticator = authenticator
                self._user, self._auth = user_auth_tuple
                return

        self._not_authenticated()
  
      def _not_authenticated(self):
          """
          Return a three-tuple of (authenticator, user, authtoken), representing
          an unauthenticated request.
keep keep keep keep replace replace replace keep keep keep keep keep
 request.user should be still be accessible in renderer context if authentication fails 
rest_framework/request.py