          Called when a request to the API has failed due to throttling.
          Raises a '503 service unavailable' response.
          """
          header = 'status=FAILURE; next=%s sec' % self.next()
          self.view.add_header('X-Throttle', header)
          raise _503_SERVICE_UNAVAILABLE
  
      def next(self):
          """
          Returns the recommended next request time in seconds.
 
</s> remove         self.view.add_header('X-Throttle', header)
 </s> add         self.view.headers['X-Throttle'] = header </s> remove         raise ErrorResponse(status.HTTP_415_UNSUPPORTED_MEDIA_TYPE,
                            {'error': 'Unsupported media type in request \'%s\'.' %
                            content_type})
 </s> add         raise ErrorResponse(content={'error':
                            'Unsupported media type in request \'%s\'.' % content_type},
                        status=status.HTTP_415_UNSUPPORTED_MEDIA_TYPE) </s> remove             self.initial(request, *args, **kwargs)
 </s> add             # `initial` is the opportunity to temper with the request, 
            # even completely replace it.
            self.request = request = self.initial(request, *args, **kwargs) </s> remove         self.view.DATA  # Make sure our generic parsing runs first
 </s> add         request.DATA  # Make sure our generic parsing runs first
        self.view.headers['X-Throttle'] = header
          Called when a request to the API has failed due to throttling.
          Raises a '503 service unavailable' response.
          """
          header = 'status=FAILURE; next=%s sec' % self.next()
        self.view.headers['X-Throttle'] = header
          raise _503_SERVICE_UNAVAILABLE
  
      def next(self):
          """
          Returns the recommended next request time in seconds.
keep keep keep keep replace keep keep keep keep keep
 Response as a subclass of HttpResponse - first draft, not quite there yet. 
djangorestframework/permissions.py