old_contents: """Defines the Exceptions that can be raised from the DomainTools API"""
  
  
  class ServiceException(Exception):
  
      def __init__(self, code, reason):
          self.code = code
          self.reason = reason
          super(ServiceException, self).__init__()
  
  
  class BadRequestException(ServiceException):
      pass
  
  
  class InternalServerErrorException(ServiceException):
      pass
  
  
  class NotAuthorizedException(ServiceException):
      pass
  
  
  class NotFoundException(ServiceException):
      pass
  
  
  class ServiceUnavailableException(ServiceException):
      pass
  
  
  class IncompleteResponseException(ServiceException):
      pass
  
new_contents: """Defines the Exceptions that can be raised from the DomainTools API"""
  
  
  class ServiceException(Exception):
  
      def __init__(self, code, reason):
          self.code = code
          self.reason = reason
          super(ServiceException, self).__init__(str(reason))
  
  
  class BadRequestException(ServiceException):
      pass
  
  
  class InternalServerErrorException(ServiceException):
      pass
  
  
  class NotAuthorizedException(ServiceException):
      pass
  
  
  class NotFoundException(ServiceException):
      pass
  
  
  class ServiceUnavailableException(ServiceException):
      pass
  
  
  class IncompleteResponseException(ServiceException):
      pass
  
subject: Add the str() value of reason to the base Exception so the reason data is cleanly logged by logging.exception. (#18)