aws-sdk-route53 0.24.0

AWS SDK for Amazon Route 53
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub fn parse_http_generic_error(
    response: &http::Response<bytes::Bytes>,
) -> Result<aws_smithy_types::Error, aws_smithy_xml::decode::XmlDecodeError> {
    crate::rest_xml_wrapped_errors::parse_generic_error(response.body().as_ref())
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_concurrent_modification_xml_err(
    inp: &[u8],
    mut builder: crate::error::concurrent_modification::Builder,
) -> Result<crate::error::concurrent_modification::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#ConcurrentModification$message */ =>  {
                let var_1 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_1);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_input_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_input::Builder,
) -> Result<crate::error::invalid_input::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidInput$message */ =>  {
                let var_2 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_2);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_key_signing_key_status_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_key_signing_key_status::Builder,
) -> Result<
    crate::error::invalid_key_signing_key_status::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidKeySigningKeyStatus$message */ =>  {
                let var_3 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_3);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_kms_arn_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_kms_arn::Builder,
) -> Result<crate::error::invalid_kms_arn::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidKMSArn$message */ =>  {
                let var_4 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_4);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_signing_status_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_signing_status::Builder,
) -> Result<crate::error::invalid_signing_status::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidSigningStatus$message */ =>  {
                let var_5 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_5);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_key_signing_key_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_key_signing_key::Builder,
) -> Result<crate::error::no_such_key_signing_key::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchKeySigningKey$message */ =>  {
                let var_6 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_6);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_activate_key_signing_key(
    inp: &[u8],
    mut builder: crate::output::activate_key_signing_key_output::Builder,
) -> Result<
    crate::output::activate_key_signing_key_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ActivateKeySigningKeyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ActivateKeySigningKeyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#ActivateKeySigningKeyOutput$ChangeInfo */ =>  {
                let var_7 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_7);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_conflicting_domain_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::conflicting_domain_exists::Builder,
) -> Result<crate::error::conflicting_domain_exists::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#ConflictingDomainExists$message */ =>  {
                let var_8 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_8);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_vpc_id_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_vpc_id::Builder,
) -> Result<crate::error::invalid_vpc_id::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidVPCId$message */ =>  {
                let var_9 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_9);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_limits_exceeded_xml_err(
    inp: &[u8],
    mut builder: crate::error::limits_exceeded::Builder,
) -> Result<crate::error::limits_exceeded::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#LimitsExceeded$message */ =>  {
                let var_10 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_10);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_hosted_zone_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_hosted_zone::Builder,
) -> Result<crate::error::no_such_hosted_zone::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchHostedZone$message */ =>  {
                let var_11 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_11);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_not_authorized_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::not_authorized_exception::Builder,
) -> Result<crate::error::not_authorized_exception::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NotAuthorizedException$message */ =>  {
                let var_12 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_12);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_prior_request_not_complete_xml_err(
    inp: &[u8],
    mut builder: crate::error::prior_request_not_complete::Builder,
) -> Result<crate::error::prior_request_not_complete::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#PriorRequestNotComplete$message */ =>  {
                let var_13 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_13);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_public_zone_vpc_association_xml_err(
    inp: &[u8],
    mut builder: crate::error::public_zone_vpc_association::Builder,
) -> Result<
    crate::error::public_zone_vpc_association::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#PublicZoneVPCAssociation$message */ =>  {
                let var_14 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_14);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_associate_vpc_with_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::associate_vpc_with_hosted_zone_output::Builder,
) -> Result<
    crate::output::associate_vpc_with_hosted_zone_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("AssociateVPCWithHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected AssociateVPCWithHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#AssociateVPCWithHostedZoneOutput$ChangeInfo */ =>  {
                let var_15 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_15);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_cidr_block_in_use_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::cidr_block_in_use_exception::Builder,
) -> Result<
    crate::error::cidr_block_in_use_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#CidrBlockInUseException$Message */ =>  {
                let var_16 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_16);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_cidr_collection_version_mismatch_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::cidr_collection_version_mismatch_exception::Builder,
) -> Result<
    crate::error::cidr_collection_version_mismatch_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#CidrCollectionVersionMismatchException$Message */ =>  {
                let var_17 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_17);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_cidr_collection_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_cidr_collection_exception::Builder,
) -> Result<
    crate::error::no_such_cidr_collection_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#NoSuchCidrCollectionException$Message */ =>  {
                let var_18 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_18);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_change_cidr_collection(
    inp: &[u8],
    mut builder: crate::output::change_cidr_collection_output::Builder,
) -> Result<
    crate::output::change_cidr_collection_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ChangeCidrCollectionResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ChangeCidrCollectionResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53.synthetic#ChangeCidrCollectionOutput$Id */ =>  {
                let var_19 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_19);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_change_batch_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_change_batch::Builder,
) -> Result<crate::error::invalid_change_batch::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("messages") /* messages com.amazonaws.route53#InvalidChangeBatch$messages */ =>  {
                let var_20 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_error_messages(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_messages(var_20);
            }
            ,
            s if s.matches("message") /* message com.amazonaws.route53#InvalidChangeBatch$message */ =>  {
                let var_21 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_21);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_health_check_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_health_check::Builder,
) -> Result<crate::error::no_such_health_check::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchHealthCheck$message */ =>  {
                let var_22 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_22);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_change_resource_record_sets(
    inp: &[u8],
    mut builder: crate::output::change_resource_record_sets_output::Builder,
) -> Result<
    crate::output::change_resource_record_sets_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ChangeResourceRecordSetsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ChangeResourceRecordSetsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#ChangeResourceRecordSetsOutput$ChangeInfo */ =>  {
                let var_23 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_23);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_throttling_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::throttling_exception::Builder,
) -> Result<crate::error::throttling_exception::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#ThrottlingException$message */ =>  {
                let var_24 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_24);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_cidr_collection_already_exists_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::cidr_collection_already_exists_exception::Builder,
) -> Result<
    crate::error::cidr_collection_already_exists_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#CidrCollectionAlreadyExistsException$Message */ =>  {
                let var_25 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_25);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_cidr_collection(
    inp: &[u8],
    mut builder: crate::output::create_cidr_collection_output::Builder,
) -> Result<
    crate::output::create_cidr_collection_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateCidrCollectionResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateCidrCollectionResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Collection") /* Collection com.amazonaws.route53.synthetic#CreateCidrCollectionOutput$Collection */ =>  {
                let var_26 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_cidr_collection(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_collection(var_26);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_health_check_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::health_check_already_exists::Builder,
) -> Result<
    crate::error::health_check_already_exists::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HealthCheckAlreadyExists$message */ =>  {
                let var_27 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_27);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_health_checks_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_health_checks::Builder,
) -> Result<crate::error::too_many_health_checks::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyHealthChecks$message */ =>  {
                let var_28 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_28);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_health_check(
    inp: &[u8],
    mut builder: crate::output::create_health_check_output::Builder,
) -> Result<
    crate::output::create_health_check_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateHealthCheckResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateHealthCheckResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheck") /* HealthCheck com.amazonaws.route53.synthetic#CreateHealthCheckOutput$HealthCheck */ =>  {
                let var_29 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_health_check(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check(var_29);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_delegation_set_not_available_xml_err(
    inp: &[u8],
    mut builder: crate::error::delegation_set_not_available::Builder,
) -> Result<
    crate::error::delegation_set_not_available::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DelegationSetNotAvailable$message */ =>  {
                let var_30 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_30);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_delegation_set_not_reusable_xml_err(
    inp: &[u8],
    mut builder: crate::error::delegation_set_not_reusable::Builder,
) -> Result<
    crate::error::delegation_set_not_reusable::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DelegationSetNotReusable$message */ =>  {
                let var_31 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_31);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_hosted_zone_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::hosted_zone_already_exists::Builder,
) -> Result<crate::error::hosted_zone_already_exists::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HostedZoneAlreadyExists$message */ =>  {
                let var_32 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_32);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_domain_name_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_domain_name::Builder,
) -> Result<crate::error::invalid_domain_name::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidDomainName$message */ =>  {
                let var_33 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_33);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_delegation_set_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_delegation_set::Builder,
) -> Result<crate::error::no_such_delegation_set::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchDelegationSet$message */ =>  {
                let var_34 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_34);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_hosted_zones_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_hosted_zones::Builder,
) -> Result<crate::error::too_many_hosted_zones::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyHostedZones$message */ =>  {
                let var_35 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_35);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::create_hosted_zone_output::Builder,
) -> Result<crate::output::create_hosted_zone_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZone") /* HostedZone com.amazonaws.route53.synthetic#CreateHostedZoneOutput$HostedZone */ =>  {
                let var_36 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zone(var_36);
            }
            ,
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#CreateHostedZoneOutput$ChangeInfo */ =>  {
                let var_37 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_37);
            }
            ,
            s if s.matches("DelegationSet") /* DelegationSet com.amazonaws.route53.synthetic#CreateHostedZoneOutput$DelegationSet */ =>  {
                let var_38 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_delegation_set(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_delegation_set(var_38);
            }
            ,
            s if s.matches("VPC") /* VPC com.amazonaws.route53.synthetic#CreateHostedZoneOutput$VPC */ =>  {
                let var_39 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_vpc(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_vpc(var_39);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_argument_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_argument::Builder,
) -> Result<crate::error::invalid_argument::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidArgument$message */ =>  {
                let var_40 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_40);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_key_signing_key_name_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_key_signing_key_name::Builder,
) -> Result<
    crate::error::invalid_key_signing_key_name::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidKeySigningKeyName$message */ =>  {
                let var_41 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_41);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_key_signing_key_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::key_signing_key_already_exists::Builder,
) -> Result<
    crate::error::key_signing_key_already_exists::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#KeySigningKeyAlreadyExists$message */ =>  {
                let var_42 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_42);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_key_signing_keys_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_key_signing_keys::Builder,
) -> Result<crate::error::too_many_key_signing_keys::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyKeySigningKeys$message */ =>  {
                let var_43 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_43);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_key_signing_key(
    inp: &[u8],
    mut builder: crate::output::create_key_signing_key_output::Builder,
) -> Result<
    crate::output::create_key_signing_key_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateKeySigningKeyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateKeySigningKeyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#CreateKeySigningKeyOutput$ChangeInfo */ =>  {
                let var_44 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_44);
            }
            ,
            s if s.matches("KeySigningKey") /* KeySigningKey com.amazonaws.route53.synthetic#CreateKeySigningKeyOutput$KeySigningKey */ =>  {
                let var_45 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_key_signing_key(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_key_signing_key(var_45);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_insufficient_cloud_watch_logs_resource_policy_xml_err(
    inp: &[u8],
    mut builder: crate::error::insufficient_cloud_watch_logs_resource_policy::Builder,
) -> Result<
    crate::error::insufficient_cloud_watch_logs_resource_policy::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InsufficientCloudWatchLogsResourcePolicy$message */ =>  {
                let var_46 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_46);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_cloud_watch_logs_log_group_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_cloud_watch_logs_log_group::Builder,
) -> Result<
    crate::error::no_such_cloud_watch_logs_log_group::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchCloudWatchLogsLogGroup$message */ =>  {
                let var_47 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_47);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_query_logging_config_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::query_logging_config_already_exists::Builder,
) -> Result<
    crate::error::query_logging_config_already_exists::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#QueryLoggingConfigAlreadyExists$message */ =>  {
                let var_48 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_48);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_query_logging_config(
    inp: &[u8],
    mut builder: crate::output::create_query_logging_config_output::Builder,
) -> Result<
    crate::output::create_query_logging_config_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateQueryLoggingConfigResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateQueryLoggingConfigResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("QueryLoggingConfig") /* QueryLoggingConfig com.amazonaws.route53.synthetic#CreateQueryLoggingConfigOutput$QueryLoggingConfig */ =>  {
                let var_49 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_query_logging_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_query_logging_config(var_49);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_delegation_set_already_created_xml_err(
    inp: &[u8],
    mut builder: crate::error::delegation_set_already_created::Builder,
) -> Result<
    crate::error::delegation_set_already_created::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DelegationSetAlreadyCreated$message */ =>  {
                let var_50 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_50);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_delegation_set_already_reusable_xml_err(
    inp: &[u8],
    mut builder: crate::error::delegation_set_already_reusable::Builder,
) -> Result<
    crate::error::delegation_set_already_reusable::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DelegationSetAlreadyReusable$message */ =>  {
                let var_51 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_51);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_hosted_zone_not_found_xml_err(
    inp: &[u8],
    mut builder: crate::error::hosted_zone_not_found::Builder,
) -> Result<crate::error::hosted_zone_not_found::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HostedZoneNotFound$message */ =>  {
                let var_52 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_52);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_reusable_delegation_set(
    inp: &[u8],
    mut builder: crate::output::create_reusable_delegation_set_output::Builder,
) -> Result<
    crate::output::create_reusable_delegation_set_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateReusableDelegationSetResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateReusableDelegationSetResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("DelegationSet") /* DelegationSet com.amazonaws.route53.synthetic#CreateReusableDelegationSetOutput$DelegationSet */ =>  {
                let var_53 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_delegation_set(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_delegation_set(var_53);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_traffic_policy_document_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_traffic_policy_document::Builder,
) -> Result<
    crate::error::invalid_traffic_policy_document::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidTrafficPolicyDocument$message */ =>  {
                let var_54 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_54);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_traffic_policies_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_traffic_policies::Builder,
) -> Result<crate::error::too_many_traffic_policies::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyTrafficPolicies$message */ =>  {
                let var_55 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_55);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_traffic_policy_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::traffic_policy_already_exists::Builder,
) -> Result<
    crate::error::traffic_policy_already_exists::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TrafficPolicyAlreadyExists$message */ =>  {
                let var_56 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_56);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_traffic_policy(
    inp: &[u8],
    mut builder: crate::output::create_traffic_policy_output::Builder,
) -> Result<
    crate::output::create_traffic_policy_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateTrafficPolicyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateTrafficPolicyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicy") /* TrafficPolicy com.amazonaws.route53.synthetic#CreateTrafficPolicyOutput$TrafficPolicy */ =>  {
                let var_57 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy(var_57);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_traffic_policy_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_traffic_policy::Builder,
) -> Result<crate::error::no_such_traffic_policy::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchTrafficPolicy$message */ =>  {
                let var_58 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_58);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_traffic_policy_instances_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_traffic_policy_instances::Builder,
) -> Result<
    crate::error::too_many_traffic_policy_instances::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyTrafficPolicyInstances$message */ =>  {
                let var_59 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_59);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_traffic_policy_instance_already_exists_xml_err(
    inp: &[u8],
    mut builder: crate::error::traffic_policy_instance_already_exists::Builder,
) -> Result<
    crate::error::traffic_policy_instance_already_exists::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TrafficPolicyInstanceAlreadyExists$message */ =>  {
                let var_60 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_60);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_traffic_policy_instance(
    inp: &[u8],
    mut builder: crate::output::create_traffic_policy_instance_output::Builder,
) -> Result<
    crate::output::create_traffic_policy_instance_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateTrafficPolicyInstanceResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateTrafficPolicyInstanceResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstance") /* TrafficPolicyInstance com.amazonaws.route53.synthetic#CreateTrafficPolicyInstanceOutput$TrafficPolicyInstance */ =>  {
                let var_61 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy_instance(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance(var_61);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_traffic_policy_versions_for_current_policy_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_traffic_policy_versions_for_current_policy::Builder,
) -> Result<
    crate::error::too_many_traffic_policy_versions_for_current_policy::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyTrafficPolicyVersionsForCurrentPolicy$message */ =>  {
                let var_62 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_62);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_traffic_policy_version(
    inp: &[u8],
    mut builder: crate::output::create_traffic_policy_version_output::Builder,
) -> Result<
    crate::output::create_traffic_policy_version_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateTrafficPolicyVersionResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateTrafficPolicyVersionResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicy") /* TrafficPolicy com.amazonaws.route53.synthetic#CreateTrafficPolicyVersionOutput$TrafficPolicy */ =>  {
                let var_63 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy(var_63);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_too_many_vpc_association_authorizations_xml_err(
    inp: &[u8],
    mut builder: crate::error::too_many_vpc_association_authorizations::Builder,
) -> Result<
    crate::error::too_many_vpc_association_authorizations::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TooManyVPCAssociationAuthorizations$message */ =>  {
                let var_64 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_64);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_create_vpc_association_authorization(
    inp: &[u8],
    mut builder: crate::output::create_vpc_association_authorization_output::Builder,
) -> Result<
    crate::output::create_vpc_association_authorization_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("CreateVPCAssociationAuthorizationResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected CreateVPCAssociationAuthorizationResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53.synthetic#CreateVPCAssociationAuthorizationOutput$HostedZoneId */ =>  {
                let var_65 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_65);
            }
            ,
            s if s.matches("VPC") /* VPC com.amazonaws.route53.synthetic#CreateVPCAssociationAuthorizationOutput$VPC */ =>  {
                let var_66 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_vpc(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_vpc(var_66);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_key_signing_key_in_parent_ds_record_xml_err(
    inp: &[u8],
    mut builder: crate::error::key_signing_key_in_parent_ds_record::Builder,
) -> Result<
    crate::error::key_signing_key_in_parent_ds_record::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#KeySigningKeyInParentDSRecord$message */ =>  {
                let var_67 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_67);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_key_signing_key_in_use_xml_err(
    inp: &[u8],
    mut builder: crate::error::key_signing_key_in_use::Builder,
) -> Result<crate::error::key_signing_key_in_use::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#KeySigningKeyInUse$message */ =>  {
                let var_68 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_68);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_deactivate_key_signing_key(
    inp: &[u8],
    mut builder: crate::output::deactivate_key_signing_key_output::Builder,
) -> Result<
    crate::output::deactivate_key_signing_key_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("DeactivateKeySigningKeyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected DeactivateKeySigningKeyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#DeactivateKeySigningKeyOutput$ChangeInfo */ =>  {
                let var_69 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_69);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_cidr_collection_in_use_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::cidr_collection_in_use_exception::Builder,
) -> Result<
    crate::error::cidr_collection_in_use_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#CidrCollectionInUseException$Message */ =>  {
                let var_70 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_70);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_health_check_in_use_xml_err(
    inp: &[u8],
    mut builder: crate::error::health_check_in_use::Builder,
) -> Result<crate::error::health_check_in_use::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HealthCheckInUse$message */ =>  {
                let var_71 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_71);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_hosted_zone_not_empty_xml_err(
    inp: &[u8],
    mut builder: crate::error::hosted_zone_not_empty::Builder,
) -> Result<crate::error::hosted_zone_not_empty::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HostedZoneNotEmpty$message */ =>  {
                let var_72 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_72);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_delete_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::delete_hosted_zone_output::Builder,
) -> Result<crate::output::delete_hosted_zone_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("DeleteHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected DeleteHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#DeleteHostedZoneOutput$ChangeInfo */ =>  {
                let var_73 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_73);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_delete_key_signing_key(
    inp: &[u8],
    mut builder: crate::output::delete_key_signing_key_output::Builder,
) -> Result<
    crate::output::delete_key_signing_key_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("DeleteKeySigningKeyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected DeleteKeySigningKeyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#DeleteKeySigningKeyOutput$ChangeInfo */ =>  {
                let var_74 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_74);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_query_logging_config_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_query_logging_config::Builder,
) -> Result<
    crate::error::no_such_query_logging_config::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchQueryLoggingConfig$message */ =>  {
                let var_75 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_75);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_delegation_set_in_use_xml_err(
    inp: &[u8],
    mut builder: crate::error::delegation_set_in_use::Builder,
) -> Result<crate::error::delegation_set_in_use::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DelegationSetInUse$message */ =>  {
                let var_76 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_76);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_traffic_policy_in_use_xml_err(
    inp: &[u8],
    mut builder: crate::error::traffic_policy_in_use::Builder,
) -> Result<crate::error::traffic_policy_in_use::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#TrafficPolicyInUse$message */ =>  {
                let var_77 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_77);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_traffic_policy_instance_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_traffic_policy_instance::Builder,
) -> Result<
    crate::error::no_such_traffic_policy_instance::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchTrafficPolicyInstance$message */ =>  {
                let var_78 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_78);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_vpc_association_authorization_not_found_xml_err(
    inp: &[u8],
    mut builder: crate::error::vpc_association_authorization_not_found::Builder,
) -> Result<
    crate::error::vpc_association_authorization_not_found::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#VPCAssociationAuthorizationNotFound$message */ =>  {
                let var_79 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_79);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_dnssec_not_found_xml_err(
    inp: &[u8],
    mut builder: crate::error::dnssec_not_found::Builder,
) -> Result<crate::error::dnssec_not_found::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#DNSSECNotFound$message */ =>  {
                let var_80 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_80);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_disable_hosted_zone_dnssec(
    inp: &[u8],
    mut builder: crate::output::disable_hosted_zone_dnssec_output::Builder,
) -> Result<
    crate::output::disable_hosted_zone_dnssec_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("DisableHostedZoneDNSSECResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected DisableHostedZoneDNSSECResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#DisableHostedZoneDNSSECOutput$ChangeInfo */ =>  {
                let var_81 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_81);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_last_vpc_association_xml_err(
    inp: &[u8],
    mut builder: crate::error::last_vpc_association::Builder,
) -> Result<crate::error::last_vpc_association::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#LastVPCAssociation$message */ =>  {
                let var_82 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_82);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_vpc_association_not_found_xml_err(
    inp: &[u8],
    mut builder: crate::error::vpc_association_not_found::Builder,
) -> Result<crate::error::vpc_association_not_found::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#VPCAssociationNotFound$message */ =>  {
                let var_83 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_83);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_disassociate_vpc_from_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::disassociate_vpc_from_hosted_zone_output::Builder,
) -> Result<
    crate::output::disassociate_vpc_from_hosted_zone_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("DisassociateVPCFromHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected DisassociateVPCFromHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#DisassociateVPCFromHostedZoneOutput$ChangeInfo */ =>  {
                let var_84 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_84);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_hosted_zone_partially_delegated_xml_err(
    inp: &[u8],
    mut builder: crate::error::hosted_zone_partially_delegated::Builder,
) -> Result<
    crate::error::hosted_zone_partially_delegated::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HostedZonePartiallyDelegated$message */ =>  {
                let var_85 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_85);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_key_signing_key_with_active_status_not_found_xml_err(
    inp: &[u8],
    mut builder: crate::error::key_signing_key_with_active_status_not_found::Builder,
) -> Result<
    crate::error::key_signing_key_with_active_status_not_found::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#KeySigningKeyWithActiveStatusNotFound$message */ =>  {
                let var_86 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_86);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_enable_hosted_zone_dnssec(
    inp: &[u8],
    mut builder: crate::output::enable_hosted_zone_dnssec_output::Builder,
) -> Result<
    crate::output::enable_hosted_zone_dnssec_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("EnableHostedZoneDNSSECResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected EnableHostedZoneDNSSECResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#EnableHostedZoneDNSSECOutput$ChangeInfo */ =>  {
                let var_87 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_87);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_account_limit(
    inp: &[u8],
    mut builder: crate::output::get_account_limit_output::Builder,
) -> Result<crate::output::get_account_limit_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetAccountLimitResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetAccountLimitResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Limit") /* Limit com.amazonaws.route53.synthetic#GetAccountLimitOutput$Limit */ =>  {
                let var_88 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_account_limit(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_limit(var_88);
            }
            ,
            s if s.matches("Count") /* Count com.amazonaws.route53.synthetic#GetAccountLimitOutput$Count */ =>  {
                let var_89 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#UsageCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_count(var_89);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_change_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_change::Builder,
) -> Result<crate::error::no_such_change::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchChange$message */ =>  {
                let var_90 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_90);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_change(
    inp: &[u8],
    mut builder: crate::output::get_change_output::Builder,
) -> Result<crate::output::get_change_output::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetChangeResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetChangeResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChangeInfo") /* ChangeInfo com.amazonaws.route53.synthetic#GetChangeOutput$ChangeInfo */ =>  {
                let var_91 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_change_info(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_change_info(var_91);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_checker_ip_ranges(
    inp: &[u8],
    mut builder: crate::output::get_checker_ip_ranges_output::Builder,
) -> Result<
    crate::output::get_checker_ip_ranges_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetCheckerIpRangesResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetCheckerIpRangesResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("CheckerIpRanges") /* CheckerIpRanges com.amazonaws.route53.synthetic#GetCheckerIpRangesOutput$CheckerIpRanges */ =>  {
                let var_92 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_checker_ip_ranges(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_checker_ip_ranges(var_92);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_dnssec(
    inp: &[u8],
    mut builder: crate::output::get_dnssec_output::Builder,
) -> Result<crate::output::get_dnssec_output::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetDNSSECResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetDNSSECResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Status") /* Status com.amazonaws.route53.synthetic#GetDNSSECOutput$Status */ =>  {
                let var_93 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_dnssec_status(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_status(var_93);
            }
            ,
            s if s.matches("KeySigningKeys") /* KeySigningKeys com.amazonaws.route53.synthetic#GetDNSSECOutput$KeySigningKeys */ =>  {
                let var_94 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_key_signing_keys(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_key_signing_keys(var_94);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_geo_location_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_geo_location::Builder,
) -> Result<crate::error::no_such_geo_location::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#NoSuchGeoLocation$message */ =>  {
                let var_95 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_95);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_geo_location(
    inp: &[u8],
    mut builder: crate::output::get_geo_location_output::Builder,
) -> Result<crate::output::get_geo_location_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetGeoLocationResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetGeoLocationResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("GeoLocationDetails") /* GeoLocationDetails com.amazonaws.route53.synthetic#GetGeoLocationOutput$GeoLocationDetails */ =>  {
                let var_96 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_geo_location_details(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_geo_location_details(var_96);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_incompatible_version_xml_err(
    inp: &[u8],
    mut builder: crate::error::incompatible_version::Builder,
) -> Result<crate::error::incompatible_version::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#IncompatibleVersion$message */ =>  {
                let var_97 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_97);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_health_check(
    inp: &[u8],
    mut builder: crate::output::get_health_check_output::Builder,
) -> Result<crate::output::get_health_check_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHealthCheckResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHealthCheckResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheck") /* HealthCheck com.amazonaws.route53.synthetic#GetHealthCheckOutput$HealthCheck */ =>  {
                let var_98 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_health_check(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check(var_98);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_health_check_count(
    inp: &[u8],
    mut builder: crate::output::get_health_check_count_output::Builder,
) -> Result<
    crate::output::get_health_check_count_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHealthCheckCountResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHealthCheckCountResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheckCount") /* HealthCheckCount com.amazonaws.route53.synthetic#GetHealthCheckCountOutput$HealthCheckCount */ =>  {
                let var_99 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#HealthCheckCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_health_check_count(var_99);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_health_check_last_failure_reason(
    inp: &[u8],
    mut builder: crate::output::get_health_check_last_failure_reason_output::Builder,
) -> Result<
    crate::output::get_health_check_last_failure_reason_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHealthCheckLastFailureReasonResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHealthCheckLastFailureReasonResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheckObservations") /* HealthCheckObservations com.amazonaws.route53.synthetic#GetHealthCheckLastFailureReasonOutput$HealthCheckObservations */ =>  {
                let var_100 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_health_check_observations(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check_observations(var_100);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_health_check_status(
    inp: &[u8],
    mut builder: crate::output::get_health_check_status_output::Builder,
) -> Result<
    crate::output::get_health_check_status_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHealthCheckStatusResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHealthCheckStatusResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheckObservations") /* HealthCheckObservations com.amazonaws.route53.synthetic#GetHealthCheckStatusOutput$HealthCheckObservations */ =>  {
                let var_101 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_health_check_observations(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check_observations(var_101);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::get_hosted_zone_output::Builder,
) -> Result<crate::output::get_hosted_zone_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZone") /* HostedZone com.amazonaws.route53.synthetic#GetHostedZoneOutput$HostedZone */ =>  {
                let var_102 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zone(var_102);
            }
            ,
            s if s.matches("VPCs") /* VPCs com.amazonaws.route53.synthetic#GetHostedZoneOutput$VPCs */ =>  {
                let var_103 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_vp_cs(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_vp_cs(var_103);
            }
            ,
            s if s.matches("DelegationSet") /* DelegationSet com.amazonaws.route53.synthetic#GetHostedZoneOutput$DelegationSet */ =>  {
                let var_104 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_delegation_set(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_delegation_set(var_104);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_hosted_zone_count(
    inp: &[u8],
    mut builder: crate::output::get_hosted_zone_count_output::Builder,
) -> Result<
    crate::output::get_hosted_zone_count_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHostedZoneCountResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHostedZoneCountResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZoneCount") /* HostedZoneCount com.amazonaws.route53.synthetic#GetHostedZoneCountOutput$HostedZoneCount */ =>  {
                let var_105 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#HostedZoneCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_count(var_105);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_hosted_zone_not_private_xml_err(
    inp: &[u8],
    mut builder: crate::error::hosted_zone_not_private::Builder,
) -> Result<crate::error::hosted_zone_not_private::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HostedZoneNotPrivate$message */ =>  {
                let var_106 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_106);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_hosted_zone_limit(
    inp: &[u8],
    mut builder: crate::output::get_hosted_zone_limit_output::Builder,
) -> Result<
    crate::output::get_hosted_zone_limit_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetHostedZoneLimitResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetHostedZoneLimitResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Limit") /* Limit com.amazonaws.route53.synthetic#GetHostedZoneLimitOutput$Limit */ =>  {
                let var_107 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone_limit(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_limit(var_107);
            }
            ,
            s if s.matches("Count") /* Count com.amazonaws.route53.synthetic#GetHostedZoneLimitOutput$Count */ =>  {
                let var_108 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#UsageCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_count(var_108);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_query_logging_config(
    inp: &[u8],
    mut builder: crate::output::get_query_logging_config_output::Builder,
) -> Result<
    crate::output::get_query_logging_config_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetQueryLoggingConfigResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetQueryLoggingConfigResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("QueryLoggingConfig") /* QueryLoggingConfig com.amazonaws.route53.synthetic#GetQueryLoggingConfigOutput$QueryLoggingConfig */ =>  {
                let var_109 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_query_logging_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_query_logging_config(var_109);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_reusable_delegation_set(
    inp: &[u8],
    mut builder: crate::output::get_reusable_delegation_set_output::Builder,
) -> Result<
    crate::output::get_reusable_delegation_set_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetReusableDelegationSetResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetReusableDelegationSetResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("DelegationSet") /* DelegationSet com.amazonaws.route53.synthetic#GetReusableDelegationSetOutput$DelegationSet */ =>  {
                let var_110 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_delegation_set(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_delegation_set(var_110);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_reusable_delegation_set_limit(
    inp: &[u8],
    mut builder: crate::output::get_reusable_delegation_set_limit_output::Builder,
) -> Result<
    crate::output::get_reusable_delegation_set_limit_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetReusableDelegationSetLimitResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetReusableDelegationSetLimitResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Limit") /* Limit com.amazonaws.route53.synthetic#GetReusableDelegationSetLimitOutput$Limit */ =>  {
                let var_111 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_reusable_delegation_set_limit(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_limit(var_111);
            }
            ,
            s if s.matches("Count") /* Count com.amazonaws.route53.synthetic#GetReusableDelegationSetLimitOutput$Count */ =>  {
                let var_112 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#UsageCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_count(var_112);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_traffic_policy(
    inp: &[u8],
    mut builder: crate::output::get_traffic_policy_output::Builder,
) -> Result<crate::output::get_traffic_policy_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetTrafficPolicyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetTrafficPolicyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicy") /* TrafficPolicy com.amazonaws.route53.synthetic#GetTrafficPolicyOutput$TrafficPolicy */ =>  {
                let var_113 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy(var_113);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_traffic_policy_instance(
    inp: &[u8],
    mut builder: crate::output::get_traffic_policy_instance_output::Builder,
) -> Result<
    crate::output::get_traffic_policy_instance_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetTrafficPolicyInstanceResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetTrafficPolicyInstanceResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstance") /* TrafficPolicyInstance com.amazonaws.route53.synthetic#GetTrafficPolicyInstanceOutput$TrafficPolicyInstance */ =>  {
                let var_114 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy_instance(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance(var_114);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_get_traffic_policy_instance_count(
    inp: &[u8],
    mut builder: crate::output::get_traffic_policy_instance_count_output::Builder,
) -> Result<
    crate::output::get_traffic_policy_instance_count_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("GetTrafficPolicyInstanceCountResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected GetTrafficPolicyInstanceCountResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstanceCount") /* TrafficPolicyInstanceCount com.amazonaws.route53.synthetic#GetTrafficPolicyInstanceCountOutput$TrafficPolicyInstanceCount */ =>  {
                let var_115 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#TrafficPolicyInstanceCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_count(var_115);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_no_such_cidr_location_exception_xml_err(
    inp: &[u8],
    mut builder: crate::error::no_such_cidr_location_exception::Builder,
) -> Result<
    crate::error::no_such_cidr_location_exception::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* Message com.amazonaws.route53#NoSuchCidrLocationException$Message */ =>  {
                let var_116 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_116);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_cidr_blocks(
    inp: &[u8],
    mut builder: crate::output::list_cidr_blocks_output::Builder,
) -> Result<crate::output::list_cidr_blocks_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListCidrBlocksResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListCidrBlocksResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("CidrBlocks") /* CidrBlocks com.amazonaws.route53.synthetic#ListCidrBlocksOutput$CidrBlocks */ =>  {
                let var_117 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_cidr_block_summaries(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_cidr_blocks(var_117);
            }
            ,
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListCidrBlocksOutput$NextToken */ =>  {
                let var_118 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_118);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_cidr_collections(
    inp: &[u8],
    mut builder: crate::output::list_cidr_collections_output::Builder,
) -> Result<
    crate::output::list_cidr_collections_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListCidrCollectionsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListCidrCollectionsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListCidrCollectionsOutput$NextToken */ =>  {
                let var_119 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_119);
            }
            ,
            s if s.matches("CidrCollections") /* CidrCollections com.amazonaws.route53.synthetic#ListCidrCollectionsOutput$CidrCollections */ =>  {
                let var_120 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_collection_summaries(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_cidr_collections(var_120);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_cidr_locations(
    inp: &[u8],
    mut builder: crate::output::list_cidr_locations_output::Builder,
) -> Result<
    crate::output::list_cidr_locations_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListCidrLocationsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListCidrLocationsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("CidrLocations") /* CidrLocations com.amazonaws.route53.synthetic#ListCidrLocationsOutput$CidrLocations */ =>  {
                let var_121 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_location_summaries(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_cidr_locations(var_121);
            }
            ,
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListCidrLocationsOutput$NextToken */ =>  {
                let var_122 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_122);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_geo_locations(
    inp: &[u8],
    mut builder: crate::output::list_geo_locations_output::Builder,
) -> Result<crate::output::list_geo_locations_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListGeoLocationsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListGeoLocationsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextSubdivisionCode") /* NextSubdivisionCode com.amazonaws.route53.synthetic#ListGeoLocationsOutput$NextSubdivisionCode */ =>  {
                let var_123 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_subdivision_code(var_123);
            }
            ,
            s if s.matches("NextCountryCode") /* NextCountryCode com.amazonaws.route53.synthetic#ListGeoLocationsOutput$NextCountryCode */ =>  {
                let var_124 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_country_code(var_124);
            }
            ,
            s if s.matches("GeoLocationDetailsList") /* GeoLocationDetailsList com.amazonaws.route53.synthetic#ListGeoLocationsOutput$GeoLocationDetailsList */ =>  {
                let var_125 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_geo_location_details_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_geo_location_details_list(var_125);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListGeoLocationsOutput$IsTruncated */ =>  {
                let var_126 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_126);
            }
            ,
            s if s.matches("NextContinentCode") /* NextContinentCode com.amazonaws.route53.synthetic#ListGeoLocationsOutput$NextContinentCode */ =>  {
                let var_127 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_continent_code(var_127);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListGeoLocationsOutput$MaxItems */ =>  {
                let var_128 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_128);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_health_checks(
    inp: &[u8],
    mut builder: crate::output::list_health_checks_output::Builder,
) -> Result<crate::output::list_health_checks_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListHealthChecksResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListHealthChecksResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthChecks") /* HealthChecks com.amazonaws.route53.synthetic#ListHealthChecksOutput$HealthChecks */ =>  {
                let var_129 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_health_checks(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_checks(var_129);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListHealthChecksOutput$IsTruncated */ =>  {
                let var_130 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_130);
            }
            ,
            s if s.matches("Marker") /* Marker com.amazonaws.route53.synthetic#ListHealthChecksOutput$Marker */ =>  {
                let var_131 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_marker(var_131);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListHealthChecksOutput$MaxItems */ =>  {
                let var_132 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_132);
            }
            ,
            s if s.matches("NextMarker") /* NextMarker com.amazonaws.route53.synthetic#ListHealthChecksOutput$NextMarker */ =>  {
                let var_133 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_marker(var_133);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_hosted_zones(
    inp: &[u8],
    mut builder: crate::output::list_hosted_zones_output::Builder,
) -> Result<crate::output::list_hosted_zones_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListHostedZonesResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListHostedZonesResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZones") /* HostedZones com.amazonaws.route53.synthetic#ListHostedZonesOutput$HostedZones */ =>  {
                let var_134 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_hosted_zones(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zones(var_134);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListHostedZonesOutput$IsTruncated */ =>  {
                let var_135 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_135);
            }
            ,
            s if s.matches("Marker") /* Marker com.amazonaws.route53.synthetic#ListHostedZonesOutput$Marker */ =>  {
                let var_136 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_marker(var_136);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListHostedZonesOutput$MaxItems */ =>  {
                let var_137 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_137);
            }
            ,
            s if s.matches("NextMarker") /* NextMarker com.amazonaws.route53.synthetic#ListHostedZonesOutput$NextMarker */ =>  {
                let var_138 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_marker(var_138);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_hosted_zones_by_name(
    inp: &[u8],
    mut builder: crate::output::list_hosted_zones_by_name_output::Builder,
) -> Result<
    crate::output::list_hosted_zones_by_name_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListHostedZonesByNameResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListHostedZonesByNameResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextHostedZoneId") /* NextHostedZoneId com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$NextHostedZoneId */ =>  {
                let var_139 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_hosted_zone_id(var_139);
            }
            ,
            s if s.matches("HostedZones") /* HostedZones com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$HostedZones */ =>  {
                let var_140 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_hosted_zones(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zones(var_140);
            }
            ,
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$HostedZoneId */ =>  {
                let var_141 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_141);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$IsTruncated */ =>  {
                let var_142 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_142);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$MaxItems */ =>  {
                let var_143 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_143);
            }
            ,
            s if s.matches("DNSName") /* DNSName com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$DNSName */ =>  {
                let var_144 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_dns_name(var_144);
            }
            ,
            s if s.matches("NextDNSName") /* NextDNSName com.amazonaws.route53.synthetic#ListHostedZonesByNameOutput$NextDNSName */ =>  {
                let var_145 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_dns_name(var_145);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_invalid_pagination_token_xml_err(
    inp: &[u8],
    mut builder: crate::error::invalid_pagination_token::Builder,
) -> Result<crate::error::invalid_pagination_token::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#InvalidPaginationToken$message */ =>  {
                let var_146 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_146);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_hosted_zones_by_vpc(
    inp: &[u8],
    mut builder: crate::output::list_hosted_zones_by_vpc_output::Builder,
) -> Result<
    crate::output::list_hosted_zones_by_vpc_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListHostedZonesByVPCResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListHostedZonesByVPCResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListHostedZonesByVPCOutput$NextToken */ =>  {
                let var_147 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_147);
            }
            ,
            s if s.matches("HostedZoneSummaries") /* HostedZoneSummaries com.amazonaws.route53.synthetic#ListHostedZonesByVPCOutput$HostedZoneSummaries */ =>  {
                let var_148 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_hosted_zone_summaries(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_summaries(var_148);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListHostedZonesByVPCOutput$MaxItems */ =>  {
                let var_149 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_149);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_query_logging_configs(
    inp: &[u8],
    mut builder: crate::output::list_query_logging_configs_output::Builder,
) -> Result<
    crate::output::list_query_logging_configs_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListQueryLoggingConfigsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListQueryLoggingConfigsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListQueryLoggingConfigsOutput$NextToken */ =>  {
                let var_150 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_150);
            }
            ,
            s if s.matches("QueryLoggingConfigs") /* QueryLoggingConfigs com.amazonaws.route53.synthetic#ListQueryLoggingConfigsOutput$QueryLoggingConfigs */ =>  {
                let var_151 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_query_logging_configs(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_query_logging_configs(var_151);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_resource_record_sets(
    inp: &[u8],
    mut builder: crate::output::list_resource_record_sets_output::Builder,
) -> Result<
    crate::output::list_resource_record_sets_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListResourceRecordSetsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListResourceRecordSetsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NextRecordIdentifier") /* NextRecordIdentifier com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$NextRecordIdentifier */ =>  {
                let var_152 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_record_identifier(var_152);
            }
            ,
            s if s.matches("NextRecordType") /* NextRecordType com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$NextRecordType */ =>  {
                let var_153 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_next_record_type(var_153);
            }
            ,
            s if s.matches("NextRecordName") /* NextRecordName com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$NextRecordName */ =>  {
                let var_154 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_record_name(var_154);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$IsTruncated */ =>  {
                let var_155 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_155);
            }
            ,
            s if s.matches("ResourceRecordSets") /* ResourceRecordSets com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$ResourceRecordSets */ =>  {
                let var_156 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_resource_record_sets(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_resource_record_sets(var_156);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListResourceRecordSetsOutput$MaxItems */ =>  {
                let var_157 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_157);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_reusable_delegation_sets(
    inp: &[u8],
    mut builder: crate::output::list_reusable_delegation_sets_output::Builder,
) -> Result<
    crate::output::list_reusable_delegation_sets_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListReusableDelegationSetsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListReusableDelegationSetsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListReusableDelegationSetsOutput$IsTruncated */ =>  {
                let var_158 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_158);
            }
            ,
            s if s.matches("Marker") /* Marker com.amazonaws.route53.synthetic#ListReusableDelegationSetsOutput$Marker */ =>  {
                let var_159 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_marker(var_159);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListReusableDelegationSetsOutput$MaxItems */ =>  {
                let var_160 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_160);
            }
            ,
            s if s.matches("NextMarker") /* NextMarker com.amazonaws.route53.synthetic#ListReusableDelegationSetsOutput$NextMarker */ =>  {
                let var_161 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_marker(var_161);
            }
            ,
            s if s.matches("DelegationSets") /* DelegationSets com.amazonaws.route53.synthetic#ListReusableDelegationSetsOutput$DelegationSets */ =>  {
                let var_162 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_delegation_sets(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_delegation_sets(var_162);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_tags_for_resource(
    inp: &[u8],
    mut builder: crate::output::list_tags_for_resource_output::Builder,
) -> Result<
    crate::output::list_tags_for_resource_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTagsForResourceResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTagsForResourceResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceTagSet") /* ResourceTagSet com.amazonaws.route53.synthetic#ListTagsForResourceOutput$ResourceTagSet */ =>  {
                let var_163 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_resource_tag_set(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_resource_tag_set(var_163);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_tags_for_resources(
    inp: &[u8],
    mut builder: crate::output::list_tags_for_resources_output::Builder,
) -> Result<
    crate::output::list_tags_for_resources_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTagsForResourcesResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTagsForResourcesResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceTagSets") /* ResourceTagSets com.amazonaws.route53.synthetic#ListTagsForResourcesOutput$ResourceTagSets */ =>  {
                let var_164 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_resource_tag_set_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_resource_tag_sets(var_164);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_traffic_policies(
    inp: &[u8],
    mut builder: crate::output::list_traffic_policies_output::Builder,
) -> Result<
    crate::output::list_traffic_policies_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTrafficPoliciesResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTrafficPoliciesResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyIdMarker") /* TrafficPolicyIdMarker com.amazonaws.route53.synthetic#ListTrafficPoliciesOutput$TrafficPolicyIdMarker */ =>  {
                let var_165 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_id_marker(var_165);
            }
            ,
            s if s.matches("TrafficPolicySummaries") /* TrafficPolicySummaries com.amazonaws.route53.synthetic#ListTrafficPoliciesOutput$TrafficPolicySummaries */ =>  {
                let var_166 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_traffic_policy_summaries(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_summaries(var_166);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListTrafficPoliciesOutput$IsTruncated */ =>  {
                let var_167 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_167);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListTrafficPoliciesOutput$MaxItems */ =>  {
                let var_168 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_168);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_traffic_policy_instances(
    inp: &[u8],
    mut builder: crate::output::list_traffic_policy_instances_output::Builder,
) -> Result<
    crate::output::list_traffic_policy_instances_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTrafficPolicyInstancesResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTrafficPolicyInstancesResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstanceNameMarker") /* TrafficPolicyInstanceNameMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$TrafficPolicyInstanceNameMarker */ =>  {
                let var_169 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_name_marker(var_169);
            }
            ,
            s if s.matches("TrafficPolicyInstances") /* TrafficPolicyInstances com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$TrafficPolicyInstances */ =>  {
                let var_170 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_traffic_policy_instances(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instances(var_170);
            }
            ,
            s if s.matches("TrafficPolicyInstanceTypeMarker") /* TrafficPolicyInstanceTypeMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$TrafficPolicyInstanceTypeMarker */ =>  {
                let var_171 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_type_marker(var_171);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$IsTruncated */ =>  {
                let var_172 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_172);
            }
            ,
            s if s.matches("HostedZoneIdMarker") /* HostedZoneIdMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$HostedZoneIdMarker */ =>  {
                let var_173 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id_marker(var_173);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesOutput$MaxItems */ =>  {
                let var_174 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_174);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_traffic_policy_instances_by_hosted_zone(
    inp: &[u8],
    mut builder: crate::output::list_traffic_policy_instances_by_hosted_zone_output::Builder,
) -> Result<
    crate::output::list_traffic_policy_instances_by_hosted_zone_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTrafficPolicyInstancesByHostedZoneResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTrafficPolicyInstancesByHostedZoneResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstanceNameMarker") /* TrafficPolicyInstanceNameMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByHostedZoneOutput$TrafficPolicyInstanceNameMarker */ =>  {
                let var_175 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_name_marker(var_175);
            }
            ,
            s if s.matches("TrafficPolicyInstances") /* TrafficPolicyInstances com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByHostedZoneOutput$TrafficPolicyInstances */ =>  {
                let var_176 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_traffic_policy_instances(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instances(var_176);
            }
            ,
            s if s.matches("TrafficPolicyInstanceTypeMarker") /* TrafficPolicyInstanceTypeMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByHostedZoneOutput$TrafficPolicyInstanceTypeMarker */ =>  {
                let var_177 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_type_marker(var_177);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByHostedZoneOutput$IsTruncated */ =>  {
                let var_178 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_178);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByHostedZoneOutput$MaxItems */ =>  {
                let var_179 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_179);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_traffic_policy_instances_by_policy(
    inp: &[u8],
    mut builder: crate::output::list_traffic_policy_instances_by_policy_output::Builder,
) -> Result<
    crate::output::list_traffic_policy_instances_by_policy_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTrafficPolicyInstancesByPolicyResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTrafficPolicyInstancesByPolicyResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstanceNameMarker") /* TrafficPolicyInstanceNameMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$TrafficPolicyInstanceNameMarker */ =>  {
                let var_180 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_name_marker(var_180);
            }
            ,
            s if s.matches("TrafficPolicyInstances") /* TrafficPolicyInstances com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$TrafficPolicyInstances */ =>  {
                let var_181 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_traffic_policy_instances(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instances(var_181);
            }
            ,
            s if s.matches("TrafficPolicyInstanceTypeMarker") /* TrafficPolicyInstanceTypeMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$TrafficPolicyInstanceTypeMarker */ =>  {
                let var_182 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_type_marker(var_182);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$IsTruncated */ =>  {
                let var_183 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_183);
            }
            ,
            s if s.matches("HostedZoneIdMarker") /* HostedZoneIdMarker com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$HostedZoneIdMarker */ =>  {
                let var_184 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id_marker(var_184);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListTrafficPolicyInstancesByPolicyOutput$MaxItems */ =>  {
                let var_185 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_185);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_traffic_policy_versions(
    inp: &[u8],
    mut builder: crate::output::list_traffic_policy_versions_output::Builder,
) -> Result<
    crate::output::list_traffic_policy_versions_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListTrafficPolicyVersionsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListTrafficPolicyVersionsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicies") /* TrafficPolicies com.amazonaws.route53.synthetic#ListTrafficPolicyVersionsOutput$TrafficPolicies */ =>  {
                let var_186 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_traffic_policies(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policies(var_186);
            }
            ,
            s if s.matches("TrafficPolicyVersionMarker") /* TrafficPolicyVersionMarker com.amazonaws.route53.synthetic#ListTrafficPolicyVersionsOutput$TrafficPolicyVersionMarker */ =>  {
                let var_187 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_version_marker(var_187);
            }
            ,
            s if s.matches("IsTruncated") /* IsTruncated com.amazonaws.route53.synthetic#ListTrafficPolicyVersionsOutput$IsTruncated */ =>  {
                let var_188 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#PageTruncated`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_is_truncated(var_188);
            }
            ,
            s if s.matches("MaxItems") /* MaxItems com.amazonaws.route53.synthetic#ListTrafficPolicyVersionsOutput$MaxItems */ =>  {
                let var_189 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `smithy.api#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_max_items(var_189);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_list_vpc_association_authorizations(
    inp: &[u8],
    mut builder: crate::output::list_vpc_association_authorizations_output::Builder,
) -> Result<
    crate::output::list_vpc_association_authorizations_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("ListVPCAssociationAuthorizationsResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected ListVPCAssociationAuthorizationsResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("VPCs") /* VPCs com.amazonaws.route53.synthetic#ListVPCAssociationAuthorizationsOutput$VPCs */ =>  {
                let var_190 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_vp_cs(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_vp_cs(var_190);
            }
            ,
            s if s.matches("NextToken") /* NextToken com.amazonaws.route53.synthetic#ListVPCAssociationAuthorizationsOutput$NextToken */ =>  {
                let var_191 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_next_token(var_191);
            }
            ,
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53.synthetic#ListVPCAssociationAuthorizationsOutput$HostedZoneId */ =>  {
                let var_192 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_192);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_test_dns_answer(
    inp: &[u8],
    mut builder: crate::output::test_dns_answer_output::Builder,
) -> Result<crate::output::test_dns_answer_output::Builder, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("TestDNSAnswerResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected TestDNSAnswerResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("RecordName") /* RecordName com.amazonaws.route53.synthetic#TestDNSAnswerOutput$RecordName */ =>  {
                let var_193 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_record_name(var_193);
            }
            ,
            s if s.matches("ResponseCode") /* ResponseCode com.amazonaws.route53.synthetic#TestDNSAnswerOutput$ResponseCode */ =>  {
                let var_194 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_response_code(var_194);
            }
            ,
            s if s.matches("RecordData") /* RecordData com.amazonaws.route53.synthetic#TestDNSAnswerOutput$RecordData */ =>  {
                let var_195 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_record_data(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_record_data(var_195);
            }
            ,
            s if s.matches("RecordType") /* RecordType com.amazonaws.route53.synthetic#TestDNSAnswerOutput$RecordType */ =>  {
                let var_196 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_record_type(var_196);
            }
            ,
            s if s.matches("Nameserver") /* Nameserver com.amazonaws.route53.synthetic#TestDNSAnswerOutput$Nameserver */ =>  {
                let var_197 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_nameserver(var_197);
            }
            ,
            s if s.matches("Protocol") /* Protocol com.amazonaws.route53.synthetic#TestDNSAnswerOutput$Protocol */ =>  {
                let var_198 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_protocol(var_198);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_health_check_version_mismatch_xml_err(
    inp: &[u8],
    mut builder: crate::error::health_check_version_mismatch::Builder,
) -> Result<
    crate::error::health_check_version_mismatch::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#HealthCheckVersionMismatch$message */ =>  {
                let var_199 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_199);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_update_health_check(
    inp: &[u8],
    mut builder: crate::output::update_health_check_output::Builder,
) -> Result<
    crate::output::update_health_check_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("UpdateHealthCheckResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected UpdateHealthCheckResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheck") /* HealthCheck com.amazonaws.route53.synthetic#UpdateHealthCheckOutput$HealthCheck */ =>  {
                let var_200 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_health_check(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check(var_200);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_update_hosted_zone_comment(
    inp: &[u8],
    mut builder: crate::output::update_hosted_zone_comment_output::Builder,
) -> Result<
    crate::output::update_hosted_zone_comment_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("UpdateHostedZoneCommentResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected UpdateHostedZoneCommentResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZone") /* HostedZone com.amazonaws.route53.synthetic#UpdateHostedZoneCommentOutput$HostedZone */ =>  {
                let var_201 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_hosted_zone(var_201);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_update_traffic_policy_comment(
    inp: &[u8],
    mut builder: crate::output::update_traffic_policy_comment_output::Builder,
) -> Result<
    crate::output::update_traffic_policy_comment_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("UpdateTrafficPolicyCommentResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected UpdateTrafficPolicyCommentResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicy") /* TrafficPolicy com.amazonaws.route53.synthetic#UpdateTrafficPolicyCommentOutput$TrafficPolicy */ =>  {
                let var_202 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy(var_202);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_structure_crate_error_conflicting_types_xml_err(
    inp: &[u8],
    mut builder: crate::error::conflicting_types::Builder,
) -> Result<crate::error::conflicting_types::Builder, aws_smithy_xml::decode::XmlDecodeError> {
    if inp.is_empty() {
        return Ok(builder);
    }
    let mut document = aws_smithy_xml::decode::Document::try_from(inp)?;
    #[allow(unused_mut)]
    let mut error_decoder = crate::rest_xml_wrapped_errors::error_scope(&mut document)?;
    while let Some(mut tag) = error_decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("message") /* message com.amazonaws.route53#ConflictingTypes$message */ =>  {
                let var_203 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_203);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

#[allow(unused_mut)]
pub fn deser_operation_crate_operation_update_traffic_policy_instance(
    inp: &[u8],
    mut builder: crate::output::update_traffic_policy_instance_output::Builder,
) -> Result<
    crate::output::update_traffic_policy_instance_output::Builder,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut doc = aws_smithy_xml::decode::Document::try_from(inp)?;

    #[allow(unused_mut)]
    let mut decoder = doc.root_element()?;
    #[allow(unused_variables)]
    let start_el = decoder.start_el();
    if !start_el.matches("UpdateTrafficPolicyInstanceResponse") {
        return Err(
                                aws_smithy_xml::decode::XmlDecodeError::custom(
                                    format!("encountered invalid XML root: expected UpdateTrafficPolicyInstanceResponse but got {:?}. This is likely a bug in the SDK.", start_el)
                                )
                            );
    }
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstance") /* TrafficPolicyInstance com.amazonaws.route53.synthetic#UpdateTrafficPolicyInstanceOutput$TrafficPolicyInstance */ =>  {
                let var_204 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_traffic_policy_instance(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance(var_204);
            }
            ,
            _ => {}
        }
    }
    Ok(builder)
}

pub fn deser_structure_crate_model_change_info(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ChangeInfo, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::ChangeInfo::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#ChangeInfo$Id */ =>  {
                let var_205 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_205);
            }
            ,
            s if s.matches("Status") /* Status com.amazonaws.route53#ChangeInfo$Status */ =>  {
                let var_206 =
                    Some(
                        Result::<crate::model::ChangeStatus, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::ChangeStatus::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_status(var_206);
            }
            ,
            s if s.matches("SubmittedAt") /* SubmittedAt com.amazonaws.route53#ChangeInfo$SubmittedAt */ =>  {
                let var_207 =
                    Some(
                        aws_smithy_types::DateTime::from_str(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            , aws_smithy_types::date_time::Format::DateTime
                        )
                        .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.route53#TimeStamp`)"))
                        ?
                    )
                ;
                builder = builder.set_submitted_at(var_207);
            }
            ,
            s if s.matches("Comment") /* Comment com.amazonaws.route53#ChangeInfo$Comment */ =>  {
                let var_208 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_comment(var_208);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_error_messages(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<std::string::String>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Message") /* member com.amazonaws.route53#ErrorMessages$member */ =>  {
                out.push(
                    Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        .into()
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_cidr_collection(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::CidrCollection, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::CidrCollection::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Arn") /* Arn com.amazonaws.route53#CidrCollection$Arn */ =>  {
                let var_209 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_arn(var_209);
            }
            ,
            s if s.matches("Id") /* Id com.amazonaws.route53#CidrCollection$Id */ =>  {
                let var_210 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_210);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#CidrCollection$Name */ =>  {
                let var_211 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_211);
            }
            ,
            s if s.matches("Version") /* Version com.amazonaws.route53#CidrCollection$Version */ =>  {
                let var_212 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#CollectionVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_version(var_212);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_health_check(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HealthCheck, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HealthCheck::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#HealthCheck$Id */ =>  {
                let var_213 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_213);
            }
            ,
            s if s.matches("CallerReference") /* CallerReference com.amazonaws.route53#HealthCheck$CallerReference */ =>  {
                let var_214 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_caller_reference(var_214);
            }
            ,
            s if s.matches("LinkedService") /* LinkedService com.amazonaws.route53#HealthCheck$LinkedService */ =>  {
                let var_215 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_linked_service(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_linked_service(var_215);
            }
            ,
            s if s.matches("HealthCheckConfig") /* HealthCheckConfig com.amazonaws.route53#HealthCheck$HealthCheckConfig */ =>  {
                let var_216 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_health_check_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_health_check_config(var_216);
            }
            ,
            s if s.matches("HealthCheckVersion") /* HealthCheckVersion com.amazonaws.route53#HealthCheck$HealthCheckVersion */ =>  {
                let var_217 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#HealthCheckVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_health_check_version(var_217);
            }
            ,
            s if s.matches("CloudWatchAlarmConfiguration") /* CloudWatchAlarmConfiguration com.amazonaws.route53#HealthCheck$CloudWatchAlarmConfiguration */ =>  {
                let var_218 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_cloud_watch_alarm_configuration(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_cloud_watch_alarm_configuration(var_218);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_hosted_zone(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HostedZone, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HostedZone::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#HostedZone$Id */ =>  {
                let var_219 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_219);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#HostedZone$Name */ =>  {
                let var_220 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_220);
            }
            ,
            s if s.matches("CallerReference") /* CallerReference com.amazonaws.route53#HostedZone$CallerReference */ =>  {
                let var_221 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_caller_reference(var_221);
            }
            ,
            s if s.matches("Config") /* Config com.amazonaws.route53#HostedZone$Config */ =>  {
                let var_222 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_config(var_222);
            }
            ,
            s if s.matches("ResourceRecordSetCount") /* ResourceRecordSetCount com.amazonaws.route53#HostedZone$ResourceRecordSetCount */ =>  {
                let var_223 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#HostedZoneRRSetCount`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_resource_record_set_count(var_223);
            }
            ,
            s if s.matches("LinkedService") /* LinkedService com.amazonaws.route53#HostedZone$LinkedService */ =>  {
                let var_224 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_linked_service(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_linked_service(var_224);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_delegation_set(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::DelegationSet, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::DelegationSet::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#DelegationSet$Id */ =>  {
                let var_225 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_225);
            }
            ,
            s if s.matches("CallerReference") /* CallerReference com.amazonaws.route53#DelegationSet$CallerReference */ =>  {
                let var_226 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_caller_reference(var_226);
            }
            ,
            s if s.matches("NameServers") /* NameServers com.amazonaws.route53#DelegationSet$NameServers */ =>  {
                let var_227 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_delegation_set_name_servers(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_name_servers(var_227);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_vpc(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::Vpc, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::Vpc::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("VPCRegion") /* VPCRegion com.amazonaws.route53#VPC$VPCRegion */ =>  {
                let var_228 =
                    Some(
                        Result::<crate::model::VpcRegion, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::VpcRegion::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_vpc_region(var_228);
            }
            ,
            s if s.matches("VPCId") /* VPCId com.amazonaws.route53#VPC$VPCId */ =>  {
                let var_229 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_vpc_id(var_229);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_key_signing_key(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::KeySigningKey, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::KeySigningKey::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Name") /* Name com.amazonaws.route53#KeySigningKey$Name */ =>  {
                let var_230 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_230);
            }
            ,
            s if s.matches("KmsArn") /* KmsArn com.amazonaws.route53#KeySigningKey$KmsArn */ =>  {
                let var_231 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_kms_arn(var_231);
            }
            ,
            s if s.matches("Flag") /* Flag com.amazonaws.route53#KeySigningKey$Flag */ =>  {
                let var_232 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#SigningKeyInteger`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_flag(var_232);
            }
            ,
            s if s.matches("SigningAlgorithmMnemonic") /* SigningAlgorithmMnemonic com.amazonaws.route53#KeySigningKey$SigningAlgorithmMnemonic */ =>  {
                let var_233 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_signing_algorithm_mnemonic(var_233);
            }
            ,
            s if s.matches("SigningAlgorithmType") /* SigningAlgorithmType com.amazonaws.route53#KeySigningKey$SigningAlgorithmType */ =>  {
                let var_234 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#SigningKeyInteger`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_signing_algorithm_type(var_234);
            }
            ,
            s if s.matches("DigestAlgorithmMnemonic") /* DigestAlgorithmMnemonic com.amazonaws.route53#KeySigningKey$DigestAlgorithmMnemonic */ =>  {
                let var_235 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_digest_algorithm_mnemonic(var_235);
            }
            ,
            s if s.matches("DigestAlgorithmType") /* DigestAlgorithmType com.amazonaws.route53#KeySigningKey$DigestAlgorithmType */ =>  {
                let var_236 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#SigningKeyInteger`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_digest_algorithm_type(var_236);
            }
            ,
            s if s.matches("KeyTag") /* KeyTag com.amazonaws.route53#KeySigningKey$KeyTag */ =>  {
                let var_237 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#SigningKeyTag`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_key_tag(var_237);
            }
            ,
            s if s.matches("DigestValue") /* DigestValue com.amazonaws.route53#KeySigningKey$DigestValue */ =>  {
                let var_238 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_digest_value(var_238);
            }
            ,
            s if s.matches("PublicKey") /* PublicKey com.amazonaws.route53#KeySigningKey$PublicKey */ =>  {
                let var_239 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_public_key(var_239);
            }
            ,
            s if s.matches("DSRecord") /* DSRecord com.amazonaws.route53#KeySigningKey$DSRecord */ =>  {
                let var_240 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_ds_record(var_240);
            }
            ,
            s if s.matches("DNSKEYRecord") /* DNSKEYRecord com.amazonaws.route53#KeySigningKey$DNSKEYRecord */ =>  {
                let var_241 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_dnskey_record(var_241);
            }
            ,
            s if s.matches("Status") /* Status com.amazonaws.route53#KeySigningKey$Status */ =>  {
                let var_242 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_status(var_242);
            }
            ,
            s if s.matches("StatusMessage") /* StatusMessage com.amazonaws.route53#KeySigningKey$StatusMessage */ =>  {
                let var_243 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_status_message(var_243);
            }
            ,
            s if s.matches("CreatedDate") /* CreatedDate com.amazonaws.route53#KeySigningKey$CreatedDate */ =>  {
                let var_244 =
                    Some(
                        aws_smithy_types::DateTime::from_str(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            , aws_smithy_types::date_time::Format::DateTime
                        )
                        .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.route53#TimeStamp`)"))
                        ?
                    )
                ;
                builder = builder.set_created_date(var_244);
            }
            ,
            s if s.matches("LastModifiedDate") /* LastModifiedDate com.amazonaws.route53#KeySigningKey$LastModifiedDate */ =>  {
                let var_245 =
                    Some(
                        aws_smithy_types::DateTime::from_str(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            , aws_smithy_types::date_time::Format::DateTime
                        )
                        .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.route53#TimeStamp`)"))
                        ?
                    )
                ;
                builder = builder.set_last_modified_date(var_245);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_query_logging_config(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::QueryLoggingConfig, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::QueryLoggingConfig::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#QueryLoggingConfig$Id */ =>  {
                let var_246 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_246);
            }
            ,
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53#QueryLoggingConfig$HostedZoneId */ =>  {
                let var_247 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_247);
            }
            ,
            s if s.matches("CloudWatchLogsLogGroupArn") /* CloudWatchLogsLogGroupArn com.amazonaws.route53#QueryLoggingConfig$CloudWatchLogsLogGroupArn */ =>  {
                let var_248 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_cloud_watch_logs_log_group_arn(var_248);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_traffic_policy(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::TrafficPolicy, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::TrafficPolicy::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#TrafficPolicy$Id */ =>  {
                let var_249 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_249);
            }
            ,
            s if s.matches("Version") /* Version com.amazonaws.route53#TrafficPolicy$Version */ =>  {
                let var_250 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#TrafficPolicyVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_version(var_250);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#TrafficPolicy$Name */ =>  {
                let var_251 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_251);
            }
            ,
            s if s.matches("Type") /* Type com.amazonaws.route53#TrafficPolicy$Type */ =>  {
                let var_252 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_252);
            }
            ,
            s if s.matches("Document") /* Document com.amazonaws.route53#TrafficPolicy$Document */ =>  {
                let var_253 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_document(var_253);
            }
            ,
            s if s.matches("Comment") /* Comment com.amazonaws.route53#TrafficPolicy$Comment */ =>  {
                let var_254 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_comment(var_254);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_traffic_policy_instance(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::TrafficPolicyInstance, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::TrafficPolicyInstance::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#TrafficPolicyInstance$Id */ =>  {
                let var_255 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_255);
            }
            ,
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53#TrafficPolicyInstance$HostedZoneId */ =>  {
                let var_256 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_256);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#TrafficPolicyInstance$Name */ =>  {
                let var_257 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_257);
            }
            ,
            s if s.matches("TTL") /* TTL com.amazonaws.route53#TrafficPolicyInstance$TTL */ =>  {
                let var_258 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#TTL`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_ttl(var_258);
            }
            ,
            s if s.matches("State") /* State com.amazonaws.route53#TrafficPolicyInstance$State */ =>  {
                let var_259 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_state(var_259);
            }
            ,
            s if s.matches("Message") /* Message com.amazonaws.route53#TrafficPolicyInstance$Message */ =>  {
                let var_260 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_message(var_260);
            }
            ,
            s if s.matches("TrafficPolicyId") /* TrafficPolicyId com.amazonaws.route53#TrafficPolicyInstance$TrafficPolicyId */ =>  {
                let var_261 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_id(var_261);
            }
            ,
            s if s.matches("TrafficPolicyVersion") /* TrafficPolicyVersion com.amazonaws.route53#TrafficPolicyInstance$TrafficPolicyVersion */ =>  {
                let var_262 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#TrafficPolicyVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_version(var_262);
            }
            ,
            s if s.matches("TrafficPolicyType") /* TrafficPolicyType com.amazonaws.route53#TrafficPolicyInstance$TrafficPolicyType */ =>  {
                let var_263 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_type(var_263);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_account_limit(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::AccountLimit, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::AccountLimit::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Type") /* Type com.amazonaws.route53#AccountLimit$Type */ =>  {
                let var_264 =
                    Some(
                        Result::<crate::model::AccountLimitType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::AccountLimitType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_264);
            }
            ,
            s if s.matches("Value") /* Value com.amazonaws.route53#AccountLimit$Value */ =>  {
                let var_265 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#LimitValue`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_value(var_265);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_checker_ip_ranges(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<std::string::String>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("member") /* member com.amazonaws.route53#CheckerIpRanges$member */ =>  {
                out.push(
                    Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        .into()
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_dnssec_status(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::DnssecStatus, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::DnssecStatus::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ServeSignature") /* ServeSignature com.amazonaws.route53#DNSSECStatus$ServeSignature */ =>  {
                let var_266 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_serve_signature(var_266);
            }
            ,
            s if s.matches("StatusMessage") /* StatusMessage com.amazonaws.route53#DNSSECStatus$StatusMessage */ =>  {
                let var_267 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_status_message(var_267);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_key_signing_keys(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::KeySigningKey>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("member") /* member com.amazonaws.route53#KeySigningKeys$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_key_signing_key(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_geo_location_details(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::GeoLocationDetails, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::GeoLocationDetails::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ContinentCode") /* ContinentCode com.amazonaws.route53#GeoLocationDetails$ContinentCode */ =>  {
                let var_268 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_continent_code(var_268);
            }
            ,
            s if s.matches("ContinentName") /* ContinentName com.amazonaws.route53#GeoLocationDetails$ContinentName */ =>  {
                let var_269 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_continent_name(var_269);
            }
            ,
            s if s.matches("CountryCode") /* CountryCode com.amazonaws.route53#GeoLocationDetails$CountryCode */ =>  {
                let var_270 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_country_code(var_270);
            }
            ,
            s if s.matches("CountryName") /* CountryName com.amazonaws.route53#GeoLocationDetails$CountryName */ =>  {
                let var_271 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_country_name(var_271);
            }
            ,
            s if s.matches("SubdivisionCode") /* SubdivisionCode com.amazonaws.route53#GeoLocationDetails$SubdivisionCode */ =>  {
                let var_272 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_subdivision_code(var_272);
            }
            ,
            s if s.matches("SubdivisionName") /* SubdivisionName com.amazonaws.route53#GeoLocationDetails$SubdivisionName */ =>  {
                let var_273 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_subdivision_name(var_273);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_health_check_observations(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<
    std::vec::Vec<crate::model::HealthCheckObservation>,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheckObservation") /* member com.amazonaws.route53#HealthCheckObservations$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_health_check_observation(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_vp_cs(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::Vpc>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("VPC") /* member com.amazonaws.route53#VPCs$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_vpc(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_hosted_zone_limit(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HostedZoneLimit, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HostedZoneLimit::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Type") /* Type com.amazonaws.route53#HostedZoneLimit$Type */ =>  {
                let var_274 =
                    Some(
                        Result::<crate::model::HostedZoneLimitType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::HostedZoneLimitType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_274);
            }
            ,
            s if s.matches("Value") /* Value com.amazonaws.route53#HostedZoneLimit$Value */ =>  {
                let var_275 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#LimitValue`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_value(var_275);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_reusable_delegation_set_limit(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ReusableDelegationSetLimit, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::ReusableDelegationSetLimit::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Type") /* Type com.amazonaws.route53#ReusableDelegationSetLimit$Type */ =>  {
                let var_276 =
                    Some(
                        Result::<crate::model::ReusableDelegationSetLimitType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::ReusableDelegationSetLimitType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_276);
            }
            ,
            s if s.matches("Value") /* Value com.amazonaws.route53#ReusableDelegationSetLimit$Value */ =>  {
                let var_277 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#LimitValue`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_value(var_277);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_cidr_block_summaries(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::CidrBlockSummary>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("member") /* member com.amazonaws.route53#CidrBlockSummaries$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_cidr_block_summary(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_collection_summaries(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::CollectionSummary>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("member") /* member com.amazonaws.route53#CollectionSummaries$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_collection_summary(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_location_summaries(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::LocationSummary>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("member") /* member com.amazonaws.route53#LocationSummaries$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_location_summary(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_geo_location_details_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::GeoLocationDetails>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("GeoLocationDetails") /* member com.amazonaws.route53#GeoLocationDetailsList$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_geo_location_details(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_health_checks(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::HealthCheck>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HealthCheck") /* member com.amazonaws.route53#HealthChecks$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_health_check(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_hosted_zones(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::HostedZone>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZone") /* member com.amazonaws.route53#HostedZones$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_hosted_zone(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_hosted_zone_summaries(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::HostedZoneSummary>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZoneSummary") /* member com.amazonaws.route53#HostedZoneSummaries$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_hosted_zone_summary(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_query_logging_configs(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::QueryLoggingConfig>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("QueryLoggingConfig") /* member com.amazonaws.route53#QueryLoggingConfigs$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_query_logging_config(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_resource_record_sets(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::ResourceRecordSet>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceRecordSet") /* member com.amazonaws.route53#ResourceRecordSets$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_resource_record_set(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_delegation_sets(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::DelegationSet>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("DelegationSet") /* member com.amazonaws.route53#DelegationSets$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_delegation_set(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_resource_tag_set(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ResourceTagSet, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::ResourceTagSet::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceType") /* ResourceType com.amazonaws.route53#ResourceTagSet$ResourceType */ =>  {
                let var_278 =
                    Some(
                        Result::<crate::model::TagResourceType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::TagResourceType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_resource_type(var_278);
            }
            ,
            s if s.matches("ResourceId") /* ResourceId com.amazonaws.route53#ResourceTagSet$ResourceId */ =>  {
                let var_279 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_resource_id(var_279);
            }
            ,
            s if s.matches("Tags") /* Tags com.amazonaws.route53#ResourceTagSet$Tags */ =>  {
                let var_280 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_tag_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_tags(var_280);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_resource_tag_set_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::ResourceTagSet>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceTagSet") /* member com.amazonaws.route53#ResourceTagSetList$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_resource_tag_set(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_traffic_policy_summaries(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::TrafficPolicySummary>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicySummary") /* member com.amazonaws.route53#TrafficPolicySummaries$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_traffic_policy_summary(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_traffic_policy_instances(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<
    std::vec::Vec<crate::model::TrafficPolicyInstance>,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicyInstance") /* member com.amazonaws.route53#TrafficPolicyInstances$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_traffic_policy_instance(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_traffic_policies(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::TrafficPolicy>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("TrafficPolicy") /* member com.amazonaws.route53#TrafficPolicies$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_traffic_policy(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_record_data(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<std::string::String>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("RecordDataEntry") /* member com.amazonaws.route53#RecordData$member */ =>  {
                out.push(
                    Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        .into()
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_linked_service(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::LinkedService, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::LinkedService::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ServicePrincipal") /* ServicePrincipal com.amazonaws.route53#LinkedService$ServicePrincipal */ =>  {
                let var_281 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_service_principal(var_281);
            }
            ,
            s if s.matches("Description") /* Description com.amazonaws.route53#LinkedService$Description */ =>  {
                let var_282 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_description(var_282);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_health_check_config(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HealthCheckConfig, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HealthCheckConfig::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("IPAddress") /* IPAddress com.amazonaws.route53#HealthCheckConfig$IPAddress */ =>  {
                let var_283 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_ip_address(var_283);
            }
            ,
            s if s.matches("Port") /* Port com.amazonaws.route53#HealthCheckConfig$Port */ =>  {
                let var_284 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#Port`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_port(var_284);
            }
            ,
            s if s.matches("Type") /* Type com.amazonaws.route53#HealthCheckConfig$Type */ =>  {
                let var_285 =
                    Some(
                        Result::<crate::model::HealthCheckType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::HealthCheckType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_285);
            }
            ,
            s if s.matches("ResourcePath") /* ResourcePath com.amazonaws.route53#HealthCheckConfig$ResourcePath */ =>  {
                let var_286 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_resource_path(var_286);
            }
            ,
            s if s.matches("FullyQualifiedDomainName") /* FullyQualifiedDomainName com.amazonaws.route53#HealthCheckConfig$FullyQualifiedDomainName */ =>  {
                let var_287 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_fully_qualified_domain_name(var_287);
            }
            ,
            s if s.matches("SearchString") /* SearchString com.amazonaws.route53#HealthCheckConfig$SearchString */ =>  {
                let var_288 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_search_string(var_288);
            }
            ,
            s if s.matches("RequestInterval") /* RequestInterval com.amazonaws.route53#HealthCheckConfig$RequestInterval */ =>  {
                let var_289 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#RequestInterval`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_request_interval(var_289);
            }
            ,
            s if s.matches("FailureThreshold") /* FailureThreshold com.amazonaws.route53#HealthCheckConfig$FailureThreshold */ =>  {
                let var_290 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#FailureThreshold`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_failure_threshold(var_290);
            }
            ,
            s if s.matches("MeasureLatency") /* MeasureLatency com.amazonaws.route53#HealthCheckConfig$MeasureLatency */ =>  {
                let var_291 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#MeasureLatency`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_measure_latency(var_291);
            }
            ,
            s if s.matches("Inverted") /* Inverted com.amazonaws.route53#HealthCheckConfig$Inverted */ =>  {
                let var_292 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#Inverted`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_inverted(var_292);
            }
            ,
            s if s.matches("Disabled") /* Disabled com.amazonaws.route53#HealthCheckConfig$Disabled */ =>  {
                let var_293 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#Disabled`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_disabled(var_293);
            }
            ,
            s if s.matches("HealthThreshold") /* HealthThreshold com.amazonaws.route53#HealthCheckConfig$HealthThreshold */ =>  {
                let var_294 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#HealthThreshold`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_health_threshold(var_294);
            }
            ,
            s if s.matches("ChildHealthChecks") /* ChildHealthChecks com.amazonaws.route53#HealthCheckConfig$ChildHealthChecks */ =>  {
                let var_295 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_child_health_check_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_child_health_checks(var_295);
            }
            ,
            s if s.matches("EnableSNI") /* EnableSNI com.amazonaws.route53#HealthCheckConfig$EnableSNI */ =>  {
                let var_296 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#EnableSNI`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_enable_sni(var_296);
            }
            ,
            s if s.matches("Regions") /* Regions com.amazonaws.route53#HealthCheckConfig$Regions */ =>  {
                let var_297 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_health_check_region_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_regions(var_297);
            }
            ,
            s if s.matches("AlarmIdentifier") /* AlarmIdentifier com.amazonaws.route53#HealthCheckConfig$AlarmIdentifier */ =>  {
                let var_298 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_alarm_identifier(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_alarm_identifier(var_298);
            }
            ,
            s if s.matches("InsufficientDataHealthStatus") /* InsufficientDataHealthStatus com.amazonaws.route53#HealthCheckConfig$InsufficientDataHealthStatus */ =>  {
                let var_299 =
                    Some(
                        Result::<crate::model::InsufficientDataHealthStatus, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::InsufficientDataHealthStatus::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_insufficient_data_health_status(var_299);
            }
            ,
            s if s.matches("RoutingControlArn") /* RoutingControlArn com.amazonaws.route53#HealthCheckConfig$RoutingControlArn */ =>  {
                let var_300 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_routing_control_arn(var_300);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_cloud_watch_alarm_configuration(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::CloudWatchAlarmConfiguration, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::CloudWatchAlarmConfiguration::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("EvaluationPeriods") /* EvaluationPeriods com.amazonaws.route53#CloudWatchAlarmConfiguration$EvaluationPeriods */ =>  {
                let var_301 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#EvaluationPeriods`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_evaluation_periods(var_301);
            }
            ,
            s if s.matches("Threshold") /* Threshold com.amazonaws.route53#CloudWatchAlarmConfiguration$Threshold */ =>  {
                let var_302 =
                    Some(
                         {
                            <f64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (double: `com.amazonaws.route53#Threshold`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_threshold(var_302);
            }
            ,
            s if s.matches("ComparisonOperator") /* ComparisonOperator com.amazonaws.route53#CloudWatchAlarmConfiguration$ComparisonOperator */ =>  {
                let var_303 =
                    Some(
                        Result::<crate::model::ComparisonOperator, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::ComparisonOperator::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_comparison_operator(var_303);
            }
            ,
            s if s.matches("Period") /* Period com.amazonaws.route53#CloudWatchAlarmConfiguration$Period */ =>  {
                let var_304 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#Period`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_period(var_304);
            }
            ,
            s if s.matches("MetricName") /* MetricName com.amazonaws.route53#CloudWatchAlarmConfiguration$MetricName */ =>  {
                let var_305 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_metric_name(var_305);
            }
            ,
            s if s.matches("Namespace") /* Namespace com.amazonaws.route53#CloudWatchAlarmConfiguration$Namespace */ =>  {
                let var_306 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_namespace(var_306);
            }
            ,
            s if s.matches("Statistic") /* Statistic com.amazonaws.route53#CloudWatchAlarmConfiguration$Statistic */ =>  {
                let var_307 =
                    Some(
                        Result::<crate::model::Statistic, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::Statistic::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_statistic(var_307);
            }
            ,
            s if s.matches("Dimensions") /* Dimensions com.amazonaws.route53#CloudWatchAlarmConfiguration$Dimensions */ =>  {
                let var_308 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_dimension_list(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_dimensions(var_308);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_hosted_zone_config(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HostedZoneConfig, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HostedZoneConfig::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Comment") /* Comment com.amazonaws.route53#HostedZoneConfig$Comment */ =>  {
                let var_309 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_comment(var_309);
            }
            ,
            s if s.matches("PrivateZone") /* PrivateZone com.amazonaws.route53#HostedZoneConfig$PrivateZone */ =>  {
                let var_310 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#IsPrivateZone`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_private_zone(var_310);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_delegation_set_name_servers(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<std::string::String>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("NameServer") /* member com.amazonaws.route53#DelegationSetNameServers$member */ =>  {
                out.push(
                    Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        .into()
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_health_check_observation(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HealthCheckObservation, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HealthCheckObservation::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Region") /* Region com.amazonaws.route53#HealthCheckObservation$Region */ =>  {
                let var_311 =
                    Some(
                        Result::<crate::model::HealthCheckRegion, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::HealthCheckRegion::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_region(var_311);
            }
            ,
            s if s.matches("IPAddress") /* IPAddress com.amazonaws.route53#HealthCheckObservation$IPAddress */ =>  {
                let var_312 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_ip_address(var_312);
            }
            ,
            s if s.matches("StatusReport") /* StatusReport com.amazonaws.route53#HealthCheckObservation$StatusReport */ =>  {
                let var_313 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_status_report(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_status_report(var_313);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_cidr_block_summary(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::CidrBlockSummary, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::CidrBlockSummary::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("CidrBlock") /* CidrBlock com.amazonaws.route53#CidrBlockSummary$CidrBlock */ =>  {
                let var_314 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_cidr_block(var_314);
            }
            ,
            s if s.matches("LocationName") /* LocationName com.amazonaws.route53#CidrBlockSummary$LocationName */ =>  {
                let var_315 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_location_name(var_315);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_collection_summary(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::CollectionSummary, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::CollectionSummary::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Arn") /* Arn com.amazonaws.route53#CollectionSummary$Arn */ =>  {
                let var_316 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_arn(var_316);
            }
            ,
            s if s.matches("Id") /* Id com.amazonaws.route53#CollectionSummary$Id */ =>  {
                let var_317 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_317);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#CollectionSummary$Name */ =>  {
                let var_318 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_318);
            }
            ,
            s if s.matches("Version") /* Version com.amazonaws.route53#CollectionSummary$Version */ =>  {
                let var_319 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#CollectionVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_version(var_319);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_location_summary(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::LocationSummary, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::LocationSummary::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("LocationName") /* LocationName com.amazonaws.route53#LocationSummary$LocationName */ =>  {
                let var_320 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_location_name(var_320);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_hosted_zone_summary(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HostedZoneSummary, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HostedZoneSummary::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53#HostedZoneSummary$HostedZoneId */ =>  {
                let var_321 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_321);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#HostedZoneSummary$Name */ =>  {
                let var_322 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_322);
            }
            ,
            s if s.matches("Owner") /* Owner com.amazonaws.route53#HostedZoneSummary$Owner */ =>  {
                let var_323 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_hosted_zone_owner(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_owner(var_323);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_resource_record_set(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ResourceRecordSet, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::ResourceRecordSet::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Name") /* Name com.amazonaws.route53#ResourceRecordSet$Name */ =>  {
                let var_324 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_324);
            }
            ,
            s if s.matches("Type") /* Type com.amazonaws.route53#ResourceRecordSet$Type */ =>  {
                let var_325 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_325);
            }
            ,
            s if s.matches("SetIdentifier") /* SetIdentifier com.amazonaws.route53#ResourceRecordSet$SetIdentifier */ =>  {
                let var_326 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_set_identifier(var_326);
            }
            ,
            s if s.matches("Weight") /* Weight com.amazonaws.route53#ResourceRecordSet$Weight */ =>  {
                let var_327 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#ResourceRecordSetWeight`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_weight(var_327);
            }
            ,
            s if s.matches("Region") /* Region com.amazonaws.route53#ResourceRecordSet$Region */ =>  {
                let var_328 =
                    Some(
                        Result::<crate::model::ResourceRecordSetRegion, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::ResourceRecordSetRegion::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_region(var_328);
            }
            ,
            s if s.matches("GeoLocation") /* GeoLocation com.amazonaws.route53#ResourceRecordSet$GeoLocation */ =>  {
                let var_329 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_geo_location(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_geo_location(var_329);
            }
            ,
            s if s.matches("Failover") /* Failover com.amazonaws.route53#ResourceRecordSet$Failover */ =>  {
                let var_330 =
                    Some(
                        Result::<crate::model::ResourceRecordSetFailover, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::ResourceRecordSetFailover::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_failover(var_330);
            }
            ,
            s if s.matches("MultiValueAnswer") /* MultiValueAnswer com.amazonaws.route53#ResourceRecordSet$MultiValueAnswer */ =>  {
                let var_331 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#ResourceRecordSetMultiValueAnswer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_multi_value_answer(var_331);
            }
            ,
            s if s.matches("TTL") /* TTL com.amazonaws.route53#ResourceRecordSet$TTL */ =>  {
                let var_332 =
                    Some(
                         {
                            <i64 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (long: `com.amazonaws.route53#TTL`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_ttl(var_332);
            }
            ,
            s if s.matches("ResourceRecords") /* ResourceRecords com.amazonaws.route53#ResourceRecordSet$ResourceRecords */ =>  {
                let var_333 =
                    Some(
                        crate::xml_deser::deser_list_com_amazonaws_route53_resource_records(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_resource_records(var_333);
            }
            ,
            s if s.matches("AliasTarget") /* AliasTarget com.amazonaws.route53#ResourceRecordSet$AliasTarget */ =>  {
                let var_334 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_alias_target(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_alias_target(var_334);
            }
            ,
            s if s.matches("HealthCheckId") /* HealthCheckId com.amazonaws.route53#ResourceRecordSet$HealthCheckId */ =>  {
                let var_335 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_health_check_id(var_335);
            }
            ,
            s if s.matches("TrafficPolicyInstanceId") /* TrafficPolicyInstanceId com.amazonaws.route53#ResourceRecordSet$TrafficPolicyInstanceId */ =>  {
                let var_336 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_instance_id(var_336);
            }
            ,
            s if s.matches("CidrRoutingConfig") /* CidrRoutingConfig com.amazonaws.route53#ResourceRecordSet$CidrRoutingConfig */ =>  {
                let var_337 =
                    Some(
                        crate::xml_deser::deser_structure_crate_model_cidr_routing_config(&mut tag)
                        ?
                    )
                ;
                builder = builder.set_cidr_routing_config(var_337);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_tag_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::Tag>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Tag") /* member com.amazonaws.route53#TagList$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_tag(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_traffic_policy_summary(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::TrafficPolicySummary, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::TrafficPolicySummary::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Id") /* Id com.amazonaws.route53#TrafficPolicySummary$Id */ =>  {
                let var_338 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_id(var_338);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#TrafficPolicySummary$Name */ =>  {
                let var_339 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_339);
            }
            ,
            s if s.matches("Type") /* Type com.amazonaws.route53#TrafficPolicySummary$Type */ =>  {
                let var_340 =
                    Some(
                        Result::<crate::model::RrType, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::RrType::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_type(var_340);
            }
            ,
            s if s.matches("LatestVersion") /* LatestVersion com.amazonaws.route53#TrafficPolicySummary$LatestVersion */ =>  {
                let var_341 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#TrafficPolicyVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_latest_version(var_341);
            }
            ,
            s if s.matches("TrafficPolicyCount") /* TrafficPolicyCount com.amazonaws.route53#TrafficPolicySummary$TrafficPolicyCount */ =>  {
                let var_342 =
                    Some(
                         {
                            <i32 as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.route53#TrafficPolicyVersion`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_traffic_policy_count(var_342);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_child_health_check_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<std::string::String>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ChildHealthCheck") /* member com.amazonaws.route53#ChildHealthCheckList$member */ =>  {
                out.push(
                    Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        .into()
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_list_com_amazonaws_route53_health_check_region_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::HealthCheckRegion>, aws_smithy_xml::decode::XmlDecodeError>
{
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Region") /* member com.amazonaws.route53#HealthCheckRegionList$member */ =>  {
                out.push(
                    Result::<crate::model::HealthCheckRegion, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                        crate::model::HealthCheckRegion::from(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                        )
                    )
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_alarm_identifier(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::AlarmIdentifier, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::AlarmIdentifier::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Region") /* Region com.amazonaws.route53#AlarmIdentifier$Region */ =>  {
                let var_343 =
                    Some(
                        Result::<crate::model::CloudWatchRegion, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::CloudWatchRegion::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_region(var_343);
            }
            ,
            s if s.matches("Name") /* Name com.amazonaws.route53#AlarmIdentifier$Name */ =>  {
                let var_344 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_344);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_dimension_list(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::Dimension>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Dimension") /* member com.amazonaws.route53#DimensionList$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_dimension(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_status_report(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::StatusReport, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::StatusReport::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Status") /* Status com.amazonaws.route53#StatusReport$Status */ =>  {
                let var_345 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_status(var_345);
            }
            ,
            s if s.matches("CheckedTime") /* CheckedTime com.amazonaws.route53#StatusReport$CheckedTime */ =>  {
                let var_346 =
                    Some(
                        aws_smithy_types::DateTime::from_str(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            , aws_smithy_types::date_time::Format::DateTime
                        )
                        .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.route53#TimeStamp`)"))
                        ?
                    )
                ;
                builder = builder.set_checked_time(var_346);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_hosted_zone_owner(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::HostedZoneOwner, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::HostedZoneOwner::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("OwningAccount") /* OwningAccount com.amazonaws.route53#HostedZoneOwner$OwningAccount */ =>  {
                let var_347 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_owning_account(var_347);
            }
            ,
            s if s.matches("OwningService") /* OwningService com.amazonaws.route53#HostedZoneOwner$OwningService */ =>  {
                let var_348 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_owning_service(var_348);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_geo_location(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::GeoLocation, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::GeoLocation::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ContinentCode") /* ContinentCode com.amazonaws.route53#GeoLocation$ContinentCode */ =>  {
                let var_349 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_continent_code(var_349);
            }
            ,
            s if s.matches("CountryCode") /* CountryCode com.amazonaws.route53#GeoLocation$CountryCode */ =>  {
                let var_350 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_country_code(var_350);
            }
            ,
            s if s.matches("SubdivisionCode") /* SubdivisionCode com.amazonaws.route53#GeoLocation$SubdivisionCode */ =>  {
                let var_351 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_subdivision_code(var_351);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_list_com_amazonaws_route53_resource_records(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<std::vec::Vec<crate::model::ResourceRecord>, aws_smithy_xml::decode::XmlDecodeError> {
    let mut out = std::vec::Vec::new();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("ResourceRecord") /* member com.amazonaws.route53#ResourceRecords$member */ =>  {
                out.push(
                    crate::xml_deser::deser_structure_crate_model_resource_record(&mut tag)
                    ?
                );
            }
            ,
            _ => {}
        }
    }
    Ok(out)
}

pub fn deser_structure_crate_model_alias_target(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::AliasTarget, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::AliasTarget::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("HostedZoneId") /* HostedZoneId com.amazonaws.route53#AliasTarget$HostedZoneId */ =>  {
                let var_352 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_hosted_zone_id(var_352);
            }
            ,
            s if s.matches("DNSName") /* DNSName com.amazonaws.route53#AliasTarget$DNSName */ =>  {
                let var_353 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_dns_name(var_353);
            }
            ,
            s if s.matches("EvaluateTargetHealth") /* EvaluateTargetHealth com.amazonaws.route53#AliasTarget$EvaluateTargetHealth */ =>  {
                let var_354 =
                    Some(
                         {
                            <bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                            .map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.route53#AliasHealthEnabled`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_evaluate_target_health(var_354);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_cidr_routing_config(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::CidrRoutingConfig, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::CidrRoutingConfig::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("CollectionId") /* CollectionId com.amazonaws.route53#CidrRoutingConfig$CollectionId */ =>  {
                let var_355 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_collection_id(var_355);
            }
            ,
            s if s.matches("LocationName") /* LocationName com.amazonaws.route53#CidrRoutingConfig$LocationName */ =>  {
                let var_356 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_location_name(var_356);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_tag(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::Tag, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::Tag::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Key") /* Key com.amazonaws.route53#Tag$Key */ =>  {
                let var_357 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_key(var_357);
            }
            ,
            s if s.matches("Value") /* Value com.amazonaws.route53#Tag$Value */ =>  {
                let var_358 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_value(var_358);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_dimension(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::Dimension, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::Dimension::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Name") /* Name com.amazonaws.route53#Dimension$Name */ =>  {
                let var_359 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_name(var_359);
            }
            ,
            s if s.matches("Value") /* Value com.amazonaws.route53#Dimension$Value */ =>  {
                let var_360 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_value(var_360);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

pub fn deser_structure_crate_model_resource_record(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::ResourceRecord, aws_smithy_xml::decode::XmlDecodeError> {
    #[allow(unused_mut)]
    let mut builder = crate::model::ResourceRecord::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("Value") /* Value com.amazonaws.route53#ResourceRecord$Value */ =>  {
                let var_361 =
                    Some(
                        Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            .into()
                        )
                        ?
                    )
                ;
                builder = builder.set_value(var_361);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}