aws-sdk-textract 1.25.0

AWS SDK for Amazon Textract
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// All possible error types for this service.
#[non_exhaustive]
#[derive(::std::fmt::Debug)]
pub enum Error {
    /// <p>You aren't authorized to perform the action. Use the Amazon Resource Name (ARN) of an authorized user or IAM role to perform the operation.</p>
    AccessDeniedException(crate::types::error::AccessDeniedException),
    /// <p>Amazon Textract isn't able to read the document. For more information on the document limits in Amazon Textract, see <code>limits</code>.</p>
    BadDocumentException(crate::types::error::BadDocumentException),
    /// <p>Updating or deleting a resource can cause an inconsistent state.</p>
    ConflictException(crate::types::error::ConflictException),
    /// <p>The document can't be processed because it's too large. The maximum document size for synchronous operations 10 MB. The maximum document size for asynchronous operations is 500 MB for PDF files.</p>
    DocumentTooLargeException(crate::types::error::DocumentTooLargeException),
    /// <p>Indicates you have exceeded the maximum number of active human in the loop workflows available</p>
    HumanLoopQuotaExceededException(crate::types::error::HumanLoopQuotaExceededException),
    /// <p>A <code>ClientRequestToken</code> input parameter was reused with an operation, but at least one of the other input parameters is different from the previous call to the operation.</p>
    IdempotentParameterMismatchException(crate::types::error::IdempotentParameterMismatchException),
    /// <p>Amazon Textract experienced a service issue. Try your call again.</p>
    InternalServerError(crate::types::error::InternalServerError),
    /// <p>An invalid job identifier was passed to an asynchronous analysis operation.</p>
    InvalidJobIdException(crate::types::error::InvalidJobIdException),
    /// <p>Indicates you do not have decrypt permissions with the KMS key entered, or the KMS key was entered incorrectly.</p>
    InvalidKmsKeyException(crate::types::error::InvalidKmsKeyException),
    /// <p>An input parameter violated a constraint. For example, in synchronous operations, an <code>InvalidParameterException</code> exception occurs when neither of the <code>S3Object</code> or <code>Bytes</code> values are supplied in the <code>Document</code> request parameter. Validate your parameter before calling the API operation again.</p>
    InvalidParameterException(crate::types::error::InvalidParameterException),
    /// <p>Amazon Textract is unable to access the S3 object that's specified in the request. for more information, <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-access-control.html">Configure Access to Amazon S3</a> For troubleshooting information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/troubleshooting.html">Troubleshooting Amazon S3</a></p>
    InvalidS3ObjectException(crate::types::error::InvalidS3ObjectException),
    /// <p>An Amazon Textract service limit was exceeded. For example, if you start too many asynchronous jobs concurrently, calls to start operations (<code>StartDocumentTextDetection</code>, for example) raise a LimitExceededException exception (HTTP status code: 400) until the number of concurrently running jobs is below the Amazon Textract service limit.</p>
    LimitExceededException(crate::types::error::LimitExceededException),
    /// <p>The number of requests exceeded your throughput limit. If you want to increase this limit, contact Amazon Textract.</p>
    ProvisionedThroughputExceededException(crate::types::error::ProvisionedThroughputExceededException),
    /// <p>Returned when an operation tried to access a nonexistent resource.</p>
    ResourceNotFoundException(crate::types::error::ResourceNotFoundException),
    /// <p>Returned when a request cannot be completed as it would exceed a maximum service quota.</p>
    ServiceQuotaExceededException(crate::types::error::ServiceQuotaExceededException),
    /// <p>Amazon Textract is temporarily unable to process the request. Try your call again.</p>
    ThrottlingException(crate::types::error::ThrottlingException),
    /// <p>The format of the input document isn't supported. Documents for operations can be in PNG, JPEG, PDF, or TIFF format.</p>
    UnsupportedDocumentException(crate::types::error::UnsupportedDocumentException),
    /// <p>Indicates that a request was not valid. Check request for proper formatting.</p>
    ValidationException(crate::types::error::ValidationException),
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
    variable wildcard pattern and check `.code()`:
     \
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
     \
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-Error) for what information is available for the error.")]
    Unhandled(crate::error::sealed_unhandled::Unhandled),
}
impl ::std::fmt::Display for Error {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        match self {
            Error::AccessDeniedException(inner) => inner.fmt(f),
            Error::BadDocumentException(inner) => inner.fmt(f),
            Error::ConflictException(inner) => inner.fmt(f),
            Error::DocumentTooLargeException(inner) => inner.fmt(f),
            Error::HumanLoopQuotaExceededException(inner) => inner.fmt(f),
            Error::IdempotentParameterMismatchException(inner) => inner.fmt(f),
            Error::InternalServerError(inner) => inner.fmt(f),
            Error::InvalidJobIdException(inner) => inner.fmt(f),
            Error::InvalidKmsKeyException(inner) => inner.fmt(f),
            Error::InvalidParameterException(inner) => inner.fmt(f),
            Error::InvalidS3ObjectException(inner) => inner.fmt(f),
            Error::LimitExceededException(inner) => inner.fmt(f),
            Error::ProvisionedThroughputExceededException(inner) => inner.fmt(f),
            Error::ResourceNotFoundException(inner) => inner.fmt(f),
            Error::ServiceQuotaExceededException(inner) => inner.fmt(f),
            Error::ThrottlingException(inner) => inner.fmt(f),
            Error::UnsupportedDocumentException(inner) => inner.fmt(f),
            Error::ValidationException(inner) => inner.fmt(f),
            Error::Unhandled(_) => {
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
                    write!(f, "unhandled error ({code})")
                } else {
                    f.write_str("unhandled error")
                }
            }
        }
    }
}
impl From<::aws_smithy_types::error::operation::BuildError> for Error {
    fn from(value: ::aws_smithy_types::error::operation::BuildError) -> Self {
        Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
            source: value.into(),
            meta: ::std::default::Default::default(),
        })
    }
}
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for Error {
    fn meta(&self) -> &::aws_smithy_types::error::metadata::ErrorMetadata {
        match self {
            Self::AccessDeniedException(inner) => inner.meta(),
            Self::BadDocumentException(inner) => inner.meta(),
            Self::ConflictException(inner) => inner.meta(),
            Self::DocumentTooLargeException(inner) => inner.meta(),
            Self::HumanLoopQuotaExceededException(inner) => inner.meta(),
            Self::IdempotentParameterMismatchException(inner) => inner.meta(),
            Self::InternalServerError(inner) => inner.meta(),
            Self::InvalidJobIdException(inner) => inner.meta(),
            Self::InvalidKmsKeyException(inner) => inner.meta(),
            Self::InvalidParameterException(inner) => inner.meta(),
            Self::InvalidS3ObjectException(inner) => inner.meta(),
            Self::LimitExceededException(inner) => inner.meta(),
            Self::ProvisionedThroughputExceededException(inner) => inner.meta(),
            Self::ResourceNotFoundException(inner) => inner.meta(),
            Self::ServiceQuotaExceededException(inner) => inner.meta(),
            Self::ThrottlingException(inner) => inner.meta(),
            Self::UnsupportedDocumentException(inner) => inner.meta(),
            Self::ValidationException(inner) => inner.meta(),
            Self::Unhandled(inner) => &inner.meta,
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_document::AnalyzeDocumentError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_document::AnalyzeDocumentError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::analyze_document::AnalyzeDocumentError> for Error {
    fn from(err: crate::operation::analyze_document::AnalyzeDocumentError) -> Self {
        match err {
            crate::operation::analyze_document::AnalyzeDocumentError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::DocumentTooLargeException(inner) => Error::DocumentTooLargeException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::HumanLoopQuotaExceededException(inner) => {
                Error::HumanLoopQuotaExceededException(inner)
            }
            crate::operation::analyze_document::AnalyzeDocumentError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::InvalidS3ObjectException(inner) => Error::InvalidS3ObjectException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::analyze_document::AnalyzeDocumentError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::analyze_document::AnalyzeDocumentError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::analyze_document::AnalyzeDocumentError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_expense::AnalyzeExpenseError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_expense::AnalyzeExpenseError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::analyze_expense::AnalyzeExpenseError> for Error {
    fn from(err: crate::operation::analyze_expense::AnalyzeExpenseError) -> Self {
        match err {
            crate::operation::analyze_expense::AnalyzeExpenseError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::DocumentTooLargeException(inner) => Error::DocumentTooLargeException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::InvalidS3ObjectException(inner) => Error::InvalidS3ObjectException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::analyze_expense::AnalyzeExpenseError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::UnsupportedDocumentException(inner) => Error::UnsupportedDocumentException(inner),
            crate::operation::analyze_expense::AnalyzeExpenseError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_id::AnalyzeIDError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::analyze_id::AnalyzeIDError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::analyze_id::AnalyzeIDError> for Error {
    fn from(err: crate::operation::analyze_id::AnalyzeIDError) -> Self {
        match err {
            crate::operation::analyze_id::AnalyzeIDError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::analyze_id::AnalyzeIDError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::analyze_id::AnalyzeIDError::DocumentTooLargeException(inner) => Error::DocumentTooLargeException(inner),
            crate::operation::analyze_id::AnalyzeIDError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::analyze_id::AnalyzeIDError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::analyze_id::AnalyzeIDError::InvalidS3ObjectException(inner) => Error::InvalidS3ObjectException(inner),
            crate::operation::analyze_id::AnalyzeIDError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::analyze_id::AnalyzeIDError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::analyze_id::AnalyzeIDError::UnsupportedDocumentException(inner) => Error::UnsupportedDocumentException(inner),
            crate::operation::analyze_id::AnalyzeIDError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_adapter::CreateAdapterError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_adapter::CreateAdapterError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::create_adapter::CreateAdapterError> for Error {
    fn from(err: crate::operation::create_adapter::CreateAdapterError) -> Self {
        match err {
            crate::operation::create_adapter::CreateAdapterError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::create_adapter::CreateAdapterError::ConflictException(inner) => Error::ConflictException(inner),
            crate::operation::create_adapter::CreateAdapterError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::create_adapter::CreateAdapterError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::create_adapter::CreateAdapterError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::create_adapter::CreateAdapterError::LimitExceededException(inner) => Error::LimitExceededException(inner),
            crate::operation::create_adapter::CreateAdapterError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::create_adapter::CreateAdapterError::ServiceQuotaExceededException(inner) => Error::ServiceQuotaExceededException(inner),
            crate::operation::create_adapter::CreateAdapterError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::create_adapter::CreateAdapterError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::create_adapter::CreateAdapterError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_adapter_version::CreateAdapterVersionError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_adapter_version::CreateAdapterVersionError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::create_adapter_version::CreateAdapterVersionError> for Error {
    fn from(err: crate::operation::create_adapter_version::CreateAdapterVersionError) -> Self {
        match err {
            crate::operation::create_adapter_version::CreateAdapterVersionError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::create_adapter_version::CreateAdapterVersionError::ConflictException(inner) => Error::ConflictException(inner),
            crate::operation::create_adapter_version::CreateAdapterVersionError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::create_adapter_version::CreateAdapterVersionError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::ResourceNotFoundException(inner) => {
                Error::ResourceNotFoundException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::ServiceQuotaExceededException(inner) => {
                Error::ServiceQuotaExceededException(inner)
            }
            crate::operation::create_adapter_version::CreateAdapterVersionError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::create_adapter_version::CreateAdapterVersionError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::create_adapter_version::CreateAdapterVersionError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_adapter::DeleteAdapterError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_adapter::DeleteAdapterError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::delete_adapter::DeleteAdapterError> for Error {
    fn from(err: crate::operation::delete_adapter::DeleteAdapterError) -> Self {
        match err {
            crate::operation::delete_adapter::DeleteAdapterError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::ConflictException(inner) => Error::ConflictException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::delete_adapter::DeleteAdapterError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::delete_adapter::DeleteAdapterError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::delete_adapter::DeleteAdapterError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_adapter_version::DeleteAdapterVersionError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_adapter_version::DeleteAdapterVersionError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::delete_adapter_version::DeleteAdapterVersionError> for Error {
    fn from(err: crate::operation::delete_adapter_version::DeleteAdapterVersionError) -> Self {
        match err {
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::ConflictException(inner) => Error::ConflictException(inner),
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::ResourceNotFoundException(inner) => {
                Error::ResourceNotFoundException(inner)
            }
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::delete_adapter_version::DeleteAdapterVersionError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::detect_document_text::DetectDocumentTextError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::detect_document_text::DetectDocumentTextError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::detect_document_text::DetectDocumentTextError> for Error {
    fn from(err: crate::operation::detect_document_text::DetectDocumentTextError) -> Self {
        match err {
            crate::operation::detect_document_text::DetectDocumentTextError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::detect_document_text::DetectDocumentTextError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::detect_document_text::DetectDocumentTextError::DocumentTooLargeException(inner) => {
                Error::DocumentTooLargeException(inner)
            }
            crate::operation::detect_document_text::DetectDocumentTextError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::detect_document_text::DetectDocumentTextError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::detect_document_text::DetectDocumentTextError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::detect_document_text::DetectDocumentTextError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::detect_document_text::DetectDocumentTextError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::detect_document_text::DetectDocumentTextError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::detect_document_text::DetectDocumentTextError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_adapter::GetAdapterError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_adapter::GetAdapterError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_adapter::GetAdapterError> for Error {
    fn from(err: crate::operation::get_adapter::GetAdapterError) -> Self {
        match err {
            crate::operation::get_adapter::GetAdapterError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::get_adapter::GetAdapterError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::get_adapter::GetAdapterError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_adapter::GetAdapterError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_adapter::GetAdapterError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
            crate::operation::get_adapter::GetAdapterError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::get_adapter::GetAdapterError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::get_adapter::GetAdapterError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_adapter_version::GetAdapterVersionError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_adapter_version::GetAdapterVersionError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_adapter_version::GetAdapterVersionError> for Error {
    fn from(err: crate::operation::get_adapter_version::GetAdapterVersionError) -> Self {
        match err {
            crate::operation::get_adapter_version::GetAdapterVersionError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::get_adapter_version::GetAdapterVersionError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::get_adapter_version::GetAdapterVersionError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_adapter_version::GetAdapterVersionError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_adapter_version::GetAdapterVersionError::ResourceNotFoundException(inner) => {
                Error::ResourceNotFoundException(inner)
            }
            crate::operation::get_adapter_version::GetAdapterVersionError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::get_adapter_version::GetAdapterVersionError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::get_adapter_version::GetAdapterVersionError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_document_analysis::GetDocumentAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_document_analysis::GetDocumentAnalysisError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_document_analysis::GetDocumentAnalysisError> for Error {
    fn from(err: crate::operation::get_document_analysis::GetDocumentAnalysisError) -> Self {
        match err {
            crate::operation::get_document_analysis::GetDocumentAnalysisError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::get_document_analysis::GetDocumentAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::get_document_analysis::GetDocumentAnalysisError::InvalidJobIdException(inner) => Error::InvalidJobIdException(inner),
            crate::operation::get_document_analysis::GetDocumentAnalysisError::InvalidKmsKeyException(inner) => Error::InvalidKmsKeyException(inner),
            crate::operation::get_document_analysis::GetDocumentAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_document_analysis::GetDocumentAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::get_document_analysis::GetDocumentAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_document_analysis::GetDocumentAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::get_document_analysis::GetDocumentAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_document_text_detection::GetDocumentTextDetectionError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_document_text_detection::GetDocumentTextDetectionError, R>,
    ) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_document_text_detection::GetDocumentTextDetectionError> for Error {
    fn from(err: crate::operation::get_document_text_detection::GetDocumentTextDetectionError) -> Self {
        match err {
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::AccessDeniedException(inner) => {
                Error::AccessDeniedException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::InternalServerError(inner) => {
                Error::InternalServerError(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::InvalidJobIdException(inner) => {
                Error::InvalidJobIdException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::ThrottlingException(inner) => {
                Error::ThrottlingException(inner)
            }
            crate::operation::get_document_text_detection::GetDocumentTextDetectionError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_expense_analysis::GetExpenseAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_expense_analysis::GetExpenseAnalysisError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_expense_analysis::GetExpenseAnalysisError> for Error {
    fn from(err: crate::operation::get_expense_analysis::GetExpenseAnalysisError) -> Self {
        match err {
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::InvalidJobIdException(inner) => Error::InvalidJobIdException(inner),
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::InvalidKmsKeyException(inner) => Error::InvalidKmsKeyException(inner),
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::get_expense_analysis::GetExpenseAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lending_analysis::GetLendingAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lending_analysis::GetLendingAnalysisError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_lending_analysis::GetLendingAnalysisError> for Error {
    fn from(err: crate::operation::get_lending_analysis::GetLendingAnalysisError) -> Self {
        match err {
            crate::operation::get_lending_analysis::GetLendingAnalysisError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::get_lending_analysis::GetLendingAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::get_lending_analysis::GetLendingAnalysisError::InvalidJobIdException(inner) => Error::InvalidJobIdException(inner),
            crate::operation::get_lending_analysis::GetLendingAnalysisError::InvalidKmsKeyException(inner) => Error::InvalidKmsKeyException(inner),
            crate::operation::get_lending_analysis::GetLendingAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_lending_analysis::GetLendingAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::get_lending_analysis::GetLendingAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_lending_analysis::GetLendingAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::get_lending_analysis::GetLendingAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError, R>,
    ) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError> for Error {
    fn from(err: crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError) -> Self {
        match err {
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::AccessDeniedException(inner) => {
                Error::AccessDeniedException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::InternalServerError(inner) => {
                Error::InternalServerError(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::InvalidJobIdException(inner) => {
                Error::InvalidJobIdException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::ThrottlingException(inner) => {
                Error::ThrottlingException(inner)
            }
            crate::operation::get_lending_analysis_summary::GetLendingAnalysisSummaryError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_adapters::ListAdaptersError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_adapters::ListAdaptersError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::list_adapters::ListAdaptersError> for Error {
    fn from(err: crate::operation::list_adapters::ListAdaptersError) -> Self {
        match err {
            crate::operation::list_adapters::ListAdaptersError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::list_adapters::ListAdaptersError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::list_adapters::ListAdaptersError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::list_adapters::ListAdaptersError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::list_adapters::ListAdaptersError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::list_adapters::ListAdaptersError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::list_adapters::ListAdaptersError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_adapter_versions::ListAdapterVersionsError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_adapter_versions::ListAdapterVersionsError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::list_adapter_versions::ListAdapterVersionsError> for Error {
    fn from(err: crate::operation::list_adapter_versions::ListAdapterVersionsError) -> Self {
        match err {
            crate::operation::list_adapter_versions::ListAdapterVersionsError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::list_adapter_versions::ListAdapterVersionsError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::list_adapter_versions::ListAdapterVersionsError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::list_adapter_versions::ListAdapterVersionsError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::list_adapter_versions::ListAdapterVersionsError::ResourceNotFoundException(inner) => {
                Error::ResourceNotFoundException(inner)
            }
            crate::operation::list_adapter_versions::ListAdapterVersionsError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::list_adapter_versions::ListAdapterVersionsError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::list_adapter_versions::ListAdapterVersionsError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_tags_for_resource::ListTagsForResourceError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_tags_for_resource::ListTagsForResourceError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::list_tags_for_resource::ListTagsForResourceError> for Error {
    fn from(err: crate::operation::list_tags_for_resource::ListTagsForResourceError) -> Self {
        match err {
            crate::operation::list_tags_for_resource::ListTagsForResourceError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::list_tags_for_resource::ListTagsForResourceError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::list_tags_for_resource::ListTagsForResourceError::ResourceNotFoundException(inner) => {
                Error::ResourceNotFoundException(inner)
            }
            crate::operation::list_tags_for_resource::ListTagsForResourceError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_document_analysis::StartDocumentAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_document_analysis::StartDocumentAnalysisError, R>,
    ) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::start_document_analysis::StartDocumentAnalysisError> for Error {
    fn from(err: crate::operation::start_document_analysis::StartDocumentAnalysisError) -> Self {
        match err {
            crate::operation::start_document_analysis::StartDocumentAnalysisError::AccessDeniedException(inner) => {
                Error::AccessDeniedException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::start_document_analysis::StartDocumentAnalysisError::DocumentTooLargeException(inner) => {
                Error::DocumentTooLargeException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::start_document_analysis::StartDocumentAnalysisError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::start_document_analysis::StartDocumentAnalysisError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::start_document_analysis::StartDocumentAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_document_text_detection::StartDocumentTextDetectionError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_document_text_detection::StartDocumentTextDetectionError, R>,
    ) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::start_document_text_detection::StartDocumentTextDetectionError> for Error {
    fn from(err: crate::operation::start_document_text_detection::StartDocumentTextDetectionError) -> Self {
        match err {
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::AccessDeniedException(inner) => {
                Error::AccessDeniedException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::BadDocumentException(inner) => {
                Error::BadDocumentException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::DocumentTooLargeException(inner) => {
                Error::DocumentTooLargeException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::InternalServerError(inner) => {
                Error::InternalServerError(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::ThrottlingException(inner) => {
                Error::ThrottlingException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::start_document_text_detection::StartDocumentTextDetectionError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_expense_analysis::StartExpenseAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_expense_analysis::StartExpenseAnalysisError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::start_expense_analysis::StartExpenseAnalysisError> for Error {
    fn from(err: crate::operation::start_expense_analysis::StartExpenseAnalysisError) -> Self {
        match err {
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::DocumentTooLargeException(inner) => {
                Error::DocumentTooLargeException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::start_expense_analysis::StartExpenseAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_lending_analysis::StartLendingAnalysisError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::start_lending_analysis::StartLendingAnalysisError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::start_lending_analysis::StartLendingAnalysisError> for Error {
    fn from(err: crate::operation::start_lending_analysis::StartLendingAnalysisError) -> Self {
        match err {
            crate::operation::start_lending_analysis::StartLendingAnalysisError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::start_lending_analysis::StartLendingAnalysisError::BadDocumentException(inner) => Error::BadDocumentException(inner),
            crate::operation::start_lending_analysis::StartLendingAnalysisError::DocumentTooLargeException(inner) => {
                Error::DocumentTooLargeException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::IdempotentParameterMismatchException(inner) => {
                Error::IdempotentParameterMismatchException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::start_lending_analysis::StartLendingAnalysisError::InvalidKmsKeyException(inner) => {
                Error::InvalidKmsKeyException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::InvalidS3ObjectException(inner) => {
                Error::InvalidS3ObjectException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::start_lending_analysis::StartLendingAnalysisError::UnsupportedDocumentException(inner) => {
                Error::UnsupportedDocumentException(inner)
            }
            crate::operation::start_lending_analysis::StartLendingAnalysisError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::tag_resource::TagResourceError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::tag_resource::TagResourceError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::tag_resource::TagResourceError> for Error {
    fn from(err: crate::operation::tag_resource::TagResourceError) -> Self {
        match err {
            crate::operation::tag_resource::TagResourceError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::tag_resource::TagResourceError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::tag_resource::TagResourceError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::tag_resource::TagResourceError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::tag_resource::TagResourceError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
            crate::operation::tag_resource::TagResourceError::ServiceQuotaExceededException(inner) => Error::ServiceQuotaExceededException(inner),
            crate::operation::tag_resource::TagResourceError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::tag_resource::TagResourceError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::tag_resource::TagResourceError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::untag_resource::UntagResourceError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::untag_resource::UntagResourceError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::untag_resource::UntagResourceError> for Error {
    fn from(err: crate::operation::untag_resource::UntagResourceError) -> Self {
        match err {
            crate::operation::untag_resource::UntagResourceError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::untag_resource::UntagResourceError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::untag_resource::UntagResourceError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::untag_resource::UntagResourceError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::untag_resource::UntagResourceError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
            crate::operation::untag_resource::UntagResourceError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::untag_resource::UntagResourceError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::untag_resource::UntagResourceError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::update_adapter::UpdateAdapterError, R>> for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::update_adapter::UpdateAdapterError, R>) -> Self {
        match err {
            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                source: err.into(),
            }),
        }
    }
}
impl From<crate::operation::update_adapter::UpdateAdapterError> for Error {
    fn from(err: crate::operation::update_adapter::UpdateAdapterError) -> Self {
        match err {
            crate::operation::update_adapter::UpdateAdapterError::AccessDeniedException(inner) => Error::AccessDeniedException(inner),
            crate::operation::update_adapter::UpdateAdapterError::ConflictException(inner) => Error::ConflictException(inner),
            crate::operation::update_adapter::UpdateAdapterError::InternalServerError(inner) => Error::InternalServerError(inner),
            crate::operation::update_adapter::UpdateAdapterError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::update_adapter::UpdateAdapterError::ProvisionedThroughputExceededException(inner) => {
                Error::ProvisionedThroughputExceededException(inner)
            }
            crate::operation::update_adapter::UpdateAdapterError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
            crate::operation::update_adapter::UpdateAdapterError::ThrottlingException(inner) => Error::ThrottlingException(inner),
            crate::operation::update_adapter::UpdateAdapterError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::update_adapter::UpdateAdapterError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl ::std::error::Error for Error {
    fn source(&self) -> std::option::Option<&(dyn ::std::error::Error + 'static)> {
        match self {
            Error::AccessDeniedException(inner) => inner.source(),
            Error::BadDocumentException(inner) => inner.source(),
            Error::ConflictException(inner) => inner.source(),
            Error::DocumentTooLargeException(inner) => inner.source(),
            Error::HumanLoopQuotaExceededException(inner) => inner.source(),
            Error::IdempotentParameterMismatchException(inner) => inner.source(),
            Error::InternalServerError(inner) => inner.source(),
            Error::InvalidJobIdException(inner) => inner.source(),
            Error::InvalidKmsKeyException(inner) => inner.source(),
            Error::InvalidParameterException(inner) => inner.source(),
            Error::InvalidS3ObjectException(inner) => inner.source(),
            Error::LimitExceededException(inner) => inner.source(),
            Error::ProvisionedThroughputExceededException(inner) => inner.source(),
            Error::ResourceNotFoundException(inner) => inner.source(),
            Error::ServiceQuotaExceededException(inner) => inner.source(),
            Error::ThrottlingException(inner) => inner.source(),
            Error::UnsupportedDocumentException(inner) => inner.source(),
            Error::ValidationException(inner) => inner.source(),
            Error::Unhandled(inner) => ::std::option::Option::Some(&*inner.source),
        }
    }
}
impl ::aws_types::request_id::RequestId for Error {
    fn request_id(&self) -> Option<&str> {
        match self {
            Self::AccessDeniedException(e) => e.request_id(),
            Self::BadDocumentException(e) => e.request_id(),
            Self::ConflictException(e) => e.request_id(),
            Self::DocumentTooLargeException(e) => e.request_id(),
            Self::HumanLoopQuotaExceededException(e) => e.request_id(),
            Self::IdempotentParameterMismatchException(e) => e.request_id(),
            Self::InternalServerError(e) => e.request_id(),
            Self::InvalidJobIdException(e) => e.request_id(),
            Self::InvalidKmsKeyException(e) => e.request_id(),
            Self::InvalidParameterException(e) => e.request_id(),
            Self::InvalidS3ObjectException(e) => e.request_id(),
            Self::LimitExceededException(e) => e.request_id(),
            Self::ProvisionedThroughputExceededException(e) => e.request_id(),
            Self::ResourceNotFoundException(e) => e.request_id(),
            Self::ServiceQuotaExceededException(e) => e.request_id(),
            Self::ThrottlingException(e) => e.request_id(),
            Self::UnsupportedDocumentException(e) => e.request_id(),
            Self::ValidationException(e) => e.request_id(),
            Self::Unhandled(e) => e.meta.request_id(),
        }
    }
}