<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def handle_erroneous_response(self, response: requests.Response ) -> NoReturn: """ Attempts to decode an erroneous response into an exception, and to subsequently throw that exception. Raises: BugZooException: the exception described by the error response. UnexpectedResponse: if the response cannot be decoded to an exception. """

        logger.debug("handling erroneous response: %s", response)
        try:
            err = BugZooException.from_dict(response.json())
        except Exception:
            err = UnexpectedResponse(response)
        raise err