COMMON_RETRY_EXCEPTIONS = (
    CONNECTION_TIMEOUT, INTERNAL_ERROR, SERVICE_UNAVAILABLE, UNKNOWN_ERROR, LAST_TOKEN_PROCESSING,
    CONNECTION_ERROR, CONNECTION_ABORTED, REQUEST_UNKNOWN_TIMEOUT, TOKEN_PROCESSING, SIGNATURE_NONCE_USED,
    IDEMPOTENT_PROCESSING, UPPER_IDEMPOTENT_PROCESSING, OPERATION_FAILED_LAST_TOKEN_PROCESSING,
    BAD_GATEWAY
) = (
    'ConnectionTimeout', 'InternalError', 'ServiceUnavailable', 'UnknownError', 'LastTokenProcessing',
    'ConnectionError', 'ConnectionAborted', 'RequestUnknownTimeout', 'TOKEN_PROCESSING', 'SignatureNonceUsed',
    'IdempotentProcessing', 'IDEMPOTENCE_PROCESSING', 'OperationFailed.LastTokenProcessing',
    'BadGateway'
)

BASE_RETRY_EXCEPTIONS = (
    CONNECTION_ERROR, SERVICE_UNAVAILABLE, TOKEN_PROCESSING, SIGNATURE_NONCE_USED,
    IDEMPOTENT_PROCESSING, LAST_TOKEN_PROCESSING, BAD_GATEWAY
)

THROTTLING_RETRY_EXCEPTIONS = (
    THROTTLING,
    THROTTLING_USER,
    THROTTLING_API,
) = (
    'Throttling',
    'Throttling.User',
    'Throttling.API',
)

OTHER_ERRORS = (
    UNKNOWN, CONNECT_ERROR
) = (
    'Unknown', 'ConnectError'
)
