def __init__(self, bad_value, bad_type=None, req_type=None, message=''):
    ' bad_value -- the mis-typed value that caused the error\n        bad_type -- the type of the bad_value\n        req_type -- the type that the value was expected to have\n        message -- short statement about the cause of the error. It is\n            not shown to the user, but may appear in debugging output. '
    self.bad_value = bad_value
    self.bad_type = bad_type
    self.req_type = req_type
    self.message = message
bad_value -- the mis-typed value that caused the error
bad_type -- the type of the bad_value
req_type -- the type that the value was expected to have
message -- short statement about the cause of the error. It is
    not shown to the user, but may appear in debugging output.
def __init__(self, bad_value, bad_type=None, req_type=None, message=):
    ' bad_value -- the mis-typed value that caused the error\n        bad_type -- the type of the bad_value\n        req_type -- the type that the value was expected to have\n        message -- short statement about the cause of the error. It is\n            not shown to the user, but may appear in debugging output. '
    self.bad_value = bad_value
    self.bad_type = bad_type
    self.req_type = req_type
    self.message = message