#[non_exhaustive]
#[derive(std::fmt::Debug)]
pub enum Error {
    EmptyUploadException(crate::types::error::EmptyUploadException),
    ImageAlreadyExistsException(crate::types::error::ImageAlreadyExistsException),
    ImageDigestDoesNotMatchException(crate::types::error::ImageDigestDoesNotMatchException),
    ImageNotFoundException(crate::types::error::ImageNotFoundException),
    ImageTagAlreadyExistsException(crate::types::error::ImageTagAlreadyExistsException),
    InvalidLayerException(crate::types::error::InvalidLayerException),
    InvalidLayerPartException(crate::types::error::InvalidLayerPartException),
    InvalidParameterException(crate::types::error::InvalidParameterException),
    InvalidTagParameterException(crate::types::error::InvalidTagParameterException),
    KmsException(crate::types::error::KmsException),
    LayerAlreadyExistsException(crate::types::error::LayerAlreadyExistsException),
    LayerInaccessibleException(crate::types::error::LayerInaccessibleException),
    LayerPartTooSmallException(crate::types::error::LayerPartTooSmallException),
    LayersNotFoundException(crate::types::error::LayersNotFoundException),
    LifecyclePolicyNotFoundException(crate::types::error::LifecyclePolicyNotFoundException),
    LifecyclePolicyPreviewInProgressException(
        crate::types::error::LifecyclePolicyPreviewInProgressException,
    ),
    LifecyclePolicyPreviewNotFoundException(
        crate::types::error::LifecyclePolicyPreviewNotFoundException,
    ),
    LimitExceededException(crate::types::error::LimitExceededException),
    PullThroughCacheRuleAlreadyExistsException(
        crate::types::error::PullThroughCacheRuleAlreadyExistsException,
    ),
    PullThroughCacheRuleNotFoundException(
        crate::types::error::PullThroughCacheRuleNotFoundException,
    ),
    ReferencedImagesNotFoundException(crate::types::error::ReferencedImagesNotFoundException),
    RegistryPolicyNotFoundException(crate::types::error::RegistryPolicyNotFoundException),
    RepositoryAlreadyExistsException(crate::types::error::RepositoryAlreadyExistsException),
    RepositoryNotEmptyException(crate::types::error::RepositoryNotEmptyException),
    RepositoryNotFoundException(crate::types::error::RepositoryNotFoundException),
    RepositoryPolicyNotFoundException(crate::types::error::RepositoryPolicyNotFoundException),
    ScanNotFoundException(crate::types::error::ScanNotFoundException),
    ServerException(crate::types::error::ServerException),
    TooManyTagsException(crate::types::error::TooManyTagsException),
    UnsupportedImageTypeException(crate::types::error::UnsupportedImageTypeException),
    UnsupportedUpstreamRegistryException(crate::types::error::UnsupportedUpstreamRegistryException),
    UploadNotFoundException(crate::types::error::UploadNotFoundException),
    ValidationException(crate::types::error::ValidationException),
    Unhandled(aws_smithy_types::error::Unhandled),
}
impl std::fmt::Display for Error {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        match self {
            Error::EmptyUploadException(inner) => inner.fmt(f),
            Error::ImageAlreadyExistsException(inner) => inner.fmt(f),
            Error::ImageDigestDoesNotMatchException(inner) => inner.fmt(f),
            Error::ImageNotFoundException(inner) => inner.fmt(f),
            Error::ImageTagAlreadyExistsException(inner) => inner.fmt(f),
            Error::InvalidLayerException(inner) => inner.fmt(f),
            Error::InvalidLayerPartException(inner) => inner.fmt(f),
            Error::InvalidParameterException(inner) => inner.fmt(f),
            Error::InvalidTagParameterException(inner) => inner.fmt(f),
            Error::KmsException(inner) => inner.fmt(f),
            Error::LayerAlreadyExistsException(inner) => inner.fmt(f),
            Error::LayerInaccessibleException(inner) => inner.fmt(f),
            Error::LayerPartTooSmallException(inner) => inner.fmt(f),
            Error::LayersNotFoundException(inner) => inner.fmt(f),
            Error::LifecyclePolicyNotFoundException(inner) => inner.fmt(f),
            Error::LifecyclePolicyPreviewInProgressException(inner) => inner.fmt(f),
            Error::LifecyclePolicyPreviewNotFoundException(inner) => inner.fmt(f),
            Error::LimitExceededException(inner) => inner.fmt(f),
            Error::PullThroughCacheRuleAlreadyExistsException(inner) => inner.fmt(f),
            Error::PullThroughCacheRuleNotFoundException(inner) => inner.fmt(f),
            Error::ReferencedImagesNotFoundException(inner) => inner.fmt(f),
            Error::RegistryPolicyNotFoundException(inner) => inner.fmt(f),
            Error::RepositoryAlreadyExistsException(inner) => inner.fmt(f),
            Error::RepositoryNotEmptyException(inner) => inner.fmt(f),
            Error::RepositoryNotFoundException(inner) => inner.fmt(f),
            Error::RepositoryPolicyNotFoundException(inner) => inner.fmt(f),
            Error::ScanNotFoundException(inner) => inner.fmt(f),
            Error::ServerException(inner) => inner.fmt(f),
            Error::TooManyTagsException(inner) => inner.fmt(f),
            Error::UnsupportedImageTypeException(inner) => inner.fmt(f),
            Error::UnsupportedUpstreamRegistryException(inner) => inner.fmt(f),
            Error::UploadNotFoundException(inner) => inner.fmt(f),
            Error::ValidationException(inner) => inner.fmt(f),
            Error::Unhandled(inner) => inner.fmt(f),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError>
    for Error
{
    fn from(
        err: crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError,
    ) -> Self {
        match err {
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::batch_check_layer_availability::BatchCheckLayerAvailabilityError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::batch_delete_image::BatchDeleteImageError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::batch_delete_image::BatchDeleteImageError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::batch_delete_image::BatchDeleteImageError> for Error {
    fn from(err: crate::operation::batch_delete_image::BatchDeleteImageError) -> Self {
        match err {
            crate::operation::batch_delete_image::BatchDeleteImageError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::batch_delete_image::BatchDeleteImageError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::batch_delete_image::BatchDeleteImageError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::batch_delete_image::BatchDeleteImageError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<crate::operation::batch_get_image::BatchGetImageError, R>,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::batch_get_image::BatchGetImageError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::batch_get_image::BatchGetImageError> for Error {
    fn from(err: crate::operation::batch_get_image::BatchGetImageError) -> Self {
        match err {
            crate::operation::batch_get_image::BatchGetImageError::InvalidParameterException(
                inner,
            ) => Error::InvalidParameterException(inner),
            crate::operation::batch_get_image::BatchGetImageError::RepositoryNotFoundException(
                inner,
            ) => Error::RepositoryNotFoundException(inner),
            crate::operation::batch_get_image::BatchGetImageError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::batch_get_image::BatchGetImageError::Unhandled(inner) => {
                Error::Unhandled(inner)
            }
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError, R>> for Error where R: Send + Sync + std::fmt::Debug + 'static {
    fn from(err: aws_smithy_http::result::SdkError<crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError, R>) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(
                                            aws_smithy_types::error::Unhandled::builder()
                                                .meta(aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone())
                                                .source(err)
                                                .build()
                                        ),
        }
    }
}
impl From<crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError> for Error {
    fn from(err: crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError) -> Self {
        match err {
            crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::batch_get_repository_scanning_configuration::BatchGetRepositoryScanningConfigurationError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::complete_layer_upload::CompleteLayerUploadError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::complete_layer_upload::CompleteLayerUploadError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::complete_layer_upload::CompleteLayerUploadError> for Error {
    fn from(err: crate::operation::complete_layer_upload::CompleteLayerUploadError) -> Self {
        match err {
            crate::operation::complete_layer_upload::CompleteLayerUploadError::EmptyUploadException(inner) => Error::EmptyUploadException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::InvalidLayerException(inner) => Error::InvalidLayerException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::KmsException(inner) => Error::KmsException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::LayerAlreadyExistsException(inner) => Error::LayerAlreadyExistsException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::LayerPartTooSmallException(inner) => Error::LayerPartTooSmallException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::UploadNotFoundException(inner) => Error::UploadNotFoundException(inner),
            crate::operation::complete_layer_upload::CompleteLayerUploadError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError>
    for Error
{
    fn from(
        err: crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError,
    ) -> Self {
        match err {
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::LimitExceededException(inner) => Error::LimitExceededException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::PullThroughCacheRuleAlreadyExistsException(inner) => Error::PullThroughCacheRuleAlreadyExistsException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::UnsupportedUpstreamRegistryException(inner) => Error::UnsupportedUpstreamRegistryException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::create_pull_through_cache_rule::CreatePullThroughCacheRuleError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::create_repository::CreateRepositoryError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::create_repository::CreateRepositoryError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::create_repository::CreateRepositoryError> for Error {
    fn from(err: crate::operation::create_repository::CreateRepositoryError) -> Self {
        match err {
            crate::operation::create_repository::CreateRepositoryError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::create_repository::CreateRepositoryError::InvalidTagParameterException(inner) => Error::InvalidTagParameterException(inner),
            crate::operation::create_repository::CreateRepositoryError::KmsException(inner) => Error::KmsException(inner),
            crate::operation::create_repository::CreateRepositoryError::LimitExceededException(inner) => Error::LimitExceededException(inner),
            crate::operation::create_repository::CreateRepositoryError::RepositoryAlreadyExistsException(inner) => Error::RepositoryAlreadyExistsException(inner),
            crate::operation::create_repository::CreateRepositoryError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::create_repository::CreateRepositoryError::TooManyTagsException(inner) => Error::TooManyTagsException(inner),
            crate::operation::create_repository::CreateRepositoryError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError> for Error {
    fn from(err: crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError) -> Self {
        match err {
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::LifecyclePolicyNotFoundException(inner) => Error::LifecyclePolicyNotFoundException(inner),
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError>
    for Error
{
    fn from(
        err: crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError,
    ) -> Self {
        match err {
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError::PullThroughCacheRuleNotFoundException(inner) => Error::PullThroughCacheRuleNotFoundException(inner),
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::delete_pull_through_cache_rule::DeletePullThroughCacheRuleError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::delete_registry_policy::DeleteRegistryPolicyError> for Error {
    fn from(err: crate::operation::delete_registry_policy::DeleteRegistryPolicyError) -> Self {
        match err {
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError::RegistryPolicyNotFoundException(inner) => Error::RegistryPolicyNotFoundException(inner),
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::delete_registry_policy::DeleteRegistryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::delete_repository::DeleteRepositoryError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::delete_repository::DeleteRepositoryError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::delete_repository::DeleteRepositoryError> for Error {
    fn from(err: crate::operation::delete_repository::DeleteRepositoryError) -> Self {
        match err {
            crate::operation::delete_repository::DeleteRepositoryError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_repository::DeleteRepositoryError::KmsException(inner) => Error::KmsException(inner),
            crate::operation::delete_repository::DeleteRepositoryError::RepositoryNotEmptyException(inner) => Error::RepositoryNotEmptyException(inner),
            crate::operation::delete_repository::DeleteRepositoryError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::delete_repository::DeleteRepositoryError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::delete_repository::DeleteRepositoryError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::delete_repository_policy::DeleteRepositoryPolicyError> for Error {
    fn from(err: crate::operation::delete_repository_policy::DeleteRepositoryPolicyError) -> Self {
        match err {
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError::RepositoryPolicyNotFoundException(inner) => Error::RepositoryPolicyNotFoundException(inner),
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::delete_repository_policy::DeleteRepositoryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError, R>> for Error where R: Send + Sync + std::fmt::Debug + 'static {
    fn from(err: aws_smithy_http::result::SdkError<crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError, R>) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(
                                            aws_smithy_types::error::Unhandled::builder()
                                                .meta(aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone())
                                                .source(err)
                                                .build()
                                        ),
        }
    }
}
impl From<crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError>
    for Error
{
    fn from(
        err: crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError,
    ) -> Self {
        match err {
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::ImageNotFoundException(inner) => Error::ImageNotFoundException(inner),
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::describe_image_replication_status::DescribeImageReplicationStatusError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::describe_images::DescribeImagesError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::describe_images::DescribeImagesError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::describe_images::DescribeImagesError> for Error {
    fn from(err: crate::operation::describe_images::DescribeImagesError) -> Self {
        match err {
            crate::operation::describe_images::DescribeImagesError::ImageNotFoundException(
                inner,
            ) => Error::ImageNotFoundException(inner),
            crate::operation::describe_images::DescribeImagesError::InvalidParameterException(
                inner,
            ) => Error::InvalidParameterException(inner),
            crate::operation::describe_images::DescribeImagesError::RepositoryNotFoundException(
                inner,
            ) => Error::RepositoryNotFoundException(inner),
            crate::operation::describe_images::DescribeImagesError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::describe_images::DescribeImagesError::Unhandled(inner) => {
                Error::Unhandled(inner)
            }
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError>
    for Error
{
    fn from(
        err: crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError,
    ) -> Self {
        match err {
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::ImageNotFoundException(inner) => Error::ImageNotFoundException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::ScanNotFoundException(inner) => Error::ScanNotFoundException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::describe_image_scan_findings::DescribeImageScanFindingsError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError>
    for Error
{
    fn from(
        err: crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError,
    ) -> Self {
        match err {
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError::PullThroughCacheRuleNotFoundException(inner) => Error::PullThroughCacheRuleNotFoundException(inner),
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::describe_pull_through_cache_rules::DescribePullThroughCacheRulesError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::describe_registry::DescribeRegistryError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::describe_registry::DescribeRegistryError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::describe_registry::DescribeRegistryError> for Error {
    fn from(err: crate::operation::describe_registry::DescribeRegistryError) -> Self {
        match err {
            crate::operation::describe_registry::DescribeRegistryError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::describe_registry::DescribeRegistryError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::describe_registry::DescribeRegistryError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::describe_registry::DescribeRegistryError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::describe_repositories::DescribeRepositoriesError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::describe_repositories::DescribeRepositoriesError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::describe_repositories::DescribeRepositoriesError> for Error {
    fn from(err: crate::operation::describe_repositories::DescribeRepositoriesError) -> Self {
        match err {
            crate::operation::describe_repositories::DescribeRepositoriesError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::describe_repositories::DescribeRepositoriesError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::describe_repositories::DescribeRepositoriesError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::describe_repositories::DescribeRepositoriesError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_authorization_token::GetAuthorizationTokenError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_authorization_token::GetAuthorizationTokenError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_authorization_token::GetAuthorizationTokenError> for Error {
    fn from(err: crate::operation::get_authorization_token::GetAuthorizationTokenError) -> Self {
        match err {
            crate::operation::get_authorization_token::GetAuthorizationTokenError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_authorization_token::GetAuthorizationTokenError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_authorization_token::GetAuthorizationTokenError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError> for Error {
    fn from(
        err: crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError,
    ) -> Self {
        match err {
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::LayerInaccessibleException(inner) => Error::LayerInaccessibleException(inner),
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::LayersNotFoundException(inner) => Error::LayersNotFoundException(inner),
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_download_url_for_layer::GetDownloadUrlForLayerError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_lifecycle_policy::GetLifecyclePolicyError> for Error {
    fn from(err: crate::operation::get_lifecycle_policy::GetLifecyclePolicyError) -> Self {
        match err {
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::LifecyclePolicyNotFoundException(inner) => Error::LifecyclePolicyNotFoundException(inner),
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError>
    for Error
{
    fn from(
        err: crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError,
    ) -> Self {
        match err {
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError::LifecyclePolicyPreviewNotFoundException(inner) => Error::LifecyclePolicyPreviewNotFoundException(inner),
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_lifecycle_policy_preview::GetLifecyclePolicyPreviewError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_registry_policy::GetRegistryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_registry_policy::GetRegistryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_registry_policy::GetRegistryPolicyError> for Error {
    fn from(err: crate::operation::get_registry_policy::GetRegistryPolicyError) -> Self {
        match err {
            crate::operation::get_registry_policy::GetRegistryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_registry_policy::GetRegistryPolicyError::RegistryPolicyNotFoundException(inner) => Error::RegistryPolicyNotFoundException(inner),
            crate::operation::get_registry_policy::GetRegistryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_registry_policy::GetRegistryPolicyError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::get_registry_policy::GetRegistryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError, R>> for Error where R: Send + Sync + std::fmt::Debug + 'static {
    fn from(err: aws_smithy_http::result::SdkError<crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError, R>) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(
                                            aws_smithy_types::error::Unhandled::builder()
                                                .meta(aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone())
                                                .source(err)
                                                .build()
                                        ),
        }
    }
}
impl From<crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError> for Error {
    fn from(err: crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError) -> Self {
        match err {
            crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::get_registry_scanning_configuration::GetRegistryScanningConfigurationError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::get_repository_policy::GetRepositoryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::get_repository_policy::GetRepositoryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::get_repository_policy::GetRepositoryPolicyError> for Error {
    fn from(err: crate::operation::get_repository_policy::GetRepositoryPolicyError) -> Self {
        match err {
            crate::operation::get_repository_policy::GetRepositoryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::get_repository_policy::GetRepositoryPolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::get_repository_policy::GetRepositoryPolicyError::RepositoryPolicyNotFoundException(inner) => Error::RepositoryPolicyNotFoundException(inner),
            crate::operation::get_repository_policy::GetRepositoryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::get_repository_policy::GetRepositoryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::initiate_layer_upload::InitiateLayerUploadError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::initiate_layer_upload::InitiateLayerUploadError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::initiate_layer_upload::InitiateLayerUploadError> for Error {
    fn from(err: crate::operation::initiate_layer_upload::InitiateLayerUploadError) -> Self {
        match err {
            crate::operation::initiate_layer_upload::InitiateLayerUploadError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::initiate_layer_upload::InitiateLayerUploadError::KmsException(inner) => Error::KmsException(inner),
            crate::operation::initiate_layer_upload::InitiateLayerUploadError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::initiate_layer_upload::InitiateLayerUploadError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::initiate_layer_upload::InitiateLayerUploadError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::list_images::ListImagesError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<crate::operation::list_images::ListImagesError, R>,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::list_images::ListImagesError> for Error {
    fn from(err: crate::operation::list_images::ListImagesError) -> Self {
        match err {
            crate::operation::list_images::ListImagesError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::list_images::ListImagesError::RepositoryNotFoundException(inner) => {
                Error::RepositoryNotFoundException(inner)
            }
            crate::operation::list_images::ListImagesError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::list_images::ListImagesError::Unhandled(inner) => {
                Error::Unhandled(inner)
            }
        }
    }
}
impl<R>
    From<
        aws_smithy_http::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_http::result::SdkError<
            crate::operation::list_tags_for_resource::ListTagsForResourceError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
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::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::list_tags_for_resource::ListTagsForResourceError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::put_image::PutImageError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<crate::operation::put_image::PutImageError, R>,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_image::PutImageError> for Error {
    fn from(err: crate::operation::put_image::PutImageError) -> Self {
        match err {
            crate::operation::put_image::PutImageError::ImageAlreadyExistsException(inner) => {
                Error::ImageAlreadyExistsException(inner)
            }
            crate::operation::put_image::PutImageError::ImageDigestDoesNotMatchException(inner) => {
                Error::ImageDigestDoesNotMatchException(inner)
            }
            crate::operation::put_image::PutImageError::ImageTagAlreadyExistsException(inner) => {
                Error::ImageTagAlreadyExistsException(inner)
            }
            crate::operation::put_image::PutImageError::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::put_image::PutImageError::KmsException(inner) => {
                Error::KmsException(inner)
            }
            crate::operation::put_image::PutImageError::LayersNotFoundException(inner) => {
                Error::LayersNotFoundException(inner)
            }
            crate::operation::put_image::PutImageError::LimitExceededException(inner) => {
                Error::LimitExceededException(inner)
            }
            crate::operation::put_image::PutImageError::ReferencedImagesNotFoundException(
                inner,
            ) => Error::ReferencedImagesNotFoundException(inner),
            crate::operation::put_image::PutImageError::RepositoryNotFoundException(inner) => {
                Error::RepositoryNotFoundException(inner)
            }
            crate::operation::put_image::PutImageError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::put_image::PutImageError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError>
    for Error
{
    fn from(
        err: crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError,
    ) -> Self {
        match err {
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::put_image_scanning_configuration::PutImageScanningConfigurationError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_image_tag_mutability::PutImageTagMutabilityError> for Error {
    fn from(err: crate::operation::put_image_tag_mutability::PutImageTagMutabilityError) -> Self {
        match err {
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_image_tag_mutability::PutImageTagMutabilityError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_lifecycle_policy::PutLifecyclePolicyError> for Error {
    fn from(err: crate::operation::put_lifecycle_policy::PutLifecyclePolicyError) -> Self {
        match err {
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_lifecycle_policy::PutLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::put_registry_policy::PutRegistryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::put_registry_policy::PutRegistryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_registry_policy::PutRegistryPolicyError> for Error {
    fn from(err: crate::operation::put_registry_policy::PutRegistryPolicyError) -> Self {
        match err {
            crate::operation::put_registry_policy::PutRegistryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_registry_policy::PutRegistryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_registry_policy::PutRegistryPolicyError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::put_registry_policy::PutRegistryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError, R>> for Error where R: Send + Sync + std::fmt::Debug + 'static {
    fn from(err: aws_smithy_http::result::SdkError<crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError, R>) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
            _ => Error::Unhandled(
                                            aws_smithy_types::error::Unhandled::builder()
                                                .meta(aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone())
                                                .source(err)
                                                .build()
                                        ),
        }
    }
}
impl From<crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError> for Error {
    fn from(err: crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError) -> Self {
        match err {
            crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::put_registry_scanning_configuration::PutRegistryScanningConfigurationError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::put_replication_configuration::PutReplicationConfigurationError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::put_replication_configuration::PutReplicationConfigurationError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::put_replication_configuration::PutReplicationConfigurationError>
    for Error
{
    fn from(
        err: crate::operation::put_replication_configuration::PutReplicationConfigurationError,
    ) -> Self {
        match err {
            crate::operation::put_replication_configuration::PutReplicationConfigurationError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::put_replication_configuration::PutReplicationConfigurationError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::put_replication_configuration::PutReplicationConfigurationError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::put_replication_configuration::PutReplicationConfigurationError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::set_repository_policy::SetRepositoryPolicyError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::set_repository_policy::SetRepositoryPolicyError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::set_repository_policy::SetRepositoryPolicyError> for Error {
    fn from(err: crate::operation::set_repository_policy::SetRepositoryPolicyError) -> Self {
        match err {
            crate::operation::set_repository_policy::SetRepositoryPolicyError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::set_repository_policy::SetRepositoryPolicyError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::set_repository_policy::SetRepositoryPolicyError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::set_repository_policy::SetRepositoryPolicyError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::start_image_scan::StartImageScanError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::start_image_scan::StartImageScanError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::start_image_scan::StartImageScanError> for Error {
    fn from(err: crate::operation::start_image_scan::StartImageScanError) -> Self {
        match err {
            crate::operation::start_image_scan::StartImageScanError::ImageNotFoundException(inner) => Error::ImageNotFoundException(inner),
            crate::operation::start_image_scan::StartImageScanError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::start_image_scan::StartImageScanError::LimitExceededException(inner) => Error::LimitExceededException(inner),
            crate::operation::start_image_scan::StartImageScanError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::start_image_scan::StartImageScanError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::start_image_scan::StartImageScanError::UnsupportedImageTypeException(inner) => Error::UnsupportedImageTypeException(inner),
            crate::operation::start_image_scan::StartImageScanError::ValidationException(inner) => Error::ValidationException(inner),
            crate::operation::start_image_scan::StartImageScanError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError>
    for Error
{
    fn from(
        err: crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError,
    ) -> Self {
        match err {
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::LifecyclePolicyNotFoundException(inner) => Error::LifecyclePolicyNotFoundException(inner),
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::LifecyclePolicyPreviewInProgressException(inner) => Error::LifecyclePolicyPreviewInProgressException(inner),
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::start_lifecycle_policy_preview::StartLifecyclePolicyPreviewError::Unhandled(inner) => Error::Unhandled(inner),
        }
    }
}
impl<R> From<aws_smithy_http::result::SdkError<crate::operation::tag_resource::TagResourceError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<crate::operation::tag_resource::TagResourceError, R>,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
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::InvalidParameterException(inner) => {
                Error::InvalidParameterException(inner)
            }
            crate::operation::tag_resource::TagResourceError::InvalidTagParameterException(
                inner,
            ) => Error::InvalidTagParameterException(inner),
            crate::operation::tag_resource::TagResourceError::RepositoryNotFoundException(
                inner,
            ) => Error::RepositoryNotFoundException(inner),
            crate::operation::tag_resource::TagResourceError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::tag_resource::TagResourceError::TooManyTagsException(inner) => {
                Error::TooManyTagsException(inner)
            }
            crate::operation::tag_resource::TagResourceError::Unhandled(inner) => {
                Error::Unhandled(inner)
            }
        }
    }
}
impl<R>
    From<aws_smithy_http::result::SdkError<crate::operation::untag_resource::UntagResourceError, R>>
    for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::untag_resource::UntagResourceError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
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::InvalidParameterException(
                inner,
            ) => Error::InvalidParameterException(inner),
            crate::operation::untag_resource::UntagResourceError::InvalidTagParameterException(
                inner,
            ) => Error::InvalidTagParameterException(inner),
            crate::operation::untag_resource::UntagResourceError::RepositoryNotFoundException(
                inner,
            ) => Error::RepositoryNotFoundException(inner),
            crate::operation::untag_resource::UntagResourceError::ServerException(inner) => {
                Error::ServerException(inner)
            }
            crate::operation::untag_resource::UntagResourceError::TooManyTagsException(inner) => {
                Error::TooManyTagsException(inner)
            }
            crate::operation::untag_resource::UntagResourceError::Unhandled(inner) => {
                Error::Unhandled(inner)
            }
        }
    }
}
impl<R>
    From<
        aws_smithy_http::result::SdkError<
            crate::operation::upload_layer_part::UploadLayerPartError,
            R,
        >,
    > for Error
where
    R: Send + Sync + std::fmt::Debug + 'static,
{
    fn from(
        err: aws_smithy_http::result::SdkError<
            crate::operation::upload_layer_part::UploadLayerPartError,
            R,
        >,
    ) -> Self {
        match err {
            aws_smithy_http::result::SdkError::ServiceError(context) => {
                Self::from(context.into_err())
            }
            _ => Error::Unhandled(
                aws_smithy_types::error::Unhandled::builder()
                    .meta(
                        aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
                    )
                    .source(err)
                    .build(),
            ),
        }
    }
}
impl From<crate::operation::upload_layer_part::UploadLayerPartError> for Error {
    fn from(err: crate::operation::upload_layer_part::UploadLayerPartError) -> Self {
        match err {
            crate::operation::upload_layer_part::UploadLayerPartError::InvalidLayerPartException(inner) => Error::InvalidLayerPartException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::InvalidParameterException(inner) => Error::InvalidParameterException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::KmsException(inner) => Error::KmsException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::LimitExceededException(inner) => Error::LimitExceededException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::RepositoryNotFoundException(inner) => Error::RepositoryNotFoundException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::ServerException(inner) => Error::ServerException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::UploadNotFoundException(inner) => Error::UploadNotFoundException(inner),
            crate::operation::upload_layer_part::UploadLayerPartError::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::EmptyUploadException(inner) => inner.source(),
            Error::ImageAlreadyExistsException(inner) => inner.source(),
            Error::ImageDigestDoesNotMatchException(inner) => inner.source(),
            Error::ImageNotFoundException(inner) => inner.source(),
            Error::ImageTagAlreadyExistsException(inner) => inner.source(),
            Error::InvalidLayerException(inner) => inner.source(),
            Error::InvalidLayerPartException(inner) => inner.source(),
            Error::InvalidParameterException(inner) => inner.source(),
            Error::InvalidTagParameterException(inner) => inner.source(),
            Error::KmsException(inner) => inner.source(),
            Error::LayerAlreadyExistsException(inner) => inner.source(),
            Error::LayerInaccessibleException(inner) => inner.source(),
            Error::LayerPartTooSmallException(inner) => inner.source(),
            Error::LayersNotFoundException(inner) => inner.source(),
            Error::LifecyclePolicyNotFoundException(inner) => inner.source(),
            Error::LifecyclePolicyPreviewInProgressException(inner) => inner.source(),
            Error::LifecyclePolicyPreviewNotFoundException(inner) => inner.source(),
            Error::LimitExceededException(inner) => inner.source(),
            Error::PullThroughCacheRuleAlreadyExistsException(inner) => inner.source(),
            Error::PullThroughCacheRuleNotFoundException(inner) => inner.source(),
            Error::ReferencedImagesNotFoundException(inner) => inner.source(),
            Error::RegistryPolicyNotFoundException(inner) => inner.source(),
            Error::RepositoryAlreadyExistsException(inner) => inner.source(),
            Error::RepositoryNotEmptyException(inner) => inner.source(),
            Error::RepositoryNotFoundException(inner) => inner.source(),
            Error::RepositoryPolicyNotFoundException(inner) => inner.source(),
            Error::ScanNotFoundException(inner) => inner.source(),
            Error::ServerException(inner) => inner.source(),
            Error::TooManyTagsException(inner) => inner.source(),
            Error::UnsupportedImageTypeException(inner) => inner.source(),
            Error::UnsupportedUpstreamRegistryException(inner) => inner.source(),
            Error::UploadNotFoundException(inner) => inner.source(),
            Error::ValidationException(inner) => inner.source(),
            Error::Unhandled(inner) => inner.source(),
        }
    }
}
impl aws_http::request_id::RequestId for Error {
    fn request_id(&self) -> Option<&str> {
        match self {
            Self::EmptyUploadException(e) => e.request_id(),
            Self::ImageAlreadyExistsException(e) => e.request_id(),
            Self::ImageDigestDoesNotMatchException(e) => e.request_id(),
            Self::ImageNotFoundException(e) => e.request_id(),
            Self::ImageTagAlreadyExistsException(e) => e.request_id(),
            Self::InvalidLayerException(e) => e.request_id(),
            Self::InvalidLayerPartException(e) => e.request_id(),
            Self::InvalidParameterException(e) => e.request_id(),
            Self::InvalidTagParameterException(e) => e.request_id(),
            Self::KmsException(e) => e.request_id(),
            Self::LayerAlreadyExistsException(e) => e.request_id(),
            Self::LayerInaccessibleException(e) => e.request_id(),
            Self::LayerPartTooSmallException(e) => e.request_id(),
            Self::LayersNotFoundException(e) => e.request_id(),
            Self::LifecyclePolicyNotFoundException(e) => e.request_id(),
            Self::LifecyclePolicyPreviewInProgressException(e) => e.request_id(),
            Self::LifecyclePolicyPreviewNotFoundException(e) => e.request_id(),
            Self::LimitExceededException(e) => e.request_id(),
            Self::PullThroughCacheRuleAlreadyExistsException(e) => e.request_id(),
            Self::PullThroughCacheRuleNotFoundException(e) => e.request_id(),
            Self::ReferencedImagesNotFoundException(e) => e.request_id(),
            Self::RegistryPolicyNotFoundException(e) => e.request_id(),
            Self::RepositoryAlreadyExistsException(e) => e.request_id(),
            Self::RepositoryNotEmptyException(e) => e.request_id(),
            Self::RepositoryNotFoundException(e) => e.request_id(),
            Self::RepositoryPolicyNotFoundException(e) => e.request_id(),
            Self::ScanNotFoundException(e) => e.request_id(),
            Self::ServerException(e) => e.request_id(),
            Self::TooManyTagsException(e) => e.request_id(),
            Self::UnsupportedImageTypeException(e) => e.request_id(),
            Self::UnsupportedUpstreamRegistryException(e) => e.request_id(),
            Self::UploadNotFoundException(e) => e.request_id(),
            Self::ValidationException(e) => e.request_id(),
            Self::Unhandled(e) => e.request_id(),
        }
    }
}