class SessionError(Exception): pass class AsyncError(SessionError): def __init__(self, msg, *args, **kwargs): super(AsyncError, self).__init__(msg, *args) for k, v in kwargs.items(): setattr(self, k, v) class TimeoutExpiredError(SessionError): pass class ResultNotReadyError(SessionError): pass