          Returns the user associated with the current request, as authenticated
          by the authentication classes provided to the request.
          """
          if not hasattr(self, '_user'):
              self._authenticator, self._user, self._auth = self._authenticate()
          return self._user
  
      @user.setter
      def user(self, value):
          """
 
</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() </s> remove             auth = None

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

        self._not_authenticated() </s> remove             user = None
 </s> add             self._user = None
            self._authenticate()
          Returns the user associated with the current request, as authenticated
          by the authentication classes provided to the request.
          """
          if not hasattr(self, '_user'):
            self._authenticate()
          return self._user
  
      @user.setter
      def user(self, value):
          """
keep keep keep keep replace keep keep keep keep keep
 request.user should be still be accessible in renderer context if authentication fails 
rest_framework/request.py